PageSourceSearch

https://www.esprit-ktm.com/

html esprit-ktm.com collected 2026-10-08 12:07:11 UTC 1,435,239 bytes, 16,063 lines download raw bytes

1<!doctype html>
2<html lang="fr">
3<head >
3<script>(function(w,i,g){w[g]=w[g]||[];if(typeof w[g].push=='function')w[g].push(i)})
4(window,'GTM-MFX824G','google_tags_first_party');</script>
4<script>(function(w,d,s,l){w[l]=w[l]||[];(function(){w[l].push(arguments);})('set', 'developer_id.dYzg1YT', true);
5		w[l].push({'gtm.start':new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
6		j=d.createElement(s);j.async=true;j.src='/v1dg/';
7		f.parentNode.insertBefore(j,f);
8		})(window,document,'script','dataLayer');</script>
8
9    <!-- page-meta --><meta charset="UTF-8"/>
10<meta name="title" content="Esprit KTM - Pièces Détachées et Accessoires Officiels KTM | Moto Route et Enduro | Esprit-KTM.com"/>
11<meta name="description" content="Esprit KTM, votre spécialiste en pièces détachées et accessoires officiels pour motos KTM. Route, enduro, motocross : trouvez toutes les pièces d&#039;origine et équipements pour optimiser votre machine et certifiées par KTM. Livraison rapide, conseil expert."/>
12<meta name="keywords" content="
13    KTM
14    Moto
15    Pièces détachées ktm
16    Accessoires KTM
17    Enduro
18    Superduke
19    Motocross ktm
20    Pièces origine KTM
21    Racing
22    Équipement moto KTM
23"/>
24<meta name="robots" content="INDEX,FOLLOW"/>
25<meta name="viewport" content="width=device-width, initial-scale=1"/>
26<title>Esprit KTM - Pièces Détachées et Accessoires Officiels KTM | Moto Route et Enduro | Esprit-KTM.com</title>
27<!-- end-page-meta --><link rel="stylesheet" type="text/css" media="all" href="https://www.esprit-ktm.com/static/version1791195787/_cache/merged/8c29a91146beef427249797ce317122e.min.css" />
28<link rel="preload" as="font" crossorigin="anonymous" href="https://www.esprit-ktm.com/static/version1791195787/frontend/Ham/hyva/fr_FR/fonts/Satoshi-Bold.woff" />
29<link rel="preload" as="font" crossorigin="anonymous" href="https://www.esprit-ktm.com/static/version1791195787/frontend/Ham/hyva/fr_FR/fonts/Satoshi-Medium.woff2" />
30<link rel="icon" type="image/x-icon" href="https://www.esprit-ktm.com/media/favicon/stores/9/podium-ktm.jpg" />
31<link rel="shortcut icon" type="image/x-icon" href="https://www.esprit-ktm.com/media/favicon/stores/9/podium-ktm.jpg" />
32<!--pirDXGFu4sXNQt3hHmf3hnx7fahTKZob-->        <link rel="stylesheet" type="text/css" media="all" href="https://www.esprit-ktm.com/static/version1791195787/_cache/merged/8c29a91146beef427249797ce317122e.min.css" />
33<link rel="preload" as="font" crossorigin="anonymous" href="https://www.esprit-ktm.com/static/version1791195787/frontend/Ham/hyva/fr_FR/fonts/Satoshi-Bold.woff" />
34<link rel="preload" as="font" crossorigin="anonymous" href="https://www.esprit-ktm.com/static/version1791195787/frontend/Ham/hyva/fr_FR/fonts/Satoshi-Medium.woff2" />
35<link rel="icon" type="image/x-icon" href="https://www.esprit-ktm.com/media/favicon/stores/9/podium-ktm.jpg" />
36<link rel="shortcut icon" type="image/x-icon" href="https://www.esprit-ktm.com/media/favicon/stores/9/podium-ktm.jpg" />
37<!--pirDXGFu4sXNQt3hHmf3hnx7fahTKZob-->                    <!-- Google Tag Manager -->
38        
38<script>
vendor: 624 bytes, lines 38-52
38
39            (function(w, d, s, l, i) {
40                w[l] = w[l] || [];
41                w[l].push({
42                    'gtm.start': new Date().getTime(),
43                    event: 'gtm.js'
44                });
45                var f = d.getElementsByTagName(s)[0],
46                    j = d.createElement(s),
47                    dl = l != 'dataLayer' ? '&l=' + l : '';
48                j.async = true;
49                j.src =
50                    'https://www.googletagmanager.com/gtm.js?id=' + i + dl;
51                f.parentNode.insertBefore(j, f);
52            })(window, document, 'script', 'dataLayer', '
52GTM-MFX824G
vendor: 13 bytes, lines 52-53
52');
53        
53</script>
53
54        <!-- End Google Tag Manager -->
55    
56            <!-- BEGIN Adwords Remarketing Tag -->
57                            
57<script type="text/javascript">
58                var google_tag_params = {
59                    ecomm_pagetype: 'home'
60                };
61            </script>
61
62                <!-- END Adwords Remarketing Tag -->
63    
63<script>
64    var BASE_URL = 'https://www.esprit-ktm.com/';
65    var THEME_PATH = 'https://www.esprit-ktm.com/static/version1791195787/frontend/Ham/hyva/fr_FR';
66    var COOKIE_CONFIG = {
67        "expires": null,
68        "path": "\u002F",
69        "domain": ".www.esprit\u002Dktm.com",
70        "secure": true,
71        "lifetime": "3600",
72        "cookie_restriction_enabled": false    };
73    var CURRENT_STORE_CODE = 'esprit_ktm_fr';
74    var CURRENT_WEBSITE_ID = '9';
75
76    window.hyva = window.hyva || {}
77
78    window.cookie_consent_groups = window.cookie_consent_groups || {}
79    window.cookie_consent_groups['necessary'] = true;
80
81    window.cookie_consent_config = window.cookie_consent_config || {};
82    window.cookie_consent_config['necessary'] = [].concat(
83        window.cookie_consent_config['necessary'] || [],
84        [
85            'user_allowed_save_cookie',
86            'form_key',
87            'mage-messages',
88            'private_content_version',
89            'mage-cache-sessid',
90            'last_visited_store',
91            'section_data_ids'
92        ]
93    );
94    //# sourceURL=hyva-variables.js
95</script>
vendor: 1 bytes, line 95
95
96<script>
97    (function( hyva, undefined ) {
98
99        function lifetimeToExpires(options, defaults) {
100
101            const lifetime = options.lifetime || defaults.lifetime;
102
103            if (lifetime) {
104                const date = new Date;
105                date.setTime(date.getTime() + lifetime * 1000);
106                return date;
107            }
108
109            return null;
110        }
111
112        function generateRandomString() {
113
114            const allowedCharacters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ',
115                length = 16;
116
117            let formKey = '',
118                charactersLength = allowedCharacters.length;
119
120            for (let i = 0; i < length; i++) {
121                formKey += allowedCharacters[Math.round(Math.random() * (charactersLength - 1))]
122            }
123
124            return formKey;
125        }
126
127        const sessionCookieMarker = {noLifetime: true}
128
129        const cookieTempStorage = {};
130
131        const internalCookie = {
132            get(name) {
133                const v = document.cookie.match('(^|;) ?' + name + '=([^;]*)(;|$)');
134                return v ? v[2] : null;
135            },
136            set(name, value, days, skipSetDomain) {
137                let expires,
138                    path,
139                    domain,
140                    secure,
141                    samesite;
142
143                const defaultCookieConfig = {
144                    expires: null,
145                    path: '/',
146                    domain: null,
147                    secure: false,
148                    lifetime: null,
149                    samesite: 'lax'
150                };
151
152                const cookieConfig = window.COOKIE_CONFIG || {};
153
154                expires = days && days !== sessionCookieMarker
155                    ? lifetimeToExpires({lifetime: 24 * 60 * 60 * days, expires: null}, defaultCookieConfig)
156                    : lifetimeToExpires(window.COOKIE_CONFIG, defaultCookieConfig) || defaultCookieConfig.expires;
157
158                path = cookieConfig.path || defaultCookieConfig.path;
159                domain = !skipSetDomain && (cookieConfig.domain || defaultCookieConfig.domain);
160                secure = cookieConfig.secure || defaultCookieConfig.secure;
161                samesite = cookieConfig.samesite || defaultCookieConfig.samesite;
162
163                document.cookie = name + "=" + encodeURIComponent(value) +
164                    (expires && days !== sessionCookieMarker ? '; expires=' + expires.toGMTString() : '') +
165                    (path ? '; path=' + path : '') +
166                    (domain ? '; domain=' + domain : '') +
167                    (secure ? '; secure' : '') +
168                    (samesite ? '; samesite=' + samesite : 'lax');
169            },
170            isWebsiteAllowedToSaveCookie() {
171                const allowedCookies = this.get('user_allowed_save_cookie');
172                if (allowedCookies) {
173                    const allowedWebsites = JSON.parse(unescape(allowedCookies));
174
175                    return allowedWebsites[CURRENT_WEBSITE_ID] === 1;
176                }
177                return false;
178            },
179            getGroupByCookieName(name) {
180                const cookieConsentConfig = window.cookie_consent_config || {};
181                let group = null;
182                for (let prop in cookieConsentConfig) {
183                    if (!cookieConsentConfig.hasOwnProperty(prop)) continue;
184                    if (cookieConsentConfig[prop].includes(name)) {
185                        group = prop;
186                        break;
187                    }
188                }
189                return group;
190            },
191            isCookieAllowed(name) {
192                const cookieGroup = this.getGroupByCookieName(name);
193                return cookieGroup
194                    ? window.cookie_consent_groups[cookieGroup]
195                    : this.isWebsiteAllowedToSaveCookie();
196            },
197            saveTempStorageCookies() {
198                for (const [name, data] of Object.entries(cookieTempStorage)) {
199                    if (this.isCookieAllowed(name)) {
200                        this.set(name, data['value'], data['days'], data['skipSetDomain']);
201                        delete cookieTempStorage[name];
202                    }
203                }
204            }
205        };
206
207        hyva.getCookie = (name) => {
208            const cookieConfig = window.COOKIE_CONFIG || {};
209
210            if (cookieConfig.cookie_restriction_enabled && ! internalCookie.isCookieAllowed(name)) {
211                return cookieTempStorage[name] ? cookieTempStorage[name]['value'] : null;
212            }
213
214            return internalCookie.get(name);
215        }
216
217        hyva.setCookie = (name, value, days, skipSetDomain) => {
218            const cookieConfig = window.COOKIE_CONFIG || {};
219
220            if (cookieConfig.cookie_restriction_enabled && ! internalCookie.isCookieAllowed(name)) {
221                cookieTempStorage[name] = {value, days, skipSetDomain};
222                return;
223            }
224            return internalCookie.set(name, value, days, skipSetDomain);
225        }
226
227
228        hyva.setSessionCookie = (name, value, skipSetDomain) => {
229            return hyva.setCookie(name, value, sessionCookieMarker, skipSetDomain)
230        }
231
232        hyva.getBrowserStorage = () => {
233            const browserStorage = window.localStorage || window.sessionStorage;
234            if (!browserStorage) {
235                console.warn('Browser Storage is unavailable');
236                return false;
237            }
238            try {
239                browserStorage.setItem('storage_test', '1');
240                browserStorage.removeItem('storage_test');
241            } catch (error) {
242                console.warn('Browser Storage is not accessible', error);
243                return false;
244            }
245            return browserStorage;
246        }
247
248        hyva.postForm = (postParams) => {
249            const form = document.createElement("form");
250
251            let data = postParams.data;
252
253            if (! postParams.skipUenc && ! data.uenc) {
254                data.uenc = btoa(window.location.href);
255            }
256            form.method = "POST";
257            form.action = postParams.action;
258
259            Object.keys(postParams.data).map(key => {
260                const field = document.createElement("input");
261                field.type = 'hidden'
262                field.value = postParams.data[key];
263                field.name = key;
264                form.appendChild(field);
265            });
266
267            const form_key = document.createElement("input");
268            form_key.type = 'hidden';
269            form_key.value = hyva.getFormKey();
270            form_key.name="form_key";
271            form.appendChild(form_key);
272
273            document.body.appendChild(form);
274
275            form.submit();
276        }
277
278        hyva.getFormKey = function () {
279            let formKey = hyva.getCookie('form_key');
280
281            if (!formKey) {
282                formKey = generateRandomString();
283                hyva.setCookie('form_key', formKey);
284            }
285
286            return formKey;
287        }
288
289        hyva.formatPrice = (value, showSign, options = {}) => {
290            const groupSeparator = options.groupSeparator;
291            const decimalSeparator = options.decimalSeparator
292            delete options.groupSeparator;
293            delete options.decimalSeparator;
294            const formatter = new Intl.NumberFormat(
295                'fr\u002DFR',
296                Object.assign({
297                    style: 'currency',
298                    currency: 'EUR',
299                    signDisplay: showSign ? 'always' : 'auto'
300                }, options)
301            );
302            return (typeof Intl.NumberFormat.prototype.formatToParts === 'function') ?
303                formatter.formatToParts(value).map(({type, value}) => {
304                    switch (type) {
305                        case 'currency':
306                            return '\u20AC' || value;
307                        case 'minusSign':
308                            return '- ';
309                        case 'plusSign':
310                            return '+ ';
311                        case 'group':
312                            return groupSeparator !== undefined ? groupSeparator : value;
313                        case 'decimal':
314                            return decimalSeparator !== undefined ? decimalSeparator : value;
315                        default :
316                            return value;
317                    }
318                }).reduce((string, part) => string + part) :
319                formatter.format(value);
320        }
321
322        const formatStr = function (str, nStart) {
323            const args = Array.from(arguments).slice(2);
324
325            return str.replace(/(%+)([0-9]+)/g, (m, p, n) => {
326                const idx = parseInt(n) - nStart;
327
328                if (args[idx] === null || args[idx] === void 0) {
329                    return m;
330                }
331                return p.length % 2
332                    ? p.slice(0, -1).replace('%%', '%') + args[idx]
333                    : p.replace('%%', '%') + n;
334            })
335        }
336
337        hyva.str = function (string) {
338            const args = Array.from(arguments);
339            args.splice(1, 0, 1);
340
341            return formatStr.apply(undefined, args);
342        }
343
344        hyva.strf = function () {
345            const args = Array.from(arguments);
346            args.splice(1, 0, 0);
347
348            return formatStr.apply(undefined, args);
349        }
350
351        /**
352         * Take a html string as `content` parameter and
353         * extract an element from the DOM to replace in
354         * the current page under the same selector,
355         * defined by `targetSelector`
356         */
357        hyva.replaceDomElement = (targetSelector, content) => {
358            // Parse the content and extract the DOM node using the `targetSelector`
359            const parser = new DOMParser();
360            const doc = parser.parseFromString(content, 'text/html');
361            const contentNode = doc.querySelector(targetSelector);
362
363            // Bail if content or target can't be found
364            if (!contentNode || !document.querySelector(targetSelector)) {
365                return;
366            }
367
368                        hyva.activateScripts(contentNode);
369            
370            // Replace the old DOM node with the new content
371            document.querySelector(targetSelector).replaceWith(contentNode);
372
373            // Reload customerSectionData and display cookie-messages if present
374            window.dispatchEvent(new CustomEvent("reload-customer-section-data"));
375            hyva.initMessages();
376        }
377
378        hyva.removeScripts = (contentNode) => {
379            const scripts = contentNode.getElementsByTagName('script');
380            for (let i = 0; i < scripts.length; i++) {
381                scripts[i].parentNode.removeChild(scripts[i]);
382            }
383            const templates = contentNode.getElementsByTagName('template');
384            for (let i = 0; i < templates.length; i++) {
385                const container = document.createElement('div');
386                container.innerHTML = templates[i].innerHTML;
387                hyva.removeScripts(container);
388                templates[i].innerHTML = container.innerHTML;
389            }
390        }
391
392        hyva.activateScripts = (contentNode) => {
393            // Create new array from HTMLCollection to avoid mutation of collection while manipulating the DOM.
394            const scripts = Array.from(contentNode.getElementsByTagName('script'));
395
396            // Iterate over all script tags to duplicate+inject each into the head
397            for (const original of scripts) {
398                const script = document.createElement('script');
399                original.type && (script.type = original.type);
400                script.innerHTML = original.innerHTML;
401
402                // Remove the original (non-executing) script from the contentNode
403                original.parentNode.removeChild(original)
404
405                // Add script to head
406                document.head.appendChild(script);
407            }
408
409            return contentNode;
410        }
411
412        const replace = {['+']: '-', ['/']: '_', ['=']: ','};
413        hyva.getUenc = () => btoa(window.location.href).replace(/[+/=]/g, match => replace[match]);
414
415        let currentTrap;
416
417        const focusableElements = (rootElement) => {
418            const selector = 'button, [href], input, select, textarea, details, [tabindex]:not([tabindex="-1"]';
419            return Array.from(rootElement.querySelectorAll(selector))
420                .filter(el => {
421                    return el.style.display !== 'none'
422                        && !el.disabled
423                        && el.tabIndex !== -1
424                        && (el.offsetWidth || el.offsetHeight || el.getClientRects().length)
425                })
426        }
427
428        const focusTrap = (e) => {
429            const isTabPressed = e.key === 'Tab' || e.keyCode === 9;
430            if (!isTabPressed) return;
431
432            const focusable = focusableElements(currentTrap)
433            const firstFocusableElement = focusable[0]
434            const lastFocusableElement = focusable[focusable.length - 1]
435
436            e.shiftKey
437                ? document.activeElement === firstFocusableElement && (lastFocusableElement.focus(), e.preventDefault())
438                : document.activeElement === lastFocusableElement && (firstFocusableElement.focus(), e.preventDefault())
439        };
440
441        hyva.releaseFocus = (rootElement) => {
442            if (currentTrap && (!rootElement || rootElement === currentTrap)) {
443                currentTrap.removeEventListener('keydown', focusTrap)
444                currentTrap = null
445            }
446        }
447        hyva.trapFocus = (rootElement) => {
448            if (!rootElement) return;
449            hyva.releaseFocus()
450            currentTrap = rootElement
451            rootElement.addEventListener('keydown', focusTrap)
452            const firstElement = focusableElements(rootElement)[0]
453            firstElement && firstElement.focus()
454        }
455
456        hyva.safeParseNumber = (rawValue) => {
457            const number = rawValue ? parseFloat(rawValue) : null;
458
459            return Array.isArray(number) || isNaN(number) ? rawValue : number;
460        }
461
462        const toCamelCase = s => s.split('_').map(word => word.charAt(0).toUpperCase() + word.slice(1)).join('');
463        hyva.createBooleanObject = (name, value = false, additionalMethods = {}) => {
464
465            const camelCase = toCamelCase(name);
466            const key = '__hyva_bool_' + name
467
468            return new Proxy(Object.assign(
469                additionalMethods,
470                {
471                    [key]: !!value,
472                    [name]() {return !!this[key]},
473                    ['!' + name]() {return !this[key]}, // @deprecated This does not work with non-CSP Alpine
474                    ['not' + camelCase]() {return !this[key]},
475                    ['toggle' + camelCase]() {this[key] = !this[key]},
476                    [`set${camelCase}True`]() {this[key] = true},
477                    [`set${camelCase}False`]() {this[key] = false},
478                }
479            ), {
480                set(target, prop, value) {
481                    return prop === name
482                        ? (target[key] = !!value)
483                        : Reflect.set(...arguments);
484                }
485            })
486        }
487
488                hyva.alpineInitialized = (fn) => window.addEventListener('alpine:initialized', fn, {once: true})
489        window.addEventListener('alpine:init', () => Alpine.data('{}', () => ({})), {once: true});
490                window.addEventListener('user-allowed-save-cookie', () => internalCookie.saveTempStorageCookies())
491
492    }( window.hyva = window.hyva || {} ));
493    //# sourceURL=hyva.js
494</script>
vendor: 1 bytes, line 494
494
495<script type="speculationrules">
496{
497    "tag": "Hyva Theme",
498    "prefetch": [{
499        "source": "document",
500        "where": {
501            "and": [
502                { "href_matches": "/*" },
503                { "not": {
504                    "href_matches": ["/customer/*","/search/*","/sales/*","/wishlist/*","/checkout/*","/paypal/*","/newsletter/*","/stores/store/redirect/*"]                }},
505                { "not": {
506                    "selector_matches": [".no-preload", ".do-not-prerender", "[download]", "[rel~=nofollow]", "[target]"]
507                }}
508            ]
509        },
510        "eagerness": "moderate"
511    }]
512}
513</script>
513
514
515<script>
516    const viewTransitionToGalleryPageStorage = 'view-transition-to-gallery-page-type';
517    const setTransitionNameBetweenGallery = async (url, promise) => {
518        if (window.matchMedia('(prefers-reduced-motion)').matches) return;
519
520        const productGallery = document.getElementById('gallery-main');
521        const productListItem = document.querySelector(`.product-item-photo[href="${url}"]`);
522        const targetElement = productListItem || productGallery;
523
524        if (targetElement) {
525            targetElement.style.viewTransitionName = 'view-transition-to-gallery';
526
527            await promise;
528            targetElement.style.viewTransitionName = '';
529        }
530    };
531
532    const getViewTransitionToGalleryPageIsProduct = () => {
533        return document.body.classList.contains('catalog-product-view') ? 'product-page' : 'other'
534    }
535
536    window.addEventListener('pageswap', async (e) => {
537        if (!e.viewTransition) return;
538        const pageType = getViewTransitionToGalleryPageIsProduct();
539        const target = new URL(e.activation.entry.url);
540
541        sessionStorage.setItem(viewTransitionToGalleryPageStorage, pageType);
542        setTransitionNameBetweenGallery(target.href, e.viewTransition.finished);
543    });
544
545    window.addEventListener('pagereveal', async (e) => {
546        if (!e.viewTransition || (window.navigation && !window.navigation.activation.from)) return;
547        const previousPageType = sessionStorage.getItem(viewTransitionToGalleryPageStorage);
548        const pageType = getViewTransitionToGalleryPageIsProduct();
549        sessionStorage.removeItem(viewTransitionToGalleryPageStorage);
550
551        if (previousPageType === pageType) return;
552        const target = new URL(window.navigation.activation.from.url);
553        setTransitionNameBetweenGallery(target.href, e.viewTransition.ready);
554    });
555</script>
555
556
557<script>
558    window.navigationType = 'SPA';
559</script>
559
560<style>
561    @font-face {
562        font-family: 'Satoshi';
563        src: url("https://www.esprit-ktm.com/static/version1791195787/frontend/Ham/hyva/fr_FR/fonts/Satoshi-Medium.woff2") format('woff2'),
564        url("https://www.esprit-ktm.com/static/version1791195787/frontend/Ham/hyva/fr_FR/fonts/Satoshi-Medium.woff") format('woff');
565        font-weight: 500;
566        font-display: swap;
567        font-style: normal;
568    }
569
570    @font-face {
571        font-family: 'Satoshi';
572        src: url("https://www.esprit-ktm.com/static/version1791195787/frontend/Ham/hyva/fr_FR/fonts/Satoshi-Bold.woff2") format('woff2'),
573        url("https://www.esprit-ktm.com/static/version1791195787/frontend/Ham/hyva/fr_FR/fonts/Satoshi-Bold.woff") format('woff');
574        font-weight: 700;
575        font-display: swap;
576        font-style: normal;
577    }
578
579    /* Ham override: Plus Jakarta Sans variable (self-hosted, GDPR-safe) replaces
580       Satoshi — full 200-800 weight axis in two small files (mock uses 400-800). */
581    @font-face {
582        font-family: 'Plus Jakarta Sans';
583        src: url("https://www.esprit-ktm.com/static/version1791195787/frontend/Ham/hyva/fr_FR/fonts/PlusJakartaSans-Variable-latin.woff2") format('woff2');
584        font-weight: 200 800;
585        font-display: swap;
586        font-style: normal;
587        unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
588    }
589
590    @font-face {
591        font-family: 'Plus Jakarta Sans';
592        src: url("https://www.esprit-ktm.com/static/version1791195787/frontend/Ham/hyva/fr_FR/fonts/PlusJakartaSans-Variable-latin-ext.woff2") format('woff2');
593        font-weight: 200 800;
594        font-display: swap;
595        font-style: normal;
596        unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
597    }
598
599    :root {
600        --font-body-family: 'Satoshi', sans-serif;
601        --font-body-style: 'normal';
602        --font-body-weight: 500;
603
604        --font-heading-family: 'Satoshi', sans-serif;
605        --font-heading-style: 'normal';
606        --font-heading-weight: 700;
607
608        --progress-bar-color: #29d;
609        --progress-bar-height: 2px;
610
611        --fade-in-bg: #F3F3F3;
612
613        --color-primary-50: #7e7e7e;
614        --color-primary-100: #4b4b4b;
615        --color-primary-400: #252525;
616        --color-primary-500: #181818;
617        --color-primary-600: #0b0b0b;
618        --color-primary-700: #3F3F3F;
619
620        --color-background-50: #ffffff;
621        --color-background-100: #ffffff;
622        --color-background-400: #ffffff;
623        --color-background-500: #f9f9f9;
624        --color-background-600: #efefef;
625        --color-background-700: #e6e6e6;
626
627
628        /* On dark bg, lighter color is lighter */
629        /* On light bg, lighter color is darker */
630
631        /* bg_is_darker: false; */
632        --color-primary-800: #181818;
633        --color-text-50: #000000;
634        --color-text-100: #0f0f0f;
635        --color-text-400: #353535;
636        --color-text-500: #424242;
637        --color-text-600: #4f4f4f;
638        --color-text-700: #5c5c5c;
639        --color-overlay: #18181833;
640        --color-overlay-dark: #18181866;
641        --header-shadow: 0 10px 8px rgb(0 0 0 / 0.04);
642
643        --color-secondary-50: #ffffff;
644        --color-secondary-100: #ffffff;
645        --color-secondary-400: #ffffff;
646        --color-secondary-500: #f5f5f5;
647        --color-secondary-600: #e8e8e8;
648        --color-secondary-700: #dcdcdc;
649    }
650
651    /* On dark bg, lighter color should become even lighter */
652    /* On light bg, lighter color should become darker */
653
654    @media (prefers-contrast: more) {
655        :root {
656
657            /* bg_is_darker: false; */
658            --color-text-50: #000000;
659            --color-text-100: #000000;
660            --color-text-400: #1c1c1c;
661            --color-text-500: #292929;
662            --color-text-600: #353535;
663            --color-text-700: #424242;
664
665            --color-primary-50: #000000;
666            --color-primary-100: #000000;
667            --color-primary-400: #000000;
668            --color-primary-500: #000000;
669            --color-primary-600: #0b0b0b;
670            --color-primary-700: #181818;
671        }
672    }
673
674    *,
675    *::before,
676    *::after {
677        box-sizing: inherit;
678    }
679
680    html {
681        box-sizing: border-box;
682        height: 100%;
683        text-rendering: optimizeLegibility;
684        -webkit-font-smoothing: antialiased;
685        -moz-osx-font-smoothing: grayscale;
686        font-size: 16px;
687    }
688
689    body {
690        display: grid;
691        grid-template-rows: 1fr auto;
692        min-height: 100%;
693        margin: 0;
694        font-size: 1rem;
695    }
696</style>
697<script>
698    const computeRatio = () => {
699        const smallestViewportHeightElem = document.createElement('div');
700        smallestViewportHeightElem.style.position = 'fixed';
701        smallestViewportHeightElem.style.top = '0';
702        smallestViewportHeightElem.style.left = '0';
703        smallestViewportHeightElem.style.width = '100vw';
704        smallestViewportHeightElem.style.height = '100svh';
705        smallestViewportHeightElem.style.visibility = 'hidden';
706        smallestViewportHeightElem.style.pointerEvents = 'none';
707        document.documentElement.appendChild(smallestViewportHeightElem);
708
709        // measure once
710        const screenHeight = smallestViewportHeightElem.offsetHeight;
711        const screenWidth = smallestViewportHeightElem.offsetWidth;
712
713        smallestViewportHeightElem.remove();
714
715        document.documentElement.style.setProperty(
716            '--product-aspect-ratio',
717            (screenWidth / (screenHeight - 155)).toString(),
718        );
719    };
720
721    window.addEventListener('resize', computeRatio);
722    computeRatio();
723</script>
723
724
725<script
726    blocking="render"
727    async>
728    /**
729     * Scroll Restoration support for IOS
730     */
731    window.addEventListener('beforeunload', (event) => {
732        sessionStorage.setItem('scrollPosition', `${window.scrollY}`);
733    });
734
735    let persisted;
736    window.addEventListener('pageshow', (event) => {
737        if (event.persisted) {
738            persisted = true;
739            const scrollPosition = sessionStorage.getItem('scrollPosition');
740            if (scrollPosition && parseInt(scrollPosition) > 0) {
741                window.scrollTo(0, parseInt(scrollPosition));
742            }
743        }
744    });
745
746    /**
747     * Seemless animation while navigation and before page renders.
748     */
749    window.addEventListener('pagereveal', (event) => {
750        const isReducedMotion = window.matchMedia('(prefers-reduced-motion: reduce)').matches;
751        if (!persisted && event.viewTransition && !isReducedMotion) {
752            const elementRect = sessionStorage.getItem('elementRect');
753            const elementHtml = sessionStorage.getItem('elementHtml');
754            const destKey = sessionStorage.getItem('destKey');
755            const isMobile = window.matchMedia('(max-width: 767px)').matches;
756            if (!elementRect || !elementHtml || !destKey) {
757                if (isMobile) {
758                    // Scale out animation.
759                    document.body.classList.add('transition-view');
760                }
761                return;
762            }
763
764            // Product card animation on mobile.
765            if (isMobile) {
766                // Freeze scroll
767                document.body.style.overflow = 'hidden';
768                const wrapper = document.createElement('div');
769                wrapper.style =
770                    'position: absolute; inset: 0; background: var(--color-background-500); z-index: 30; transition: opacity .3s; pointer-events: none;';
771                const rect = JSON.parse(elementRect);
772                const child = document.createElement('div');
773                child.innerHTML = elementHtml;
774                child.style = `position: absolute; top: ${rect.top}px; left: ${rect.left}px; width: ${rect.width}px; height: ${rect.height}px; transition: transform .3s; transform-origin: top left`;
775                wrapper.appendChild(child);
776
777                // Show title and price overlay during MPA transition
778                const transitionPageDataRaw = sessionStorage.getItem('transitionPageData');
779                if (transitionPageDataRaw) {
780                    try {
781                        const pageData = JSON.parse(transitionPageDataRaw);
782                        const infoOverlay = document.createElement('div');
783                        infoOverlay.style = 'position: absolute; bottom: 0; left: 0; right: 0; z-index: 31; padding: 16px; background: linear-gradient(transparent, var(--color-background-500)); transition: opacity .3s;';
784
785                        let infoHtml = '';
786                        if (pageData.title) {
787                            infoHtml += `<h1 style="font-size: 1.125rem; font-weight: 500; margin: 0 0 4px; color: var(--color-text-500);">${pageData.title}</h1>`;
788                        }
789                        if (pageData.finalPrice && window.hyva?.formatPrice) {
790                            let priceHtml = '';
791                            if (pageData.regularPrice && pageData.regularPrice > pageData.finalPrice) {
792                                priceHtml += `<s style="color: #9ca3af; margin-right: 8px;">${window.hyva.formatPrice(pageData.regularPrice)}</s>`;
793                            }
794                            priceHtml += `<span class="price">${window.hyva.formatPrice(pageData.finalPrice)}</span>`;
795                            if (pageData.discountPercentage) {
796                                priceHtml += `<span style="background: var(--color-primary-500); color: white; font-size: 0.875rem; padding: 2px 8px; border-radius: 4px; margin-left: 8px; font-weight: 600;">-${pageData.discountPercentage}%</span>`;
797                            }
798                            infoHtml += `<div style="display: flex; align-items: center; gap: 4px; font-size: 1rem;">${priceHtml}</div>`;
799                        }
800
801                        if (infoHtml) {
802                            infoOverlay.innerHTML = infoHtml;
803                            wrapper.appendChild(infoOverlay);
804                        }
805                    } catch(e) {}
806                    sessionStorage.removeItem('transitionPageData');
807                }
808
809                document.body.appendChild(wrapper);
810                const interval = setInterval(() => {
811                    const destEl =
812                        document.querySelector(`[x-element-transition-dest="${isMobile ? 'mobile' : 'desktop'}-${destKey}"]`) ||
813                        document.querySelector(`[x-element-transition-dest="${destKey}"]`);
814                    if (!destEl) {
815                        return;
816                    }
817                    // animate into new position
818                    const {
819                        top: tt,
820                        left: tl,
821                        width: tw,
822                        height: th
823                    } = destEl.getBoundingClientRect();
824                    child.style.transform = `translate3d(${tl - rect.left}px, ${
825                        tt - rect.top
826                    }px, 0) scale(${tw / rect.width}, ${th / rect.height})`;
827                    child.ontransitionend = () => {
828                        wrapper.style.opacity = 0;
829                    };
830                    clearInterval(interval);
831                }, 100);
832            }
833        }
834        // Clean up
835        sessionStorage.removeItem('elementRect');
836        sessionStorage.removeItem('elementHtml');
837        sessionStorage.removeItem('destKey');
838        sessionStorage.removeItem('transitionPageData');
839        // Unfreeze scroll
840        document.body.style.overflow = '';
841        document.body.classList.remove('transition-view');
842    });
843</script>
843
844</head>
845<body id="html-body" class="gradient bg-bg-500 cms-bienvenue-sur-esprit-ktm cms-index-index page-layout-1column">
846<svg
847    xmlns="http://www.w3.org/2000/svg"
848    preserveAspectRatio="xMinYMin meet"
849    class="sr-only"
850>
851    <defs>
852        <filter
853            id="border"
854            x="-50%"
855            y="-50%"
856            width="200%"
857            height="200%"
858        >
859            <!-- Apply the color from the CSS variable -->
860            <feFlood
861                flood-color="var(--color-background-500)"
862                result="color"
863            />
864
865            <!-- Use feMorphology to create a sharper outline -->
866            <feMorphology
867                in="SourceAlpha"
868                operator="dilate"
869                radius="1.5"
870                result="dilated"
871            />
872
873            <!-- Composite the color with the dilated result -->
874            <feComposite
875                in="color"
876                in2="dilated"
877                operator="in"
878                result="coloredDilated"
879            />
880
881            <!-- Merge the original graphic with the colored dilated result -->
882            <feMerge>
883                <feMergeNode in="coloredDilated" />
884                <feMergeNode in="SourceGraphic" />
885            </feMerge>
886        </filter>
887    </defs>
888</svg><!-- Google Tag Manager (noscript) -->
889<noscript><iframe sandbox src="https://www.googletagmanager.com/ns.html?id=GTM-MFX824G"
890height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
891<!-- End Google Tag Manager (noscript) -->
892
893
894<input name="form_key" type="hidden" value="14z95XAPBxNEYTiS" />
895    <noscript>
896        <section
897            class="message global noscript border-b-2 border-blue-500 bg-blue-50 shadow-none m-0 px-0 rounded-none font-normal"
898            aria-labelledby="messageGlobalNoScriptMessage"
899        >
900            <div class="container text-center">
901                <p id="messageGlobalNoScriptMessage">
902                    <strong>Javascript est désactivé dans votre navigateur.</strong>
903                    <span>
904                        Pour une expérience optimale sur notre site, veuillez autoriser Javascript sur votre navigateur.                    </span>
905                </p>
906            </div>
907        </section>
908    </noscript>
909
910
911<script>
912    document.body.addEventListener('touchstart', () => {}, {passive: true})
913</script>
vendor: 1 bytes, line 913
913
914<script>
915    /**
916     * Ham AttributeResolver configuration.
917     * Provides dynamic attribute codes and stock values based on current store configuration.
918     */
919    window.hamAttributeConfig = {
920        /**
921         * Attribute code mappings (logical name => actual attribute code)
922         * @example { "stock": "ham_stock", "date": "ham_date", "replace": "ham_replace", "dealer_stock": "ham_dealer_stock" }
923         */
924        attributes: {"stock":"ham_stock","date":"ham_date","replace":"ham_replace","dealer_stock":"ham_stock","dealer_date":"ham_date"},
925
926        /**
927         * Stock value constants
928         * @example { "AVAILABLE": 25339, "EXTENDED_DELAY": 25340, "UNAVAILABLE": 27658, "REPLENISHMENT": 25338 }
929         */
930        stockValues: {"AVAILABLE":25339,"EXTENDED_DELAY":25340,"UNAVAILABLE":27658,"REPLENISHMENT":25338},
931
932        /**
933         * The actual attribute code for stock filtering in GraphQL
934         * @example "ham_stock" or "ham_dealer_stock"
935         */
936        stockAttributeCode: "ham_stock",
937
938        /**
939         * Available stock IDs for product filtering (Disponible + Délais rallongés)
940         * @example [25339, 25340]
941         */
942        availableStockIds: [25339,25340]    };
943</script>
943
944<div class="flex max-w-screen flex-col bg-bg-500"><header class="page-header contents"><a
945    class="skip-to-content-link button sr-only"
946    href="#MainContent"
947    tabindex="1"
948>
949    Aller au contenu</a>
950
951<div
952    x-data
953    x-intersect:enter="$store.main.isHeaderShadowVisible = false"
954    x-intersect:leave="$store.main.isHeaderShadowVisible = true"
955    @private-content-loaded.window="$store.main.updatePrivateContent($event.detail.data)"></div>
956
957<header class="header sticky left-0 right-0 top-0 z-[36] flex flex-col justify-items-stretch py-3 mx-auto w-full"
958    x-data="{
959            isMenuVisible: false,
960            isCartVisible: false,
961            isWishlistVisible: false,
962            isAccountVisible: false,
963        }"
964    x-init="
965            $watch('$store.popup.currentPopup', (value) => {
966                isMenuVisible = value === 'menu';
967                isCartVisible = value === 'cart';
968                isWishlistVisible = value === 'wishlist';
969                isAccountVisible = value === 'account';
970            })
971        "
972    :style="`opacity: ${$store.main.opacityOnZoom}`">
973    <div class="flex flex-col justify-items-stretch py-3 mx-auto w-full content-wrapper">
974        <div id="header-shadow"
975            class="pointer-events-none absolute -top-1 left-0 right-0 -z-10 h-[calc(100%+20px)] -translate-y-full bg-gradient-to-b from-shadow to-transparent transition-all duration-300 ease-linear will-change-transform md:hidden"
976            :class="{
977            'translate-y-0': $store.main.isHeaderShadowVisible,
978            '-translate-y-full': !$store.main.isHeaderShadowVisible
979        }"></div>
980
981        <div class="col-start-1 grid w-full grid-cols-header rounded-t-md  items-center bg-white md:flex md:justify-between md:relative md:z-10"
982            :class="{
983                'md:drop-shadow-2xl': $store.main.isHeaderShadowVisible,
984            }"
985            x-data=" {n:0}">
986            <div class="py-3 md:px-3 transition-all md:flex md:flex-1 z-[10]">
987                <div
988    class="resizable resizable--menu md:pointer-events-auto resizable--left"
989    x-data="{ isTransitioning: false }"
990    style="--initial-width: 105; --initial-height: 56; --target-width: 105; --target-height: 56"
991    :style="
992        {
993            '--initial-width': 105,
994            '--initial-height': 56,
995            '--target-width': `${$store.resizable._current['menu-desktop']?.width || 105}`,
996            '--target-height': `${$store.resizable._current['menu-desktop']?.height || 56}`
997        }
998    "
999    :class="
1000        {
1001            'resizable--visible': $store.resizable._current['menu-desktop'],
1002            'resizable--transitioning': isTransitioning
1003        }
1004    "
1005    x-init="$store.resizable._register({id: 'menu-desktop'})"
1006    >
1007    <div
1008        class="resizable__wrapper"
1009        x-a11y-trap="$store.resizable._current['menu-desktop']"
1010    >
1011        <div class="resizable__side resizable__side--l"></div>
1012        <div class="resizable__corner resizable__corner--tl"></div>
1013        <div class="resizable__side resizable__side--t"></div>
1014        <div class="resizable__corner resizable__corner--tr"></div>
1015        <div class="resizable__side resizable__side--r"></div>
1016        <div class="resizable__corner resizable__corner--br"></div>
1017        <div class="resizable__side resizable__side--b"></div>
1018        <div class="resizable__corner resizable__corner--bl"></div>
1019        <div
1020            class="resizable__bg"
1021            @transitionstart="isTransitioning = true"
1022            @transitionend="isTransitioning = false; "
1023        ></div>
1024        <div
1025            @click="$store.resizable.show('menu-desktop')"
1026            id="menu-desktop-initial"
1027            class="resizable__content resizable__content--trigger"
1028        >
1029            <button
1030    x-a11y-trap-element="$store.transition.isPreviewActive && !$store.resizable.isVisible()"
1031    @click="!isMenuVisible ? $store.popup.showPopup('menu') : $store.popup.hidePopup('menu')"
1032    type="button"
1033    aria-label="Ouvrir le menu"
1034    :aria-controls="$store.main.isMobile ? 'menu' : 'menu-desktop'"
1035    :aria-expanded="$store.main.isMobile ? $store.popup.currentPopup === 'menu' : $store.resizable.isVisible('menu-desktop')"
1036    class="contrast-border md:button--filled-secondary button icon-button icon-button--size-lg md:w-auto md:gap-3 md:px-4  "
1037    :class="{'hidden': !$store.main.isMobile && $store.resizable.isVisible('menu-desktop')}"
1038    tabindex="2">
1039    <div
1040        class="contents text-text-50"
1041        :class="{
1042            'invisible': isMenuVisible,
1043        }"
1044        x-show="!isMenuVisible">
1045        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" aria-hidden="true" width="24" height="24" role="img">
1046    <path fill-rule="evenodd" d="M3 7a1 1 0 011-1h12a1 1 0 110 2H4a1 1 0 01-1-1zM3 13a1 1 0 011-1h12a1 1 0 110 2H4a1 1 0 01-1-1z" clip-rule="evenodd"/>
1047</svg>
1048    </div>
1049    <div
1050        class="contents"
1051        :class="{
1052            'invisible': !isMenuVisible,
1053        }"
1054        x-show="isMenuVisible"
1055        style="display: none;">
1056        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
1057    <path d="m16.192 6.344-4.243 4.242-4.242-4.242-1.414 1.414L10.535 12l-4.242 4.242 1.414 1.414 4.242-4.242 4.243 4.242 1.414-1.414L13.364 12l4.242-4.242z">
1058    </path>
1059</svg>
1060    </div>
1061    <span class="text-md font-semibold text-text-50 max-md:hidden ">Menu</span>
1062</button>
1063        </div>
1064        <div
1065            class="resizable__content resizable__content--portal overflow-y-hidden"
1066        >
1067            <div
1068                id="menu-desktop"
1069                class="resizable__scroll"
1070                :inert="!$store.resizable._current['menu-desktop']"
1071            ></div>
1072        </div>
1073        <div
1074            id="menu-desktop-fixed"
1075            class="resizable__fixed"
1076        ></div>
1077    </div>
1078</div>
1079            </div>
1080            <div class="flex items-center md:hidden">
1081                
1082    <picture class="object-contain&#x20;h-&#x5B;40px&#x5D;&#x20;w-auto&#x20;md&#x3A;h-&#x5B;56px&#x5D;"><source type="image/webp" srcset="https://www.esprit-ktm.com/media/podium/384293_KTM_Authorized_Dealer_Logo_Dark-sRGB_KTM_
1082Logo___Podium_KTM_Partner___Sublogos.webp"><img src="https://www.esprit-ktm.com/media/podium/384293_KTM_Authorized_Dealer_Logo_Dark-sRGB_KTM_Logo___Podium_KTM_Partner___Sublogos.jpg" class="object-contain&#x20;h-&#x5B;40px&#x5D;&#x20;w-auto&#x20;md&#x3A;h-&#x5B;56px&#x5D;" alt="Podium&#x20;de&#x20;la&#x20;boutique" width="400" height="219" loading="lazy" fetchpriority="low" decoding="async" loading="lazy" /></picture>
1083            </div>
1084
1085            <div class="md:py-3 md:px-3 col-start-4 flex items-center justify-center md:flex-shrink-0">
1086                <a href="https://www.esprit-ktm.com/"
1087                    x-element-transition-trigger
1088                    class="rounded-sm px-3 py-2 md:p-0 text-xl font-semibold cursor-pointer"
1089                    aria-label="Aller à la page d'accueil">
1090                    
1091<div class="flex items-center gap-4">
1092    <!-- Desktop/Mobile logo -->
1093    <a href="https://www.esprit-ktm.com/"
1094        title="Satoshi&#x20;theme"
1095        aria-label="store logo">
1096        <picture class="object-contain h-[40px] w-auto md:h-[56px] md:transition-all"><source type="image/webp" srcset="https://www.esprit-ktm.com/media/logo/stores/9/ESPRIT_KTM_6_.webp"><img src="https://www.esprit-ktm.com/media/logo/stores/9/ESPRIT_KTM_6_.png" alt="Esprit-KTM.com&#x20;-&#x20;Toutes&#x20;les&#x20;pi&#xE8;ces&#x20;d&#xE9;tach&#xE9;es&#x20;KTM,&#x20;vues&#x20;&#xE9;clat&#xE9;es&#x20;et&#x20;microfiches,&#x20;accessoires,&#x20;&#xE9;quipement&#x20;et&#x20;v&#xEA;tements&#x20;KTM" width="189" height="64" loading="eager" fetchpriority="high" decoding="async" class="object-contain h-[40px] w-auto md:h-[56px] md:transition-all" /></picture>
1097    </a>
1098
1099
1100
1101    <div class="hidden md:flex items-center gap-4">
1102        <div class="h-8 w-[1px] bg-gray-300"></div>
1103        
1104    <picture class="object-contain&#x20;h-&#x5B;40px&#x5D;&#x20;w-auto&#x20;md&#x3A;h-&#x5B;56px&#x5D;&#x20;md&#x3A;transition-all"><source type="image/webp" srcset="https://www.esprit-ktm.com/media/podium/384293_KTM_Authorized_Dealer_Logo_Dark-sRGB_KTM_Logo___Podium_KTM_Partner___Sublogos.webp"><img src="https://www.esprit-ktm.com/media/podium/384293_KTM_Authorized_Dealer_Logo_Dark-sRGB_KTM_Logo___Podium_KTM_Partner___Sublogos.jpg" class="object-contain&#x20;h-&#x5B;40px&#x5D;&#x20;w-auto&#x20;md&#x3A;h-&#x5B;56px&#x5D;&#x20;md&#x3A;transition-all" alt="Podium&#x20;de&#x20;la&#x20;boutique" width="400" height="219" loading="lazy" fetchpriority="low" decoding="async" loading="lazy" /></picture>
1105    </div>
1106
1107</div>
1108                </a>
1109            </div>
1110
1111            <div class="py-3 md:px-3 contents md:flex md:flex-1 md:justify-end">
1112                <div class="transition-all flex items-center z-10">
1113                    <div
1114    class="resizable resizable--search max-md:hidden md:pointer-events-auto resizable--right"
1115    x-data="{ isTransitioning: false }"
1116    style="--initial-width: 56; --initial-height: 56; --target-width: 56; --target-height: 56"
1117    :style="
1118        {
1119            '--initial-width': 56,
1120            '--initial-height': 56,
1121            '--target-width': `${$store.resizable._current['search-desktop']?.width || 56}`,
1122            '--target-height': `${$store.resizable._current['search-desktop']?.height || 56}`
1123        }
1124    "
1125    :class="
1126        {
1127            'resizable--visible': $store.resizable._current['search-desktop'],
1128            'resizable--transitioning': isTransitioning
1129        }
1130    "
1131    x-init="$store.resizable._register({id: 'search-desktop'})"
1132    >
1133    <div
1134        class="resizable__wrapper"
1135        x-a11y-trap="$store.resizable._current['search-desktop']"
1136    >
1137        <div class="resizable__side resizable__side--l"></div>
1138        <div class="resizable__corner resizable__corner--tl"></div>
1139        <div class="resizable__side resizable__side--t"></div>
1140        <div class="resizable__corner resizable__corner--tr"></div>
1141        <div class="resizable__side resizable__side--r"></div>
1142        <div class="resizable__corner resizable__corner--br"></div>
1143        <div class="resizable__side resizable__side--b"></div>
1144        <div class="resizable__corner resizable__corner--bl"></div>
1145        <div
1146            class="resizable__bg"
1147            @transitionstart="isTransitioning = true"
1148            @transitionend="isTransitioning = false; $store.resizable.isVisible(`search-desktop`) ? document.querySelector(`#searchInput`).focus(): null"
1149        ></div>
1150        <div
1151            @click="$store.resizable.show('search-desktop')"
1152            id="search-desktop-initial"
1153            class="resizable__content resizable__content--trigger"
1154        >
1155            
1156<button
1157    :tabindex="$store.resizable.isVisible('search-desktop') ? -1 : 0"
1158    class="contrast-border md:button--filled-secondary button ghost-primary icon-button icon-button--size-lg"
1159    aria-label="Ouvrir la recherche"
1160    @keydown.space.prevent="$store.resizable.show('search-desktop')"
1161    @keydown.enter.prevent="$store.resizable.show('search-desktop')"
1162    x-a11y-trap-element="$store.transition.isPreviewActive && !$store.resizable.isVisible()">
1163    <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" class="text-text-50" width="24" height="24" role="img">
1164    <path d="M10 18a7.952 7.952 0 0 0 4.897-1.688l4.396 4.396 1.414-1.414-4.396-4.396A7.952 7.952 0 0 0 18 10c0-4.411-3.589-8-8-8s-8 3.589-8 8 3.589 8 8 8zm0-14c3.309 0 6 2.691 6 6s-2.691 6-6 6-6-2.691-6-6 2.691-6 6-6z">
1165    </path>
1166</svg>
1167</button>
1168        </div>
1169        <div
1170            class="resizable__content resizable__content--portal overflow-y-hidden"
1171        >
1172            <div
1173                id="search-desktop"
1174                class="resizable__scroll"
1175                :inert="!$store.resizable._current['search-desktop']"
1176            ></div>
1177        </div>
1178        <div
1179            id="search-desktop-fixed"
1180            class="resizable__fixed"
1181        ></div>
1182    </div>
1183</div>
1184                    <div
1185    class="resizable md:hidden resizable--right"
1186    x-data="{ isTransitioning: false }"
1187    style="--initial-width: 56; --initial-height: 56; --target-width: 56; --target-height: 56"
1188    :style="
1189        {
1190            '--initial-width': 56,
1191            '--initial-height': 56,
1192            '--target-width': `${$store.resizable._current['search-btn-mobile']?.width || 56}`,
1193            '--target-height': `${$store.resizable._current['search-btn-mobile']?.height || 56}`
1194        }
1195    "
1196    :class="
1197        {
1198            'resizable--visible': $store.resizable._current['search-btn-mobile'],
1199            'resizable--transitioning': isTransitioning
1200        }
1201    "
1202    x-init="$store.resizable._register({id: 'search-btn-mobile'})"
1203    >
1204    <div
1205        class="resizable__wrapper"
1206        x-a11y-trap="$store.resizable._current['search-btn-mobile']"
1207    >
1208        <div class="resizable__side resizable__side--l"></div>
1209        <div class="resizable__corner resizable__corner--tl"></div>
1210        <div class="resizable__side resizable__side--t"></div>
1211        <div class="resizable__corner resizable__corner--tr"></div>
1212        <div class="resizable__side resizable__side--r"></div>
1213        <div class="resizable__corner resizable__corner--br"></div>
1214        <div class="resizable__side resizable__side--b"></div>
1215        <div class="resizable__corner resizable__corner--bl"></div>
1216        <div
1217            class="resizable__bg"
1218            @transitionstart="isTransitioning = true"
1219            @transitionend="isTransitioning = false; "
1220        ></div>
1221        <div
1222            @click="$store.resizable.show('search-btn-mobile')"
1223            id="search-btn-mobile-initial"
1224            class="resizable__content resizable__content--trigger"
1225        >
1226            
1227<button
1228    class="contrast-border md:button--filled-secondary button ghost-primary icon-button icon-button--size-lg"
1229    aria-label="Ouvrir la recherche"
1230    @click.prevent="
1231        !isMenuVisible ? $store.popup.showPopup('menu') : $store.popup.hidePopup('menu')
1232        setTimeout(() => document.getElementById('searchInput')?.focus(), 150);
1233    ">
1234    <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" class="text-text-50" width="24" height="24" role="img">
1235    <path d="M10 18a7.952 7.952 0 0 0 4.897-1.688l4.396 4.396 1.414-1.414-4.396-4.396A7.952 7.952 0 0 0 18 10c0-4.411-3.589-8-8-8s-8 3.589-8 8 3.589 8 8 8zm0-14c3.309 0 6 2.691 6 6s-2.691 6-6 6-6-2.691-6-6 2.691-6 6-6z">
1236    </path>
1237</svg>
1238</button>
1239        </div>
1240        <div
1241            class="resizable__content resizable__content--portal overflow-y-hidden"
1242        >
1243            <div
1244                id="search-btn-mobile"
1245                class="resizable__scroll"
1246                :inert="!$store.resizable._current['search-btn-mobile']"
1247            ></div>
1248        </div>
1249        <div
1250            id="search-btn-mobile-fixed"
1251            class="resizable__fixed"
1252        ></div>
1253    </div>
1254</div>
1255                    <div
1256    class="resizable resizable--account md:pointer-events-auto resizable--right"
1257    x-data="{ isTransitioning: false }"
1258    style="--initial-width: 56; --initial-height: 56; --target-width: 56; --target-height: 56"
1259    :style="
1260        {
1261            '--initial-width': 56,
1262            '--initial-height': 56,
1263            '--target-width': `${$store.resizable._current['account-desktop']?.width || 56}`,
1264            '--target-height': `${$store.resizable._current['account-desktop']?.height || 56}`
1265        }
1266    "
1267    :class="
1268        {
1269            'resizable--visible': $store.resizable._current['account-desktop'],
1270            'resizable--transitioning': isTransitioning
1271        }
1272    "
1273    x-init="$store.resizable._register({id: 'account-desktop'})"
1274    >
1275    <div
1276        class="resizable__wrapper"
1277        x-a11y-trap="$store.resizable._current['account-desktop']"
1278    >
1279        <div class="resizable__side resizable__side--l"></div>
1280        <div class="resizable__corner resizable__corner--tl"></div>
1281        <div class="resizable__side resizable__side--t"></div>
1282        <div class="resizable__corner resizable__corner--tr"></div>
1283        <div class="resizable__side resizable__side--r"></div>
1284        <div class="resizable__corner resizable__corner--br"></div>
1285        <div class="resizable__side resizable__side--b"></div>
1286        <div class="resizable__corner resizable__corner--bl"></div>
1287        <div
1288            class="resizable__bg"
1289            @transitionstart="isTransitioning = true"
1290            @transitionend="isTransitioning = false; "
1291        ></div>
1292        <div
1293            @click="$store.resizable.show('account-desktop')"
1294            id="account-desktop-initial"
1295            class="resizable__content resizable__content--trigger"
1296        >
1297            
1298<button
1299    class="contrast-border md:button--filled-secondary button ghost-primary icon-button icon-button--size-lg col-start-5"
1300    :class="{'hidden': !$store.main.isMobile && $store.resizable.isVisible('account-desktop')}"
1301    x-a11y-trap-element="$store.transition.isPreviewActive && !$store.resizable.isVisible()"
1302    @click="!isAccountVisible ? $store.account.showAccount() : $store.account.hideAccount()"
1303    :tabindex="$store.resizable.isVisible('account-desktop') ? -1 : 0"
1304    type="button"
1305    aria-label="View account"
1306>
1307    <div
1308        class="contents text-text-50"
1309        x-show="!isAccountVisible"
1310    >
1311        <span>
1312          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
1313    <path d="M12.004 2a5 5 0 1 0 0 10 5 5 0 0 0 0-10Zm0 8a3 3 0 1 1 0-6 3 3 0 0 1 0 6Zm9 11v-1a7 7 0 0 0-7-7h-4a7 7 0 0 0-7 7v1h2v-1a5 5 0 0 1 5-5h4a5 5 0 0 1 5 5v1h2Z"/>
1314</svg>
1315        </span>
1316    </div>
1317
1318    <div
1319        class="contents"
1320        x-show="isAccountVisible"
1321        style="display: none;"
1322    >
1323        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
1324    <path d="m16.192 6.344-4.243 4.242-4.242-4.242-1.414 1.414L10.535 12l-4.242 4.242 1.414 1.414 4.242-4.242 4.243 4.242 1.414-1.414L13.364 12l4.242-4.242z">
1325    </path>
1326</svg>
1327    </div>
1328</button>
1329        </div>
1330        <div
1331            class="resizable__content resizable__content--portal overflow-y-hidden"
1332        >
1333            <div
1334                id="account-desktop"
1335                class="resizable__scroll"
1336                :inert="!$store.resizable._current['account-desktop']"
1337            ></div>
1338        </div>
1339        <div
1340            id="account-desktop-fixed"
1341            class="resizable__fixed"
1342        ></div>
1343    </div>
1344</div>
1345                                            <div
1346    class="resizable resizable--wishlist md:pointer-events-auto resizable--right"
1347    x-data="{ isTransitioning: false }"
1348    style="--initial-width: 56; --initial-height: 56; --target-width: 56; --target-height: 56"
1349    :style="
1350        {
1351            '--initial-width': 56,
1352            '--initial-height': 56,
1353            '--target-width': `${$store.resizable._current['wishlist-desktop']?.width || 56}`,
1354            '--target-height': `${$store.resizable._current['wishlist-desktop']?.height || 56}`
1355        }
1356    "
1357    :class="
1358        {
1359            'resizable--visible': $store.resizable._current['wishlist-desktop'],
1360            'resizable--transitioning': isTransitioning
1361        }
1362    "
1363    x-init="$store.resizable._register({id: 'wishlist-desktop'})"
1364        x-cloak
1365    x-show="$store.main?.isUserLoggedIn"
1366    >
1367    <div
1368        class="resizable__wrapper"
1369        x-a11y-trap="$store.resizable._current['wishlist-desktop']"
1370    >
1371        <div class="resizable__side resizable__side--l"></div>
1372        <div class="resizable__corner resizable__corner--tl"></div>
1373        <div class="resizable__side resizable__side--t"></div>
1374        <div class="resizable__corner resizable__corner--tr"></div>
1375        <div class="resizable__side resizable__side--r"></div>
1376        <div class="resizable__corner resizable__corner--br"></div>
1377        <div class="resizable__side resizable__side--b"></div>
1378        <div class="resizable__corner resizable__corner--bl"></div>
1379        <div
1380            class="resizable__bg"
1381            @transitionstart="isTransitioning = true"
1382            @transitionend="isTransitioning = false; "
1383        ></div>
1384        <div
1385            @click="$store.resizable.show('wishlist-desktop')"
1386            id="wishlist-desktop-initial"
1387            class="resizable__content resizable__content--trigger"
1388        >
1389            
1390<a
1391    href="https://www.esprit-ktm.com/wishlist/"
1392        x-data="{
1393        get isWishlistVisible() {
1394            return $store.main.isMobile
1395                ? $store.popup.currentPopup === 'wishlist'
1396                : $store.resizable.isVisible('wishlist-desktop')
1397        }
1398    }"
1399    @click.prevent="$store.wishlist.handleWishlistButtonClick($event, isWishlistVisible)"
1400        class="hidden md:flex header-wishlist-btn contrast-border md:button--filled-secondary button ghost-primary icon-button icon-button--size-lg relative transition-transform duration-300"
1401    aria-label="Voir&#x20;la&#x20;liste&#x20;de&#x20;souhaits"
1402    x-cloak
1403    x-show="&#x24;store.main&#x3F;.isUserLoggedIn&#x20;&amp;&amp;&#x20;&#x21;&#x28;&#x21;&#x24;store.main.isMobile&#x20;&amp;&amp;&#x20;&#x24;store.resizable.isVisible&#x28;&#x27;wishlist-desktop&#x27;&#x29;&#x29;">
1404    <div class="contents text-black relative" x-show="!isWishlistVisible">
1405        <span
1406            x-text="$store.wishlist.wishlistItems.length ?? 0"
1407            class="text-text-on-primary-bg absolute bottom-0 left-0 z-50 rounded bg-primary-500 px-1.5 py-0.5 text-xs md:bottom-1 md:left-1">
1408        </span>
1409        <span
1410                        x-show="$store.wishlist.wishlistItems.length === 0">
1411            <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="fill-none stroke-2" width="24" height="24" style="fill:none;stroke-width:2px" role="img">
1412  <path stroke-linecap="round" stroke-linejoin="round" d="M4.318 6.318a4.5 4.5 0 000 6.364L12 20.364l7.682-7.682a4.5 4.5 0 00-6.364-6.364L12 7.636l-1.318-1.318a4.5 4.5 0 00-6.364 0z"/>
1413<title>Liste de souhaits</title></svg>
1414        </span>
1415        <span
1416                        style="display: none"
1417                        x-show="$store.wishlist.wishlistItems.length > 0">
1418            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" width="24" height="24" role="img">
1419  <path fill-rule="evenodd" d="M3.172 5.172a4 4 0 015.656 0L10 6.343l1.172-1.171a4 4 0 115.656 5.656L10 17.657l-6.828-6.829a4 4 0 010-5.656z" clip-rule="evenodd"/>
1420<title>Liste de souhaits</title></svg>
1421        </span>
1422    </div>
1423    <div class="contents" x-show="isWishlistVisible" style="display: none;">
1424        <span
1425                        x-show="$store.wishlist.wishlistItems.length === 0">
1426            <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="fill-none stroke-2" width="24" height="24" style="fill:none;stroke-width:2px" role="img">
1427  <path stroke-linecap="round" stroke-linejoin="round" d="M4.318 6.318a4.5 4.5 0 000 6.364L12 20.364l7.682-7.682a4.5 4.5 0 00-6.364-6.364L12 7.636l-1.318-1.318a4.5 4.5 0 00-6.364 0z"/>
1428<title>Liste de souhaits</title></svg>
1429        </span>
1430        <span
1431                        style="display: none"
1432                        x-show="$store.wishlist.wishlistItems.length > 0">
1433            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" width="24" height="24" role="img">
1434  <path fill-rule="evenodd" d="M3.172 5.172a4 4 0 015.656 0L10 6.343l1.172-1.171a4 4 0 115.656 5.656L10 17.657l-6.828-6.829a4 4 0 010-5.656z" clip-rule="evenodd"/>
1435<title>Liste de souhaits</title></svg>
1436        </span>
1437    </div>
1438</a>        </div>
1439        <div
1440            class="resizable__content resizable__content--portal overflow-y-hidden"
1441        >
1442            <div
1443                id="wishlist-desktop"
1444                class="resizable__scroll"
1445                :inert="!$store.resizable._current['wishlist-desktop']"
1446            ></div>
1447        </div>
1448        <div
1449            id="wishlist-desktop-fixed"
1450            class="resizable__fixed"
1451        ></div>
1452    </div>
1453</div>
1454                                        <div
1455    class="resizable resizable--cart md:pointer-events-auto resizable--right"
1456    x-data="{ isTransitioning: false }"
1457    style="--initial-width: 56; --initial-height: 56; --target-width: 56; --target-height: 56"
1458    :style="
1459        {
1460            '--initial-width': 56,
1461            '--initial-height': 56,
1462            '--target-width': `${$store.resizable._current['cart-desktop']?.width || 56}`,
1463            '--target-height': `${$store.resizable._current['cart-desktop']?.height || 56}`
1464        }
1465    "
1466    :class="
1467        {
1468            'resizable--visible': $store.resizable._current['cart-desktop'],
1469            'resizable--transitioning': isTransitioning
1470        }
1471    "
1472    x-init="$store.resizable._register({id: 'cart-desktop'})"
1473    >
1474    <div
1475        class="resizable__wrapper"
1476        x-a11y-trap="$store.resizable._current['cart-desktop']"
1477    >
1478        <div class="resizable__side resizable__side--l"></div>
1479        <div class="resizable__corner resizable__corner--tl"></div>
1480        <div class="resizable__side resizable__side--t"></div>
1481        <div class="resizable__corner resizable__corner--tr"></div>
1482        <div class="resizable__side resizable__side--r"></div>
1483        <div class="resizable__corner resizable__corner--br"></div>
1484        <div class="resizable__side resizable__side--b"></div>
1485        <div class="resizable__corner resizable__corner--bl"></div>
1486        <div
1487            class="resizable__bg"
1488            @transitionstart="isTransitioning = true"
1489            @transitionend="isTransitioning = false; "
1490        ></div>
1491        <div
1492            @click="$store.resizable.show('cart-desktop')"
1493            id="cart-desktop-initial"
1494            class="resizable__content resizable__content--trigger"
1495        >
1496            
1497<button
1498    x-init="() => {
1499        $store.cart.setCartTotals(&#x7B;&quot;subtotal&quot;&#x3A;&quot;23.0000&quot;,&quot;base_subtotal&quot;&#x3A;&quot;23.0000&quot;,&quot;subtotal_with_discount&quot;&#x3A;&quot;23.0000&quot;,&quot;base_subtotal_with_discount&quot;&#x3A;&quot;23.0000&quot;,&quot;tax_amount&quot;&#x3A;&quot;4.6000&quot;,&quot;base_tax_amount&quot;&#x3A;&quot;4.6000&quot;,&quot;shipping_amount&quot;&#x3A;&quot;0.0000&quot;,&quot;base_shipping_amount&quot;&#x3A;&quot;0.0000&quot;,&quot;shipping_tax_amount&quot;&#x3A;&quot;0.0000&quot;,&quot;base_shipping_tax_amount&quot;&#x3A;&quot;0.0000&quot;,&quot;discount_amount&quot;&#x3A;&quot;0.0000&quot;,&quot;base_discount_amount&quot;&#x3A;&quot;0.0000&quot;,&quot;grand_total&quot;&#x3A;&quot;27.6000&quot;,&quot;base_grand_total&quot;&#x3A;&quot;27.6000&quot;,&quot;shipping_discount_amount&quot;&#x3A;&quot;0.0000&quot;,&quot;base_shipping_discount_amount&quot;&#x3A;&quot;0.0000&quot;,&quot;subtotal_incl_tax&quot;&#x3A;&quot;27.6000&quot;,&quot;shipping_incl_tax&quot;&#x3A;&quot;0.0000&quot;,&quot;base_shipping_incl_tax&quot;&#x3A;&quot;0.0000&quot;,&quot;total_segments&quot;&#x3A;&#x5B;&#x7B;&quot;code&quot;&#x3A;&quot;subtotal&quot;,&quot;title&quot;&#x3A;&quot;Sous-total&quot;,&quot;value&quot;&#x3A;&quot;23.0000&quot;,&quot;area&quot;&#x3A;null,&quot;extension_attributes&quot;&#x3A;&#x7B;&quot;tax_details&quot;&#x3A;&#x5B;&#x7B;&#x7D;&#x5D;&#x7D;&#x7D;,&#x7B;&quot;code&quot;&#x3A;&quot;shipping&quot;,&quot;title&quot;&#x3A;&quot;Frais&#x20;de&#x20;port&quot;,&quot;value&quot;&#x3A;&quot;0.0000&quot;,&quot;area&quot;&#x3A;null,&quot;extension_attributes&quot;&#x3A;&#x7B;&quot;tax_details&quot;&#x3A;&#x5B;&#x7B;&#x7D;&#x5D;&#x7D;&#x7D;,&#x7B;&quot;code&quot;&#x3A;&quot;tax&quot;,&quot;title&quot;&#x3A;&quot;TVA&quot;,&quot;value&quot;&#x3A;&quot;4.6000&quot;,&quot;area&quot;&#x3A;null,&quot;extension_attributes&quot;&#x3A;&#x7B;&quot;tax_grandtotal_details&quot;&#x3A;&#x5B;&#x7B;&quot;amount&quot;&#x3A;4.6,&quot;rates&quot;&#x3A;&#x5B;&#x7B;&quot;percent&quot;&#x3A;20,&quot;title&quot;&#x3A;&quot;TVA&#x20;20&#x25;&quot;&#x7D;&#x5D;,&quot;group_id&quot;&#x3A;1&#x7D;&#x5D;&#x7D;&#x7D;,&#x7B;&quot;code&quot;&#x3A;&quot;grand_total&quot;,&quot;title&quot;&#x3A;&quot;Montant&#x20;global&quot;,&quot;value&quot;&#x3A;&quot;27.6000&quot;,&quot;area&quot;&#x3A;&quot;footer&quot;,&quot;extension_attributes&quot;&#x3A;&#x7B;&quot;tax_details&quot;&#x3A;&#x5B;&#x7B;&#x7D;&#x5D;&#x7D;&#x7D;&#x5D;,&quot;coupon_code&quot;&#x3A;null,&quot;items&quot;&#x3A;&#x5B;&#x7B;&#x7D;,&#x7B;&#x7D;&#x5D;,&quot;items_qty&quot;&#x3A;&quot;2.0000&quot;,&quot;base_currency_code&quot;&#x3A;&quot;EUR&quot;,&quot;quote_currency_code&quot;&#x3A;&quot;EUR&quot;,&quot;extension_attributes&quot;&#x3A;&#x5B;&#x5D;,&quot;is_virtual&quot;&#x3A;0,&quot;review_totals_display_mode&quot;&#x3A;&quot;excluding&quot;,&quot;review_shipping_display_mode&quot;&#x3A;&quot;excluding&quot;,&quot;include_tax_in_grand_total&quot;&#x3A;false,&quot;selected_shipping_method&quot;&#x3A;null,&quot;is_zero_tax_displayed&quot;&#x3A;false,&quot;is_full_tax_summary_displayed&quot;&#x3A;false&#x7D;)
1500        $store.cart.setErrorMessage(``)
1501        $store.cart.setProductCartErrorMessage(``)
1502    }"
1503    x-data="{
1504        get cartItems() { return $store.cart.cartItems },
1505    }"
1506    id="cart-button"
1507    class="contrast-border md:button--filled-secondary button ghost-primary icon-button icon-button--size-lg col-start-5"
1508    x-a11y-trap-element="$store.transition.isPreviewActive && !$store.resizable.isVisible()"
1509    @click="!isCartVisible ? $store.cart.showCart() : $store.cart.hideCart()"
1510    type="button"
1511    aria-label="Voir le panier"
1512    :class="{'hidden': !$store.main.isMobile &&   $store.resizable.isVisible('cart-desktop')}">
1513    <div
1514        class="contents text-text-50 relative"
1515        x-show="!isCartVisible">
1516        <span
1517            x-text="cartItems.reduce((total, item) => total + Number(item.qty), 0)"
1518            class="text-text-on-primary-bg absolute bottom-0 left-0 z-50 rounded bg-primary-500 px-1.5 py-0.5 text-xs md:bottom-1 md:left-1">
1519        </span>
1520        <span
1521                        style="display: none"
1522                        x-show="$store.main.totalCartQty === 0">
1523            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
1524    <path d="M5 22h14c1.103 0 2-.897 2-2V9a1 1 0 0 0-1-1h-3V7c0-2.757-2.243-5-5-5S7 4.243 7 7v1H4a1 1 0 0 0-1 1v11c0 1.103.897 2 2 2zM9 7c0-1.654 1.346-3 3-3s3 1.346 3 3v1H9V7zm-4 3h2v2h2v-2h6v2h2v-2h2l.002 10H5V10z">
1525    </path>
1526</svg>
1527        </span>
1528        <span
1529                        style="display: none"
1530                        x-show="$store.main.totalCartQty === 1">
1531            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
1532    <path d="M5 22h14a2 2 0 0 0 2-2V9a1 1 0 0 0-1-1h-3v-.777c0-2.609-1.903-4.945-4.5-5.198A5.005 5.005 0 0 0 7 7v1H4a1 1 0 0 0-1 1v11a2 2 0 0 0 2 2zm12-12v2h-2v-2h2zM9 7c0-1.654 1.346-3 3-3s3 1.346 3 3v1H9V7zm-2 3h2v2H7v-2z">
1533    </path>
1534</svg>
1535        </span>
1536        <span
1537                        x-show="$store.main.totalCartQty > 1"
1538            class="-scale-x-100">
1539            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
1540    <path d="M4 20h2V10a1 1 0 0 1 1-1h12V7a1 1 0 0 0-1-1h-3.051c-.252-2.244-2.139-4-4.449-4S6.303 3.756 6.051 6H3a1 1 0 0 0-1 1v11a2 2 0 0 0 2 2zm6.5-16c1.207 0 2.218.86 2.45 2h-4.9c.232-1.14 1.243-2 2.45-2z">
1541    </path>
1542    <path d="M21 11H9a1 1 0 0 0-1 1v8a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2v-8a1 1 0 0 0-1-1zm-6 7c-2.757 0-5-2.243-5-5h2c0 1.654 1.346 3 3 3s3-1.346 3-3h2c0 2.757-2.243 5-5 5z">
1543    </path>
1544</svg>
1545        </span>
1546    </div>
1547    <div
1548        class="contents"
1549        x-show="isCartVisible"
1550        style="display: none;">
1551        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
1552    <path d="m16.192 6.344-4.243 4.242-4.242-4.242-1.414 1.414L10.535 12l-4.242 4.242 1.414 1.414 4.242-4.242 4.243 4.242 1.414-1.414L13.364 12l4.242-4.242z">
1553    </path>
1554</svg>
1555    </div>
1556</button>
1557        </div>
1558        <div
1559            class="resizable__content resizable__content--portal overflow-y-hidden"
1560        >
1561            <div
1562                id="cart-desktop"
1563                class="resizable__scroll"
1564                :inert="!$store.resizable._current['cart-desktop']"
1565            ></div>
1566        </div>
1567        <div
1568            id="cart-desktop-fixed"
1569            class="resizable__fixed"
1570        ></div>
1571    </div>
1572</div>
1573                </div>
1574            </div>
1575
1576        </div>
1577                            
1577<script>
1578    'use strict';
1579    (function () {
1580        const initStore = () => {
1581            if (typeof Alpine === 'undefined') return;
1582
1583            if (!Alpine.store('headerNotices')) {
1584                Alpine.store('headerNotices', {
1585                    notices: [],
1586                    loaded: false,
1587                    enabled: false,
1588                    fetching: false,
1589                    async fetch() {
1590                        if (this.loaded || this.fetching) return;
1591                        this.fetching = true;
1592                        try {
1593                            const response = await fetch('https://www.esprit-ktm.com/ham_theme/notice/index/');
1594                            const data = await response.json();
1595                            this.enabled = data.enabled;
1596                            this.notices = data.notices || [];
1597                            this.loaded = true;
1598                        } catch (e) {
1599                            console.error('Error fetching notices', e);
1600                            this.loaded = true;
1601                        } finally {
1602                            this.fetching = false;
1603                        }
1604                    }
1605                });
1606            }
1607        };
1608
1609        if (typeof Alpine === 'undefined') {
1610            document.addEventListener('alpine:init', initStore);
1611        } else {
1612            initStore();
1613        }
1614    })();
1615</script>
1615
1616
1617<style>
1618    .notice-bar {
1619        overflow: hidden;
1620        position: relative;
1621    }
1622
1623    .notice-track {
1624        display: inline-flex;
1625        align-items: center;
1626        height: 100%;
1627        white-space: nowrap;
1628    }
1629
1630    .notice-track.paused {
1631        animation-play-state: paused !important;
1632    }
1633
1634    .notice-sep {
1635        width: 1px;
1636        height: 14px;
1637        background: rgba(255, 255, 255, 0.5);
1638        margin: 0 1.5rem;
1639        flex-shrink: 0;
1640    }
1641
1642    @media (min-width: 1024px) {
1643        .notice-sep {
1644            margin: 0 2rem;
1645        }
1646    }
1647</style>
1648
1649<div x-data="{}" x-init="$nextTick(() => { if ($store.headerNotices) { $store.headerNotices.fetch() } })"
1650    x-show="!$store.headerNotices?.loaded || ($store.headerNotices?.enabled && $store.headerNotices?.notices.length > 0)"
1651    class="relative z-0 h-[40px]">
1652
1653    <div class="notice-bar bg-primary-500 text-[14px] font-semibold text-text-on-primary-bg pointer-events-auto uppercase shadow-lg rounded-b-md h-[40px]"
1654        x-data="multiCloneMarquee()"
1655        @mouseenter="pause()"
1656        @mouseleave="resume()">
1657
1658        <div class="h-full flex items-center overflow-hidden">
1659            <div x-ref="track" class="notice-track">
1660                <!-- Original content -->
1661                <div x-ref="original" class="inline-flex items-center h-full shrink-0">
1662                    <template x-for="(item, idx) in $store.headerNotices.notices" :key="idx">
1663                        <div class="inline-flex items-center shrink-0">
1664                            <span x-show="idx > 0 && $store.headerNotices.notices.length > 1" class="notice-sep"></span>
1665                            <span class="inline-flex items-center gap-2 shrink-0">
1666                                <template x-if="item.link">
1667                                    <a :href="item.link" class="underline hover:opacity-80"><span x-html="item.text"></span></a>
1668                                </template>
1669                                <template x-if="!item.link">
1670                                    <span x-html="item.text"></span>
1671                                </template>
1672                                <template x-if="item.date">
1673                                    <span class="inline-flex items-center gap-1" x-data="countdown()" x-init="startCountdown(item.date)">
1674                                        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-5 h-5 stroke-2 fill-none" width="20" height="20" role="img">
1675  <path stroke-linecap="round" stroke-linejoin="round" d="M12 8v4l3 3m6-3a9 9 0 11-18 0 9 9 0 0118 0z"/>
1676<title>clock</title></svg>
1677                                        <span x-text="display"></span>
1678                                    </span>
1679                                </template>
1680                            </span>
1681                        </div>
1682                    </template>
1683                    <!-- Trailing separator -->
1684                    <span x-show="$store.headerNotices.notices.length > 1" class="notice-sep"></span>
1685                </div>
1686            </div>
1687        </div>
1688    </div>
1689</div>
1690
1691<script>
1692    function multiCloneMarquee() {
1693        return {
1694            animationId: null,
1695            position: 0,
1696            speed: 60,
1697            isPaused: false,
1698            lastTime: null,
1699            originalWidth: 0,
1700            clonesCreated: false,
1701            numClones: 6,
1702
1703            init() {
1704                this.$watch('$store.headerNotices.notices', (notices) => {
1705                    if (notices && notices.length > 1 && !this.clonesCreated) {
1706                        this.setupMarquee();
1707                    }
1708                });
1709            },
1710
1711            setupMarquee() {
1712                const checkReady = () => {
1713                    const original = this.$refs.original;
1714                    if (!original || original.textContent.trim().length < 10) {
1715                        setTimeout(checkReady, 50);
1716                        return;
1717                    }
1718
1719                    const width = original.offsetWidth;
1720                    if (width === 0) {
1721                        setTimeout(checkReady, 50);
1722                        return;
1723                    }
1724
1725                    this.originalWidth = width;
1726                    this.createClones();
1727                    this.startAnimation();
1728                };
1729
1730                setTimeout(checkReady, 100);
1731            },
1732
1733            createClones() {
1734                if (this.clonesCreated) return;
1735
1736                const track = this.$refs.track;
1737                const original = this.$refs.original;
1738
1739                // Create 8 clones
1740                for (let i = 0; i < this.numClones; i++) {
1741                    const clone = original.cloneNode(true);
1742                    clone.setAttribute('aria-hidden', 'true');
1743                    clone.removeAttribute('x-ref');
1744
1745                    // Strip Alpine attributes
1746                    const strip = (el) => {
1747                        if (el.nodeType !== 1) return;
1748                        [...el.attributes].forEach(a => {
1749                            if (a.name.startsWith('x-') || a.name.startsWith(':') || a.name.startsWith('@')) {
1750                                el.removeAttribute(a.name);
1751                            }
1752                        });
1753                        [...el.children].forEach(strip);
1754                    };
1755                    strip(clone);
1756
1757                    track.appendChild(clone);
1758                }
1759
1760                this.clonesCreated = true;
1761            },
1762
1763            startAnimation() {
1764                this.lastTime = performance.now();
1765                this.animate();
1766            },
1767
1768            animate() {
1769                this.animationId = requestAnimationFrame((currentTime) => {
1770                    if (!this.isPaused) {
1771                        const deltaTime = (currentTime - this.lastTime) / 1000;
1772                        this.position -= this.speed * deltaTime;
1773
1774                        // Reset when we've scrolled past the original content width
1775                        if (Math.abs(this.position) >= this.originalWidth) {
1776                            this.position += this.originalWidth;
1777                        }
1778
1779                        const track = this.$refs.track;
1780                        if (track) {
1781                            track.style.transform = `translateX(${this.position}px)`;
1782                        }
1783                    }
1784
1785                    this.lastTime = currentTime;
1786                    this.animate();
1787                });
1788            },
1789
1790            pause() {
1791                // Only pause if no popup/menu is open (to avoid pausing when menu overlays the notice)
1792                if (Alpine.store('popup')?.currentPopup) return;
1793                this.isPaused = true;
1794            },
1795
1796            resume() {
1797                this.isPaused = false;
1798                this.lastTime = performance.now();
1799            }
1800        };
1801    }
1802
1803    function countdown() {
1804        return {
1805            display: '',
1806            interval: null,
1807            startCountdown(targetDate) {
1808                if (!targetDate) return;
1809                const target = new Date(targetDate).getTime();
1810
1811                const update = () => {
1812                    const dist = target - Date.now();
1813                    if (dist < 0) {
1814                        clearInterval(this.interval);
1815                        this.display = 'Offre expirée';
1816                        return;
1817                    }
1818                    const d = Math.floor(dist / 86400000);
1819                    const h = Math.floor((dist % 86400000) / 3600000);
1820                    const m = Math.floor((dist % 3600000) / 60000);
1821                    const s = Math.floor((dist % 60000) / 1000);
1822                    this.display = d > 0 ? `${d}j ${h}h ${m}m ${s}s` : `${h}h ${m}m ${s}s`;
1823                };
1824
1825                update();
1826                this.interval = setInterval(update, 1000);
1827            }
1828        };
1829    }
1830</script>
1830
1831                <div id="end-of-header"></div>
1832        <div class="relative z-[50]">
1833            
1834<div
1835  class="contents"
1836  x-init="
1837    $store.popup._registerPopup({
1838      id: 'menu',
1839      isFocused: true,
1840      isFullScreen: true,
1841      isAlwaysVisible: false,
1842      isPreventOverlayClose: false    });
1843  "
1844>
1845  <template x-portal="$store.main.isMobile ? document.getElementById('popup-content-portal') : document.getElementById('menu-desktop')">
1846    <template x-if="$store.main.isMobile ? $store.popup._nextPopup === 'menu' : true">
1847      <div
1848        class="contents "
1849        id="menu"
1850      >
1851        
1852<nav
1853    class="flex h-full flex-col"
1854    aria-label="Menu principal"
1855    x-data="Search"
1856    :inert="$store.main.isMobile ? $store.popup.currentPopup !== 'menu' : !$store.resizable.isVisible('menu-desktop')">
1857    <template x-portal="document.getElementById($store.main.isMobile ? 'search-mobile' : 'search-desktop')">
1858        
1859<div>
1860    <form
1861        class="fixed left-0 z-[110] w-full rounded-t-md bg-bg-500 px-5 md:sticky md:w-[--search-width] md:border-b-1 md:border-transparent md:bg-transparent md:px-2 md:pt-0 md:transition-all md:delay-150 md:duration-300 max-md:top-0 max-md:pb-3 max-md:pt-[18px]"
1862        role="search"
1863        :class="{
1864            'md:bg-bg-500 md:border-bg-600': getIsSearchActive(),
1865            'md:bg-transparent md:border-transparent': !getIsSearchActive(),
1866            'md:max-w-24': !$store.resizable.isVisible('search-desktop')
1867        }"
1868        action="/catalogsearch/result"
1869        method="GET"
1870        @submit.prevent="goToSearchPage('/catalogsearch/result')">
1871        <div class="relative isolate flex w-full md:min-h-[56px] md:items-center">
1872            <label
1873                for="searchInput"
1874                class="sr-only tracking-widest">
1875                Recherche            </label>
1876            <input
1877                type="search"
1878                placeholder="Recherche"
1879                class="hover:text-black input__field input__field--filled hover:bg-transparent border-none focus-visible:input__field--outline md:input__field--ghost md:focus-visible:input__field--ghost pr-11 placeholder:text-text-500 md:order-2 md:px-2 md:placeholder:text-black-500 md:focus-visible:border-transparent md:focus-visible:shadow-none md:focus-visible:outline-0"
1880                x-model="searchTermInput"
1881                @input.debounce.1000ms="setSearchTerm"
1882                name="q"
1883                id="searchInput"
1884                x-ref="searchInput"
1885                :tabindex="
1886                    $store.main.isMobile ?
1887                        ($store.popup.currentPopup === 'menu' ? 0 : -1) :
1888                        ($store.resizable.isVisible('search-desktop') ? 0 : -1)
1889                "
1890                :class="{
1891                    'md:hidden': !$store.resizable.isVisible('search-desktop')
1892                }"
1893                x-a11y-trap-target.initial="$store.resizable.isVisible('search-desktop')"
1894                x-a11y-trap-target.start="getIsSearchActive()">
1895            <div
1896                class="max-md:icon-button--size-md md:button md:icon-button md:icon-button--size-lg md:order-1 md:text-black-500 max-md:pointer-events-none max-md:absolute max-md:right-0 max-md:top-0 max-md:z-10 max-md:flex max-md:items-center max-md:justify-center max-md:px-0 max-md:text-lg max-md:text-text-500"
1897                x-show="!$store.main.isMobile || !searchTerm"
1898                :class="{
1899                    'md:hidden': !$store.resizable.isVisible('search-desktop')
1900                }">
1901                <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
1902    <path d="M10 18a7.952 7.952 0 0 0 4.897-1.688l4.396 4.396 1.414-1.414-4.396-4.396A7.952 7.952 0 0 0 18 10c0-4.411-3.589-8-8-8s-8 3.589-8 8 3.589 8 8 8zm0-14c3.309 0 6 2.691 6 6s-2.691 6-6 6-6-2.691-6-6 2.691-6 6-6z">
1903    </path>
1904</svg>
1905            </div>
1906            <button
1907                type="button"
1908                class="icon-button--size-md absolute bottom-0 right-0 top-0 z-10 m-auto flex items-center justify-center px-0 text-xxl text-text-500"
1909                aria-label="Effacer la recherche"
1910                x-show="!!searchTerm"
1911                @click="resetSearchTerm"
1912                :tabindex="$store.resizable.isVisible('search-desktop') ? 0 : -1"
1913                :class="{
1914                    'md:hidden': !$store.resizable.isVisible('search-desktop')
1915                }">
1916                <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
1917    <path d="m16.192 6.344-4.243 4.242-4.242-4.242-1.414 1.414L10.535 12l-4.242 4.242 1.414 1.414 4.242-4.242 4.243 4.242 1.414-1.414L13.364 12l4.242-4.242z">
1918    </path>
1919<title>Clear</title></svg>
1920            </button>
1921        </div>
1922    </form>
1923
1924    <div
1925        x-show="getIsSearchActive()"
1926        class="
1927            flex flex-col gap-3 overflow-x-hidden pt-2 transition-opacity duration-0 md:inset-x-0 md:top-full
1928            md:max-h-[calc(100dvh-125px)] md:rounded-t-none md:pt-0 md:duration-300 md:rounded-none md:bg-bg-400
1929        "
1930        x-transition:enter="md:delay-450"
1931        x-transition:enter-start="md:opacity-0"
1932        x-transition:enter-end="md:opacity-100"
1933        x-transition:leave="md:duration-0"
1934        x-transition:leave-start="md:opacity-100"
1935        x-transition:leave-end="md:opacity-0"
1936        :class="{
1937            'md:hidden': !$store.resizable.isVisible('search-desktop')
1938        }">
1939        <div class="max-md:mt-[50px]">
1940            <div
1941    x-show="suggestions.length"
1942    :class="{
1943        'opacity-0': isLoading && !getIsSearchActive(),
1944    }"
1945>
1946    <div class="relative flex grow flex-col gap-4 p-3 pb-2 md:p-5">
1947        <div class="pb-2">
1948            <h2 class="text-lg">Suggestions</h2>
1949        </div>
1950        <div class="flex min-h-11 flex-col gap-2 md:min-h-[48px]">
1951            <div class="-mx-5 flex gap-3 overflow-x-auto px-5 py-1 md:max-w-[--search-width] max-md:pb-3">
1952                <template x-for="suggestion in suggestions">
1953                    <a
1954                        :href="'/catalogsearch/result/?q=' + suggestion.search"
1955                        class="button button--outline-secondary"
1956                        x-element-transition-trigger
1957                        x-text="suggestion.search"
1958                    ></a>
1959                </template>
1960            </div>
1961        </div>
1962    </div>
1963
1964    <hr
1965        x-show="suggestions.length"
1966        class="divider -mx-3"
1967        :class="{ 'opacity-0': isLoading }"
1968        x-transition
1969    >
1970</div>
1971            <div
1972    x-show="searchTerm.length > 2 && products.length > 0 && categories.length > 0"
1973    :class="{
1974        'opacity-0': isLoading && !getIsSearchActive(),
1975    }">
1976    <div class="relative flex grow flex-col gap-4 p-3 pb-2 md:p-5">
1977        <div class="pb-2">
1978            <h2 class="text-lg">Catégories</h2>
1979        </div>
1980        <div class="flex flex-col gap-2">
1981            <p x-show="!isLoading && !categories.length && searchTerm">
1982                <b class="font-semibold text-secondary-700">Oups !</b>
1983                Nous n'avons trouvé aucune catégorie correspondant à votre recherche.            </p>
1984
1985            <div
1986                x-show="categories.length"
1987                class="-mx-5 flex gap-3 overflow-x-auto px-5 py-1 md:max-w-[--search-width] max-md:pb-3">
1988                <template x-for="category in categories">
1989                    <a
1990                        :href="`/${category.url_path}.html`"
1991                        class="button button--outline-secondary"
1992                        x-element-transition-trigger:category.animate="{
1993                            'title': category.name,
1994                        }"
1995                        x-text="category.name"></a>
1996                </template>
1997            </div>
1998        </div>
1999    </div>
2000
2001    <hr
2002        x-show="searchTerm.length > 2"
2003        class="divider -mx-3"
2004        :class="{ 'opacity-0': isLoading }">
2005</div>            
2006<div
2007    class="transition overflow-hidden"
2008    :class="{
2009        'opacity-0': isLoading && !getIsSearchActive(),
2010    }">
2011    <div class="flex grow flex-col gap-4 p-3 pb-2 md:p-5">
2012        <div class="pb-2">
2013            <h2 class="text-lg">Produits</h2>
2014        </div>
2015        <div class="min-h-11 md:min-h-0">
2016            <p x-show="!isLoading && !products.length && searchTerm.length >=3">
2017                <b class="font-semibold text-secondary-700">Oups !</b>
2018                Nous n'avons trouvé aucun produit correspondant à votre recherche.            </p>
2019            <p x-show="searchTerm.length < 3 && !isLoading">
2020                La longueur minimale de la requête de recherche est de 3            </p>
2021            <div
2022                x-show="products.length"
2023                class="grid grid-cols-2 gap-5 content-start md:grid-cols-3 lg:grid-cols-4"
2024                x-transition.opacity
2025                x-transition.duration.700ms>
2026                <template
2027                    x-for="product in products"
2028                    :key="product.id">
2029                    <div
2030        x-show="!!product.url_rewrites?.[0]?.url"
2031        class=" card-product h-full">
2032    <a
2033                :href="`/${product.url_rewrites?.[0]?.url}`"
2034        x-element-transition-trigger:product.animate="{
2035                'productImg': product.media_gallery?.[0]?.url || 'https://www.esprit-ktm.com/media/catalog/product/placeholder/stores/9/Produit_sans_image-KTM-FR.png',
2036                'title': product.name,
2037                'mediaCount': product.media_gallery?.length || 3
2038            }"
2039                class="card-hover group relative flex h-full min-w-0">
2040        <!-- Aspect Ratio div -->
2041        <div class="h-0 w-0" style="padding-bottom: calc(100% * 1 / var(--product-aspect-ratio) + 81px)"></div>
2042
2043        <!-- Product Article -->
2044        <article
2045            class="product-card contrast-border z-10 w-full text-start"
2046            x-data="ProductPage()"
2047            >
2048
2049            <!-- this image is needed to avoid blink in preview on desktop as there, the select variant is shown, not featured image -->
2050            <img width="0" height="0" class="pointer-events-none invisible absolute hidden h-0 w-0 md:block"
2051                src="https://media.esprit-ktm.com/unsafe/resize:fit:800:800/plain/local://media/catalog/product/placeholder/stores/9/Produit_sans_image-KTM-FR.png" alt="">
2052
2053            <div class="product-card__media" x-element-transition-src="img"
2054                style="transform: translateZ(0)">
2055
2056                                    <div
2057                        class="product-card__image-wrap">
2058                        <img
2059                            :src="product.media_gallery?.[0]?.url || 'https://www.esprit-ktm.com/media/catalog/product/placeholder/stores/9/Produit_sans_image-KTM-FR.png'"
2060                            :alt="product.image?.label"
2061                            class="product-card__image mix-blend-darken object-contain"
2062                            width=""
2063                            height=""
2064                            alt="" />
2065                    </div>
2066                
2067                
2068    <div
2069        x-data="
2070            {
2071                                    finalPrice: product.price_range.minimum_price.final_price.value,
2072                    regularPrice: product.price_range.minimum_price.regular_price.value
2073                            }
2074        "
2075        class="card-product__badge-container z-10 rounded-[40px] bg-bg-500 px-3 text-sm min-h-[18px] py-1 top left"
2076        x-show="regularPrice>finalPrice && regularPrice">
2077        <span x-text="'-' + Math.round(((regularPrice - finalPrice) * 100.0) / regularPrice) + '%'" class="font-semibold">
2078        </span>
2079    </div>
2080
2081                
2082
2083                
2084    
2085                    <div class="z-10"
2086            style="position: absolute; top: 5px; right: 5px;"
2087            x-element-transition-skip='{"transformOrigin": "right top"}'
2088            x-data="{
2089                selectedModel: '',
2090                compatibleModels: (product.ham_models || []),
2091                isCompatible: false,
2092
2093                init() {
2094                    // Get selected model from cookie
2095                    this.updateSelectedModel();
2096
2097                    // Watch for cookie changes
2098                    this.$watch('selectedModel', (value) => {
2099                        this.checkCompatibility();
2100                    });
2101
2102                    // Listen for partfinder reset/changes
2103                    window.addEventListener('partfinder-reset', () => {
2104                        this.updateSelectedModel();
2105                    });
2106
2107                    window.addEventListener('partfinder-changed', () => {
2108                        this.updateSelectedModel();
2109                    });
2110                },
2111
2112                updateSelectedModel() {
2113                    const cookie = document.cookie.split('; ').find(row => row.startsWith('selected_model='));
2114                    this.selectedModel = cookie ? decodeURIComponent(cookie.split('=')[1]) : '';
2115                    this.checkCompatibility();
2116                },
2117
2118                checkCompatibility() {
2119                    if (!this.selectedModel) {
2120                        this.isCompatible = false;
2121                        return;
2122                    }
2123
2124                    // Check if selected model is in compatible models
2125                    this.isCompatible = this.compatibleModels.some(model => {
2126                        return model.toString().toLowerCase() === this.selectedModel.toLowerCase();
2127                    });
2128                }
2129            }"
2130            x-show="isCompatible"
2131            x-cloak>
2132
2133            <div class="flex items-center gap-1 bg-green-500 text-white px-2 py-1 rounded shadow-md text-xs font-semibold uppercase">
2134                <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-4 h-4 stroke-2 fill-none stroke-white" width="16" height="16" role="img">
2135  <path stroke-linecap="round" stroke-linejoin="round" d="M5 13l4 4L19 7"/>
2136<title>check</title></svg>
2137                <span>Compatible</span>
2138            </div>
2139        </div>
2140    
2141                
2142
2143            </div>
2144
2145            <div class="product-card__body">
2146                <div class="flex flex-col gap-2"
2147                    x-data="{
2148                                                baseProductName: product.name || '',
2149                        compatibleModels: (product.ham_models || []),
2150                        selectedModel: '',
2151                        productType: product.type_id || '',
2152                        shouldAppendModel: false,
2153                        isCompatible: false,
2154
2155                        init() {
2156                            // Get selected model from cookie
2157                            this.updateSelectedModel();
2158
2159                            // Listen for partfinder reset/changes
2160                            window.addEventListener('partfinder-reset', () => {
2161                                this.updateSelectedModel();
2162                            });
2163
2164                            window.addEventListener('partfinder-changed', () => {
2165                                this.updateSelectedModel();
2166                            });
2167                        },
2168
2169                        updateSelectedModel() {
2170                            const cookie = document.cookie.split('; ').find(row => row.startsWith('selected_model='));
2171                            this.selectedModel = cookie ? decodeURIComponent(cookie.split('=')[1]) : '';
2172                            this.checkCompatibility();
2173                        },
2174
2175                        checkCompatibility() {
2176                            if (!this.selectedModel || !this.compatibleModels || this.compatibleModels.length === 0) {
2177                                this.isCompatible = false;
2178                                this.shouldAppendModel = false;
2179                                return;
2180                            }
2181
2182                            // Check if selected model is in compatible models
2183                            const modelsArray = Array.isArray(this.compatibleModels)
2184                                ? this.compatibleModels
2185                                : this.compatibleModels.split(',').map(m => m.trim());
2186
2187                            this.isCompatible = modelsArray.some(model => {
2188                                return model.toString().toLowerCase() === this.selectedModel.toLowerCase();
2189                            });
2190
2191                            this.shouldAppendModel = this.isCompatible;
2192                        },
2193
2194                        get displayName() {
2195                            if (!this.shouldAppendModel || !this.selectedModel) {
2196                                return this.decodeHtml(this.baseProductName);
2197                            }
2198
2199                            let cleanedName = this.baseProductName;
2200
2201                            // Clean the product name based on product type
2202                            if (this.productType === 'simple') {
2203                                // Remove existing 'pour' suffix for simple products
2204                                const pourMatch = cleanedName.match(/\s+pour\s+/i);
2205                                if (pourMatch) {
2206                                    cleanedName = cleanedName.substring(0, pourMatch.index);
2207                                }
2208                            } else if (this.productType === 'grouped') {
2209                                // Remove 'no/n°/num/#' suffix for grouped products
2210                                cleanedName = cleanedName.replace(/\s+(no|n°|nº|num|#)\s*\d+$/i, '');
2211                            }
2212
2213                            // Append model text
2214                            const finalName = cleanedName.trim() + ' pour ' + this.selectedModel;
2215
2216                            return this.decodeHtml(finalName);
2217                        },
2218
2219                        decodeHtml(str) {
2220                            let txt = document.createElement('textarea');
2221                            txt.innerHTML = str;
2222                            return txt.value;
2223                        }
2224                    }">
2225                                        <h2
2226                        class="product-card__title"
2227                                                x-text="decodeHtml(product.name)"
2228                        ></h2>
2229                                        
2230                                    </div>
2231                            </div>
2232        </article>
2233    </a>
2234</div>                </template>
2235            </div>
2236            <div
2237                x-show="products.length"
2238                class="min-h-24 md:hidden"></div>
2239        </div>
2240    </div>
2241    <template
2242        x-portal="$store.main.isMobile ? document.getElementById('popup-fixed-content-portal') : document.getElementById('search-actions')">
2243        <div
2244            x-show="$store.main.isMobile ? $store.popup.currentPopup === 'menu' && getIsSearchActive() && products.length : getIsSearchActive() && products.length"
2245            class="relative bg-bg-500 px-4 pb-2 transition-opacity md:p-0 md:pt-1 md:mx-5 md:mb-5"
2246            :class="{ 'opacity-0': isLoading }">
2247            <div class="absolute -top-10 -mx-5 end-0 start-0 h-10 bg-gradient-to-t from-bg-500 to-transparent"></div>
2248            <button
2249                class="button button--filled-primary w-full"
2250                @click.prevent="goToSearchPage('/catalogsearch/result')"
2251                x-a11y-trap-target.end="getIsSearchActive()"
2252                x-element-transition-trigger:search.animate="{
2253                    search: searchTermInput
2254                }">
2255                Voir tout            </button>
2256        </div>
2257    </template>
2258</div>
2259        </div>
2260        <div
2261            class="transition-opacity duration-300 md:sticky md:bottom-0 md:z-10 md:w-full md:rounded-b-md md:bg-bg-500"
2262            id="search-actions"
2263            x-show="!isLoading"
2264            x-transition.opacity
2265            x-transition:leave.duration.300ms
2266            x-transition:enter.delay.300ms
2267            :class="{ 'opacity-0': isLoading, 'md:opacity-100': !isLoading}"></div>
2268    </div>
2269</div>
2270    </template>
2271
2272    <div
2273        class="contents md:hidden"
2274        id="search-mobile"></div>
2275
2276    <div
2277        id="menu-sections"
2278        class="menu__wrapper"
2279        x-data="{
2280            history: ['all'],
2281            delayedLevel: 1,
2282            setHistory(history) {
2283                this.history = history;
2284
2285                setTimeout(() => {
2286                    this.delayedLevel = history.length;
2287
2288                    if (history.length) {
2289                        const level = history[history.length - 1]
2290                        document.querySelector(`[data-menu-level='${level}'] a`)?.focus();
2291                    }
2292                }, 300);
2293            }
2294        }"
2295        x-show="!$store.main.isMobile || !getIsSearchActive()">
2296        <div
2297    class="menu__level relative z-[100]"
2298    :class="{
2299        'menu__level--current': history[history.length - 1] === 'all',
2300        'menu__level--visible': history.includes('all'),
2301        'menu__level--same-depth': 1 <= delayedLevel,
2302        'hidden': !$store.main.isMobile && !$store.resizable.isVisible('menu-desktop'),
2303    }"
2304    :inert="!history.includes('all')"
2305    data-menu-level="all">
2306    <div class="menu__header">
2307        <div class="menu__header-container p-2 md:flex md:flex-col">
2308                            <template x-if="!$store.main.isMobile">
2309                    <button
2310                        @click="$store.resizable.hideAll();"
2311                        type="button"
2312                        class="button icon-button icon-button--size-lg h-auto w-auto gap-3 pl-2 pr-[10px] py-3 text-primary-500 hover:bg-bg-600"
2313                        aria-label="Fermer le menu"
2314                        aria-controls="menu-desktop"
2315                        :aria-expanded="$store.resizable.isVisible('menu-desktop')">
2316                        <div class="contents">
2317                            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
2318    <path d="m16.192 6.344-4.243 4.242-4.242-4.242-1.414 1.414L10.535 12l-4.242 4.242 1.414 1.414 4.242-4.242 4.243 4.242 1.414-1.414L13.364 12l4.242-4.242z">
2319    </path>
2320</svg>
2321                        </div>
2322                        <span class="text-md font-semibold">Fermer</span>
2323                    </button>
2324                </template>
2325            
2326            <button
2327                @click="history.pop()"
2328                type="button"
2329                aria-label="Revenir au menu précédent"
2330                class="menu__back-button py-3 motion-reduce:max-md:animate-none"
2331                :class="{
2332                    'menu__back-button--visible max-md:animate-slideIconIn motion-reduce:translate-x-0': history.length !== 1,
2333                    'max-md:animate-slideIconOut motion-reduce:-translate-x-full': history.length == 1
2334                }"
2335                :tabindex="history.length === 1 ? -1 : 0"
2336                :aria-hidden="history.length === 1">
2337                <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
2338    <path d="M13.293 6.293 7.586 12l5.707 5.707 1.414-1.414L10.414 12l4.293-4.293z"/>
2339</svg>
2340            </button>
2341
2342            <h2
2343                class="menu__heading py-3 motion-reduce:max-md:animate-none"
2344                style="--translate-width: 52px;"
2345                :class="{
2346                    'menu__heading--root': 'all' === 'all',
2347                    'max-md:w-[calc(100%-var(--translate-width))]': 'all' !== 'all',
2348                    'max-md:animate-slideTitleIn motion-reduce:translate-x-[--translate-width]': history.length !== 1,
2349                    'max-md:animate-slideTitleOut motion-reduce:translate-x-0': history.length == 1
2350                }"
2351                x-show="$store.main.isMobile || 'all' !== 'all'">
2352                Toutes les catégories            </h2>
2353
2354            <div id="menu-actions-all" class="md:mt-[6px] md:flex-none md:flex-row"></div>
2355        </div>
2356        <hr class="divider -mx-5 md:hidden">
2357    </div>
2358
2359    <ul role="list" class="menu__links">
2360                            <li>
2361                                    <button
2362                                                x-a11y-trap-target.initial="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'all'"
2363                                                class="menu__link group"
2364                        @click="setHistory([...'all'.split(','), 'category-node-1766'])"
2365                        :class="{ 'menu__link--active': history.includes('category-node-1766') }"
2366                        role="button"
2367                        :aria-expanded="history.includes('category-node-1766')">
2368                        <span class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
2369                            <!-- DEBUG: Logo = EMPTY -->
2370                                                        Pièces Origine KTM                        </span>
2371                        <span class="text-xl transition-[color,transform] md:group-hover:-translate-x-3 md:group-hover:text-primary-600">
2372                            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
2373    <path d="M10.707 17.707 16.414 12l-5.707-5.707-1.414 1.414L13.586 12l-4.293 4.293z"/>
2374</svg>
2375                        </span>
2376                    </button>
2377                    <template x-portal="document.getElementById('menu-sections')">
2378                        <div
2379    class="menu__level relative z-[100]"
2380    :class="{
2381        'menu__level--current': history[history.length - 1] === 'category-node-1766',
2382        'menu__level--visible': history.includes('category-node-1766'),
2383        'menu__level--same-depth': 2 <= delayedLevel,
2384        'hidden': !$store.main.isMobile && !$store.resizable.isVisible('menu-desktop'),
2385    }"
2386    :inert="!history.includes('category-node-1766')"
2387    data-menu-level="category-node-1766">
2388    <div class="menu__header">
2389        <div class="menu__header-container p-2 md:flex md:flex-col">
2390            
2391            <button
2392                @click="history.pop()"
2393                type="button"
2394                aria-label="Revenir au menu précédent"
2395                class="menu__back-button py-3 motion-reduce:max-md:animate-none"
2396                :class="{
2397                    'menu__back-button--visible max-md:animate-slideIconIn motion-reduce:translate-x-0': history.length !== 1,
2398                    'max-md:animate-slideIconOut motion-reduce:-translate-x-full': history.length == 1
2399                }"
2400                :tabindex="history.length === 1 ? -1 : 0"
2401                :aria-hidden="history.length === 1">
2402                <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
2403    <path d="M13.293 6.293 7.586 12l5.707 5.707 1.414-1.414L10.414 12l4.293-4.293z"/>
2404</svg>
2405            </button>
2406
2407            <h2
2408                class="menu__heading py-3 motion-reduce:max-md:animate-none"
2409                style="--translate-width: 52px;"
2410                :class="{
2411                    'menu__heading--root': 'category-node-1766' === 'all',
2412                    'max-md:w-[calc(100%-var(--translate-width))]': 'category-node-1766' !== 'all',
2413                    'max-md:animate-slideTitleIn motion-reduce:translate-x-[--translate-width]': history.length !== 1,
2414                    'max-md:animate-slideTitleOut motion-reduce:translate-x-0': history.length == 1
2415                }"
2416                x-show="$store.main.isMobile || 'category-node-1766' !== 'all'">
2417                Pièces Origine KTM            </h2>
2418
2419            <div id="menu-actions-category-node-1766" class="md:mt-[6px] md:flex-none md:flex-row"></div>
2420        </div>
2421        <hr class="divider -mx-5 md:hidden">
2422    </div>
2423
2424    <ul role="list" class="menu__links">
2425                            <li>
2426                                    <button
2427                                                x-a11y-trap-target.initial="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-1766'"
2428                                                class="menu__link group"
2429                        @click="setHistory([...'all,category-node-1766'.split(','), 'category-node-1777'])"
2430                        :class="{ 'menu__link--active': history.includes('category-node-1777') }"
2431                        role="button"
2432                        :aria-expanded="history.includes('category-node-1777')">
2433                        <span class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
2434                            <!-- DEBUG: Logo = EMPTY -->
2435                                                        Partie cycle                        </span>
2436                        <span class="text-xl transition-[color,transform] md:group-hover:-translate-x-3 md:group-hover:text-primary-600">
2437                            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
2438    <path d="M10.707 17.707 16.414 12l-5.707-5.707-1.414 1.414L13.586 12l-4.293 4.293z"/>
2439</svg>
2440                        </span>
2441                    </button>
2442                    <template x-portal="document.getElementById('menu-sections')">
2443                        <div
2444    class="menu__level relative z-[100]"
2445    :class="{
2446        'menu__level--current': history[history.length - 1] === 'category-node-1777',
2447        'menu__level--visible': history.includes('category-node-1777'),
2448        'menu__level--same-depth': 3 <= delayedLevel,
2449        'hidden': !$store.main.isMobile && !$store.resizable.isVisible('menu-desktop'),
2450    }"
2451    :inert="!history.includes('category-node-1777')"
2452    data-menu-level="category-node-1777">
2453    <div class="menu__header">
2454        <div class="menu__header-container p-2 md:flex md:flex-col">
2455            
2456            <button
2457                @click="history.pop()"
2458                type="button"
2459                aria-label="Revenir au menu précédent"
2460                class="menu__back-button py-3 motion-reduce:max-md:animate-none"
2461                :class="{
2462                    'menu__back-button--visible max-md:animate-slideIconIn motion-reduce:translate-x-0': history.length !== 1,
2463                    'max-md:animate-slideIconOut motion-reduce:-translate-x-full': history.length == 1
2464                }"
2465                :tabindex="history.length === 1 ? -1 : 0"
2466                :aria-hidden="history.length === 1">
2467                <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
2468    <path d="M13.293 6.293 7.586 12l5.707 5.707 1.414-1.414L10.414 12l4.293-4.293z"/>
2469</svg>
2470            </button>
2471
2472            <h2
2473                class="menu__heading py-3 motion-reduce:max-md:animate-none"
2474                style="--translate-width: 52px;"
2475                :class="{
2476                    'menu__heading--root': 'category-node-1777' === 'all',
2477                    'max-md:w-[calc(100%-var(--translate-width))]': 'category-node-1777' !== 'all',
2478                    'max-md:animate-slideTitleIn motion-reduce:translate-x-[--translate-width]': history.length !== 1,
2479                    'max-md:animate-slideTitleOut motion-reduce:translate-x-0': history.length == 1
2480                }"
2481                x-show="$store.main.isMobile || 'category-node-1777' !== 'all'">
2482                Partie cycle            </h2>
2483
2484            <div id="menu-actions-category-node-1777" class="md:mt-[6px] md:flex-none md:flex-row"></div>
2485        </div>
2486        <hr class="divider -mx-5 md:hidden">
2487    </div>
2488
2489    <ul role="list" class="menu__links">
2490                            <li>
2491                                    <a
2492                                                x-a11y-trap-target.initial="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-1777'"
2493                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/abs.html"
2494                        role="link"
2495                        x-element-transition-trigger:category.animate="{
2496                            'title': `ABS`,
2497                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/abs.html',
2498                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;cycle&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-cycle.html&quot;&#x7D;&#x5D;,
2499                            'img': '',
2500                            'description': ``,
2501                        }"
2502                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
2503                        :class="{
2504                            'text-primary-500 font-semibold': history.includes('category-node-3121')
2505                        }">
2506                        <span
2507                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
2508                            <!-- DEBUG: Logo = EMPTY -->
2509                                                        ABS                        </span>
2510                    </a>
2511                            </li>
2512                                <li>
2513                                    <a
2514                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/accelerateur.html"
2515                        role="link"
2516                        x-element-transition-trigger:category.animate="{
2517                            'title': `Accelérateur`,
2518                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/accelerateur.html',
2519                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;cycle&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-cycle.html&quot;&#x7D;&#x5D;,
2520                            'img': '',
2521                            'description': ``,
2522                        }"
2523                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
2524                        :class="{
2525                            'text-primary-500 font-semibold': history.includes('category-node-3125')
2526                        }">
2527                        <span
2528                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
2529                            <!-- DEBUG: Logo = EMPTY -->
2530                                                        Accelérateur                        </span>
2531                    </a>
2532                            </li>
2533                                <li>
2534                                    <a
2535                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/allumage.html"
2536                        role="link"
2537                        x-element-transition-trigger:category.animate="{
2538                            'title': `Allumage`,
2539                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/allumage.html',
2540                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;cycle&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-cycle.html&quot;&#x7D;&#x5D;,
2541                            'img': '',
2542                            'description': ``,
2543                        }"
2544                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
2545                        :class="{
2546                            'text-primary-500 font-semibold': history.includes('category-node-3123')
2547                        }">
2548                        <span
2549                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
2550                            <!-- DEBUG: Logo = EMPTY -->
2551                                                        Allumage                        </span>
2552                    </a>
2553                            </li>
2554                                <li>
2555                                    <a
2556                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/accessoires.html"
2557                        role="link"
2558                        x-element-transition-trigger:category.animate="{
2559                            'title': `Accessoires`,
2560                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/accessoires.html',
2561                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;cycle&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-cycle.html&quot;&#x7D;&#x5D;,
2562                            'img': '',
2563                            'description': `&lt;p&gt;Accessoires KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM 250 SX,KTM 250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R,&lt;/p&gt;&lt;p&gt;Lire la suite&lt;/p&gt;&lt;p&gt;1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke,KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 129
25630 Super Adventure&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;Découvrez nos tutos en cliquant &lt;a href=&quot;https://youtu.be/FkyJbpzuyOA&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;ici&lt;/a&gt;.&lt;/p&gt;`,
2564                        }"
2565                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
2566                        :class="{
2567                            'text-primary-500 font-semibold': history.includes('category-node-1792')
2568                        }">
2569                        <span
2570                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
2571                            <!-- DEBUG: Logo = EMPTY -->
2572                                                        Accessoires                        </span>
2573                    </a>
2574                            </li>
2575                                <li>
2576                                    <a
2577                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/boite-de-vitesses.html"
2578                        role="link"
2579                        x-element-transition-trigger:category.animate="{
2580                            'title': `Boîte de vitesses`,
2581                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/boite-de-vitesses.html',
2582                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;cycle&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-cycle.html&quot;&#x7D;&#x5D;,
2583                            'img': '',
2584                            'description': ``,
2585                        }"
2586                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
2587                        :class="{
2588                            'text-primary-500 font-semibold': history.includes('category-node-3126')
2589                        }">
2590                        <span
2591                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
2592                            <!-- DEBUG: Logo = EMPTY -->
2593                                                        Boîte de vitesses                        </span>
2594                    </a>
2595                            </li>
2596                                <li>
2597                                    <a
2598                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/bras-oscillant.html"
2599                        role="link"
2600                        x-element-transition-trigger:category.animate="{
2601                            'title': `Bras oscillant`,
2602                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/bras-oscillant.html',
2603                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;cycle&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-cycle.html&quot;&#x7D;&#x5D;,
2604                            'img': '',
2605                            'description': `&lt;p&gt;Bras oscillant KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM 250 SX,KTM 250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke,KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 129
26050 Super Adventure&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;Retrouvez nos tutos &lt;a href=&quot;https://www.youtube.com/watch?v=lI73SFc8RTs&quot;&gt;ici&lt;/a&gt;.&lt;/p&gt;`,
2606                        }"
2607                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
2608                        :class="{
2609                            'text-primary-500 font-semibold': history.includes('category-node-1782')
2610                        }">
2611                        <span
2612                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
2613                            <!-- DEBUG: Logo = EMPTY -->
2614                                                        Bras oscillant                        </span>
2615                    </a>
2616                            </li>
2617                                <li>
2618                                    <a
2619                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/cadre.html"
2620                        role="link"
2621                        x-element-transition-trigger:category.animate="{
2622                            'title': `Cadre`,
2623                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/cadre.html',
2624                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;cycle&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-cycle.html&quot;&#x7D;&#x5D;,
2625                            'img': '',
2626                            'description': `Cadre KTM, bras arrière KTM, béquille latérale KTM, sabot KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM  250 SX,KTM  250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke,KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 1290 Super Adventure`,
2627                        }"
2628                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
2629                        :class="{
2630                            'text-primary-500 font-semibold': history.includes('category-node-1796')
2631                        }">
2632                        <span
2633                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
2634                            <!-- DEBUG: Logo = EMPTY -->
2635                                                        Cadre                        </span>
2636                    </a>
2637                            </li>
2638                                <li>
2639                                    <a
2640                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/carenage-deco.html"
2641                        role="link"
2642                        x-element-transition-trigger:category.animate="{
2643                            'title': `Carénage, déco`,
2644                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/carenage-deco.html',
2645                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;cycle&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-cycle.html&quot;&#x7D;&#x5D;,
2646                            'img': '',
2647                            'description': `Carénage KTM, déco KTM, plaque KTM, garde-boue KTM, habillage latéral KTM, technique information sticker KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM  250 SX,KTM  250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke, KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 129
26470 Super Adventure`,
2648                        }"
2649                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
2650                        :class="{
2651                            'text-primary-500 font-semibold': history.includes('category-node-1779')
2652                        }">
2653                        <span
2654                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
2655                            <!-- DEBUG: Logo = EMPTY -->
2656                                                        Carénage, déco                        </span>
2657                    </a>
2658                            </li>
2659                                <li>
2660                                    <a
2661                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/direction.html"
2662                        role="link"
2663                        x-element-transition-trigger:category.animate="{
2664                            'title': `Direction (Guidon, Retro, poignée...)`,
2665                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/direction.html',
2666                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;cycle&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-cycle.html&quot;&#x7D;&#x5D;,
2667                            'img': '',
2668                            'description': `&lt;p&gt;Direction KTM, guidon KTM, armatures KTM, rétro KTM, poignées KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM 250 SX,KTM 250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke,KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 1290 Super Adventure&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;Retrouvez nos tutos &lt;a href=&quot;https://www.youtube.com/watch?v=Xx8wQVlkWhc&quot;&gt;ici&lt;/a&gt;.&lt;/p&gt;`,
2669                        }"
2670                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
2671                        :class="{
2672                            'text-primary-500 font-semibold': history.includes('category-node-1783')
2673                        }">
2674                        <span
2675                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
2676                            <!-- DEBUG: Logo = EMPTY -->
2677                                                        Direction (Guidon, Retro, poignée...)                        </span>
2678                    </a>
2679                            </li>
2680                                <li>
2681                                    <a
2682                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/echappement.html"
2683                        role="link"
2684                        x-element-transition-trigger:category.animate="{
2685                            'title': `Echappement`,
2686                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/echappement.html',
2687                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;cycle&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-cycle.html&quot;&#x7D;&#x5D;,
2688                            'img': '',
2689                            'description': `Echappement KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM  250 SX,KTM  250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke,KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 129
26890 Super Adventure`,
2690                        }"
2691                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
2692                        :class="{
2693                            'text-primary-500 font-semibold': history.includes('category-node-1790')
2694                        }">
2695                        <span
2696                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
2697                            <!-- DEBUG: Logo = EMPTY -->
2698                                                        Echappement                        </span>
2699                    </a>
2700                            </li>
2701                                <li>
2702                                    <a
2703                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/eclairage.html"
2704                        role="link"
2705                        x-element-transition-trigger:category.animate="{
2706                            'title': `Eclairage`,
2707                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/eclairage.html',
2708                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;cycle&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-cycle.html&quot;&#x7D;&#x5D;,
2709                            'img': '',
2710                            'description': `Eclairage KTM, instruments KTM, système de verrouillage KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM  250 SX,KTM  250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke,KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 1290 Super Adventure `,
2711                        }"
2712                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
2713                        :class="{
2714                            'text-primary-500 font-semibold': history.includes('category-node-1778')
2715                        }">
2716                        <span
2717                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
2718                            <!-- DEBUG: Logo = EMPTY -->
2719                                                        Eclairage                        </span>
2720                    </a>
2721                            </li>
2722                                <li>
2723                                    <a
2724                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/faisceau-electrique.html"
2725                        role="link"
2726                        x-element-transition-trigger:category.animate="{
2727                            'title': `Faisceau électrique`,
2728                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/faisceau-electrique.html',
2729                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;cycle&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-cycle.html&quot;&#x7D;&#x5D;,
2730                            'img': '',
2731                            'description': `Faisceau électrique KTM, batterie KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM  250 SX,KTM  250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke,KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 129
27310 Super Adventure`,
2732                        }"
2733                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
2734                        :class="{
2735                            'text-primary-500 font-semibold': history.includes('category-node-1791')
2736                        }">
2737                        <span
2738                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
2739                            <!-- DEBUG: Logo = EMPTY -->
2740                                                        Faisceau électrique                        </span>
2741                    </a>
2742                            </li>
2743                                <li>
2744                                    <a
2745                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/filtre-a-air.html"
2746                        role="link"
2747                        x-element-transition-trigger:category.animate="{
2748                            'title': `Filtre à air`,
2749                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/filtre-a-air.html',
2750                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;cycle&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-cycle.html&quot;&#x7D;&#x5D;,
2751                            'img': '',
2752                            'description': `Filtre à air KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM  250 SX,KTM  250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke,KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 1290 Super Adventure`,
2753                        }"
2754                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
2755                        :class="{
2756                            'text-primary-500 font-semibold': history.includes('category-node-1798')
2757                        }">
2758                        <span
2759                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
2760                            <!-- DEBUG: Logo = EMPTY -->
2761                                                        Filtre à air                        </span>
2762                    </a>
2763                            </li>
2764                                <li>
2765                                    <a
2766                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/filtre-a-charbon-actif.html"
2767                        role="link"
2768                        x-element-transition-trigger:category.animate="{
2769                            'title': `Filtre à charbon actif`,
2770                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/filtre-a-charbon-actif.html',
2771                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;cycle&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-cycle.html&quot;&#x7D;&#x5D;,
2772                            'img': '',
2773                            'description': `Filtre à charbon actif KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM  250 SX,KTM  250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke,KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 129
27730 Super Adventure`,
2774                        }"
2775                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
2776                        :class="{
2777                            'text-primary-500 font-semibold': history.includes('category-node-1805')
2778                        }">
2779                        <span
2780                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
2781                            <!-- DEBUG: Logo = EMPTY -->
2782                                                        Filtre à charbon actif                        </span>
2783                    </a>
2784                            </li>
2785                                <li>
2786                                    <a
2787                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/fourche.html"
2788                        role="link"
2789                        x-element-transition-trigger:category.animate="{
2790                            'title': `Fourche`,
2791                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/fourche.html',
2792                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;cycle&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-cycle.html&quot;&#x7D;&#x5D;,
2793                            'img': '',
2794                            'description': `&lt;p&gt;Fourche KTM, fourche télescopique KTM, rondelles WP KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM 250 SX,KTM 250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke,KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 1290 Super Adventure&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;Retrouvez nos tutos &lt;a href=&quot;https://www.youtube.com/watch?v=HTHtL44lVWA&quot;&gt;ici&lt;/a&gt;.&lt;/p&gt;`,
2795                        }"
2796                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
2797                        :class="{
2798                            'text-primary-500 font-semibold': history.includes('category-node-1793')
2799                        }">
2800                        <span
2801                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
2802                            <!-- DEBUG: Logo = EMPTY -->
2803                                                        Fourche                        </span>
2804                    </a>
2805                            </li>
2806                                <li>
2807                                    <a
2808                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/freins.html"
2809                        role="link"
2810                        x-element-transition-trigger:category.animate="{
2811                            'title': `Freins`,
2812                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/freins.html',
2813                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;cycle&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-cycle.html&quot;&#x7D;&#x5D;,
2814                            'img': '',
2815                            'description': `&lt;p&gt;Freins KTM, maitres cylindre KTM, système de frein arrière KTM, étrier de frein avant et arrière KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM 250 SX,KTM 250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke,KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 129
28150 Super Adventure&lt;/p&gt;&lt;p&gt;Lien pour les tutos &lt;a href=&quot;https://www.youtube.com/watch?v=OH6oLRMnIMM&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;ici&lt;/a&gt;.&lt;/p&gt;`,
2816                        }"
2817                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
2818                        :class="{
2819                            'text-primary-500 font-semibold': history.includes('category-node-1788')
2820                        }">
2821                        <span
2822                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
2823                            <!-- DEBUG: Logo = EMPTY -->
2824                                                        Freins                        </span>
2825                    </a>
2826                            </li>
2827                                <li>
2828                                    <a
2829                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/moteur.html"
2830                        role="link"
2831                        x-element-transition-trigger:category.animate="{
2832                            'title': `Moteur`,
2833                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/moteur.html',
2834                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;cycle&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-cycle.html&quot;&#x7D;&#x5D;,
2835                            'img': '',
2836                            'description': ``,
2837                        }"
2838                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
2839                        :class="{
2840                            'text-primary-500 font-semibold': history.includes('category-node-3122')
2841                        }">
2842                        <span
2843                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
2844                            <!-- DEBUG: Logo = EMPTY -->
2845                                                        Moteur                        </span>
2846                    </a>
2847                            </li>
2848                                <li>
2849                                    <a
2850                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/outillage.html"
2851                        role="link"
2852                        x-element-transition-trigger:category.animate="{
2853                            'title': `Outillage`,
2854                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/outillage.html',
2855                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;cycle&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-cycle.html&quot;&#x7D;&#x5D;,
2856                            'img': '',
2857                            'description': `&lt;p&gt;Outillage KTM, outil spécial KTM, châssis KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM 250 SX,KTM 250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke,KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 129
28570 Super Adventure&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;Retrouvez nos tutos &lt;a href=&quot;https://www.youtube.com/watch?v=3rzrrbRoFCk&quot;&gt;ici&lt;/a&gt;.&lt;/p&gt;`,
2858                        }"
2859                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
2860                        :class="{
2861                            'text-primary-500 font-semibold': history.includes('category-node-1806')
2862                        }">
2863                        <span
2864                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
2865                            <!-- DEBUG: Logo = EMPTY -->
2866                                                        Outillage                        </span>
2867                    </a>
2868                            </li>
2869                                <li>
2870                                    <a
2871                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/roue-avant.html"
2872                        role="link"
2873                        x-element-transition-trigger:category.animate="{
2874                            'title': `Roue avant`,
2875                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/roue-avant.html',
2876                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;cycle&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-cycle.html&quot;&#x7D;&#x5D;,
2877                            'img': '',
2878                            'description': `&lt;p&gt;Roue avant KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM 250 SX,KTM 250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke,KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 1290 Super Adventure&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;Retrouvez nos tutos &lt;a href=&quot;https://youtu.be/8flN1s634d0&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;ici&lt;/a&gt;.&lt;/p&gt;`,
2879                        }"
2880                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
2881                        :class="{
2882                            'text-primary-500 font-semibold': history.includes('category-node-1786')
2883                        }">
2884                        <span
2885                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
2886                            <!-- DEBUG: Logo = EMPTY -->
2887                                                        Roue avant                        </span>
2888                    </a>
2889                            </li>
2890                                <li>
2891                                    <a
2892                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/roue-arriere.html"
2893                        role="link"
2894                        x-element-transition-trigger:category.animate="{
2895                            'title': `Roue arrière`,
2896                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/roue-arriere.html',
2897                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;cycle&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-cycle.html&quot;&#x7D;&#x5D;,
2898                            'img': '',
2899                            'description': `&lt;p&gt;Roue arrière KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM 250 SX,KTM 250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke, KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 129
28990 Super Adventure&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;Retrouvez nos tutos &lt;a href=&quot;https://youtu.be/8flN1s634d0&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;ici&lt;/a&gt;.&lt;/p&gt;`,
2900                        }"
2901                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
2902                        :class="{
2903                            'text-primary-500 font-semibold': history.includes('category-node-1800')
2904                        }">
2905                        <span
2906                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
2907                            <!-- DEBUG: Logo = EMPTY -->
2908                                                        Roue arrière                        </span>
2909                    </a>
2910                            </li>
2911                                <li>
2912                                    <a
2913                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/selle-reservoir.html"
2914                        role="link"
2915                        x-element-transition-trigger:category.animate="{
2916                            'title': `Selle, Réservoir`,
2917                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/selle-reservoir.html',
2918                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;cycle&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-cycle.html&quot;&#x7D;&#x5D;,
2919                            'img': '',
2920                            'description': `&lt;p&gt;Selle KTM, Réservoir KTM KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM 250 SX,KTM 250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke, KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 1290 Super Adventure&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;Découvrez nos tutos en cliquant &lt;a href=&quot;https://youtu.be/FkyJbpzuyOA&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;ici&lt;/a&gt;.&lt;/p&gt;`,
2921                        }"
2922                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
2923                        :class="{
2924                            'text-primary-500 font-semibold': history.includes('category-node-1794')
2925                        }">
2926                        <span
2927                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
2928                            <!-- DEBUG: Logo = EMPTY -->
2929                                                        Selle, Réservoir                        </span>
2930                    </a>
2931                            </li>
2932                                <li>
2933                                    <a
2934                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/starter-electrique.html"
2935                        role="link"
2936                        x-element-transition-trigger:category.animate="{
2937                            'title': `Starter électrique`,
2938                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/starter-electrique.html',
2939                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;cycle&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-cycle.html&quot;&#x7D;&#x5D;,
2940                            'img': '',
2941                            'description': ``,
2942                        }"
2943                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
2944                        :class="{
2945                            'text-primary-500 font-semibold': history.includes('category-node-3124')
2946                        }">
2947                        <span
2948                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
2949                            <!-- DEBUG: Logo = EMPTY -->
2950                                                        Starter électrique                        </span>
2951                    </a>
2952                            </li>
2953                                <li>
2954                                    <a
2955                                                x-a11y-trap-target.end="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-1777'"
2956                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/refroidissement.html"
2957                        role="link"
2958                        x-element-transition-trigger:category.animate="{
2959                            'title': `Refroidissement`,
2960                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle/refroidissement.html',
2961                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;cycle&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-cycle.html&quot;&#x7D;&#x5D;,
2962                            'img': '',
2963                            'description': ``,
2964                        }"
2965                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
2966                        :class="{
2967                            'text-primary-500 font-semibold': history.includes('category-node-3454')
2968                        }">
2969                        <span
2970                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
2971                            <!-- DEBUG: Logo = EMPTY -->
2972                                                        Refroidissement                        </span>
2973                    </a>
2974                            </li>
2975                        </ul>
2976
2977    <div class="h-20 md:hidden"></div>
2978            <template
2979            x-portal="$store.main.isMobile ? document.getElementById('popup-fixed-content-portal') : document.getElementById('menu-actions-category-node-1777')">
2980            <div
2981                class="bg-bg-500 px-4 pb-2 transition-colors duration-200 md:bg-transparent md:hover:text-primary-600 md:p-0"
2982                x-transition.opacity
2983                x-show="$store.main.isMobile ? history[history.length - 1] === 'category-node-1777' && !getIsSearchActive() : history.includes('category-node-1777')"
2984                role="link">
2985                <a
2986                    x-element-transition-trigger
2987                    class="button bg-white border border-primary-500 text-primary-500 w-full hover:bg-primary-500 hover:text-white hover:scale-105 transition-all duration-200"
2988                    href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle.html">
2989                    <template x-if="$store.main.isMobile">
2990                        <span>Tout voir <span class="lowercase">Partie cycle</span></span>
2991                    </template>
2992                    <template x-if="!$store.main.isMobile">
2993                        <span class="flex items-center text-center capitalize">
2994                            <span class='border-current'>
2995                                Tout voir                                <br />
2996                                <span>Partie cycle</span>
2997                            </span>
2998                        </span>
2999                    </template>
3000                </a>
3001            </div>
3002        </template>
3003    </div>
3004                    </template>
3005                            </li>
3006                                <li>
3007                                    <button
3008                                                class="menu__link group"
3009                        @click="setHistory([...'all,category-node-1766'.split(','), 'category-node-1780'])"
3010                        :class="{ 'menu__link--active': history.includes('category-node-1780') }"
3011                        role="button"
3012                        :aria-expanded="history.includes('category-node-1780')">
3013                        <span class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3014                            <!-- DEBUG: Logo = EMPTY -->
3015                                                        Partie moteur                        </span>
3016                        <span class="text-xl transition-[color,transform] md:group-hover:-translate-x-3 md:group-hover:text-primary-600">
3017                            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
3018    <path d="M10.707 17.707 16.414 12l-5.707-5.707-1.414 1.414L13.586 12l-4.293 4.293z"/>
3019</svg>
3020                        </span>
3021                    </button>
3022                    <template x-portal="document.getElementById('menu-sections')">
3023                        <div
3024    class="menu__level relative z-[100]"
3025    :class="{
3026        'menu__level--current': history[history.length - 1] === 'category-node-1780',
3027        'menu__level--visible': history.includes('category-node-1780'),
3028        'menu__level--same-depth': 3 <= delayedLevel,
3029        'hidden': !$store.main.isMobile && !$store.resizable.isVisible('menu-desktop'),
3030    }"
3031    :inert="!history.includes('category-node-1780')"
3032    data-menu-level="category-node-1780">
3033    <div class="menu__header">
3034        <div class="menu__header-container p-2 md:flex md:flex-col">
3035            
3036            <button
3037                @click="history.pop()"
3038                type="button"
3039                aria-label="Revenir au menu précédent"
3040                class="menu__back-button py-3 motion-reduce:max-md:animate-none"
3041                :class="{
3042                    'menu__back-button--visible max-md:animate-slideIconIn motion-reduce:translate-x-0': history.length !== 1,
3043                    'max-md:animate-slideIconOut motion-reduce:-translate-x-full': history.length == 1
3044                }"
3045                :tabindex="history.length === 1 ? -1 : 0"
3046                :aria-hidden="history.length === 1">
3047                <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
3048    <path d="M13.293 6.293 7.586 12l5.707 5.707 1.414-1.414L10.414 12l4.293-4.293z"/>
3049</svg>
3050            </button>
3051
3052            <h2
3053                class="menu__heading py-3 motion-reduce:max-md:animate-none"
3054                style="--translate-width: 52px;"
3055                :class="{
3056                    'menu__heading--root': 'category-node-1780' === 'all',
3057                    'max-md:w-[calc(100%-var(--translate-width))]': 'category-node-1780' !== 'all',
3058                    'max-md:animate-slideTitleIn motion-reduce:translate-x-[--translate-width]': history.length !== 1,
3059                    'max-md:animate-slideTitleOut motion-reduce:translate-x-0': history.length == 1
3060                }"
3061                x-show="$store.main.isMobile || 'category-node-1780' !== 'all'">
3062                Partie moteur            </h2>
3063
3064            <div id="menu-actions-category-node-1780" class="md:mt-[6px] md:flex-none md:flex-row"></div>
3065        </div>
3066        <hr class="divider -mx-5 md:hidden">
3067    </div>
3068
3069    <ul role="list" class="menu__links">
3070                            <li>
3071                                    <a
3072                                                x-a11y-trap-target.initial="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-1780'"
3073                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-moteur/abs.html"
3074                        role="link"
3075                        x-element-transition-trigger:category.animate="{
3076                            'title': `ABS`,
3077                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-moteur/abs.html',
3078                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;moteur&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-moteur.html&quot;&#x7D;&#x5D;,
3079                            'img': '',
3080                            'description': `ABS KTM, système antiblocage KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM  250 SX,KTM  250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke, KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 129
30800 Super Adventure`,
3081                        }"
3082                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3083                        :class="{
3084                            'text-primary-500 font-semibold': history.includes('category-node-1807')
3085                        }">
3086                        <span
3087                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3088                            <!-- DEBUG: Logo = EMPTY -->
3089                                                        ABS                        </span>
3090                    </a>
3091                            </li>
3092                                <li>
3093                                    <a
3094                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-moteur/accelerateur.html"
3095                        role="link"
3096                        x-element-transition-trigger:category.animate="{
3097                            'title': `Accelérateur`,
3098                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-moteur/accelerateur.html',
3099                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;moteur&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-moteur.html&quot;&#x7D;&#x5D;,
3100                            'img': '',
3101                            'description': `Accélérateur KTM, corps du clapet d&amp;apos;étranglement KTM, distributeur de carburant KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM  250 SX,KTM  250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke, KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 1290 Super Adventure`,
3102                        }"
3103                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3104                        :class="{
3105                            'text-primary-500 font-semibold': history.includes('category-node-1795')
3106                        }">
3107                        <span
3108                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3109                            <!-- DEBUG: Logo = EMPTY -->
3110                                                        Accelérateur                        </span>
3111                    </a>
3112                            </li>
3113                                <li>
3114                                    <a
3115                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-moteur/allumage.html"
3116                        role="link"
3117                        x-element-transition-trigger:category.animate="{
3118                            'title': `Allumage`,
3119                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-moteur/allumage.html',
3120                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;moteur&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-moteur.html&quot;&#x7D;&#x5D;,
3121                            'img': '',
3122                            'description': `Allumage KTM, système d&amp;apos;allumage KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM  250 SX,KTM  250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke, KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 129
31220 Super Adventure`,
3123                        }"
3124                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3125                        :class="{
3126                            'text-primary-500 font-semibold': history.includes('category-node-1781')
3127                        }">
3128                        <span
3129                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3130                            <!-- DEBUG: Logo = EMPTY -->
3131                                                        Allumage                        </span>
3132                    </a>
3133                            </li>
3134                                <li>
3135                                    <a
3136                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-moteur/arbre-a-cames.html"
3137                        role="link"
3138                        x-element-transition-trigger:category.animate="{
3139                            'title': `Arbre à cames`,
3140                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-moteur/arbre-a-cames.html',
3141                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;moteur&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-moteur.html&quot;&#x7D;&#x5D;,
3142                            'img': '',
3143                            'description': `Arbre à cames KTM, boite de vitesse 1 KTM, boite de vitesse 2 KTM, arbre primaire KTM, arbre de sortie KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM  250 SX,KTM  250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke, KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 1290 Super Adventure`,
3144                        }"
3145                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3146                        :class="{
3147                            'text-primary-500 font-semibold': history.includes('category-node-1784')
3148                        }">
3149                        <span
3150                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3151                            <!-- DEBUG: Logo = EMPTY -->
3152                                                        Arbre à cames                        </span>
3153                    </a>
3154                            </li>
3155                                <li>
3156                                    <a
3157                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-moteur/boite-de-vitesses.html"
3158                        role="link"
3159                        x-element-transition-trigger:category.animate="{
3160                            'title': `Boîte de vitesses`,
3161                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-moteur/boite-de-vitesses.html',
3162                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;moteur&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-moteur.html&quot;&#x7D;&#x5D;,
3163                            'img': '',
3164                            'description': `Boîte de vitesses KTM, mécanisme de sélection KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM  250 SX,KTM  250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke, KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 129
31640 Super Adventure`,
3165                        }"
3166                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3167                        :class="{
3168                            'text-primary-500 font-semibold': history.includes('category-node-1803')
3169                        }">
3170                        <span
3171                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3172                            <!-- DEBUG: Logo = EMPTY -->
3173                                                        Boîte de vitesses                        </span>
3174                    </a>
3175                            </li>
3176                                <li>
3177                                    <a
3178                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-moteur/cylindre.html"
3179                        role="link"
3180                        x-element-transition-trigger:category.animate="{
3181                            'title': `Cylindre`,
3182                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-moteur/cylindre.html',
3183                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;moteur&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-moteur.html&quot;&#x7D;&#x5D;,
3184                            'img': '',
3185                            'description': `Cylindre KTM, mécanisme de commande KTM, c
3185ommande de distribution KTM, culasse KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM  250 SX,KTM  250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke, KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 1290 Super Adventure`,
3186                        }"
3187                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3188                        :class="{
3189                            'text-primary-500 font-semibold': history.includes('category-node-1787')
3190                        }">
3191                        <span
3192                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3193                            <!-- DEBUG: Logo = EMPTY -->
3194                                                        Cylindre                        </span>
3195                    </a>
3196                            </li>
3197                                <li>
3198                                    <a
3199                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-moteur/embrayage.html"
3200                        role="link"
3201                        x-element-transition-trigger:category.animate="{
3202                            'title': `Embrayage`,
3203                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-moteur/embrayage.html',
3204                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;moteur&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-moteur.html&quot;&#x7D;&#x5D;,
3205                            'img': '',
3206                            'description': `&lt;p&gt;Embrayage KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM 250 SX,KTM 250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke, KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 1290 Super Adventure&lt;/p&gt;&lt;p&gt;Lien pour les tutos &lt;a href=&quot;https://youtu.be/LR1UcsLw-70&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;ici&lt;/a&gt;.&lt;/p&gt;`,
3207                        }"
3208                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3209                        :class="{
3210                            'text-primary-500 font-semibold': history.includes('category-node-1799')
3211                        }">
3212                        <span
3213                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3214                            <!-- DEBUG: Logo = EMPTY -->
3215                                                        Embrayage                        </span>
3216                    </a>
3217                            </li>
3218                                <li>
3219                                    <a
3220                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-moteur/lubrification.html"
3221                        role="link"
3222                        x-element-transition-trigger:category.animate="{
3223                            'title': `Lubrification`,
3224                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-moteur/lubrification.html',
3225                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;moteur&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-moteur.html&quot;&#x7D;&#x5D;,
3226                            'img': '',
3227                            'description': `Lubrification KTM, système de lubrification pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM  250 SX,KTM  250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke, KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 129
32270 Super Adventure`,
3228                        }"
3229                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3230                        :class="{
3231                            'text-primary-500 font-semibold': history.includes('category-node-1789')
3232                        }">
3233                        <span
3234                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3235                            <!-- DEBUG: Logo = EMPTY -->
3236                                                        Lubrification                        </span>
3237                    </a>
3238                            </li>
3239                                <li>
3240                                    <a
3241                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-moteur/moteur.html"
3242                        role="link"
3243                        x-element-transition-trigger:category.animate="{
3244                            'title': `Moteur`,
3245                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-moteur/moteur.html',
3246                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;moteur&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-moteur.html&quot;&#x7D;&#x5D;,
3247                            'img': '',
3248                            'description': `&lt;p&gt;Moteur KTM, carter moteur KTM, arbre d&amp;apos;équilibrage KTM, cylindre KTM, vilebrequin KTM, piston KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM 250 SX,KTM 250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke, KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 1290 Super Adventure&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;Découvrez nos tutos en cliquant &lt;a href=&quot;https://youtu.be/FkyJbpzuyOA&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;ici&lt;/a&gt;.&lt;/p&gt;`,
3249                        }"
3250                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3251                        :class="{
3252                            'text-primary-500 font-semibold': history.includes('category-node-1785')
3253                        }">
3254                        <span
3255                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3256                            <!-- DEBUG: Logo = EMPTY -->
3257                                                        Moteur                        </span>
3258                    </a>
3259                            </li>
3260                                <li>
3261                                    <a
3262                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-moteur/outillage.html"
3263                        role="link"
3264                        x-element-transition-trigger:category.animate="{
3265                            'title': `Outillage`,
3266                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-moteur/outillage.html',
3267                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;moteur&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-moteur.html&quot;&#x7D;&#x5D;,
3268                            'img': '',
3269                            'description': `Outillage KTM, outils spéciaux KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM  250 SX,KTM  250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke, KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 129
32690 Super Adventure`,
3270                        }"
3271                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3272                        :class="{
3273                            'text-primary-500 font-semibold': history.includes('category-node-1802')
3274                        }">
3275                        <span
3276                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3277                            <!-- DEBUG: Logo = EMPTY -->
3278                                                        Outillage                        </span>
3279                    </a>
3280                            </li>
3281                                <li>
3282                                    <a
3283                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-moteur/refroidissement.html"
3284                        role="link"
3285                        x-element-transition-trigger:category.animate="{
3286                            'title': `Refroidissement`,
3287                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-moteur/refroidissement.html',
3288                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;moteur&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-moteur.html&quot;&#x7D;&#x5D;,
3289                            'img': '',
3290                            'description': `&lt;p&gt;Refroidissement KTM, pompe à eau KTM, système de refroidissement KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM 250 SX,KTM 250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke, KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 1290 Super Adventure&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;Retrouvez nos tutos &lt;a href=&quot;https://www.youtube.com/watch?v=W9noZXOXZoQ&quot;&gt;ici&lt;/a&gt;.&lt;/p&gt;`,
3291                        }"
3292                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3293                        :class="{
3294                            'text-primary-500 font-semibold': history.includes('category-node-1797')
3295                        }">
3296                        <span
3297                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3298                            <!-- DEBUG: Logo = EMPTY -->
3299                                                        Refroidissement                        </span>
3300                    </a>
3301                            </li>
3302                                <li>
3303                                    <a
3304                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-moteur/secondary-air-system.html"
3305                        role="link"
3306                        x-element-transition-trigger:category.animate="{
3307                            'title': `Secondary Air System`,
3308                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-moteur/secondary-air-system.html',
3309                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;moteur&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-moteur.html&quot;&#x7D;&#x5D;,
3310                            'img': '',
3311                            'description': `Secondary Air System KTM`,
3312                        }"
3313                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3314                        :class="{
3315                            'text-primary-500 font-semibold': history.includes('category-node-1804')
3316                        }">
3317                        <span
3318                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3319                            <!-- DEBUG: Logo = EMPTY -->
3320                                                        Secondary Air System                        </span>
3321                    </a>
3322                            </li>
3323                                <li>
3324                                    <a
3325                                                x-a11y-trap-target.end="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-1780'"
3326                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-moteur/starter-electrique.html"
3327                        role="link"
3328                        x-element-transition-trigger:category.animate="{
3329                            'title': `Starter électrique`,
3330                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-moteur/starter-electrique.html',
3331                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Partie&#x20;moteur&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;partie-moteur.html&quot;&#x7D;&#x5D;,
3332                            'img': '',
3333                            'description': `Starter électrique KTM, démarreur électrique KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM  250 SX,KTM  250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke, KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 1290 Super Adventure`,
3334                        }"
3335                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3336                        :class="{
3337                            'text-primary-500 font-semibold': history.includes('category-node-1801')
3338                        }">
3339                        <span
3340                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3341                            <!-- DEBUG: Logo = EMPTY -->
3342                                                        Starter électrique                        </span>
3343                    </a>
3344                            </li>
3345                        </ul>
3346
3347    <div class="h-20 md:hidden"></div>
3348            <template
3349            x-portal="$store.main.isMobile ? document.getElementById('popup-fixed-content-portal') : document.getElementById('menu-actions-category-node-1780')">
3350            <div
3351                class="bg-bg-500 px-4 pb-2 transition-colors duration-200 md:bg-transparent md:hover:text-primary-600 md:p-0"
3352                x-transition.opacity
3353                x-show="$store.main.isMobile ? history[history.length - 1] === 'category-node-1780' && !getIsSearchActive() : history.includes('category-node-1780')"
3354                role="link">
3355                <a
3356                    x-element-transition-trigger
3357                    class="button bg-white border border-primary-500 text-primary-500 w-full hover:bg-primary-500 hover:text-white hover:scale-105 transition-all duration-200"
3358                    href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-moteur.html">
3359                    <template x-if="$store.main.isMobile">
3360                        <span>Tout voir <span class="lowercase">Partie moteur</span></span>
3361                    </template>
3362                    <template x-if="!$store.main.isMobile">
3363                        <span class="flex items-center text-center capitalize">
3364                            <span class='border-current'>
3365                                Tout voir                                <br />
3366                                <span>Partie moteur</span>
3367                            </span>
3368                        </span>
3369                    </template>
3370                </a>
3371            </div>
3372        </template>
3373    </div>
3374                    </template>
3375                            </li>
3376                                <li>
3377                                    <button
3378                                                x-a11y-trap-target.end="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-1766'"
3379                                                class="menu__link group"
3380                        @click="setHistory([...'all,category-node-1766'.split(','), 'category-node-1838'])"
3381                        :class="{ 'menu__link--active': history.includes('category-node-1838') }"
3382                        role="button"
3383                        :aria-expanded="history.includes('category-node-1838')">
3384                        <span class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3385                            <!-- DEBUG: Logo = EMPTY -->
3386                                                        Accessoires                        </span>
3387                        <span class="text-xl transition-[color,transform] md:group-hover:-translate-x-3 md:group-hover:text-primary-600">
3388                            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
3389    <path d="M10.707 17.707 16.414 12l-5.707-5.707-1.414 1.414L13.586 12l-4.293 4.293z"/>
3390</svg>
3391                        </span>
3392                    </button>
3393                    <template x-portal="document.getElementById('menu-sections')">
3394                        <div
3395    class="menu__level relative z-[100]"
3396    :class="{
3397        'menu__level--current': history[history.length - 1] === 'category-node-1838',
3398        'menu__level--visible': history.includes('category-node-1838'),
3399        'menu__level--same-depth': 3 <= delayedLevel,
3400        'hidden': !$store.main.isMobile && !$store.resizable.isVisible('menu-desktop'),
3401    }"
3402    :inert="!history.includes('category-node-1838')"
3403    data-menu-level="category-node-1838">
3404    <div class="menu__header">
3405        <div class="menu__header-container p-2 md:flex md:flex-col">
3406            
3407            <button
3408                @click="history.pop()"
3409                type="button"
3410                aria-label="Revenir au menu précédent"
3411                class="menu__back-button py-3 motion-reduce:max-md:animate-none"
3412                :class="{
3413                    'menu__back-button--visible max-md:animate-slideIconIn motion-reduce:translate-x-0': history.length !== 1,
3414                    'max-md:animate-slideIconOut motion-reduce:-translate-x-full': history.length == 1
3415                }"
3416                :tabindex="history.length === 1 ? -1 : 0"
3417                :aria-hidden="history.length === 1">
3418                <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
3419    <path d="M13.293 6.293 7.586 12l5.707 5.707 1.414-1.414L10.414 12l4.293-4.293z"/>
3420</svg>
3421            </button>
3422
3423            <h2
3424                class="menu__heading py-3 motion-reduce:max-md:animate-none"
3425                style="--translate-width: 52px;"
3426                :class="{
3427                    'menu__heading--root': 'category-node-1838' === 'all',
3428                    'max-md:w-[calc(100%-var(--translate-width))]': 'category-node-1838' !== 'all',
3429                    'max-md:animate-slideTitleIn motion-reduce:translate-x-[--translate-width]': history.length !== 1,
3430                    'max-md:animate-slideTitleOut motion-reduce:translate-x-0': history.length == 1
3431                }"
3432                x-show="$store.main.isMobile || 'category-node-1838' !== 'all'">
3433                Accessoires            </h2>
3434
3435            <div id="menu-actions-category-node-1838" class="md:mt-[6px] md:flex-none md:flex-row"></div>
3436        </div>
3437        <hr class="divider -mx-5 md:hidden">
3438    </div>
3439
3440    <ul role="list" class="menu__links">
3441                            <li>
3442                                    <a
3443                                                x-a11y-trap-target.initial="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-1838'"
3444                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/voyage.html"
3445                        role="link"
3446                        x-element-transition-trigger:category.animate="{
3447                            'title': `Bagages`,
3448                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/voyage.html',
3449                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Accessoires&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;accessoires.html&quot;&#x7D;&#x5D;,
3450                            'img': '',
3451                            'description': `Retrouvez tous les kits valises KTM pour votre moto sur notre site esprit-ktm.com`,
3452                        }"
3453                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3454                        :class="{
3455                            'text-primary-500 font-semibold': history.includes('category-node-1912')
3456                        }">
3457                        <span
3458                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3459                            <!-- DEBUG: Logo = EMPTY -->
3460                                                        Bagages                        </span>
3461                    </a>
3462                            </li>
3463                                <li>
3464                                    <a
3465                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/carbone.html"
3466                        role="link"
3467                        x-element-transition-trigger:category.animate="{
3468                            'title': `Carbone`,
3469                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/carbone.html',
3470                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Accessoires&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;accessoires.html&quot;&#x7D;&#x5D;,
3471                            'img': '',
3472                            'description': `Carbone KTM, guide chaine KTM, protection de chaine KTM, cache de pignon KTM, garde-boue KTM, kit de carénage KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM  250 SX,KTM  250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke, KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 1290 Super Adventure`,
3473                        }"
3474                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3475                        :class="{
3476                            'text-primary-500 font-semibold': history.includes('category-node-1969')
3477                        }">
3478                        <span
3479                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3480                            <!-- DEBUG: Logo = EMPTY -->
3481                                                        Carbone                        </span>
3482                    </a>
3483                            </li>
3484                                <li>
3485                                    <a
3486                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/chaines-pignons-couronnes.html"
3487                        role="link"
3488                        x-element-transition-trigger:category.animate="{
3489                            'title': `Chaines & Pignons & Couronnes`,
3490                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/chaines-pignons-couronnes.html',
3491                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Accessoires&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;accessoires.html&quot;&#x7D;&#x5D;,
3492                            'img': '',
3493                            'description': `Chaines KTM, Pignons KTM &amp; Couronnes KTM, scottoil KTM, kit scottoiler KTM, kit chaine KTM? KIT PISTON KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC ,KTM 250 SX ,KTM 250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke, KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 1290 Super Adventure`,
3494                        }"
3495                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3496                        :class="{
3497                            'text-primary-500 font-semibold': history.includes('category-node-1921')
3498                        }">
3499                        <span
3500                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3501                            <!-- DEBUG: Logo = EMPTY -->
3502                                                        Chaines & Pignons & Couronnes                        </span>
3503                    </a>
3504                            </li>
3505                                <li>
3506                                    <a
3507                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/chassis-te-de-fourche.html"
3508                        role="link"
3509                        x-element-transition-trigger:category.animate="{
3510                            'title': `Châssis - Té de fourche`,
3511                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/chassis-te-de-fourche.html',
3512                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Accessoires&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;accessoires.html&quot;&#x7D;&#x5D;,
3513                            'img': '',
3514                            'description': ``,
3515                        }"
3516                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3517                        :class="{
3518                            'text-primary-500 font-semibold': history.includes('category-node-2086')
3519                        }">
3520                        <span
3521                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3522                            <!-- DEBUG: Logo = EMPTY -->
3523                                                        Châssis - Té de fourche                        </span>
3524                    </a>
3525                            </li>
3526                                <li>
3527                                    <a
3528                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/echappements.html"
3529                        role="link"
3530                        x-element-transition-trigger:category.animate="{
3531                            'title': `Echappements`,
3532                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/echappements.html',
3533                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Accessoires&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;accessoires.html&quot;&#x7D;&#x5D;,
3534                            'img': '',
3535                            'description': `&lt;p&gt;Esprit KTM propose l&amp;apos;ensemble des Pots KTM pour Duke 125 , votre Adventure, votre Cross SX, votre Enduro EXC, votre RC, votre Super Duke votre SMC-R KTM, ou votre pot Ktm duke 390.&lt;/p&gt;&lt;p&gt;Esprit KTM vous fournit l&amp;apos;ensemble de la gamme Pot AKRAPOVIC, Pot FMF KTM, Pot Factory pour votre moto KTM.&lt;/p&gt;&lt;p&gt;Toutes ces pièces sont certifiés Origine KTM Power Parts.&lt;/p&gt;&lt;p&gt;Sélectionnez votre modèle ci-dessus afin d&amp;apos;afiner votre recherche.&lt;/p&gt;`,
3536                        }"
3537                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3538                        :class="{
3539                            'text-primary-500 font-semibold': history.includes('category-node-1848')
3540                        }">
3541                        <span
3542                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3543                            <!-- DEBUG: Logo = EMPTY -->
3544                                                        Echappements                        </span>
3545                    </a>
3546                            </li>
3547                                <li>
3548                                    <a
3549                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/extensions-logiciel.html"
3550                        role="link"
3551                        x-element-transition-trigger:category.animate="{
3552                            'title': `Extensions logiciel`,
3553                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/extensions-logiciel.html',
3554                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Accessoires&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;accessoires.html&quot;&#x7D;&#x5D;,
3555                            'img': '',
3556                            'description': ``,
3557                        }"
3558                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3559                        :class="{
3560                            'text-primary-500 font-semibold': history.includes('category-node-2823')
3561                        }">
3562                        <span
3563                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3564                            <!-- DEBUG: Logo = EMPTY -->
3565                                                        Extensions logiciel                        </span>
3566                    </a>
3567                            </li>
3568                                <li>
3569                                    <a
3570                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/filtre-a-air.html"
3571                        role="link"
3572                        x-element-transition-trigger:category.animate="{
3573                            'title': `Filtre à Air et à huile`,
3574                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/filtre-a-air.html',
3575                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Accessoires&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;accessoires.html&quot;&#x7D;&#x5D;,
3576                            'img': '',
3577                            'description': `&lt;p&gt;Filtre à Air KTM, filtre à air huile KTM, sand stop KTM, couvercle de boitier KTM, protection anti-poussière KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM 250 SX,KTM 250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke, KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 1290 Super Adventure&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;Retrouvez nos tutos &lt;a href=&quot;https://www.youtube.com/watch?v=99CQZaWsgHE&quot;&gt;ici&lt;/a&gt;.&lt;/p&gt;`,
3578                        }"
3579                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3580                        :class="{
3581                            'text-primary-500 font-semibold': history.includes('category-node-1928')
3582                        }">
3583                        <span
3584                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3585                            <!-- DEBUG: Logo = EMPTY -->
3586                                                        Filtre à Air et à huile                        </span>
3587                    </a>
3588                            </li>
3589                                <li>
3590                                    <a
3591                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/freinage.html"
3592                        role="link"
3593                        x-element-transition-trigger:category.animate="{
3594                            'title': `Freins`,
3595                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/freinage.html',
3596                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Accessoires&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;accessoires.html&quot;&#x7D;&#x5D;,
3597                            'img': '',
3598                            'description': `&lt;p&gt;Retrouvez les disques de frein KTM, les plaquettes de freins KTM, les pédales de freins, les étriers pour votre KTM dans notre boutique en ligne Esprit-ktm.com.&lt;/p&gt;&lt;p&gt;Selectionnez ci-dessus votre modèle de KTM et vous afficherez l&amp;apos;ensemble des pièces comptabile avec votre moto KTM.&lt;/p&gt;&lt;p&gt;Lien pour les tutos &lt;a href=&quot;https://youtu.be/LR1UcsLw-70&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;ici&lt;/a&gt;.&lt;/p&gt;`,
3599                        }"
3600                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3601                        :class="{
3602                            'text-primary-500 font-semibold': history.includes('category-node-1926')
3603                        }">
3604                        <span
3605                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3606                            <!-- DEBUG: Logo = EMPTY -->
3607                                                        Freins                        </span>
3608                    </a>
3609                            </li>
3610                                <li>
3611                                    <a
3612                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/guidon-instruments-electrique.html"
3613                        role="link"
3614                        x-element-transition-trigger:category.animate="{
3615                            'title': `Guidon & Instruments & Electrique`,
3616                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/guidon-instruments-electrique.html',
3617                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Accessoires&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;accessoires.html&quot;&#x7D;&#x5D;,
3618                            'img': '',
3619                            'description': `Guidon &amp; Instruments/Electrique KTM, jeu de cables d&amp;apos;adaptateur KTM, kit de clignotant KTM, kit HCU KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM  250 SX,KTM  250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke, KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 129
36190 Super Adventure`,
3620                        }"
3621                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3622                        :class="{
3623                            'text-primary-500 font-semibold': history.includes('category-node-1892')
3624                        }">
3625                        <span
3626                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3627                            <!-- DEBUG: Logo = EMPTY -->
3628                                                        Guidon & Instruments & Electrique                        </span>
3629                    </a>
3630                            </li>
3631                                <li>
3632                                    <a
3633                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/moteur.html"
3634                        role="link"
3635                        x-element-transition-trigger:category.animate="{
3636                            'title': `Moteur`,
3637                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/moteur.html',
3638                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Accessoires&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;accessoires.html&quot;&#x7D;&#x5D;,
3639                            'img': '',
3640                            'description': `&lt;p&gt;Moteur KTM, kit filtre à huile KTM, kit soupape KTM, 300 factory kit KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM 250 SX,KTM 250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke, KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 1290 Super Adventure&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;Découvrez nos tutos en cliquant &lt;a href=&quot;https://youtu.be/FkyJbpzuyOA&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;ici&lt;/a&gt;.&lt;/p&gt;`,
3641                        }"
3642                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3643                        :class="{
3644                            'text-primary-500 font-semibold': history.includes('category-node-1989')
3645                        }">
3646                        <span
3647                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3648                            <!-- DEBUG: Logo = EMPTY -->
3649                                                        Moteur                        </span>
3650                    </a>
3651                            </li>
3652                                <li>
3653                                    <a
3654                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/navigation.html"
3655                        role="link"
3656                        x-element-transition-trigger:category.animate="{
3657                            'title': `Navigation`,
3658                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/navigation.html',
3659                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Accessoires&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;accessoires.html&quot;&#x7D;&#x5D;,
3660                            'img': '',
3661                            'description': `Navigation ktm, support de GPS KTM, support smartphone KTM, étui universel KTM, housse pour iphone KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM  250 SX,KTM  250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke, KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 129
36610 Super Adventure`,
3662                        }"
3663                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3664                        :class="{
3665                            'text-primary-500 font-semibold': history.includes('category-node-1977')
3666                        }">
3667                        <span
3668                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3669                            <!-- DEBUG: Logo = EMPTY -->
3670                                                        Navigation                        </span>
3671                    </a>
3672                            </li>
3673                                <li>
3674                                    <a
3675                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/outils-transport.html"
3676                        role="link"
3677                        x-element-transition-trigger:category.animate="{
3678                            'title': `Outils & Transport`,
3679                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/outils-transport.html',
3680                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Accessoires&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;accessoires.html&quot;&#x7D;&#x5D;,
3681                            'img': '',
3682                            'description': `Outils KTM, Transport ktm, adaptateur de fixation KTM, kit de tabouret de stand KTM, nettoyeur de joint SPI de fourche KTM, c
3682offret premiers secours KTM, adaptateur de pompe pour fourche à air KTM, bouchon KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM  250 SX,KTM  250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke, KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 1290 Super Adventure`,
3683                        }"
3684                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3685                        :class="{
3686                            'text-primary-500 font-semibold': history.includes('category-node-1939')
3687                        }">
3688                        <span
3689                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3690                            <!-- DEBUG: Logo = EMPTY -->
3691                                                        Outils & Transport                        </span>
3692                    </a>
3693                            </li>
3694                                <li>
3695                                    <a
3696                                                href="https://www.esprit-ktm.com/catalog/category/view/s/pare-brise/id/1959/"
3697                        role="link"
3698                        x-element-transition-trigger:category.animate="{
3699                            'title': `Pare-brise`,
3700                            'url': 'https://www.esprit-ktm.com/catalog/category/view/s/pare-brise/id/1959/',
3701                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Accessoires&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;accessoires.html&quot;&#x7D;&#x5D;,
3702                            'img': '',
3703                            'description': `Pare-brise KTM, bulle KTM, saute-vent KTM, carénage de la bulle KTM, windshield KTM, écran flyscreen KTM, flyscreen KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM  250 SX,KTM  250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke, KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 1290 Super Adventure`,
3704                        }"
3705                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3706                        :class="{
3707                            'text-primary-500 font-semibold': history.includes('category-node-1959')
3708                        }">
3709                        <span
3710                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3711                            <!-- DEBUG: Logo = EMPTY -->
3712                                                        Pare-brise                        </span>
3713                    </a>
3714                            </li>
3715                                <li>
3716                                    <a
3717                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/pieces-anodisees-cnc.html"
3718                        role="link"
3719                        x-element-transition-trigger:category.animate="{
3720                            'title': `Pièces anodisées CNC`,
3721                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/pieces-anodisees-cnc.html',
3722                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Accessoires&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;accessoires.html&quot;&#x7D;&#x5D;,
3723                            'img': '',
3724                            'description': `&lt;p&gt;Retrouvez les bouchons de radiateur KTM, les bouchons de maitre-cylindre KTM anodisé ici sur notre site.&lt;/p&gt;&lt;p&gt;Choisissez votre KTM et sélectionner les bouchons anodisées KTM, couvercle de filtre à huile KTM, bouchon de reservoir KTM... qui vous interesse.&lt;/p&gt;`,
3725                        }"
3726                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3727                        :class="{
3728                            'text-primary-500 font-semibold': history.includes('category-node-1894')
3729                        }">
3730                        <span
3731                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3732                            <!-- DEBUG: Logo = EMPTY -->
3733                                                        Pièces anodisées CNC                        </span>
3734                    </a>
3735                            </li>
3736                                <li>
3737                                    <a
3738                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/pieces-detachees.html"
3739                        role="link"
3740                        x-element-transition-trigger:category.animate="{
3741                            'title': `Pièces détachées`,
3742                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/pieces-detachees.html',
3743                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Accessoires&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;accessoires.html&quot;&#x7D;&#x5D;,
3744                            'img': '',
3745                            'description': ``,
3746                        }"
3747                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3748                        :class="{
3749                            'text-primary-500 font-semibold': history.includes('category-node-3145')
3750                        }">
3751                        <span
3752                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3753                            <!-- DEBUG: Logo = EMPTY -->
3754                                                        Pièces détachées                        </span>
3755                    </a>
3756                            </li>
3757                                <li>
3758                                    <a
3759                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/pieces-de-carenage-autocollants.html"
3760                        role="link"
3761                        x-element-transition-trigger:category.animate="{
3762                            'title': `Pièces de carénage & autocollants`,
3763                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/pieces-de-carenage-autocollants.html',
3764                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Accessoires&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;accessoires.html&quot;&#x7D;&#x5D;,
3765                            'img': '',
3766                            'description': `&lt;p&gt;Tous les derniers kits Deco KTM sont sur notre site. Que se soit les kit deco Kactory KTM, les pièces de carénage plastique KTM spécialement conçu par l&amp;apos;usine.&lt;/p&gt;&lt;p&gt;Les Kits déco six Days, les fonds de plaques, les kit plastiques KTM... vous trouverez tout pour votre KTM SX, EXC, Duke 125, Duke 390, Duke 790, Adventure 790 Supder Duke 1290.&lt;/p&gt;&lt;p&gt;Selectionnez ci-dessus votre modèle de moto et vous afficherez l&amp;apos;ensemble des pièces compatible à votre KTM.&lt;/p&gt;&lt;p&gt;&lt;/p&gt;`,
3767                        }"
3768                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3769                        :class="{
3770                            'text-primary-500 font-semibold': history.includes('category-node-1876')
3771                        }">
3772                        <span
3773                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3774                            <!-- DEBUG: Logo = EMPTY -->
3775                                                        Pièces de carénage & autocollants                        </span>
3776                    </a>
3777                            </li>
3778                                <li>
3779                                    <a
3780                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/protections.html"
3781                        role="link"
3782                        x-element-transition-trigger:category.animate="{
3783                            'title': `Protections`,
3784                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/protections.html',
3785                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Accessoires&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;accessoires.html&quot;&#x7D;&#x5D;,
3786                            'img': '',
3787                            'description': `Protections KTM, kit de capuchon KTM, autocollant anti-boue KTM, jeu de protection de cadre KTM, protection de bras oscillant KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM  250 SX,KTM  250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke, KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 1290 Super Adventure `,
3788                        }"
3789                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3790                        :class="{
3791                            'text-primary-500 font-semibold': history.includes('category-node-1917')
3792                        }">
3793                        <span
3794                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3795                            <!-- DEBUG: Logo = EMPTY -->
3796                                                        Protections                        </span>
3797                    </a>
3798                            </li>
3799                                <li>
3800                                    <a
3801                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/noise-reduction.html"
3802                        role="link"
3803                        x-element-transition-trigger:category.animate="{
3804                            'title': `Réducteur de bruit`,
3805                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/noise-reduction.html',
3806                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Accessoires&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;accessoires.html&quot;&#x7D;&#x5D;,
3807                            'img': '',
3808                            'description': ``,
3809                        }"
3810                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3811                        :class="{
3812                            'text-primary-500 font-semibold': history.includes('category-node-3144')
3813                        }">
3814                        <span
3815                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3816                            <!-- DEBUG: Logo = EMPTY -->
3817                                                        Réducteur de bruit                        </span>
3818                    </a>
3819                            </li>
3820                                <li>
3821                                    <a
3822                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/refroidissement.html"
3823                        role="link"
3824                        x-element-transition-trigger:category.animate="{
3825                            'title': `Refroidissement`,
3826                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/refroidissement.html',
3827                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Accessoires&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;accessoires.html&quot;&#x7D;&#x5D;,
3828                            'img': '',
3829                            'description': `&lt;p&gt;Refroidissement KTM, radiator protection grille KTM, protection de carter de pompe à eau KTM, grille du sabot de protection KTM, ventilateur de refroidissement KTM, collier KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM 250 SX,KTM 250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke, KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 129
38290 Super Adventure&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;Lien pour la vidéo &lt;a href=&quot;https://youtu.be/xBrr2bCLtSg&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;ici&lt;/a&gt;.&lt;/p&gt;`,
3830                        }"
3831                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3832                        :class="{
3833                            'text-primary-500 font-semibold': history.includes('category-node-1850')
3834                        }">
3835                        <span
3836                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3837                            <!-- DEBUG: Logo = EMPTY -->
3838                                                        Refroidissement                        </span>
3839                    </a>
3840                            </li>
3841                                <li>
3842                                    <a
3843                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/repose-pieds.html"
3844                        role="link"
3845                        x-element-transition-trigger:category.animate="{
3846                            'title': `Repose pieds`,
3847                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/repose-pieds.html',
3848                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Accessoires&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;accessoires.html&quot;&#x7D;&#x5D;,
3849                            'img': '',
3850                            'description': `Repose pieds KTM KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM  250 SX,KTM  250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke, KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 1290 Super Adventure`,
3851                        }"
3852                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3853                        :class="{
3854                            'text-primary-500 font-semibold': history.includes('category-node-1937')
3855                        }">
3856                        <span
3857                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3858                            <!-- DEBUG: Logo = EMPTY -->
3859                                                        Repose pieds                        </span>
3860                    </a>
3861                            </li>
3862                                <li>
3863                                    <a
3864                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/reservoirs.html"
3865                        role="link"
3866                        x-element-transition-trigger:category.animate="{
3867                            'title': `Réservoirs`,
3868                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/reservoirs.html',
3869                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Accessoires&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;accessoires.html&quot;&#x7D;&#x5D;,
3870                            'img': '',
3871                            'description': `Réservoirs KTM, bouchon de réservoir de carburant KTM, système d&amp;apos;ouverture rapide de bouchon KTM, carénage de réservoir KTM, filtre essence KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM  250 SX,KTM  250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke, KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 129
38710 Super Adventure`,
3872                        }"
3873                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3874                        :class="{
3875                            'text-primary-500 font-semibold': history.includes('category-node-1986')
3876                        }">
3877                        <span
3878                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3879                            <!-- DEBUG: Logo = EMPTY -->
3880                                                        Réservoirs                        </span>
3881                    </a>
3882                            </li>
3883                                <li>
3884                                    <a
3885                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/roues.html"
3886                        role="link"
3887                        x-element-transition-trigger:category.animate="{
3888                            'title': `Roues`,
3889                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/roues.html',
3890                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Accessoires&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;accessoires.html&quot;&#x7D;&#x5D;,
3891                            'img': '',
3892                            'description': `&lt;p&gt;Roues ktm pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM 250 SX,KTM 250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke, KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 1290 Super Adventure&lt;/p&gt;`,
3893                        }"
3894                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3895                        :class="{
3896                            'text-primary-500 font-semibold': history.includes('category-node-1842')
3897                        }">
3898                        <span
3899                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3900                            <!-- DEBUG: Logo = EMPTY -->
3901                                                        Roues                        </span>
3902                    </a>
3903                            </li>
3904                                <li>
3905                                    <a
3906                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/selles.html"
3907                        role="link"
3908                        x-element-transition-trigger:category.animate="{
3909                            'title': `Selles`,
3910                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/selles.html',
3911                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Accessoires&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;accessoires.html&quot;&#x7D;&#x5D;,
3912                            'img': '',
3913                            'description': `Selles KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM  250 SX,KTM  250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke, KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 129
39130 Super Adventure`,
3914                        }"
3915                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3916                        :class="{
3917                            'text-primary-500 font-semibold': history.includes('category-node-1908')
3918                        }">
3919                        <span
3920                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3921                            <!-- DEBUG: Logo = EMPTY -->
3922                                                        Selles                        </span>
3923                    </a>
3924                            </li>
3925                                <li>
3926                                    <a
3927                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/suspension.html"
3928                        role="link"
3929                        x-element-transition-trigger:category.animate="{
3930                            'title': `Suspension`,
3931                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/suspension.html',
3932                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Accessoires&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;accessoires.html&quot;&#x7D;&#x5D;,
3933                            'img': '',
3934                            'description': `&lt;p&gt;Suspension KTM pour KTM 125 SX, KTM 125 EXC, KTM 250 EXC,KTM 250 SX,KTM 250 SX-F, 250 EXC-F, 450 EXC-F, KTM 690 Duke, KTM 690 SMC-R, 1190 RC8, Adventure,RC125, Freeride, KTM 125 Duke, KTM 390 Duke, KTM 790 Adventure, KTM 890 DUKE, KTM 1290 SUPER DUKE, 1290 Super Adventure&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;Retrouvez nos tutos &lt;a href=&quot;https://www.youtube.com/watch?v=CJlH-X7lCr4&quot;&gt;ici&lt;/a&gt;.&lt;/p&gt;`,
3935                        }"
3936                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3937                        :class="{
3938                            'text-primary-500 font-semibold': history.includes('category-node-1953')
3939                        }">
3940                        <span
3941                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3942                            <!-- DEBUG: Logo = EMPTY -->
3943                                                        Suspension                        </span>
3944                    </a>
3945                            </li>
3946                                <li>
3947                                    <a
3948                                                x-a11y-trap-target.end="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-1838'"
3949                                                href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/new.html"
3950                        role="link"
3951                        x-element-transition-trigger:category.animate="{
3952                            'title': `New`,
3953                            'url': 'https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires/new.html',
3954                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Pi&#x5C;u00e8ces&#x20;Origine&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Accessoires&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm&#x5C;&#x2F;accessoires.html&quot;&#x7D;&#x5D;,
3955                            'img': '',
3956                            'description': ``,
3957                        }"
3958                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
3959                        :class="{
3960                            'text-primary-500 font-semibold': history.includes('category-node-3387')
3961                        }">
3962                        <span
3963                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
3964                            <!-- DEBUG: Logo = EMPTY -->
3965                                                        New                        </span>
3966                    </a>
3967                            </li>
3968                        </ul>
3969
3970    <div class="h-20 md:hidden"></div>
3971            <template
3972            x-portal="$store.main.isMobile ? document.getElementById('popup-fixed-content-portal') : document.getElementById('menu-actions-category-node-1838')">
3973            <div
3974                class="bg-bg-500 px-4 pb-2 transition-colors duration-200 md:bg-transparent md:hover:text-primary-600 md:p-0"
3975                x-transition.opacity
3976                x-show="$store.main.isMobile ? history[history.length - 1] === 'category-node-1838' && !getIsSearchActive() : history.includes('category-node-1838')"
3977                role="link">
3978                <a
3979                    x-element-transition-trigger
3980                    class="button bg-white border border-primary-500 text-primary-500 w-full hover:bg-primary-500 hover:text-white hover:scale-105 transition-all duration-200"
3981                    href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires.html">
3982                    <template x-if="$store.main.isMobile">
3983                        <span>Tout voir <span class="lowercase">Accessoires</span></span>
3984                    </template>
3985                    <template x-if="!$store.main.isMobile">
3986                        <span class="flex items-center text-center capitalize">
3987                            <span class='border-current'>
3988                                Tout voir                                <br />
3989                                <span>Accessoires</span>
3990                            </span>
3991                        </span>
3992                    </template>
3993                </a>
3994            </div>
3995        </template>
3996    </div>
3997                    </template>
3998                            </li>
3999                        </ul>
4000
4001    <div class="h-20 md:hidden"></div>
4002            <template
4003            x-portal="$store.main.isMobile ? document.getElementById('popup-fixed-content-portal') : document.getElementById('menu-actions-category-node-1766')">
4004            <div
4005                class="bg-bg-500 px-4 pb-2 transition-colors duration-200 md:bg-transparent md:hover:text-primary-600 md:p-0"
4006                x-transition.opacity
4007                x-show="$store.main.isMobile ? history[history.length - 1] === 'category-node-1766' && !getIsSearchActive() : history.includes('category-node-1766')"
4008                role="link">
4009                <a
4010                    x-element-transition-trigger
4011                    class="button bg-white border border-primary-500 text-primary-500 w-full hover:bg-primary-500 hover:text-white hover:scale-105 transition-all duration-200"
4012                    href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm.html">
4013                    <template x-if="$store.main.isMobile">
4014                        <span>Tout voir <span class="lowercase">Pièces Origine KTM</span></span>
4015                    </template>
4016                    <template x-if="!$store.main.isMobile">
4017                        <span class="flex items-center text-center capitalize">
4018                            <span class='border-current'>
4019                                Tout voir                                <br />
4020                                <span>Pièces Origine KTM</span>
4021                            </span>
4022                        </span>
4023                    </template>
4024                </a>
4025            </div>
4026        </template>
4027    </div>
4028                    </template>
4029                            </li>
4030                                <li>
4031                                    <button
4032                                                class="menu__link group"
4033                        @click="setHistory([...'all'.split(','), 'category-node-1768'])"
4034                        :class="{ 'menu__link--active': history.includes('category-node-1768') }"
4035                        role="button"
4036                        :aria-expanded="history.includes('category-node-1768')">
4037                        <span class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
4038                            <!-- DEBUG: Logo = EMPTY -->
4039                                                        Entretien                        </span>
4040                        <span class="text-xl transition-[color,transform] md:group-hover:-translate-x-3 md:group-hover:text-primary-600">
4041                            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
4042    <path d="M10.707 17.707 16.414 12l-5.707-5.707-1.414 1.414L13.586 12l-4.293 4.293z"/>
4043</svg>
4044                        </span>
4045                    </button>
4046                    <template x-portal="document.getElementById('menu-sections')">
4047                        <div
4048    class="menu__level relative z-[100]"
4049    :class="{
4050        'menu__level--current': history[history.length - 1] === 'category-node-1768',
4051        'menu__level--visible': history.includes('category-node-1768'),
4052        'menu__level--same-depth': 2 <= delayedLevel,
4053        'hidden': !$store.main.isMobile && !$store.resizable.isVisible('menu-desktop'),
4054    }"
4055    :inert="!history.includes('category-node-1768')"
4056    data-menu-level="category-node-1768">
4057    <div class="menu__header">
4058        <div class="menu__header-container p-2 md:flex md:flex-col">
4059            
4060            <button
4061                @click="history.pop()"
4062                type="button"
4063                aria-label="Revenir au menu précédent"
4064                class="menu__back-button py-3 motion-reduce:max-md:animate-none"
4065                :class="{
4066                    'menu__back-button--visible max-md:animate-slideIconIn motion-reduce:translate-x-0': history.length !== 1,
4067                    'max-md:animate-slideIconOut motion-reduce:-translate-x-full': history.length == 1
4068                }"
4069                :tabindex="history.length === 1 ? -1 : 0"
4070                :aria-hidden="history.length === 1">
4071                <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
4072    <path d="M13.293 6.293 7.586 12l5.707 5.707 1.414-1.414L10.414 12l4.293-4.293z"/>
4073</svg>
4074            </button>
4075
4076            <h2
4077                class="menu__heading py-3 motion-reduce:max-md:animate-none"
4078                style="--translate-width: 52px;"
4079                :class="{
4080                    'menu__heading--root': 'category-node-1768' === 'all',
4081                    'max-md:w-[calc(100%-var(--translate-width))]': 'category-node-1768' !== 'all',
4082                    'max-md:animate-slideTitleIn motion-reduce:translate-x-[--translate-width]': history.length !== 1,
4083                    'max-md:animate-slideTitleOut motion-reduce:translate-x-0': history.length == 1
4084                }"
4085                x-show="$store.main.isMobile || 'category-node-1768' !== 'all'">
4086                Entretien            </h2>
4087
4088            <div id="menu-actions-category-node-1768" class="md:mt-[6px] md:flex-none md:flex-row"></div>
4089        </div>
4090        <hr class="divider -mx-5 md:hidden">
4091    </div>
4092
4093    <ul role="list" class="menu__links">
4094                            <li>
4095                                    <a
4096                                                x-a11y-trap-target.initial="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-1768'"
4097                                                href="https://www.esprit-ktm.com/entretien/kits-vidange-ktm.html"
4098                        role="link"
4099                        x-element-transition-trigger:category.animate="{
4100                            'title': `Kits vidange KTM`,
4101                            'url': 'https://www.esprit-ktm.com/entretien/kits-vidange-ktm.html',
4102                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Entretien&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;entretien.html&quot;&#x7D;&#x5D;,
4103                            'img': '',
4104                            'description': ``,
4105                        }"
4106                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
4107                        :class="{
4108                            'text-primary-500 font-semibold': history.includes('category-node-8682')
4109                        }">
4110                        <span
4111                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
4112                            <!-- DEBUG: Logo = EMPTY -->
4113                                                        Kits vidange KTM                        </span>
4114                    </a>
4115                            </li>
4116                                <li>
4117                                    <a
4118                                                href="https://www.esprit-ktm.com/entretien/huiles-racing-motorex.html"
4119                        role="link"
4120                        x-element-transition-trigger:category.animate="{
4121                            'title': `Huiles Moteur`,
4122                            'url': 'https://www.esprit-ktm.com/entretien/huiles-racing-motorex.html',
4123                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Entretien&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;entretien.html&quot;&#x7D;&#x5D;,
4124                            'img': '',
4125                            'description': `&lt;p&gt;Retrouvez toute la gamme d&amp;apos;huiles moteur pour l&amp;apos;entretien de votre KTM :&lt;/p&gt;&lt;p&gt;Huile Motorex KTM RACING 4 Temps, Huile Motorex RACING PRO 4 Temps, Huile Motorex Cross Power 2 Temps et 4 Temps, Huile Motorex POWER SYNT 2 Temps et 4 Temps, Huile Motorex TOP SPEED 4 Temps&lt;/p&gt;&lt;p&gt;Conditionnement de 500 ml à 4 litres suivant produits.&lt;/p&gt;&lt;p&gt;Retrouvez le tuto pour effectuer la vidange de votre moto &lt;a href=&quot;https://www.youtube.com/watch?v=W9noZXOXZoQ&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;ici&lt;/a&gt;&lt;/p&gt;`,
4126                        }"
4127                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
4128                        :class="{
4129                            'text-primary-500 font-semibold': history.includes('category-node-1821')
4130                        }">
4131                        <span
4132                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
4133                            <!-- DEBUG: Logo = EMPTY -->
4134                                                        Huiles Moteur                        </span>
4135                    </a>
4136                            </li>
4137                                <li>
4138                                    <a
4139                                                href="https://www.esprit-ktm.com/entretien/huile-de-boite.html"
4140                        role="link"
4141                        x-element-transition-trigger:category.animate="{
4142                            'title': `Huile de boite`,
4143                            'url': 'https://www.esprit-ktm.com/entretien/huile-de-boite.html',
4144                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Entretien&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;entretien.html&quot;&#x7D;&#x5D;,
4145                            'img': '',
4146                            'description': ``,
4147                        }"
4148                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
4149                        :class="{
4150                            'text-primary-500 font-semibold': history.includes('category-node-3168')
4151                        }">
4152                        <span
4153                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
4154                            <!-- DEBUG: Logo = EMPTY -->
4155                                                        Huile de boite                        </span>
4156                    </a>
4157                            </li>
4158                                <li>
4159                                    <a
4160                                                href="https://www.esprit-ktm.com/entretien/huile-de-fourche.html"
4161                        role="link"
4162                        x-element-transition-trigger:category.animate="{
4163                            'title': `Huile de fourche`,
4164                            'url': 'https://www.esprit-ktm.com/entretien/huile-de-fourche.html',
4165                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Entretien&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;entretien.html&quot;&#x7D;&#x5D;,
4166                            'img': '',
4167                            'description': ``,
4168                        }"
4169                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
4170                        :class="{
4171                            'text-primary-500 font-semibold': history.includes('category-node-3169')
4172                        }">
4173                        <span
4174                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
4175                            <!-- DEBUG: Logo = EMPTY -->
4176                                                        Huile de fourche                        </span>
4177                    </a>
4178                            </li>
4179                                <li>
4180                                    <a
4181                                                href="https://www.esprit-ktm.com/entretien/liquide-de-freins.html"
4182                        role="link"
4183                        x-element-transition-trigger:category.animate="{
4184                            'title': `Liquide de freins`,
4185                            'url': 'https://www.esprit-ktm.com/entretien/liquide-de-freins.html',
4186                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Entretien&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;entretien.html&quot;&#x7D;&#x5D;,
4187                            'img': '',
4188                            'description': ``,
4189                        }"
4190                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
4191                        :class="{
4192                            'text-primary-500 font-semibold': history.includes('category-node-3170')
4193                        }">
4194                        <span
4195                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
4196                            <!-- DEBUG: Logo = EMPTY -->
4197                                                        Liquide de freins                        </span>
4198                    </a>
4199                            </li>
4200                                <li>
4201                                    <a
4202                                                href="https://www.esprit-ktm.com/entretien/liquide-de-refroidissement.html"
4203                        role="link"
4204                        x-element-transition-trigger:category.animate="{
4205                            'title': `Liquide de refroidissement`,
4206                            'url': 'https://www.esprit-ktm.com/entretien/liquide-de-refroidissement.html',
4207                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Entretien&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;entretien.html&quot;&#x7D;&#x5D;,
4208                            'img': '',
4209                            'description': ``,
4210                        }"
4211                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
4212                        :class="{
4213                            'text-primary-500 font-semibold': history.includes('category-node-3171')
4214                        }">
4215                        <span
4216                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
4217                            <!-- DEBUG: Logo = EMPTY -->
4218                                                        Liquide de refroidissement                        </span>
4219                    </a>
4220                            </li>
4221                                <li>
4222                                    <a
4223                                                href="https://www.esprit-ktm.com/entretien/pneus-cross-enduro.html"
4224                        role="link"
4225                        x-element-transition-trigger:category.animate="{
4226                            'title': `Pneus & Bibs mousse`,
4227                            'url': 'https://www.esprit-ktm.com/entretien/pneus-cross-enduro.html',
4228                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Entretien&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;entretien.html&quot;&#x7D;&#x5D;,
4229                            'img': '',
4230                            'description': `&lt;p&gt;Retrouvez sur notre site tous les pneus cross et enduro pour votre moto.&lt;/p&gt;&lt;p&gt;Nous travaillons en collaboration avec Michelin, Mitas et Metzeler pour vous offrir un large choix et vous faire bénéficier des meilleurs tarifs sur les pneus Cross et Enduro.&lt;/p&gt;&lt;p&gt;Trouvez également sur cette page les mousses, tubliss, chambre à air, démonte pneus et bouchons de valve.&lt;/p&gt;&lt;p&gt;Retrouvez le tuto pour changer un pneu &lt;a href=&quot;
4230https://youtu.be/lNaai_K7wE4&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;ici&lt;/a&gt;&lt;/p&gt;`,
4231                        }"
4232                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
4233                        :class="{
4234                            'text-primary-500 font-semibold': history.includes('category-node-1822')
4235                        }">
4236                        <span
4237                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
4238                            <!-- DEBUG: Logo = EMPTY -->
4239                                                        Pneus & Bibs mousse                        </span>
4240                    </a>
4241                            </li>
4242                                <li>
4243                                    <a
4244                                                href="https://www.esprit-ktm.com/entretien/produits-d-entretien-muc-off.html"
4245                        role="link"
4246                        x-element-transition-trigger:category.animate="{
4247                            'title': `Produits d'entretien Moto`,
4248                            'url': 'https://www.esprit-ktm.com/entretien/produits-d-entretien-muc-off.html',
4249                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Entretien&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;entretien.html&quot;&#x7D;&#x5D;,
4250                            'img': '',
4251                            'description': `&lt;p&gt;Peu importe où vous roulez, pourquoi vous roulez, nous avons ce qu&amp;apos;il faut pour votre KTM.&lt;/p&gt;&lt;p&gt;Découvrez notre gamme de produits Muc-Off ci-dessous, de notre nettoyant rose OG Moto aux protections, lubrifiants et bien plus encore.&lt;/p&gt;&lt;p&gt;Muc-Off propose une large gamme de&lt;strong&gt;produits d’entretien et de nettoyage&lt;/strong&gt;.&lt;/p&gt;&lt;p&gt;La marque est obsédée par la fabrication de produits de soins les plus&lt;strong&gt;innovants&lt;/strong&gt;pour permettre au pilote et à sa moto, de fonctionner au maximum de ses capacités et de donner un aspect neuf lorsque vous avez terminé !&lt;/p&gt;`,
4252                        }"
4253                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
4254                        :class="{
4255                            'text-primary-500 font-semibold': history.includes('category-node-2108')
4256                        }">
4257                        <span
4258                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
4259                            <!-- DEBUG: Logo = EMPTY -->
4260                                                        Produits d'entretien Moto                        </span>
4261                    </a>
4262                            </li>
4263                                <li>
4264                                    <a
4265                                                x-a11y-trap-target.end="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-1768'"
4266                                                href="https://www.esprit-ktm.com/entretien/outils.html"
4267                        role="link"
4268                        x-element-transition-trigger:category.animate="{
4269                            'title': `Outils`,
4270                            'url': 'https://www.esprit-ktm.com/entretien/outils.html',
4271                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Entretien&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;entretien.html&quot;&#x7D;&#x5D;,
4272                            'img': '',
4273                            'description': `&lt;p&gt;Retrouvez tous les outils officiels de la gamme KTM pour la réparation et l&amp;apos;entretien de votre moto KTM : Visserie KTM, Tire ressort KTM, Tapis environnemental KTM, Sangles d&amp;
4273apos;arrimage KTM, sacoche à outil KTM, rampe de moto KTM, Pompe de gonflage KTM, outil multifonction KTM, tous les outils de montage et démontage KTM adapté à votre modèle de moto, lève moto KTM, housses de moto KTM, entonoir KTM, enlève boue KTM, Contrôleur de pression KTM, coffret de premier secours KTM, clef universelle KTM, chargeur et testeur de batteries, béquille de stand, ...&lt;/p&gt;&lt;p&gt;Retrouvez également tous les manuels de réparations en fonction de votre modèle de moto KTM&lt;/p&gt;`,
4274                        }"
4275                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
4276                        :class="{
4277                            'text-primary-500 font-semibold': history.includes('category-node-1820')
4278                        }">
4279                        <span
4280                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
4281                            <!-- DEBUG: Logo = EMPTY -->
4282                                                        Outils                        </span>
4283                    </a>
4284                            </li>
4285                        </ul>
4286
4287    <div class="h-20 md:hidden"></div>
4288            <template
4289            x-portal="$store.main.isMobile ? document.getElementById('popup-fixed-content-portal') : document.getElementById('menu-actions-category-node-1768')">
4290            <div
4291                class="bg-bg-500 px-4 pb-2 transition-colors duration-200 md:bg-transparent md:hover:text-primary-600 md:p-0"
4292                x-transition.opacity
4293                x-show="$store.main.isMobile ? history[history.length - 1] === 'category-node-1768' && !getIsSearchActive() : history.includes('category-node-1768')"
4294                role="link">
4295                <a
4296                    x-element-transition-trigger
4297                    class="button bg-white border border-primary-500 text-primary-500 w-full hover:bg-primary-500 hover:text-white hover:scale-105 transition-all duration-200"
4298                    href="https://www.esprit-ktm.com/entretien.html">
4299                    <template x-if="$store.main.isMobile">
4300                        <span>Tout voir <span class="lowercase">Entretien</span></span>
4301                    </template>
4302                    <template x-if="!$store.main.isMobile">
4303                        <span class="flex items-center text-center capitalize">
4304                            <span class='border-current'>
4305                                Tout voir                                <br />
4306                                <span>Entretien</span>
4307                            </span>
4308                        </span>
4309                    </template>
4310                </a>
4311            </div>
4312        </template>
4313    </div>
4314                    </template>
4315                            </li>
4316                                <li>
4317                                    <button
4318                                                class="menu__link group"
4319                        @click="setHistory([...'all'.split(','), 'category-node-3147'])"
4320                        :class="{ 'menu__link--active': history.includes('category-node-3147') }"
4321                        role="button"
4322                        :aria-expanded="history.includes('category-node-3147')">
4323                        <span class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
4324                            <!-- DEBUG: Logo = EMPTY -->
4325                                                        Equipements Pilote                        </span>
4326                        <span class="text-xl transition-[color,transform] md:group-hover:-translate-x-3 md:group-hover:text-primary-600">
4327                            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
4328    <path d="M10.707 17.707 16.414 12l-5.707-5.707-1.414 1.414L13.586 12l-4.293 4.293z"/>
4329</svg>
4330                        </span>
4331                    </button>
4332                    <template x-portal="document.getElementById('menu-sections')">
4333                        <div
4334    class="menu__level relative z-[100]"
4335    :class="{
4336        'menu__level--current': history[history.length - 1] === 'category-node-3147',
4337        'menu__level--visible': history.includes('category-node-3147'),
4338        'menu__level--same-depth': 2 <= delayedLevel,
4339        'hidden': !$store.main.isMobile && !$store.resizable.isVisible('menu-desktop'),
4340    }"
4341    :inert="!history.includes('category-node-3147')"
4342    data-menu-level="category-node-3147">
4343    <div class="menu__header">
4344        <div class="menu__header-container p-2 md:flex md:flex-col">
4345            
4346            <button
4347                @click="history.pop()"
4348                type="button"
4349                aria-label="Revenir au menu précédent"
4350                class="menu__back-button py-3 motion-reduce:max-md:animate-none"
4351                :class="{
4352                    'menu__back-button--visible max-md:animate-slideIconIn motion-reduce:translate-x-0': history.length !== 1,
4353                    'max-md:animate-slideIconOut motion-reduce:-translate-x-full': history.length == 1
4354                }"
4355                :tabindex="history.length === 1 ? -1 : 0"
4356                :aria-hidden="history.length === 1">
4357                <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
4358    <path d="M13.293 6.293 7.586 12l5.707 5.707 1.414-1.414L10.414 12l4.293-4.293z"/>
4359</svg>
4360            </button>
4361
4362            <h2
4363                class="menu__heading py-3 motion-reduce:max-md:animate-none"
4364                style="--translate-width: 52px;"
4365                :class="{
4366                    'menu__heading--root': 'category-node-3147' === 'all',
4367                    'max-md:w-[calc(100%-var(--translate-width))]': 'category-node-3147' !== 'all',
4368                    'max-md:animate-slideTitleIn motion-reduce:translate-x-[--translate-width]': history.length !== 1,
4369                    'max-md:animate-slideTitleOut motion-reduce:translate-x-0': history.length == 1
4370                }"
4371                x-show="$store.main.isMobile || 'category-node-3147' !== 'all'">
4372                Equipements Pilote            </h2>
4373
4374            <div id="menu-actions-category-node-3147" class="md:mt-[6px] md:flex-none md:flex-row"></div>
4375        </div>
4376        <hr class="divider -mx-5 md:hidden">
4377    </div>
4378
4379    <ul role="list" class="menu__links">
4380                            <li>
4381                                    <button
4382                                                x-a11y-trap-target.initial="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-3147'"
4383                                                class="menu__link group"
4384                        @click="setHistory([...'all,category-node-3147'.split(','), 'category-node-1812'])"
4385                        :class="{ 'menu__link--active': history.includes('category-node-1812') }"
4386                        role="button"
4387                        :aria-expanded="history.includes('category-node-1812')">
4388                        <span class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
4389                            <!-- DEBUG: Logo = EMPTY -->
4390                                                        Equipements pilote Cross & Enduro                        </span>
4391                        <span class="text-xl transition-[color,transform] md:group-hover:-translate-x-3 md:group-hover:text-primary-600">
4392                            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
4393    <path d="M10.707 17.707 16.414 12l-5.707-5.707-1.414 1.414L13.586 12l-4.293 4.293z"/>
4394</svg>
4395                        </span>
4396                    </button>
4397                    <template x-portal="document.getElementById('menu-sections')">
4398                        <div
4399    class="menu__level relative z-[100]"
4400    :class="{
4401        'menu__level--current': history[history.length - 1] === 'category-node-1812',
4402        'menu__level--visible': history.includes('category-node-1812'),
4403        'menu__level--same-depth': 3 <= delayedLevel,
4404        'hidden': !$store.main.isMobile && !$store.resizable.isVisible('menu-desktop'),
4405    }"
4406    :inert="!history.includes('category-node-1812')"
4407    data-menu-level="category-node-1812">
4408    <div class="menu__header">
4409        <div class="menu__header-container p-2 md:flex md:flex-col">
4410            
4411            <button
4412                @click="history.pop()"
4413                type="button"
4414                aria-label="Revenir au menu précédent"
4415                class="menu__back-button py-3 motion-reduce:max-md:animate-none"
4416                :class="{
4417                    'menu__back-button--visible max-md:animate-slideIconIn motion-reduce:translate-x-0': history.length !== 1,
4418                    'max-md:animate-slideIconOut motion-reduce:-translate-x-full': history.length == 1
4419                }"
4420                :tabindex="history.length === 1 ? -1 : 0"
4421                :aria-hidden="history.length === 1">
4422                <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
4423    <path d="M13.293 6.293 7.586 12l5.707 5.707 1.414-1.414L10.414 12l4.293-4.293z"/>
4424</svg>
4425            </button>
4426
4427            <h2
4428                class="menu__heading py-3 motion-reduce:max-md:animate-none"
4429                style="--translate-width: 52px;"
4430                :class="{
4431                    'menu__heading--root': 'category-node-1812' === 'all',
4432                    'max-md:w-[calc(100%-var(--translate-width))]': 'category-node-1812' !== 'all',
4433                    'max-md:animate-slideTitleIn motion-reduce:translate-x-[--translate-width]': history.length !== 1,
4434                    'max-md:animate-slideTitleOut motion-reduce:translate-x-0': history.length == 1
4435                }"
4436                x-show="$store.main.isMobile || 'category-node-1812' !== 'all'">
4437                Equipements pilote Cross & Enduro            </h2>
4438
4439            <div id="menu-actions-category-node-1812" class="md:mt-[6px] md:flex-none md:flex-row"></div>
4440        </div>
4441        <hr class="divider -mx-5 md:hidden">
4442    </div>
4443
4444    <ul role="list" class="menu__links">
4445                            <li>
4446                                    <a
4447                                                x-a11y-trap-target.initial="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-1812'"
4448                                                href="https://www.esprit-ktm.com/equipements-pilote/vetements-cross-enduro/bottes-protections.html"
4449                        role="link"
4450                        x-element-transition-trigger:category.animate="{
4451                            'title': `Bottes`,
4452                            'url': 'https://www.esprit-ktm.com/equipements-pilote/vetements-cross-enduro/bottes-protections.html',
4453                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Equipements&#x20;Pilote&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;equipements-pilote.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Equipements&#x20;pilote&#x20;Cross&#x20;&amp;&#x20;Enduro&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;equipements-pilote&#x5C;&#x2F;vetements-cross-enduro.html&quot;&#x7D;&#x5D;,
4454                            'img': '',
4455                            'description': `Bienvenue dans la catégorie Bottes Cross &amp; Enduro d&amp;
4455apos;Esprit-KTM, où la performance, la protection et le style tout-terrain s&amp;apos;unissent. Plongez dans notre sélection de bottes spécialement conçues pour les amateurs de cross et d&amp;apos;enduro, inspirées par l&amp;apos;héritage tout-terrain de la légendaire marque KTM.Nos bottes Cross &amp; Enduro, arborant fièrement le logo emblématique de KTM, vont bien au-delà de simples équipements de protection pour devenir des pièces essentielles de votre équipement tout-terrain. Chaque paire incarne l&amp;apos;engagement de KTM envers la sécurité et le style sur les pistes les plus exigeantes.Conçues avec une attention particulière à la durabilité, à la protection des pieds et à l&amp;apos;adhérence, nos bottes offrent aux pilotes tout-terrain une combinaison parfaite de performance et de confort. Chaque paire de bottes est une déclaration de l&amp;apos;aventure sans limites, une manière d&amp;apos;affirmer votre passion pour le tout-terrain avec la robustesse caractéristique de KTM.Retrouvez nos collections Tech 7 EXC Boots, Tech 7 MX Boots, Kids Tech 7S Boots et bien d&amp;apos;autres. `,
4456                        }"
4457                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
4458                        :class="{
4459                            'text-primary-500 font-semibold': history.includes('category-node-1824')
4460                        }">
4461                        <span
4462                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
4463                            <!-- DEBUG: Logo = EMPTY -->
4464                                                        Bottes                        </span>
4465                    </a>
4466                            </li>
4467                                <li>
4468                                    <a
4469                                                href="https://www.esprit-ktm.com/equipements-pilote/vetements-cross-enduro/casques-masques.html"
4470                        role="link"
4471                        x-element-transition-trigger:category.animate="{
4472                            'title': `Casques`,
4473                            'url': 'https://www.esprit-ktm.com/equipements-pilote/vetements-cross-enduro/casques-masques.html',
4474                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Equipements&#x20;Pilote&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;equipements-pilote.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Equipements&#x20;pilote&#x20;Cross&#x20;&amp;&#x20;Enduro&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;equipements-pilote&#x5C;&#x2F;vetements-cross-enduro.html&quot;&#x7D;&#x5D;,
4475                            'img': '',
4476                            'description': `Bienvenue dans la catégorie Casques Cross &amp; Enduro d&amp;apos;Esprit-KTM, où la sécurité, le style et la performance se rencontrent. Plongez dans notre sélection de casques conçus spécialement pour les amateurs de cross et d&amp;apos;enduro, inspirée par l&amp;apos;héritage tout-terrain de la légendaire marque KTM.Nos casques Cross &amp; Enduro, arborant fièrement le logo emblématique de KTM, vont bien au-delà de simples équipements de protection pour devenir des extensions de votre passion pour l&amp;apos;aventure tout-terrain. Chaque casque incarne l&amp;apos;engagement de KTM envers la sécurité et le style.Conçus avec une attention particulière à la légèreté, à la ventilation et à la technologie de pointe, nos casques offrent aux pilotes une expérience de conduite optimale, même dans les conditions les plus extrêmes. Chaque casque est une déclaration de l&amp;apos;aventure sans compromis, une manière d&amp;apos;affirmer votre engagement  avec la puissance et la confiance caractéristiques de KTM.Retrouvez nos casques Stryker Helmet, Kini Red Bull Competition, Aviator 3 Helmet, Dynamic-FX Helmet et bien d&amp;
4476apos;autres.`,
4477                        }"
4478                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
4479                        :class="{
4480                            'text-primary-500 font-semibold': history.includes('category-node-1813')
4481                        }">
4482                        <span
4483                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
4484                            <!-- DEBUG: Logo = EMPTY -->
4485                                                        Casques                        </span>
4486                    </a>
4487                            </li>
4488                                <li>
4489                                    <a
4490                                                href="https://www.esprit-ktm.com/equipements-pilote/vetements-cross-enduro/gants.html"
4491                        role="link"
4492                        x-element-transition-trigger:category.animate="{
4493                            'title': `Gants`,
4494                            'url': 'https://www.esprit-ktm.com/equipements-pilote/vetements-cross-enduro/gants.html',
4495                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Equipements&#x20;Pilote&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;equipements-pilote.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Equipements&#x20;pilote&#x20;Cross&#x20;&amp;&#x20;Enduro&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;equipements-pilote&#x5C;&#x2F;vetements-cross-enduro.html&quot;&#x7D;&#x5D;,
4496                            'img': '',
4497                            'description': `Bienvenue dans la catégorie Gants Cross &amp; Enduro d&amp;apos;Esprit-KTM, où la précision, la protection et le confort s&amp;apos;unissent. Plongez dans notre sélection de gants spécialement conçus pour les passionnés de cross et d&amp;apos;enduro, inspirée par l&amp;apos;héritage tout-terrain de la légendaire marque KTM.Nos gants Cross &amp; Enduro, arborant fièrement le logo emblématique de KTM, vont bien au-delà de simples accessoires pour devenir des pièces essentielles de votre équipement tout-terrain. Chaque paire incarne l&amp;apos;engagement de KTM envers la performance et le style sur les pistes les plus exigeantes.Conçus avec une attention particulière à la protection des mains, à la respirabilité et à la mobilité des doigts, nos gants offrent aux pilotes tout-terrain une combinaison parfaite de confort et de contrôle. Chaque paire de gants est une déclaration de l&amp;apos;aventure sans limites, une manière d&amp;apos;affirmer votre passion pour le tout-terrain avec l&amp;apos;authenticité caractéristique de KTM.Retrouvez nos gants Prime Gloves Thor, Speed Racing Team Gloves, Kini-RB Competition, Racetech WP Gloves, Pounce Gloves, Gravity-FX Gloves, Mechanic Gloves et bien d&amp;apos;autres. `,
4498                        }"
4499                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
4500                        :class="{
4501                            'text-primary-500 font-semibold': history.includes('category-node-2593')
4502                        }">
4503                        <span
4504                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
4505                            <!-- DEBUG: Logo = EMPTY -->
4506                                                        Gants                        </span>
4507                    </a>
4508                            </li>
4509                                <li>
4510                                    <a
4511                                                href="https://www.esprit-ktm.com/equipements-pilote/vetements-cross-enduro/masques.html"
4512                        role="link"
4513                        x-element-transition-trigger:category.animate="{
4514                            'title': `Masques`,
4515                            'url': 'https://www.esprit-ktm.com/equipements-pilote/vetements-cross-enduro/masques.html',
4516                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Equipements&#x20;Pilote&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;equipements-pilote.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Equipements&#x20;pilote&#x20;Cross&#x20;&amp;&#x20;Enduro&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;equipements-pilote&#x5C;&#x2F;vetements-cross-enduro.html&quot;&#x7D;&#x5D;,
4517                            'img': '',
4518                            'description': `Bienvenue dans la catégorie Masques Cross &amp; Enduro d&amp;
4518apos;Esprit-KTM, où la protection, le style et la performance s&amp;apos;associent. Plongez dans notre sélection de masques spécialement conçus pour les amateurs de cross et d&amp;apos;enduro, inspirée par l&amp;apos;héritage tout-terrain de la légendaire marque KTM.Nos masques Cross &amp; Enduro, arborant fièrement le logo emblématique de KTM, vont bien au-delà de simples accessoires de protection pour devenir des éléments essentiels de votre équipement tout-terrain. Chaque pièce incarne l&amp;apos;engagement de KTM envers la sécurité et le style sur les pistes les plus exigeantes.Conçus avec une attention particulière à la ventilation, à la protection oculaire et au confort, nos masques offrent aux pilotes tout-terrain une vision claire et une protection optimale contre les éléments. Chaque masque est une déclaration de l&amp;apos;aventure sans limites, une manière d&amp;apos;affirmer votre passion pour le tout-terrain avec l&amp;apos;authenticité caractéristique de KTM.Retrouvez nos masques Fury MX Goggles, Kids Racing Goggles, Racing Goggles, Kini Red Bull et bien d&amp;apos;autres. `,
4519                        }"
4520                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
4521                        :class="{
4522                            'text-primary-500 font-semibold': history.includes('category-node-2590')
4523                        }">
4524                        <span
4525                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
4526                            <!-- DEBUG: Logo = EMPTY -->
4527                                                        Masques                        </span>
4528                    </a>
4529                            </li>
4530                                <li>
4531                                    <a
4532                                                href="https://www.esprit-ktm.com/equipements-pilote/vetements-cross-enduro/maillots.html"
4533                        role="link"
4534                        x-element-transition-trigger:category.animate="{
4535                            'title': `Maillots`,
4536                            'url': 'https://www.esprit-ktm.com/equipements-pilote/vetements-cross-enduro/maillots.html',
4537                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Equipements&#x20;Pilote&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;equipements-pilote.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Equipements&#x20;pilote&#x20;Cross&#x20;&amp;&#x20;Enduro&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;equipements-pilote&#x5C;&#x2F;vetements-cross-enduro.html&quot;&#x7D;&#x5D;,
4538                            'img': '',
4539                            'description': `Bienvenue dans la catégorie Maillots Cross &amp; Enduro d&amp;apos;Esprit-KTM, où le style, la performance et la résistance se rencontrent. Plongez dans notre sélection de maillots spécialement conçus pour les passionnés de cross et d&amp;apos;enduro, inspirée par l&amp;apos;héritage tout-terrain de la légendaire marque KTM.Nos maillots Cross &amp; Enduro, arborant fièrement le logo emblématique de KTM, vont bien au-delà de simples vêtements pour devenir des éléments essentiels de votre équipement tout-terrain. Chaque pièce incarne l&amp;apos;engagement de KTM envers la performance et le style sur les pistes exigeantes.Conçus avec une attention particulière à la respirabilité, à la liberté de mouvement et au design, nos maillots offrent aux pilotes tout-terrain une combinaison parfaite de confort et de style. Chaque maillot est une déclaration de l&amp;apos;aventure sans limites, une manière d&amp;apos;affirmer votre passion pour le tout-terrain avec l&amp;apos;authenticité caractéristique de KTM.Retrouvez nos maillots Racetech Shirt, Kini-RB Competition, Pounce Shirt, Gravity-FX Shirt, Prime Jersey Thor, Kids Gravity-FX et bien d&amp;
4539apos;autres. `,
4540                        }"
4541                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
4542                        :class="{
4543                            'text-primary-500 font-semibold': history.includes('category-node-2591')
4544                        }">
4545                        <span
4546                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
4547                            <!-- DEBUG: Logo = EMPTY -->
4548                                                        Maillots                        </span>
4549                    </a>
4550                            </li>
4551                                <li>
4552                                    <a
4553                                                href="https://www.esprit-ktm.com/equipements-pilote/vetements-cross-enduro/pantalons.html"
4554                        role="link"
4555                        x-element-transition-trigger:category.animate="{
4556                            'title': `Pantalons`,
4557                            'url': 'https://www.esprit-ktm.com/equipements-pilote/vetements-cross-enduro/pantalons.html',
4558                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Equipements&#x20;Pilote&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;equipements-pilote.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Equipements&#x20;pilote&#x20;Cross&#x20;&amp;&#x20;Enduro&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;equipements-pilote&#x5C;&#x2F;vetements-cross-enduro.html&quot;&#x7D;&#x5D;,
4559                            'img': '',
4560                            'description': `Bienvenue dans la catégorie Pantalons Cross &amp; Enduro d&amp;apos;Esprit-KTM, où la résistance, la mobilité et le style tout-terrain s&amp;apos;allient. Plongez dans notre sélection de pantalons spécialement conçus pour les amateurs de cross et d&amp;apos;enduro, inspirée par l&amp;apos;héritage tout-terrain de la légendaire marque KTM.Nos pantalons Cross &amp; Enduro, arborant fièrement le logo emblématique de KTM, vont bien au-delà de simples vêtements pour devenir des éléments essentiels de votre équipement tout-terrain. Chaque pantalon incarne l&amp;apos;engagement de KTM envers la performance et le style sur les pistes les plus exigeantes.Conçus avec une attention particulière à la durabilité, à la ventilation et à la liberté de mouvement, nos pantalons offrent aux pilotes tout-terrain une combinaison parfaite de confort et de protection. Chaque pantalon est une déclaration de l&amp;apos;aventure sans limites, une manière d&amp;apos;affirmer votre passion pour le tout-terrain avec l&amp;apos;authenticité caractéristique de KTM.Découvrez nos pantalons Kini-RB Competition, Gravity-FX Replica Pants, Prime Pants Thor, Pounce Pants, Prime Pro  Pants, Kids Gravity-FX Pants, Racetech WP Pants, Adventure S Pants et bien d&amp;apos;autres. `,
4561                        }"
4562                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
4563                        :class="{
4564                            'text-primary-500 font-semibold': history.includes('category-node-2592')
4565                        }">
4566                        <span
4567                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
4568                            <!-- DEBUG: Logo = EMPTY -->
4569                                                        Pantalons                        </span>
4570                    </a>
4571                            </li>
4572                                <li>
4573                                    <a
4574                                                href="https://www.esprit-ktm.com/equipements-pilote/vetements-cross-enduro/protections.html"
4575                        role="link"
4576                        x-element-transition-trigger:category.animate="{
4577                            'title': `Protections`,
4578                            'url': 'https://www.esprit-ktm.com/equipements-pilote/vetements-cross-enduro/protections.html',
4579                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Equipements&#x20;Pilote&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;equipements-pilote.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Equipements&#x20;pilote&#x20;Cross&#x20;&amp;&#x20;Enduro&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;equipements-pilote&#x5C;&#x2F;vetements-cross-enduro.html&quot;&#x7D;&#x5D;,
4580                            'img': '',
4581                            'description': `Bienvenue dans la catégorie Protections Cross &amp; Enduro d&amp;
4581apos;Esprit-KTM, où la sécurité, la performance et le style se conjuguent.Plongez dans notre sélection de protections spécialement conçues pour les amateurs de cross et d&amp;apos;enduro, inspirée par l&amp;apos;héritage tout-terrain de la légendaire marque KTM.Nos protections Cross &amp; Enduro, arborant fièrement le logo emblématique de KTM, vont bien au-delà de simples équipements de sécurité pour devenir des éléments essentiels de votre équipement tout-terrain. Chaque pièce incarne l&amp;apos;engagement de KTM envers la sécurité et le style sur les pistes les plus exigeantes.Conçues avec une attention particulière à la durabilité, à l&amp;apos;ajustement optimal et à la liberté de mouvement, nos protections offrent aux pilotes tout-terrain une combinaison parfaite de confort et de sécurité. Chaque protection est une déclaration de l&amp;apos;aventure sans limites, une manière d&amp;apos;affirmer votre passion pour le tout-terrain avec l&amp;apos;authenticité caractéristique de KTM.Retrouvez nos protections KTM pour enfant, nos protections genoux, coudes, cou, poitrine, dorsales, nos pare-pierres et bien d&amp;apos;autres.`,
4582                        }"
4583                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
4584                        :class="{
4585                            'text-primary-500 font-semibold': history.includes('category-node-2594')
4586                        }">
4587                        <span
4588                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
4589                            <!-- DEBUG: Logo = EMPTY -->
4590                                                        Protections                        </span>
4591                    </a>
4592                            </li>
4593                                <li>
4594                                    <a
4595                                                href="https://www.esprit-ktm.com/equipements-pilote/vetements-cross-enduro/sous-vetements.html"
4596                        role="link"
4597                        x-element-transition-trigger:category.animate="{
4598                            'title': `Sous Vêtements`,
4599                            'url': 'https://www.esprit-ktm.com/equipements-pilote/vetements-cross-enduro/sous-vetements.html',
4600                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Equipements&#x20;Pilote&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;equipements-pilote.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Equipements&#x20;pilote&#x20;Cross&#x20;&amp;&#x20;Enduro&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;equipements-pilote&#x5C;&#x2F;vetements-cross-enduro.html&quot;&#x7D;&#x5D;,
4601                            'img': '',
4602                            'description': `Bienvenue dans la catégorie Sous-vêtements Cross &amp; Enduro d&amp;apos;Esprit-KTM, où le confort, la technologie et la performance se réunissent.Plongez dans notre sélection de sous-vêtements spécialement conçus pour les amateurs de cross et d&amp;apos;enduro, inspirés par l&amp;apos;héritage tout-terrain de la légendaire marque KTM.Nos sous-vêtements Cross &amp; Enduro vont bien au-delà de simples couches de base pour devenir des éléments clés de votre équipement tout-terrain. Chaque pièce incarne l&amp;apos;engagement de KTM envers la performance et le bien-être du pilote.Conçus avec une attention particulière à la respirabilité, à l&amp;apos;évacuation de l&amp;apos;humidité et à la liberté de mouvement, nos sous-vêtements offrent aux pilotes tout-terrain un confort optimal sous toutes les conditions. Retrouvez nos cagoules, chaussettes, pantalons techniques, t-shirts techniques et bien d&amp;apos;autres. `,
4603                        }"
4604                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
4605                        :class="{
4606                            'text-primary-500 font-semibold': history.includes('category-node-1890')
4607                        }">
4608                        <span
4609                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
4610                            <!-- DEBUG: Logo = EMPTY -->
4611                                                        Sous Vêtements                        </span>
4612                    </a>
4613                            </li>
4614                                <li>
4615                                    <a
4616                                                x-a11y-trap-target.end="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-1812'"
4617                                                href="https://www.esprit-ktm.com/equipements-pilote/vetements-cross-enduro/vestes-maillots-pantalons-gants.html"
4618                        role="link"
4619                        x-element-transition-trigger:category.animate="{
4620                            'title': `Vestes`,
4621                            'url': 'https://www.esprit-ktm.com/equipements-pilote/vetements-cross-enduro/vestes-maillots-pantalons-gants.html',
4622                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Equipements&#x20;Pilote&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;equipements-pilote.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Equipements&#x20;pilote&#x20;Cross&#x20;&amp;&#x20;Enduro&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;equipements-pilote&#x5C;&#x2F;vetements-cross-enduro.html&quot;&#x7D;&#x5D;,
4623                            'img': '',
4624                            'description': `Bienvenue dans la catégorie Vestes Cross &amp; Enduro d&amp;apos;Esprit-KTM, où la fonctionnalité, le style robuste et la résistance se combinent. Plongez dans notre sélection de vestes inspirées par l&amp;apos;héritage tout-terrain de la légendaire marque KTM.Nos vestes Cross &amp; Enduro, arborant fièrement le logo emblématique de KTM, vont au-delà de simples vêtements de protection pour devenir des pièces maîtresses de votre équipement tout-terrain. Que vous recherchiez une veste légère pour les journées chaudes, une veste résistante pour affronter les intempéries, ou une veste tout-terrain pour une protection complète, chaque pièce incarne l&amp;apos;engagement de KTM envers la performance et le style sur les pistes difficiles.Conçues avec une attention particulière à la durabilité, à la ventilation et à la liberté de mouvement, nos vestes offrent aux pilotes tout-terrain une protection optimale sans compromis sur le confort. Que vous soyez en compétition sur des terrains accidentés ou que vous exploriez de nouveaux sentiers, chaque veste est une déclaration de l&amp;apos;aventure sans limites, une manière d&amp;apos;affirmer votre passion pour le tout-terrain avec l&amp;apos;authenticité caractéristique de KTM.Retrouvez nos collections Defender Jacket, Rain Jacket, Racetech WP Jacket, Woman Adventure S Jacket et bien d&amp;apos;autres. `,
4625                        }"
4626                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
4627                        :class="{
4628                            'text-primary-500 font-semibold': history.includes('category-node-1861')
4629                        }">
4630                        <span
4631                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
4632                            <!-- DEBUG: Logo = EMPTY -->
4633                                                        Vestes                        </span>
4634                    </a>
4635                            </li>
4636                        </ul>
4637
4638    <div class="h-20 md:hidden"></div>
4639            <template
4640            x-portal="$store.main.isMobile ? document.getElementById('popup-fixed-content-portal') : document.getElementById('menu-actions-category-node-1812')">
4641            <div
4642                class="bg-bg-500 px-4 pb-2 transition-colors duration-200 md:bg-transparent md:hover:text-primary-600 md:p-0"
4643                x-transition.opacity
4644                x-show="$store.main.isMobile ? history[history.length - 1] === 'category-node-1812' && !getIsSearchActive() : history.includes('category-node-1812')"
4645                role="link">
4646                <a
4647                    x-element-transition-trigger
4648                    class="button bg-white border border-primary-500 text-primary-500 w-full hover:bg-primary-500 hover:text-white hover:scale-105 transition-all duration-200"
4649                    href="https://www.esprit-ktm.com/equipements-pilote/vetements-cross-enduro.html">
4650                    <template x-if="$store.main.isMobile">
4651                        <span>Tout voir <span class="lowercase">Equipements pilote Cross & Enduro</span></span>
4652                    </template>
4653                    <template x-if="!$store.main.isMobile">
4654                        <span class="flex items-center text-center capitalize">
4655                            <span class='border-current'>
4656                                Tout voir                                <br />
4657                                <span>Equipements pilote Cross & Enduro</span>
4658                            </span>
4659                        </span>
4660                    </template>
4661                </a>
4662            </div>
4663        </template>
4664    </div>
4665                    </template>
4666                            </li>
4667                                <li>
4668                                    <button
4669                                                x-a11y-trap-target.end="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-3147'"
4670                                                class="menu__link group"
4671                        @click="setHistory([...'all,category-node-3147'.split(','), 'category-node-1868'])"
4672                        :class="{ 'menu__link--active': history.includes('category-node-1868') }"
4673                        role="button"
4674                        :aria-expanded="history.includes('category-node-1868')">
4675                        <span class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
4676                            <!-- DEBUG: Logo = EMPTY -->
4677                                                        Equipements pilote Route                        </span>
4678                        <span class="text-xl transition-[color,transform] md:group-hover:-translate-x-3 md:group-hover:text-primary-600">
4679                            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
4680    <path d="M10.707 17.707 16.414 12l-5.707-5.707-1.414 1.414L13.586 12l-4.293 4.293z"/>
4681</svg>
4682                        </span>
4683                    </button>
4684                    <template x-portal="document.getElementById('menu-sections')">
4685                        <div
4686    class="menu__level relative z-[100]"
4687    :class="{
4688        'menu__level--current': history[history.length - 1] === 'category-node-1868',
4689        'menu__level--visible': history.includes('category-node-1868'),
4690        'menu__level--same-depth': 3 <= delayedLevel,
4691        'hidden': !$store.main.isMobile && !$store.resizable.isVisible('menu-desktop'),
4692    }"
4693    :inert="!history.includes('category-node-1868')"
4694    data-menu-level="category-node-1868">
4695    <div class="menu__header">
4696        <div class="menu__header-container p-2 md:flex md:flex-col">
4697            
4698            <button
4699                @click="history.pop()"
4700                type="button"
4701                aria-label="Revenir au menu précédent"
4702                class="menu__back-button py-3 motion-reduce:max-md:animate-none"
4703                :class="{
4704                    'menu__back-button--visible max-md:animate-slideIconIn motion-reduce:translate-x-0': history.length !== 1,
4705                    'max-md:animate-slideIconOut motion-reduce:-translate-x-full': history.length == 1
4706                }"
4707                :tabindex="history.length === 1 ? -1 : 0"
4708                :aria-hidden="history.length === 1">
4709                <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
4710    <path d="M13.293 6.293 7.586 12l5.707 5.707 1.414-1.414L10.414 12l4.293-4.293z"/>
4711</svg>
4712            </button>
4713
4714            <h2
4715                class="menu__heading py-3 motion-reduce:max-md:animate-none"
4716                style="--translate-width: 52px;"
4717                :class="{
4718                    'menu__heading--root': 'category-node-1868' === 'all',
4719                    'max-md:w-[calc(100%-var(--translate-width))]': 'category-node-1868' !== 'all',
4720                    'max-md:animate-slideTitleIn motion-reduce:translate-x-[--translate-width]': history.length !== 1,
4721                    'max-md:animate-slideTitleOut motion-reduce:translate-x-0': history.length == 1
4722                }"
4723                x-show="$store.main.isMobile || 'category-node-1868' !== 'all'">
4724                Equipements pilote Route            </h2>
4725
4726            <div id="menu-actions-category-node-1868" class="md:mt-[6px] md:flex-none md:flex-row"></div>
4727        </div>
4728        <hr class="divider -mx-5 md:hidden">
4729    </div>
4730
4731    <ul role="list" class="menu__links">
4732                            <li>
4733                                    <a
4734                                                x-a11y-trap-target.initial="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-1868'"
4735                                                href="https://www.esprit-ktm.com/equipements-pilote/vetements-pilote-route/bottes.html"
4736                        role="link"
4737                        x-element-transition-trigger:category.animate="{
4738                            'title': `Bottes et chaussures de moto`,
4739                            'url': 'https://www.esprit-ktm.com/equipements-pilote/vetements-pilote-route/bottes.html',
4740                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Equipements&#x20;Pilote&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;equipements-pilote.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Equipements&#x20;pilote&#x20;Route&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;equipements-pilote&#x5C;&#x2F;vetements-pilote-route.html&quot;&#x7D;&#x5D;,
4741                            'img': '',
4742                            'description': `Bienvenue dans la catégorie Bottes Pilote Route d&amp;apos;Esprit-KTM, où l&amp;apos;alliance entre protection, style et performance se rencontrent.Plongez dans notre sélection de bottes conçues spécialement pour les pilotes de route, inspirées par l&amp;apos;héritage audacieux de la légendaire marque KTM.Nos bottes Pilote Route, arborant fièrement le logo emblématique de KTM, vont bien au-delà du simple équipement pour devenir une extension de votre passion pour la route. Chaque paire incarne l&amp;apos;engagement de KTM envers la sécurité et le style sur la route.Conçues avec une attention particulière à la robustesse, au confort et à la protection, nos bottes offrent aux motards une expérience de conduite optimale, alliant fermeté et agilité. Que vou
4742s soyez en balade décontractée, en virée sportive ou en road trip épique, chaque paire de bottes est une déclaration de l&amp;apos;aventure sans limites, une manière d&amp;apos;affirmer votre passion pour la route avec l&amp;apos;authenticité caractéristique de KTM.Retrouvez nos bottes Kids Tech 7S MX Boots, Tech 7 MX Botts, Tech 10 Boots, S-MX6 V2 Boots, Supertech R et bien d&amp;apos;autres. `,
4743                        }"
4744                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
4745                        :class="{
4746                            'text-primary-500 font-semibold': history.includes('category-node-2596')
4747                        }">
4748                        <span
4749                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
4750                            <!-- DEBUG: Logo = EMPTY -->
4751                                                        Bottes et chaussures de moto                        </span>
4752                    </a>
4753                            </li>
4754                                <li>
4755                                    <a
4756                                                href="https://www.esprit-ktm.com/equipements-pilote/vetements-pilote-route/casques.html"
4757                        role="link"
4758                        x-element-transition-trigger:category.animate="{
4759                            'title': `Casques`,
4760                            'url': 'https://www.esprit-ktm.com/equipements-pilote/vetements-pilote-route/casques.html',
4761                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Equipements&#x20;Pilote&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;equipements-pilote.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Equipements&#x20;pilote&#x20;Route&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;equipements-pilote&#x5C;&#x2F;vetements-pilote-route.html&quot;&#x7D;&#x5D;,
4762                            'img': '',
4763                            'description': `Bienvenue dans la catégorie Casques Pilote Route d&amp;apos;Esprit-KTM, où la sécurité, le style et l&amp;apos;innovation se rencontrent. Plongez dans notre sélection de casques conçus spécialement pour les pilotes de route, inspirés par l&amp;apos;héritage audacieux de la légendaire marque KTM.Nos casques Pilote Route, arborant fièrement le logo emblématique de KTM, vont bien au-delà de simples équipements de sécurité pour devenir des extensions de votre passion pour la conduite. Chaque casque incarne l&amp;apos;engagement de KTM envers la sécurité et le style sur la route.Conçus avec une attention particulière à la légèreté, à la ventilation et à la technologie de pointe, nos casques offrent aux motards une expérience de conduite optimale, alliant confort et performance. Que vous soyez en balade tranquille, en virée sportive ou en road trip passionnant, chaque casque est une déclaration de l&amp;apos;aventure sans limites, une manière d&amp;apos;affirmer votre passion pour la route avec l&amp;apos;authenticité caractéristique de KTM.Retrouvez nos casques Speed Racing Team, C5 helmet, Breaker Evo Helmet, ST501Helmet, Explorer Helmet, Factor Helmet, X-Spirit III Helmet et bien d&amp;apos;autres.`,
4764                        }"
4765                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
4766                        :class="{
4767                            'text-primary-500 font-semibold': history.includes('category-node-1871')
4768                        }">
4769                        <span
4770                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
4771                            <!-- DEBUG: Logo = EMPTY -->
4772                                                        Casques                        </span>
4773                    </a>
4774                            </li>
4775                                <li>
4776                                    <a
4777                                                href="https://www.esprit-ktm.com/equipements-pilote/vetements-pilote-route/gants-bottes.html"
4778                        role="link"
4779                        x-element-transition-trigger:category.animate="{
4780                            'title': `Gants`,
4781                            'url': 'https://www.esprit-ktm.com/equipements-pilote/vetements-pilote-route/gants-bottes.html',
4782                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Equipements&#x20;Pilote&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;equipements-pilote.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Equipements&#x20;pilote&#x20;Route&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;equipements-pilote&#x5C;&#x2F;vetements-pilote-route.html&quot;&#x7D;&#x5D;,
4783                            'img': '',
4784                            'description': `Bienvenue dans la catégorie Gants Pilote Route d&amp;apos;Esprit-KTM, où la fusion entre protection, confort et style redéfinit l&amp;apos;expérience de conduite sur route. Lire la suitePlongez dans notre sélection de gants conçus spécialement pour les motards de route, inspirés par l&amp;apos;héritage intrépide de la légendaire marque KTM.Nos gants Pilote Route, arborant fièrement le logo emblématique de KTM, vont au-delà de simples accessoires pour devenir des éléments essentiels de votre équipement de conduite. Chaque paire incarne l&amp;apos;engagement de KTM envers la sécurité et le style sur la route.Conçus avec une attention particulière à la protection des mains, à la ventilation et à la flexibilité, nos gants offrent aux motards une expérience de conduite optimale, alliant confort et performance. Que vou
4784s soyez en balade décontractée, en virée sportive ou en road trip épique, chaque paire de gants est une déclaration de l&amp;apos;aventure sans limites, une manière d&amp;apos;affirmer votre passion pour la route avec l&amp;apos;authenticité caractéristique de KTM.Retrouvez nos gants Speed Racing Team Gloves, SP-2 V3 Gloves, RB Speed Gloves, Ultra V2 WP Gloves, Racetech Gloves, ADV R Gloves, Two 4 Ride Gloves et bien d&amp;apos;autres. `,
4785                        }"
4786                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
4787                        :class="{
4788                            'text-primary-500 font-semibold': history.includes('category-node-1870')
4789                        }">
4790                        <span
4791                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
4792                            <!-- DEBUG: Logo = EMPTY -->
4793                                                        Gants                        </span>
4794                    </a>
4795                            </li>
4796                                <li>
4797                                    <a
4798                                                href="https://www.esprit-ktm.com/equipements-pilote/vetements-pilote-route/pantalons.html"
4799                        role="link"
4800                        x-element-transition-trigger:category.animate="{
4801                            'title': `Pantalons`,
4802                            'url': 'https://www.esprit-ktm.com/equipements-pilote/vetements-pilote-route/pantalons.html',
4803                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Equipements&#x20;Pilote&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;equipements-pilote.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Equipements&#x20;pilote&#x20;Route&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;equipements-pilote&#x5C;&#x2F;vetements-pilote-route.html&quot;&#x7D;&#x5D;,
4804                            'img': '',
4805                            'description': `Bienvenue dans la catégorie Pantalons Pilote Route d&amp;apos;Esprit-KTM, où le style et le confort s&amp;apos;allient. Lire la suitePlongez dans notre sélection de pantalons conçus spécialement pour les pilotes de route, inspirés par l&amp;apos;héritage audacieux de la légendaire marque KTM.Nos pantalons Pilote Route, arborant fièrement le logo emblématique de KTM vont bien au-delà du simple équipement pour devenir une extension de votre passion pour la route. Chaque paire incarne l&amp;apos;engagement de KTM envers le confort et le style sur la route.Conçus avec une attention particulière au design, à la protection contre les intempéries et à la liberté de mouvement, nos pantalons offrent aux motards une combinaison parfaite d&amp;apos;esthétique et de fonctionnalité. Que vous soyez en balade décontractée, en virée sportive ou en road trip épique, chaque pantalon est une déclaration de l&amp;apos;aventure sans limites, une manière d&amp;apos;affirmer votre passion pour la route avec l&amp;apos;élégance caractéristique de KTM.Retrouvez nos pantalons Racetech WP Pants, Pure Pants, Street Evo Pants, Terra Adventure V2 Pants, Apex V3 Pants, Women Tourrain WP V2 Pants, Elemental GTX Pants et bien d&amp;apos;autres.`,
4806                        }"
4807                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
4808                        :class="{
4809                            'text-primary-500 font-semibold': history.includes('category-node-2595')
4810                        }">
4811                        <span
4812                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
4813                            <!-- DEBUG: Logo = EMPTY -->
4814                                                        Pantalons                        </span>
4815                    </a>
4816                            </li>
4817                                <li>
4818                                    <a
4819                                                href="https://www.esprit-ktm.com/equipements-pilote/vetements-pilote-route/protections.html"
4820                        role="link"
4821                        x-element-transition-trigger:category.animate="{
4822                            'title': `Protections`,
4823                            'url': 'https://www.esprit-ktm.com/equipements-pilote/vetements-pilote-route/protections.html',
4824                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Equipements&#x20;Pilote&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;equipements-pilote.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Equipements&#x20;pilote&#x20;Route&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;equipements-pilote&#x5C;&#x2F;vetements-pilote-route.html&quot;&#x7D;&#x5D;,
4825                            'img': '',
4826                            'description': `Bienvenue dans la catégorie Protections Pilote Route d&amp;apos;Esprit-KTM, où la sécurité, le style et la performance se conjuguent. Lire la suitePlongez dans notre sélection de protections conçues spécialement pour les pilotes de route, inspirées par l&amp;apos;héritage intrépide de la légendaire marque KTM.Nos protections Pilote Route, arborant fièrement le logo emblématique de KTM, vont bien au-delà des simples équipements de sécurité pour devenir des gardiens dédiés de votre passion pour la route. Que vou
4826s recherchiez des protections dorsales pour une sécurité totale ou des coudières pour une protection spécifique, chaque pièce incarne l&amp;apos;engagement de KTM envers la sécurité et le style sur la route.Conçues avec une attention particulière à la robustesse, au confort et à la liberté de mouvement, nos protections offrent aux motards une combinaison parfaite de sécurité et de mobilité. Que vous soyez en balade décontractée, en virée sportive ou en road trip épique, chaque protection est une déclaration de l&amp;apos;aventure sans limites, une manière d&amp;apos;affirmer votre passion pour la route avec l&amp;apos;authenticité caractéristique de KTM.Retrouvez nos protections dorsales, nos ceintures lombaires ou encore nos gilets réfléchissants. `,
4827                        }"
4828                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
4829                        :class="{
4830                            'text-primary-500 font-semibold': history.includes('category-node-2597')
4831                        }">
4832                        <span
4833                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
4834                            <!-- DEBUG: Logo = EMPTY -->
4835                                                        Protections                        </span>
4836                    </a>
4837                            </li>
4838                                <li>
4839                                    <a
4840                                                x-a11y-trap-target.end="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-1868'"
4841                                                href="https://www.esprit-ktm.com/equipements-pilote/vetements-pilote-route/vestes-pantalons.html"
4842                        role="link"
4843                        x-element-transition-trigger:category.animate="{
4844                            'title': `Vestes`,
4845                            'url': 'https://www.esprit-ktm.com/equipements-pilote/vetements-pilote-route/vestes-pantalons.html',
4846                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Equipements&#x20;Pilote&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;equipements-pilote.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Equipements&#x20;pilote&#x20;Route&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;equipements-pilote&#x5C;&#x2F;vetements-pilote-route.html&quot;&#x7D;&#x5D;,
4847                            'img': '',
4848                            'description': `Bienvenue dans la catégorie Vestes Pilote Route d&amp;apos;Esprit-KTM, où l&amp;apos;alliance entre élégance, fonctionnalité et confort redéfinit le style de la conduite sur route. Lire la suitePlongez dans notre sélection de vestes conçues spécialement pour les motards de route, inspirées par l&amp;apos;héritage audacieux de la légendaire marque KTM.Nos vestes Pilote Route, arborant fièrement le logo emblématique de KTM, transcendent le simple vêtement pour devenir une déclaration de style et de passion pour la route. Chaque veste incarne l&amp;apos;engagement de KTM envers le confort et le style sur la route.Conçues avec une attention particulière au design, à la protection contre les intempéries et à la liberté de mouvement, nos vestes offrent aux motards une combinaison parfaite d&amp;apos;esthétique et de fonctionnalité. Chaque veste est une déclaration de l&amp;apos;aventure sans limites, une manière d&amp;apos;affirmer votre passion pour la route avec l&amp;apos;élégance caractéristique de KTM.Retrouvez nos vestes Racetech WP Jacket, Speed Jacket, Kini-RB Competition, Terra Adventure V2 Jacket, Street Evo V2 Jacket, Women Aspect Leather Jacket et bien d&amp;apos;autres. `,
4849                        }"
4850                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
4851                        :class="{
4852                            'text-primary-500 font-semibold': history.includes('category-node-1869')
4853                        }">
4854                        <span
4855                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
4856                            <!-- DEBUG: Logo = EMPTY -->
4857                                                        Vestes                        </span>
4858                    </a>
4859                            </li>
4860                        </ul>
4861
4862    <div class="h-20 md:hidden"></div>
4863            <template
4864            x-portal="$store.main.isMobile ? document.getElementById('popup-fixed-content-portal') : document.getElementById('menu-actions-category-node-1868')">
4865            <div
4866                class="bg-bg-500 px-4 pb-2 transition-colors duration-200 md:bg-transparent md:hover:text-primary-600 md:p-0"
4867                x-transition.opacity
4868                x-show="$store.main.isMobile ? history[history.length - 1] === 'category-node-1868' && !getIsSearchActive() : history.includes('category-node-1868')"
4869                role="link">
4870                <a
4871                    x-element-transition-trigger
4872                    class="button bg-white border border-primary-500 text-primary-500 w-full hover:bg-primary-500 hover:text-white hover:scale-105 transition-all duration-200"
4873                    href="https://www.esprit-ktm.com/equipements-pilote/vetements-pilote-route.html">
4874                    <template x-if="$store.main.isMobile">
4875                        <span>Tout voir <span class="lowercase">Equipements pilote Route</span></span>
4876                    </template>
4877                    <template x-if="!$store.main.isMobile">
4878                        <span class="flex items-center text-center capitalize">
4879                            <span class='border-current'>
4880                                Tout voir                                <br />
4881                                <span>Equipements pilote Route</span>
4882                            </span>
4883                        </span>
4884                    </template>
4885                </a>
4886            </div>
4887        </template>
4888    </div>
4889                    </template>
4890                            </li>
4891                        </ul>
4892
4893    <div class="h-20 md:hidden"></div>
4894            <template
4895            x-portal="$store.main.isMobile ? document.getElementById('popup-fixed-content-portal') : document.getElementById('menu-actions-category-node-3147')">
4896            <div
4897                class="bg-bg-500 px-4 pb-2 transition-colors duration-200 md:bg-transparent md:hover:text-primary-600 md:p-0"
4898                x-transition.opacity
4899                x-show="$store.main.isMobile ? history[history.length - 1] === 'category-node-3147' && !getIsSearchActive() : history.includes('category-node-3147')"
4900                role="link">
4901                <a
4902                    x-element-transition-trigger
4903                    class="button bg-white border border-primary-500 text-primary-500 w-full hover:bg-primary-500 hover:text-white hover:scale-105 transition-all duration-200"
4904                    href="https://www.esprit-ktm.com/equipements-pilote.html">
4905                    <template x-if="$store.main.isMobile">
4906                        <span>Tout voir <span class="lowercase">Equipements Pilote</span></span>
4907                    </template>
4908                    <template x-if="!$store.main.isMobile">
4909                        <span class="flex items-center text-center capitalize">
4910                            <span class='border-current'>
4911                                Tout voir                                <br />
4912                                <span>Equipements Pilote</span>
4913                            </span>
4914                        </span>
4915                    </template>
4916                </a>
4917            </div>
4918        </template>
4919    </div>
4920                    </template>
4921                            </li>
4922                                <li>
4923                                    <button
4924                                                class="menu__link group"
4925                        @click="setHistory([...'all'.split(','), 'category-node-1769'])"
4926                        :class="{ 'menu__link--active': history.includes('category-node-1769') }"
4927                        role="button"
4928                        :aria-expanded="history.includes('category-node-1769')">
4929                        <span class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
4930                            <!-- DEBUG: Logo = EMPTY -->
4931                                                        Vêtements                        </span>
4932                        <span class="text-xl transition-[color,transform] md:group-hover:-translate-x-3 md:group-hover:text-primary-600">
4933                            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
4934    <path d="M10.707 17.707 16.414 12l-5.707-5.707-1.414 1.414L13.586 12l-4.293 4.293z"/>
4935</svg>
4936                        </span>
4937                    </button>
4938                    <template x-portal="document.getElementById('menu-sections')">
4939                        <div
4940    class="menu__level relative z-[100]"
4941    :class="{
4942        'menu__level--current': history[history.length - 1] === 'category-node-1769',
4943        'menu__level--visible': history.includes('category-node-1769'),
4944        'menu__level--same-depth': 2 <= delayedLevel,
4945        'hidden': !$store.main.isMobile && !$store.resizable.isVisible('menu-desktop'),
4946    }"
4947    :inert="!history.includes('category-node-1769')"
4948    data-menu-level="category-node-1769">
4949    <div class="menu__header">
4950        <div class="menu__header-container p-2 md:flex md:flex-col">
4951            
4952            <button
4953                @click="history.pop()"
4954                type="button"
4955                aria-label="Revenir au menu précédent"
4956                class="menu__back-button py-3 motion-reduce:max-md:animate-none"
4957                :class="{
4958                    'menu__back-button--visible max-md:animate-slideIconIn motion-reduce:translate-x-0': history.length !== 1,
4959                    'max-md:animate-slideIconOut motion-reduce:-translate-x-full': history.length == 1
4960                }"
4961                :tabindex="history.length === 1 ? -1 : 0"
4962                :aria-hidden="history.length === 1">
4963                <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
4964    <path d="M13.293 6.293 7.586 12l5.707 5.707 1.414-1.414L10.414 12l4.293-4.293z"/>
4965</svg>
4966            </button>
4967
4968            <h2
4969                class="menu__heading py-3 motion-reduce:max-md:animate-none"
4970                style="--translate-width: 52px;"
4971                :class="{
4972                    'menu__heading--root': 'category-node-1769' === 'all',
4973                    'max-md:w-[calc(100%-var(--translate-width))]': 'category-node-1769' !== 'all',
4974                    'max-md:animate-slideTitleIn motion-reduce:translate-x-[--translate-width]': history.length !== 1,
4975                    'max-md:animate-slideTitleOut motion-reduce:translate-x-0': history.length == 1
4976                }"
4977                x-show="$store.main.isMobile || 'category-node-1769' !== 'all'">
4978                Vêtements            </h2>
4979
4980            <div id="menu-actions-category-node-1769" class="md:mt-[6px] md:flex-none md:flex-row"></div>
4981        </div>
4982        <hr class="divider -mx-5 md:hidden">
4983    </div>
4984
4985    <ul role="list" class="menu__links">
4986                            <li>
4987                                    <button
4988                                                x-a11y-trap-target.initial="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-1769'"
4989                                                class="menu__link group"
4990                        @click="setHistory([...'all,category-node-1769'.split(','), 'category-node-1815'])"
4991                        :class="{ 'menu__link--active': history.includes('category-node-1815') }"
4992                        role="button"
4993                        :aria-expanded="history.includes('category-node-1815')">
4994                        <span class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
4995                            <!-- DEBUG: Logo = EMPTY -->
4996                                                        Vêtements Homme                        </span>
4997                        <span class="text-xl transition-[color,transform] md:group-hover:-translate-x-3 md:group-hover:text-primary-600">
4998                            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
4999    <path d="M10.707 17.707 16.414 12l-5.707-5.707-1.414 1.414L13.586 12l-4.293 4.293z"/>
5000</svg>
5001                        </span>
5002                    </button>
5003                    <template x-portal="document.getElementById('menu-sections')">
5004                        <div
5005    class="menu__level relative z-[100]"
5006    :class="{
5007        'menu__level--current': history[history.length - 1] === 'category-node-1815',
5008        'menu__level--visible': history.includes('category-node-1815'),
5009        'menu__level--same-depth': 3 <= delayedLevel,
5010        'hidden': !$store.main.isMobile && !$store.resizable.isVisible('menu-desktop'),
5011    }"
5012    :inert="!history.includes('category-node-1815')"
5013    data-menu-level="category-node-1815">
5014    <div class="menu__header">
5015        <div class="menu__header-container p-2 md:flex md:flex-col">
5016            
5017            <button
5018                @click="history.pop()"
5019                type="button"
5020                aria-label="Revenir au menu précédent"
5021                class="menu__back-button py-3 motion-reduce:max-md:animate-none"
5022                :class="{
5023                    'menu__back-button--visible max-md:animate-slideIconIn motion-reduce:translate-x-0': history.length !== 1,
5024                    'max-md:animate-slideIconOut motion-reduce:-translate-x-full': history.length == 1
5025                }"
5026                :tabindex="history.length === 1 ? -1 : 0"
5027                :aria-hidden="history.length === 1">
5028                <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
5029    <path d="M13.293 6.293 7.586 12l5.707 5.707 1.414-1.414L10.414 12l4.293-4.293z"/>
5030</svg>
5031            </button>
5032
5033            <h2
5034                class="menu__heading py-3 motion-reduce:max-md:animate-none"
5035                style="--translate-width: 52px;"
5036                :class="{
5037                    'menu__heading--root': 'category-node-1815' === 'all',
5038                    'max-md:w-[calc(100%-var(--translate-width))]': 'category-node-1815' !== 'all',
5039                    'max-md:animate-slideTitleIn motion-reduce:translate-x-[--translate-width]': history.length !== 1,
5040                    'max-md:animate-slideTitleOut motion-reduce:translate-x-0': history.length == 1
5041                }"
5042                x-show="$store.main.isMobile || 'category-node-1815' !== 'all'">
5043                Vêtements Homme            </h2>
5044
5045            <div id="menu-actions-category-node-1815" class="md:mt-[6px] md:flex-none md:flex-row"></div>
5046        </div>
5047        <hr class="divider -mx-5 md:hidden">
5048    </div>
5049
5050    <ul role="list" class="menu__links">
5051                            <li>
5052                                    <a
5053                                                x-a11y-trap-target.initial="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-1815'"
5054                                                href="https://www.esprit-ktm.com/vetements-ktm/vetements-hommes/accessoires-lunettes.html"
5055                        role="link"
5056                        x-element-transition-trigger:category.animate="{
5057                            'title': `Chaussures`,
5058                            'url': 'https://www.esprit-ktm.com/vetements-ktm/vetements-hommes/accessoires-lunettes.html',
5059                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&#x20;Homme&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm&#x5C;&#x2F;vetements-hommes.html&quot;&#x7D;&#x5D;,
5060                            'img': '',
5061                            'description': `Bienvenue dans la catégorie Accessoires des Vêtements Homme d&amp;apos;Esprit-KTM, où chaque détail devient une déclaration de style, de passion et d&amp;apos;aventure. Lire la suiteExplorez une gamme d&amp;apos;accessoires soigneusement sélectionnés pour compléter votre look, que vous soyez sur la route, en ville ou simplement en train de vivre votre passion au quotidien.Nos accessoires, ornés du logo emblématique de KTM, sont conçus pour ajouter une touche distinctive à votre style tout en célébrant l&amp;apos;
5061héritage légendaire de la marque. Que vous optiez pour une casquette arborant fièrement le logo KTM ou des chaussures aux couleurs de la marque, chaque accessoire incarne l&amp;apos;esprit indomptable de KTM.Explorez notre catégorie Accessoires avec la même curiosité qu&amp;apos;un motard découvrant de nouvelles routes, et offrez à votre style une dimension supplémentaire inspirée par l&amp;apos;esprit de KTM. Avec Esprit-KTM, chaque accessoire devient une pièce essentielle, une façon de porter avec fierté la passion pour l&amp;apos;aventure sur deux roues.Retrouvez nos chaussures TeamShoes, Mechanic Shoes, Team Sandals, ou encore nos casquettes KTM.`,
5062                        }"
5063                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
5064                        :class="{
5065                            'text-primary-500 font-semibold': history.includes('category-node-1816')
5066                        }">
5067                        <span
5068                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
5069                            <!-- DEBUG: Logo = EMPTY -->
5070                                                        Chaussures                        </span>
5071                    </a>
5072                            </li>
5073                                <li>
5074                                    <a
5075                                                href="https://www.esprit-ktm.com/vetements-ktm/vetements-hommes/pantalons-shorts.html"
5076                        role="link"
5077                        x-element-transition-trigger:category.animate="{
5078                            'title': `Pantalons`,
5079                            'url': 'https://www.esprit-ktm.com/vetements-ktm/vetements-hommes/pantalons-shorts.html',
5080                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&#x20;Homme&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm&#x5C;&#x2F;vetements-hommes.html&quot;&#x7D;&#x5D;,
5081                            'img': '',
5082                            'description': `Bienvenue dans la catégorie Pantalons des Vêtements Homme d&amp;apos;Esprit-KTM, où le confort, la fonctionnalité et le style se conjuguent. Lire la suiteExplorez une gamme exceptionnelle de pantalons conçus pour les hommes qui exigent performance et élégance, que ce soit sur la route ou en ville.Nos pantalons vont au-delà de simples vêtements. Ils sont une extension de votre passion pour la moto, offrant une coupe et des matériaux qui répondent aux plus hautes exigences tout en reflétant l&amp;apos;authenticité de la marque. Chaque pièce incarne l&amp;apos;esprit indomptable de KTM.Explorez notre catégorie Pantalons avec la même détermination qu&amp;apos;un motard abordant une courbe serrée, et offrez à votre style une dose d&amp;apos;audace inspirée par l&amp;apos;esprit indomptable de KTM. Avec Esprit-KTM, chaque pantalon devient une pièce maîtresse de votre garde-robe, une invitation à rouler avec style et confort sur la route de l&amp;apos;aventure.Retrouvez nos collections Replica Team Pants, Mechanic Pants, Team Pants.`,
5083                        }"
5084                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
5085                        :class="{
5086                            'text-primary-500 font-semibold': history.includes('category-node-1860')
5087                        }">
5088                        <span
5089                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
5090                            <!-- DEBUG: Logo = EMPTY -->
5091                                                        Pantalons                        </span>
5092                    </a>
5093                            </li>
5094                                <li>
5095                                    <a
5096                                                href="https://www.esprit-ktm.com/vetements-ktm/vetements-hommes/sweats.html"
5097                        role="link"
5098                        x-element-transition-trigger:category.animate="{
5099                            'title': `Sweats`,
5100                            'url': 'https://www.esprit-ktm.com/vetements-ktm/vetements-hommes/sweats.html',
5101                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&#x20;Homme&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm&#x5C;&#x2F;vetements-hommes.html&quot;&#x7D;&#x5D;,
5102                            'img': '',
5103                            'description': `Bienvenue dans la catégorie Sweats de notre c
5103ollection Vêtements Homme d&amp;apos;Esprit-KTM, là où le confort et le style s&amp;apos;unissent. Lire la suiteExplorez une gamme de sweats conçus pour les hommes qui recherchent une tenue KTM tout en conservant une allure résolument audacieuse, inspirée par la légendaire marque KTM.Nos sweats, ornés du logo emblématique de KTM, vont au-delà de simples vêtements ; ils sont une déclaration de votre engagement envers la passion de la moto. Que vous optiez pour un sweat à capuche décontracté pour vos virées en ville ou pour un sweat zippé pour vous accompagner sur la route, chaque pièce incarne l&amp;apos;esprit indomptable et l&amp;apos;authenticité de KTM.Conçus pour vous offrir un confort optimal tout en reflétant le caractère puissant de la marque, nos sweats sont prêts à vous accompagner dans toutes vos aventures.Explorez notre catégorie Sweats avec la même détermination qu&amp;apos;un motard sur la route, et offrez à votre style une dose de chaleur et d&amp;apos;audace inspirée par l&amp;apos;esprit indomptable de KTM.Retrouvez nos collections Replica Team Zip Hoodie, Winter Sweater, Speed Hoodie, Shred, RB Speed, Kini Red Bull, Radical Hoodie et bien d&amp;apos;autres.`,
5104                        }"
5105                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
5106                        :class="{
5107                            'text-primary-500 font-semibold': history.includes('category-node-2577')
5108                        }">
5109                        <span
5110                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
5111                            <!-- DEBUG: Logo = EMPTY -->
5112                                                        Sweats                        </span>
5113                    </a>
5114                            </li>
5115                                <li>
5116                                    <a
5117                                                href="https://www.esprit-ktm.com/vetements-ktm/vetements-hommes/shorts.html"
5118                        role="link"
5119                        x-element-transition-trigger:category.animate="{
5120                            'title': `Shorts`,
5121                            'url': 'https://www.esprit-ktm.com/vetements-ktm/vetements-hommes/shorts.html',
5122                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&#x20;Homme&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm&#x5C;&#x2F;vetements-hommes.html&quot;&#x7D;&#x5D;,
5123                            'img': '',
5124                            'description': `Bienvenue dans la catégorie Shorts de notre collection Vêtements Homme d&amp;apos;Esprit-KTM, où le confort, la liberté de mouvement et le style se rencontrent. Lire la suiteExplorez une gamme de shorts conçus pour les hommes qui recherchent l&amp;apos;équilibre parfait entre décontraction et l&amp;apos;esprit dynamique de la moto.Nos shorts, fièrement ornés du logo emblématique de KTM, vont au-delà de simples vêtements de détente ; ils sont une déclaration de style qui célèbre la passion pour l&amp;apos;aventure sur deux roues. Que vous optiez pour des shorts pour vos virées urbaines ou pour une journée active, chaque pièce incarne l&amp;apos;esprit indomptable et l&amp;apos;authenticité de KTM.Explorez notre catégorie Shorts avec la même aisance qu&amp;apos;un motard manœuvrant habilement sur l&amp;apos;asphalte, et offrez à votre style une dose d&amp;apos;audace et de fraîcheur inspirée par l&amp;apos;esprit de KTM. Retrouvez nos collections Radical Shorts, Team Shorts, Pure Shorts, Mechanic Shorts ou encore Replica Team Shorts. `,
5125                        }"
5126                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
5127                        :class="{
5128                            'text-primary-500 font-semibold': history.includes('category-node-2578')
5129                        }">
5130                        <span
5131                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
5132                            <!-- DEBUG: Logo = EMPTY -->
5133                                                        Shorts                        </span>
5134                    </a>
5135                            </li>
5136                                <li>
5137                                    <a
5138                                                href="https://www.esprit-ktm.com/vetements-ktm/vetements-hommes/t-shirts-chemises.html"
5139                        role="link"
5140                        x-element-transition-trigger:category.animate="{
5141                            'title': `T-Shirts, Polos et Chemises`,
5142                            'url': 'https://www.esprit-ktm.com/vetements-ktm/vetements-hommes/t-shirts-chemises.html',
5143                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&#x20;Homme&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm&#x5C;&#x2F;vetements-hommes.html&quot;&#x7D;&#x5D;,
5144                            'img': '',
5145                            'description': `&lt;p&gt;Bienvenue dans la catégorie KTM Tshirt et Chemises KTM de notre collection Vêtements Homme d&amp;apos;Esprit-KTM. Lire la suite Plongez dans une gamme de tshirts KTM et chemises conçus pour les hommes qui partagent une passion commune pour la moto et le style authentique de KTM. Nos t-shirts et chemises, ornés du logo emblématique de KTM, sont bien plus que des vêtements ; ce sont des expressions de votre passion pour l&amp;apos;aventure sur deux roues. Que vous optiez pour un look décontracté avec nos t-shirts au design dynamique ou que vous préfériez l&amp;apos;élégance intemporelle de nos chemises, chaque pièce de notre collection célèbre l&amp;apos;esprit indomptable de KTM. Explorez notre catégorie tshirt KTM et Chemises avec la même aisance qu&amp;apos;un motard manœuvrant habilement sur l&amp;apos;asphalte, et offrez à votre style une touche distinctive inspirée par l&amp;apos;héritage de KTM. Retrouvez nos collections Replica Team KTM, Red Bull KTM, Pure Style KTM, KTM Pure Racing, Essential Tee, Edition Desert, et bien d&amp;apos;autres.&lt;/p&gt;`,
5146                        }"
5147                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
5148                        :class="{
5149                            'text-primary-500 font-semibold': history.includes('category-node-1859')
5150                        }">
5151                        <span
5152                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
5153                            <!-- DEBUG: Logo = EMPTY -->
5154                                                        T-Shirts, Polos et Chemises                        </span>
5155                    </a>
5156                            </li>
5157                                <li>
5158                                    <a
5159                                                x-a11y-trap-target.end="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-1815'"
5160                                                href="https://www.esprit-ktm.com/vetements-ktm/vetements-hommes/vestes-sweats-ktm.html"
5161                        role="link"
5162                        x-element-transition-trigger:category.animate="{
5163                            'title': `Vestes`,
5164                            'url': 'https://www.esprit-ktm.com/vetements-ktm/vetements-hommes/vestes-sweats-ktm.html',
5165                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&#x20;Homme&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm&#x5C;&#x2F;vetements-hommes.html&quot;&#x7D;&#x5D;,
5166                            'img': '',
5167                            'description': `Bienvenue dans la catégorie Vestes de notre c
5167ollection Vêtements Homme d&amp;apos;Esprit-KTM. Lire la suiteExplorez une gamme exceptionnelle de vestes conçues pour les hommes passionnés de moto, offrant non seulement une protection contre les éléments, mais aussi une déclaration de style affirmée.Nos vestes arborent fièrement le logo emblématique de KTM. Nos vestes sont conçues pour résister aux éléments tout en vous donnant une allure audacieuse.Chaque détail de nos vestes reflète l&amp;apos;engagement envers la qualité et la performance caractéristiques de KTM. Des matériaux résistants aux finitions impeccables, chaque veste incarne la passion pour l&amp;apos;innovation et l&amp;apos;authenticité de la marque. Explorez notre catégorie Vestes avec la même intensité qu&amp;apos;une moto prenant de la vitesse sur l&amp;apos;asphalte, et offrez-vous l&amp;apos;opportunité de revêtir l&amp;apos;esprit indomptable de KTM à chaque instant. Retrouvez nos collections Speed Jacket, Faster Jacket, Team Hardshell, Replica Team, Team Softshell, X-Bow Replica, et bien d&amp;apos;autres. `,
5168                        }"
5169                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
5170                        :class="{
5171                            'text-primary-500 font-semibold': history.includes('category-node-1858')
5172                        }">
5173                        <span
5174                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
5175                            <!-- DEBUG: Logo = EMPTY -->
5176                                                        Vestes                        </span>
5177                    </a>
5178                            </li>
5179                        </ul>
5180
5181    <div class="h-20 md:hidden"></div>
5182            <template
5183            x-portal="$store.main.isMobile ? document.getElementById('popup-fixed-content-portal') : document.getElementById('menu-actions-category-node-1815')">
5184            <div
5185                class="bg-bg-500 px-4 pb-2 transition-colors duration-200 md:bg-transparent md:hover:text-primary-600 md:p-0"
5186                x-transition.opacity
5187                x-show="$store.main.isMobile ? history[history.length - 1] === 'category-node-1815' && !getIsSearchActive() : history.includes('category-node-1815')"
5188                role="link">
5189                <a
5190                    x-element-transition-trigger
5191                    class="button bg-white border border-primary-500 text-primary-500 w-full hover:bg-primary-500 hover:text-white hover:scale-105 transition-all duration-200"
5192                    href="https://www.esprit-ktm.com/vetements-ktm/vetements-hommes.html">
5193                    <template x-if="$store.main.isMobile">
5194                        <span>Tout voir <span class="lowercase">Vêtements Homme</span></span>
5195                    </template>
5196                    <template x-if="!$store.main.isMobile">
5197                        <span class="flex items-center text-center capitalize">
5198                            <span class='border-current'>
5199                                Tout voir                                <br />
5200                                <span>Vêtements Homme</span>
5201                            </span>
5202                        </span>
5203                    </template>
5204                </a>
5205            </div>
5206        </template>
5207    </div>
5208                    </template>
5209                            </li>
5210                                <li>
5211                                    <button
5212                                                class="menu__link group"
5213                        @click="setHistory([...'all,category-node-1769'.split(','), 'category-node-1853'])"
5214                        :class="{ 'menu__link--active': history.includes('category-node-1853') }"
5215                        role="button"
5216                        :aria-expanded="history.includes('category-node-1853')">
5217                        <span class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
5218                            <!-- DEBUG: Logo = EMPTY -->
5219                                                        Vêtements Femme                        </span>
5220                        <span class="text-xl transition-[color,transform] md:group-hover:-translate-x-3 md:group-hover:text-primary-600">
5221                            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
5222    <path d="M10.707 17.707 16.414 12l-5.707-5.707-1.414 1.414L13.586 12l-4.293 4.293z"/>
5223</svg>
5224                        </span>
5225                    </button>
5226                    <template x-portal="document.getElementById('menu-sections')">
5227                        <div
5228    class="menu__level relative z-[100]"
5229    :class="{
5230        'menu__level--current': history[history.length - 1] === 'category-node-1853',
5231        'menu__level--visible': history.includes('category-node-1853'),
5232        'menu__level--same-depth': 3 <= delayedLevel,
5233        'hidden': !$store.main.isMobile && !$store.resizable.isVisible('menu-desktop'),
5234    }"
5235    :inert="!history.includes('category-node-1853')"
5236    data-menu-level="category-node-1853">
5237    <div class="menu__header">
5238        <div class="menu__header-container p-2 md:flex md:flex-col">
5239            
5240            <button
5241                @click="history.pop()"
5242                type="button"
5243                aria-label="Revenir au menu précédent"
5244                class="menu__back-button py-3 motion-reduce:max-md:animate-none"
5245                :class="{
5246                    'menu__back-button--visible max-md:animate-slideIconIn motion-reduce:translate-x-0': history.length !== 1,
5247                    'max-md:animate-slideIconOut motion-reduce:-translate-x-full': history.length == 1
5248                }"
5249                :tabindex="history.length === 1 ? -1 : 0"
5250                :aria-hidden="history.length === 1">
5251                <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
5252    <path d="M13.293 6.293 7.586 12l5.707 5.707 1.414-1.414L10.414 12l4.293-4.293z"/>
5253</svg>
5254            </button>
5255
5256            <h2
5257                class="menu__heading py-3 motion-reduce:max-md:animate-none"
5258                style="--translate-width: 52px;"
5259                :class="{
5260                    'menu__heading--root': 'category-node-1853' === 'all',
5261                    'max-md:w-[calc(100%-var(--translate-width))]': 'category-node-1853' !== 'all',
5262                    'max-md:animate-slideTitleIn motion-reduce:translate-x-[--translate-width]': history.length !== 1,
5263                    'max-md:animate-slideTitleOut motion-reduce:translate-x-0': history.length == 1
5264                }"
5265                x-show="$store.main.isMobile || 'category-node-1853' !== 'all'">
5266                Vêtements Femme            </h2>
5267
5268            <div id="menu-actions-category-node-1853" class="md:mt-[6px] md:flex-none md:flex-row"></div>
5269        </div>
5270        <hr class="divider -mx-5 md:hidden">
5271    </div>
5272
5273    <ul role="list" class="menu__links">
5274                            <li>
5275                                    <a
5276                                                x-a11y-trap-target.initial="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-1853'"
5277                                                href="https://www.esprit-ktm.com/vetements-ktm/vetements-femmes/accessoires-lunettes.html"
5278                        role="link"
5279                        x-element-transition-trigger:category.animate="{
5280                            'title': `Chaussures`,
5281                            'url': 'https://www.esprit-ktm.com/vetements-ktm/vetements-femmes/accessoires-lunettes.html',
5282                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&#x20;Femme&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm&#x5C;&#x2F;vetements-femmes.html&quot;&#x7D;&#x5D;,
5283                            'img': '',
5284                            'description': `Bienvenue dans la catégorie Chaussures de notre c
5284ollection Vêtements Femme d&amp;apos;Esprit-KTM, où le confort, le style et la fonctionnalité se rencontrent. Lire la suiteExplorez une sélection exceptionnelle de chaussures conçues pour les femmes passionnées de moto, alliant élégance et robustesse à l&amp;apos;image de la marque légendaire KTM.Nos chaussures femme, ornées fièrement du logo emblématique de KTM, vont bien au-delà du simple aspect pratique pour devenir des accessoires incontournables de votre style. Chaque paire incarne la puissance, la grâce et la passion de KTM.Retrouvez nos collections Team Sandals, Team Shoes et Mechanic Shoes. `,
5285                        }"
5286                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
5287                        :class="{
5288                            'text-primary-500 font-semibold': history.includes('category-node-1857')
5289                        }">
5290                        <span
5291                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
5292                            <!-- DEBUG: Logo = EMPTY -->
5293                                                        Chaussures                        </span>
5294                    </a>
5295                            </li>
5296                                <li>
5297                                    <a
5298                                                href="https://www.esprit-ktm.com/vetements-ktm/vetements-femmes/sweats.html"
5299                        role="link"
5300                        x-element-transition-trigger:category.animate="{
5301                            'title': `Sweats`,
5302                            'url': 'https://www.esprit-ktm.com/vetements-ktm/vetements-femmes/sweats.html',
5303                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&#x20;Femme&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm&#x5C;&#x2F;vetements-femmes.html&quot;&#x7D;&#x5D;,
5304                            'img': '',
5305                            'description': `Bienvenue dans la catégorie Sweats de notre collection Vêtements Femme d&amp;apos;Esprit-KTM, où le confort, l&amp;apos;élégance et l&amp;apos;esprit de l&amp;apos;aventure se mêlent. Lire la suiteExplorez une sélection exceptionnelle de sweats conçus spécialement pour les femmes passionnées de moto, alliant chaleur et style audacieux à l&amp;apos;image de la marque légendaire KTM.Nos sweats femme, fièrement ornés du logo emblématique de KTM, vont au-delà de simples vêtements chauds pour devenir des affirmations de style qui célèbrent la féminité avec une touche intrépide. Que vous optiez pour un sweat à capuche décontracté pour vos virées en ville ou pour un sweat zippé pour un look plus affirmé, chaque pièce incarne la puissance, la grâce et l&amp;apos;excitation de la route.Conçus avec une attention méticuleuse aux détails et une qual
5305ité exceptionnelle, nos sweats offrent non seulement une chaleur enveloppante mais également une expression personnelle de votre amour pour la moto. Que vous soyez sur votre moto, en balade décontractée ou simplement à la recherche d&amp;apos;un confort stylé au quotidien, nos sweats sont prêts à vous accompagner avec élégance dans toutes vos aventures.Retrouvez nos collections Prime Hoodie, Patch Women Hoodie, Women Backprint Zip Hoodie, Women Pure Zip Hoodie et bien d&amp;apos;autres. `,
5306                        }"
5307                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
5308                        :class="{
5309                            'text-primary-500 font-semibold': history.includes('category-node-2579')
5310                        }">
5311                        <span
5312                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
5313                            <!-- DEBUG: Logo = EMPTY -->
5314                                                        Sweats                        </span>
5315                    </a>
5316                            </li>
5317                                <li>
5318                                    <a
5319                                                href="https://www.esprit-ktm.com/vetements-ktm/vetements-femmes/t-shirts-chemises.html"
5320                        role="link"
5321                        x-element-transition-trigger:category.animate="{
5322                            'title': `T-Shirts`,
5323                            'url': 'https://www.esprit-ktm.com/vetements-ktm/vetements-femmes/t-shirts-chemises.html',
5324                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&#x20;Femme&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm&#x5C;&#x2F;vetements-femmes.html&quot;&#x7D;&#x5D;,
5325                            'img': '',
5326                            'description': `Bienvenue dans la catégorie T-shirts et Chemises de notre collection Vêtements Femme d&amp;apos;Esprit-KTM, où le style s&amp;apos;unit à la passion. Lire la suiteExplorez une gamme de t-shirts et chemises conçus spécialement pour les femmes passionnées de moto, chaque pièce reflétant l&amp;apos;élégance et la puissance caractéristiques de la légendaire marque KTM.Nos t-shirts et chemises femme, arborant fièrement le logo emblématique de KTM, vont au-delà de simples vêtements pour devenir des affirmations de style qui célèbrent la féminité avec une touche audacieuse. Que vous optiez pour un t-shirt décontracté aux designs dynamiques ou pour une chemise élégante inspirée de l&amp;apos;univers moto, chaque pièce incarne la puissance, la grâce et la passion de la route.Explorez notre catégorie T-shirts et Chemises Femme avec la même détermination qu&amp;apos;une motarde s&amp;apos;apprêtant à conquérir de nouveaux horizons, et offrez à votre style une dose d&amp;apos;audace et de raffinement inspirée par l&amp;apos;esprit indomptable de KTM. Retrouvez nos collections Graphic Women, Pure Racing Tee, Replica Team Tee, Women Backprint, Girls Replica Team Shirt et bien d&amp;apos;autres. `,
5327                        }"
5328                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
5329                        :class="{
5330                            'text-primary-500 font-semibold': history.includes('category-node-1855')
5331                        }">
5332                        <span
5333                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
5334                            <!-- DEBUG: Logo = EMPTY -->
5335                                                        T-Shirts                        </span>
5336                    </a>
5337                            </li>
5338                                <li>
5339                                    <a
5340                                                x-a11y-trap-target.end="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-1853'"
5341                                                href="https://www.esprit-ktm.com/vetements-ktm/vetements-femmes/vestes-sweats.html"
5342                        role="link"
5343                        x-element-transition-trigger:category.animate="{
5344                            'title': `Vestes`,
5345                            'url': 'https://www.esprit-ktm.com/vetements-ktm/vetements-femmes/vestes-sweats.html',
5346                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&#x20;Femme&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm&#x5C;&#x2F;vetements-femmes.html&quot;&#x7D;&#x5D;,
5347                            'img': '',
5348                            'description': `Bienvenue dans la catégorie Vestes de notre c
5348ollection Vêtements Femme d&amp;apos;Esprit-KTM, où le style et la fonctionnalité se réunissent. Lire la suitePlongez dans une sélection exceptionnelle de vestes conçues spécialement pour les femmes passionnées par la moto, mariant élégance et robustesse à l&amp;apos;image de la marque légendaire KTM.Nos vestes femme, ornées fièrement du logo emblématique de KTM, transcendent la simple mode pour devenir des pièces maîtresses de votre garde-robe. Que vous optiez pour une veste pour un look intemporel, une veste softshell pour un confort optimal, ou une veste légère pour une virée estivale, chaque pièce incarne la puissance, la grâce et la passion qui définissent l&amp;apos;esprit de KTM.Conçues avec une attention méticuleuse aux détails et une qualité exceptionnelle, nos vestes offrent non seulement une protection contre les éléments, mais également une déclaration de style affirmée. Explorez notre catégorie Vestes Femme avec la même détermination qu&amp;apos;une motarde abordant une nouvelle route, et offrez à votre style une dose d&amp;apos;audace et de sophistication inspirée par l&amp;apos;esprit indomptable de KTM. Retrouvez nos collections Team Hardshell, Softshell Jacket et bien d&amp;apos;autres. `,
5349                        }"
5350                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
5351                        :class="{
5352                            'text-primary-500 font-semibold': history.includes('category-node-1854')
5353                        }">
5354                        <span
5355                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
5356                            <!-- DEBUG: Logo = EMPTY -->
5357                                                        Vestes                        </span>
5358                    </a>
5359                            </li>
5360                        </ul>
5361
5362    <div class="h-20 md:hidden"></div>
5363            <template
5364            x-portal="$store.main.isMobile ? document.getElementById('popup-fixed-content-portal') : document.getElementById('menu-actions-category-node-1853')">
5365            <div
5366                class="bg-bg-500 px-4 pb-2 transition-colors duration-200 md:bg-transparent md:hover:text-primary-600 md:p-0"
5367                x-transition.opacity
5368                x-show="$store.main.isMobile ? history[history.length - 1] === 'category-node-1853' && !getIsSearchActive() : history.includes('category-node-1853')"
5369                role="link">
5370                <a
5371                    x-element-transition-trigger
5372                    class="button bg-white border border-primary-500 text-primary-500 w-full hover:bg-primary-500 hover:text-white hover:scale-105 transition-all duration-200"
5373                    href="https://www.esprit-ktm.com/vetements-ktm/vetements-femmes.html">
5374                    <template x-if="$store.main.isMobile">
5375                        <span>Tout voir <span class="lowercase">Vêtements Femme</span></span>
5376                    </template>
5377                    <template x-if="!$store.main.isMobile">
5378                        <span class="flex items-center text-center capitalize">
5379                            <span class='border-current'>
5380                                Tout voir                                <br />
5381                                <span>Vêtements Femme</span>
5382                            </span>
5383                        </span>
5384                    </template>
5385                </a>
5386            </div>
5387        </template>
5388    </div>
5389                    </template>
5390                            </li>
5391                                <li>
5392                                    <button
5393                                                class="menu__link group"
5394                        @click="setHistory([...'all,category-node-1769'.split(','), 'category-node-1864'])"
5395                        :class="{ 'menu__link--active': history.includes('category-node-1864') }"
5396                        role="button"
5397                        :aria-expanded="history.includes('category-node-1864')">
5398                        <span class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
5399                            <!-- DEBUG: Logo = EMPTY -->
5400                                                        Vêtements Enfant                        </span>
5401                        <span class="text-xl transition-[color,transform] md:group-hover:-translate-x-3 md:group-hover:text-primary-600">
5402                            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
5403    <path d="M10.707 17.707 16.414 12l-5.707-5.707-1.414 1.414L13.586 12l-4.293 4.293z"/>
5404</svg>
5405                        </span>
5406                    </button>
5407                    <template x-portal="document.getElementById('menu-sections')">
5408                        <div
5409    class="menu__level relative z-[100]"
5410    :class="{
5411        'menu__level--current': history[history.length - 1] === 'category-node-1864',
5412        'menu__level--visible': history.includes('category-node-1864'),
5413        'menu__level--same-depth': 3 <= delayedLevel,
5414        'hidden': !$store.main.isMobile && !$store.resizable.isVisible('menu-desktop'),
5415    }"
5416    :inert="!history.includes('category-node-1864')"
5417    data-menu-level="category-node-1864">
5418    <div class="menu__header">
5419        <div class="menu__header-container p-2 md:flex md:flex-col">
5420            
5421            <button
5422                @click="history.pop()"
5423                type="button"
5424                aria-label="Revenir au menu précédent"
5425                class="menu__back-button py-3 motion-reduce:max-md:animate-none"
5426                :class="{
5427                    'menu__back-button--visible max-md:animate-slideIconIn motion-reduce:translate-x-0': history.length !== 1,
5428                    'max-md:animate-slideIconOut motion-reduce:-translate-x-full': history.length == 1
5429                }"
5430                :tabindex="history.length === 1 ? -1 : 0"
5431                :aria-hidden="history.length === 1">
5432                <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
5433    <path d="M13.293 6.293 7.586 12l5.707 5.707 1.414-1.414L10.414 12l4.293-4.293z"/>
5434</svg>
5435            </button>
5436
5437            <h2
5438                class="menu__heading py-3 motion-reduce:max-md:animate-none"
5439                style="--translate-width: 52px;"
5440                :class="{
5441                    'menu__heading--root': 'category-node-1864' === 'all',
5442                    'max-md:w-[calc(100%-var(--translate-width))]': 'category-node-1864' !== 'all',
5443                    'max-md:animate-slideTitleIn motion-reduce:translate-x-[--translate-width]': history.length !== 1,
5444                    'max-md:animate-slideTitleOut motion-reduce:translate-x-0': history.length == 1
5445                }"
5446                x-show="$store.main.isMobile || 'category-node-1864' !== 'all'">
5447                Vêtements Enfant            </h2>
5448
5449            <div id="menu-actions-category-node-1864" class="md:mt-[6px] md:flex-none md:flex-row"></div>
5450        </div>
5451        <hr class="divider -mx-5 md:hidden">
5452    </div>
5453
5454    <ul role="list" class="menu__links">
5455                            <li>
5456                                    <a
5457                                                x-a11y-trap-target.initial="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-1864'"
5458                                                href="https://www.esprit-ktm.com/vetements-ktm/vetements-enfants/t-shirts.html"
5459                        role="link"
5460                        x-element-transition-trigger:category.animate="{
5461                            'title': `T-Shirts`,
5462                            'url': 'https://www.esprit-ktm.com/vetements-ktm/vetements-enfants/t-shirts.html',
5463                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&#x20;Enfant&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm&#x5C;&#x2F;vetements-enfants.html&quot;&#x7D;&#x5D;,
5464                            'img': '',
5465                            'description': `Bienvenue dans la catégorie T-shirts Enfant d&amp;apos;Esprit-KTM, où l&amp;apos;esprit aventureux et le dynamisme se transforment en une collection pour les jeunes passionnés de moto. Lire la suiteExplorez notre sélection de t-shirts enfant qui célèbrent la joie, la vitalité et la passion de l&amp;apos;univers KTM, incarnant la légendaire marque.Nos t-shirts enfant, arborant fièrement le logo emblématique de KTM, vont bien au-delà de simples vêtements pour devenir des toiles sur lesquelles s&amp;apos;exprime la passion pour la moto. Que ce soit avec des designs ludiques, des illustrations vibrantes ou des messages inspirants, chaque t-shirt incarne l&amp;apos;esprit indomptable de KTM et encourage les jeunes motards à rêver de grandes aventures sur deux roues.Conçus avec une attention particulière à la qualité, au confort et à la créativité, nos t-shirts offrent aux enfants une manière ludique et stylée d&amp;apos;affirmer leur passion pour l&amp;apos;univers KTM. Que ce soit pour une journée de jeu, une sortie en famille ou pour rejoindre la prochaine génération de motards, chaque t-shirt est une déclaration de l&amp;apos;aventure en herbe, une invitation à faire partie de la communauté KTM dès le plus jeune âge.Retrouvez nos collections Kids T-shirt, Kids Hero Tee, Kini Red Bull, Kids Team Tee, Kids Replica Team Tee, Kids Radical Longsleeve et bien d&amp;
5465apos;autres. `,
5466                        }"
5467                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
5468                        :class="{
5469                            'text-primary-500 font-semibold': history.includes('category-node-1865')
5470                        }">
5471                        <span
5472                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
5473                            <!-- DEBUG: Logo = EMPTY -->
5474                                                        T-Shirts                        </span>
5475                    </a>
5476                            </li>
5477                                <li>
5478                                    <a
5479                                                href="https://www.esprit-ktm.com/vetements-ktm/vetements-enfants/vestes-sweats.html"
5480                        role="link"
5481                        x-element-transition-trigger:category.animate="{
5482                            'title': `Sweats`,
5483                            'url': 'https://www.esprit-ktm.com/vetements-ktm/vetements-enfants/vestes-sweats.html',
5484                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&#x20;Enfant&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm&#x5C;&#x2F;vetements-enfants.html&quot;&#x7D;&#x5D;,
5485                            'img': '',
5486                            'description': `Bienvenue dans la catégorie Sweats Enfant d&amp;apos;Esprit-KTM, où le confort et le style ludique se rencontrent.Lire la suitePlongez dans notre sélection de sweats enfant qui incarne la joie de l&amp;apos;aventure sur deux roues, inspirée par la légendaire marque KTM.Nos sweats enfant, arborant fièrement le logo emblématique de KTM, vont au-delà de simples vêtements chauds pour devenir des compagnons de jeu qui célèbrent la vitalité, la curiosité et l&amp;apos;énergie débordante des jeunes motards en herbe. Que ce soit pour une journée décontractée en famille ou pour accompagner les premières explorations du monde de la moto, chaque sweat incarne l&amp;apos;esprit indomptable de KTM.Conçus avec une attention particulière à la qualité et au confort, nos sweats offrent aux enfants une manière stylée et amusante d&amp;apos;exprimer leur amour pour l&amp;apos;univers KTM. Des designs ludiques aux couleurs vibrantes, chaque sweat est une invitation à vivre l&amp;apos;aventure avec enthousiasme et à rêver de futures virées sur deux roues.Retrouvez nos collections Kini Red Bull, Zip Hoodie, Replica Team Zip, Kids Radical Zip et bien d&amp;apos;autres.`,
5487                        }"
5488                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
5489                        :class="{
5490                            'text-primary-500 font-semibold': history.includes('category-node-1866')
5491                        }">
5492                        <span
5493                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
5494                            <!-- DEBUG: Logo = EMPTY -->
5495                                                        Sweats                        </span>
5496                    </a>
5497                            </li>
5498                                <li>
5499                                    <a
5500                                                href="https://www.esprit-ktm.com/vetements-ktm/vetements-enfants/ensembles.html"
5501                        role="link"
5502                        x-element-transition-trigger:category.animate="{
5503                            'title': `Ensembles`,
5504                            'url': 'https://www.esprit-ktm.com/vetements-ktm/vetements-enfants/ensembles.html',
5505                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&#x20;Enfant&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm&#x5C;&#x2F;vetements-enfants.html&quot;&#x7D;&#x5D;,
5506                            'img': '',
5507                            'description': `Bienvenue dans la catégorie Ensembles Enfant d&amp;apos;Esprit-KTM, où l&amp;apos;esprit intrépide de la route se décline en une collection pour les jeunes motards en herbe. Lire la suitePlongez dans notre sélection d&amp;
5507apos;ensembles adorables et fonctionnels qui célèbrent la passion pour la moto dès le plus jeune âge, inspirés par la légendaire marque KTM.Nos ensembles enfant, arborant fièrement le logo emblématique de KTM, vont au-delà de simples tenues pour devenir des combinaisons parfaites de style et de confort. Chaque ensemble incarne l&amp;apos;esprit indomptable de KTM et invite les enfants à vivre leurs premières aventures avec style.Retrouvez notre collection Kids Team Home Suit.`,
5508                        }"
5509                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
5510                        :class="{
5511                            'text-primary-500 font-semibold': history.includes('category-node-2580')
5512                        }">
5513                        <span
5514                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
5515                            <!-- DEBUG: Logo = EMPTY -->
5516                                                        Ensembles                        </span>
5517                    </a>
5518                            </li>
5519                                <li>
5520                                    <a
5521                                                x-a11y-trap-target.end="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-1864'"
5522                                                href="https://www.esprit-ktm.com/vetements-ktm/vetements-enfants/les-tout-petits.html"
5523                        role="link"
5524                        x-element-transition-trigger:category.animate="{
5525                            'title': `Bodys`,
5526                            'url': 'https://www.esprit-ktm.com/vetements-ktm/vetements-enfants/les-tout-petits.html',
5527                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&#x20;Enfant&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm&#x5C;&#x2F;vetements-enfants.html&quot;&#x7D;&#x5D;,
5528                            'img': '',
5529                            'description': `Bienvenue dans la catégorie des Tout-Petits d&amp;apos;Esprit-KTM, où l&amp;apos;esprit intrépide de la route prend vie à travers une adorable collection de vêtements. Lire la suitePlongez dans notre sélection qui célèbre la petite taille avec autant d&amp;apos;énergie et d&amp;apos;authenticité que la légendaire marque KTM.Nos vêtements pour Tout-Petits, arborant fièrement le logo emblématique de KTM, transcendent la simple mode pour devenir des pièces mignonnes et fonctionnelles qui éveillent la passion pour la moto dès le plus jeune âge. Que ce soit avec des bodys ou des pyjamas adorables, chaque pièce incarne l&amp;apos;esprit indomptable de KTM et invite les tout-petits à faire leurs premiers pas dans le monde de la moto avec style.Conçus avec une attention particulière à la douceur, au confort et à la praticité, nos vêtements pour Tout-Petits offrent aux parents une manière mignonne et pratique d&amp;apos;exprimer leur passion pour l&amp;apos;univers KTM. Que ce soit pour des sorties décontractées en famille, des séances de jeu endiablées ou pour les premières photos sur une mini-moto, chaque vêtement devient une déclaration de l&amp;apos;aventure en herbe, une façon d&amp;apos;instiller l&amp;apos;esprit de la moto dès le plus jeune âge.Retrouvez collections Baby Body Set, Baby Team Body, Baby Team Romper, Baby Radius Pyjama, Baby Radical Body et bien d&amp;apos;autres.`,
5530                        }"
5531                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
5532                        :class="{
5533                            'text-primary-500 font-semibold': history.includes('category-node-1887')
5534                        }">
5535                        <span
5536                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
5537                            <!-- DEBUG: Logo = EMPTY -->
5538                                                        Bodys                        </span>
5539                    </a>
5540                            </li>
5541                        </ul>
5542
5543    <div class="h-20 md:hidden"></div>
5544            <template
5545            x-portal="$store.main.isMobile ? document.getElementById('popup-fixed-content-portal') : document.getElementById('menu-actions-category-node-1864')">
5546            <div
5547                class="bg-bg-500 px-4 pb-2 transition-colors duration-200 md:bg-transparent md:hover:text-primary-600 md:p-0"
5548                x-transition.opacity
5549                x-show="$store.main.isMobile ? history[history.length - 1] === 'category-node-1864' && !getIsSearchActive() : history.includes('category-node-1864')"
5550                role="link">
5551                <a
5552                    x-element-transition-trigger
5553                    class="button bg-white border border-primary-500 text-primary-500 w-full hover:bg-primary-500 hover:text-white hover:scale-105 transition-all duration-200"
5554                    href="https://www.esprit-ktm.com/vetements-ktm/vetements-enfants.html">
5555                    <template x-if="$store.main.isMobile">
5556                        <span>Tout voir <span class="lowercase">Vêtements Enfant</span></span>
5557                    </template>
5558                    <template x-if="!$store.main.isMobile">
5559                        <span class="flex items-center text-center capitalize">
5560                            <span class='border-current'>
5561                                Tout voir                                <br />
5562                                <span>Vêtements Enfant</span>
5563                            </span>
5564                        </span>
5565                    </template>
5566                </a>
5567            </div>
5568        </template>
5569    </div>
5570                    </template>
5571                            </li>
5572                                <li>
5573                                    <button
5574                                                class="menu__link group"
5575                        @click="setHistory([...'all,category-node-1769'.split(','), 'category-node-1814'])"
5576                        :class="{ 'menu__link--active': history.includes('category-node-1814') }"
5577                        role="button"
5578                        :aria-expanded="history.includes('category-node-1814')">
5579                        <span class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
5580                            <!-- DEBUG: Logo = EMPTY -->
5581                                                        Casquettes & Bonnets                        </span>
5582                        <span class="text-xl transition-[color,transform] md:group-hover:-translate-x-3 md:group-hover:text-primary-600">
5583                            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
5584    <path d="M10.707 17.707 16.414 12l-5.707-5.707-1.414 1.414L13.586 12l-4.293 4.293z"/>
5585</svg>
5586                        </span>
5587                    </button>
5588                    <template x-portal="document.getElementById('menu-sections')">
5589                        <div
5590    class="menu__level relative z-[100]"
5591    :class="{
5592        'menu__level--current': history[history.length - 1] === 'category-node-1814',
5593        'menu__level--visible': history.includes('category-node-1814'),
5594        'menu__level--same-depth': 3 <= delayedLevel,
5595        'hidden': !$store.main.isMobile && !$store.resizable.isVisible('menu-desktop'),
5596    }"
5597    :inert="!history.includes('category-node-1814')"
5598    data-menu-level="category-node-1814">
5599    <div class="menu__header">
5600        <div class="menu__header-container p-2 md:flex md:flex-col">
5601            
5602            <button
5603                @click="history.pop()"
5604                type="button"
5605                aria-label="Revenir au menu précédent"
5606                class="menu__back-button py-3 motion-reduce:max-md:animate-none"
5607                :class="{
5608                    'menu__back-button--visible max-md:animate-slideIconIn motion-reduce:translate-x-0': history.length !== 1,
5609                    'max-md:animate-slideIconOut motion-reduce:-translate-x-full': history.length == 1
5610                }"
5611                :tabindex="history.length === 1 ? -1 : 0"
5612                :aria-hidden="history.length === 1">
5613                <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
5614    <path d="M13.293 6.293 7.586 12l5.707 5.707 1.414-1.414L10.414 12l4.293-4.293z"/>
5615</svg>
5616            </button>
5617
5618            <h2
5619                class="menu__heading py-3 motion-reduce:max-md:animate-none"
5620                style="--translate-width: 52px;"
5621                :class="{
5622                    'menu__heading--root': 'category-node-1814' === 'all',
5623                    'max-md:w-[calc(100%-var(--translate-width))]': 'category-node-1814' !== 'all',
5624                    'max-md:animate-slideTitleIn motion-reduce:translate-x-[--translate-width]': history.length !== 1,
5625                    'max-md:animate-slideTitleOut motion-reduce:translate-x-0': history.length == 1
5626                }"
5627                x-show="$store.main.isMobile || 'category-node-1814' !== 'all'">
5628                Casquettes & Bonnets            </h2>
5629
5630            <div id="menu-actions-category-node-1814" class="md:mt-[6px] md:flex-none md:flex-row"></div>
5631        </div>
5632        <hr class="divider -mx-5 md:hidden">
5633    </div>
5634
5635    <ul role="list" class="menu__links">
5636                            <li>
5637                                    <a
5638                                                x-a11y-trap-target.initial="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-1814'"
5639                                                href="https://www.esprit-ktm.com/vetements-ktm/casquettes-bonnets/casquettes.html"
5640                        role="link"
5641                        x-element-transition-trigger:category.animate="{
5642                            'title': `Casquettes`,
5643                            'url': 'https://www.esprit-ktm.com/vetements-ktm/casquettes-bonnets/casquettes.html',
5644                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Casquettes&#x20;&amp;&#x20;Bonnets&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm&#x5C;&#x2F;casquettes-bonnets.html&quot;&#x7D;&#x5D;,
5645                            'img': '',
5646                            'description': `Bienvenue dans la catégorie Casquettes &amp; Bonnets d&amp;
5646apos;Esprit-KTM, où le style audacieux et l&amp;apos;esprit de la route s&amp;apos;expriment à travers nos casquettes emblématiques. Lire la suitePlongez dans notre sélection de casquettes spécialement conçues pour les passionnés de deux-roues, inspirées par l&amp;apos;héritage indomptable de la légendaire marque KTM.Nos casquettes, arborant fièrement le logo distinctif de KTM, transcendent l&amp;apos;idée même d&amp;apos;accessoire pour devenir une déclaration de votre passion pour la moto. Chaque casquette incarne l&amp;apos;engagement de KTM envers le style authentique.Explorez notre collection variée, où chaque modèle est pensé pour refléter l&amp;apos;esprit de l&amp;apos;aventure et l&amp;apos;attitude audacieuse de KTM. Les détails de qualité, les designs uniques et le confort exceptionnel font de chaque casquette un élément incontournable de l&amp;apos;attirail du passionné de moto.Explorez notre catégorie Casquettes &amp; Bonnets avec la même passion qu&amp;apos;un motard prêt à conquérir de nouvelles routes, et coiffez-vous avec le meilleur du style inspiré par l&amp;apos;esprit indomptable de KTM. Retrouvez nos collections de casquettes Kids Curved Cap, Red Bull Jack Miller, Red Bull Brad Binder, RB Race Trucker Cap, Kini Red Bull et bien d&amp;apos;autres. `,
5647                        }"
5648                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
5649                        :class="{
5650                            'text-primary-500 font-semibold': history.includes('category-node-2581')
5651                        }">
5652                        <span
5653                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
5654                            <!-- DEBUG: Logo = EMPTY -->
5655                                                        Casquettes                        </span>
5656                    </a>
5657                            </li>
5658                                <li>
5659                                    <a
5660                                                x-a11y-trap-target.end="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-1814'"
5661                                                href="https://www.esprit-ktm.com/vetements-ktm/casquettes-bonnets/bonnets.html"
5662                        role="link"
5663                        x-element-transition-trigger:category.animate="{
5664                            'title': `Bonnets`,
5665                            'url': 'https://www.esprit-ktm.com/vetements-ktm/casquettes-bonnets/bonnets.html',
5666                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Casquettes&#x20;&amp;&#x20;Bonnets&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm&#x5C;&#x2F;casquettes-bonnets.html&quot;&#x7D;&#x5D;,
5667                            'img': '',
5668                            'description': `Bienvenue dans la catégorie Casquettes &amp; Bonnets d&amp;apos;Esprit-KTM, où l&amp;apos;alliance parfaite entre style et confort prend la forme de nos bonnets emblématiques. Lire la suitePlongez dans notre sélection de bonnets spécialement conçus pour les amateurs de deux-roues, inspirés par l&amp;apos;esprit intrépide de la légendaire marque KTM.Nos bonnets, arborant fièrement le logo distinctif de KTM, sont bien plus qu&amp;apos;un simple accessoire ; ils sont une déclaration de votre passion pour la moto. Que vous recherchiez un bonnet en maille pour un look décontracté, un bonnet à revers pour une touche de chaleur, ou un bonnet classique pour une élégance intemporelle, chaque pièce incarne l&amp;apos;engagement de KTM envers le style authentique.Conçus avec une attention particulière à la qualité des matériaux, au confort et à la polyvalence, nos bonnets offrent une touche distinctive à votre tenue, complétant votre style avec l&amp;apos;authenticité caractéristique de KTM. Chaque bonnet est une manière de célébrer l&amp;apos;esprit audacieux de KTM.Retrouvez nos collections de bonnets Replica Team Beanie, Kids Replica Team Beanie, Pure Beanie, Winter Pom Pom Beanie, Kids Fletch Reversible Beanie et bien d&amp;
5668apos;autres. `,
5669                        }"
5670                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
5671                        :class="{
5672                            'text-primary-500 font-semibold': history.includes('category-node-2582')
5673                        }">
5674                        <span
5675                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
5676                            <!-- DEBUG: Logo = EMPTY -->
5677                                                        Bonnets                        </span>
5678                    </a>
5679                            </li>
5680                        </ul>
5681
5682    <div class="h-20 md:hidden"></div>
5683            <template
5684            x-portal="$store.main.isMobile ? document.getElementById('popup-fixed-content-portal') : document.getElementById('menu-actions-category-node-1814')">
5685            <div
5686                class="bg-bg-500 px-4 pb-2 transition-colors duration-200 md:bg-transparent md:hover:text-primary-600 md:p-0"
5687                x-transition.opacity
5688                x-show="$store.main.isMobile ? history[history.length - 1] === 'category-node-1814' && !getIsSearchActive() : history.includes('category-node-1814')"
5689                role="link">
5690                <a
5691                    x-element-transition-trigger
5692                    class="button bg-white border border-primary-500 text-primary-500 w-full hover:bg-primary-500 hover:text-white hover:scale-105 transition-all duration-200"
5693                    href="https://www.esprit-ktm.com/vetements-ktm/casquettes-bonnets.html">
5694                    <template x-if="$store.main.isMobile">
5695                        <span>Tout voir <span class="lowercase">Casquettes & Bonnets</span></span>
5696                    </template>
5697                    <template x-if="!$store.main.isMobile">
5698                        <span class="flex items-center text-center capitalize">
5699                            <span class='border-current'>
5700                                Tout voir                                <br />
5701                                <span>Casquettes & Bonnets</span>
5702                            </span>
5703                        </span>
5704                    </template>
5705                </a>
5706            </div>
5707        </template>
5708    </div>
5709                    </template>
5710                            </li>
5711                                <li>
5712                                    <button
5713                                                class="menu__link group"
5714                        @click="setHistory([...'all,category-node-1769'.split(','), 'category-node-2583'])"
5715                        :class="{ 'menu__link--active': history.includes('category-node-2583') }"
5716                        role="button"
5717                        :aria-expanded="history.includes('category-node-2583')">
5718                        <span class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
5719                            <!-- DEBUG: Logo = EMPTY -->
5720                                                        Accessoires                        </span>
5721                        <span class="text-xl transition-[color,transform] md:group-hover:-translate-x-3 md:group-hover:text-primary-600">
5722                            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
5723    <path d="M10.707 17.707 16.414 12l-5.707-5.707-1.414 1.414L13.586 12l-4.293 4.293z"/>
5724</svg>
5725                        </span>
5726                    </button>
5727                    <template x-portal="document.getElementById('menu-sections')">
5728                        <div
5729    class="menu__level relative z-[100]"
5730    :class="{
5731        'menu__level--current': history[history.length - 1] === 'category-node-2583',
5732        'menu__level--visible': history.includes('category-node-2583'),
5733        'menu__level--same-depth': 3 <= delayedLevel,
5734        'hidden': !$store.main.isMobile && !$store.resizable.isVisible('menu-desktop'),
5735    }"
5736    :inert="!history.includes('category-node-2583')"
5737    data-menu-level="category-node-2583">
5738    <div class="menu__header">
5739        <div class="menu__header-container p-2 md:flex md:flex-col">
5740            
5741            <button
5742                @click="history.pop()"
5743                type="button"
5744                aria-label="Revenir au menu précédent"
5745                class="menu__back-button py-3 motion-reduce:max-md:animate-none"
5746                :class="{
5747                    'menu__back-button--visible max-md:animate-slideIconIn motion-reduce:translate-x-0': history.length !== 1,
5748                    'max-md:animate-slideIconOut motion-reduce:-translate-x-full': history.length == 1
5749                }"
5750                :tabindex="history.length === 1 ? -1 : 0"
5751                :aria-hidden="history.length === 1">
5752                <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
5753    <path d="M13.293 6.293 7.586 12l5.707 5.707 1.414-1.414L10.414 12l4.293-4.293z"/>
5754</svg>
5755            </button>
5756
5757            <h2
5758                class="menu__heading py-3 motion-reduce:max-md:animate-none"
5759                style="--translate-width: 52px;"
5760                :class="{
5761                    'menu__heading--root': 'category-node-2583' === 'all',
5762                    'max-md:w-[calc(100%-var(--translate-width))]': 'category-node-2583' !== 'all',
5763                    'max-md:animate-slideTitleIn motion-reduce:translate-x-[--translate-width]': history.length !== 1,
5764                    'max-md:animate-slideTitleOut motion-reduce:translate-x-0': history.length == 1
5765                }"
5766                x-show="$store.main.isMobile || 'category-node-2583' !== 'all'">
5767                Accessoires            </h2>
5768
5769            <div id="menu-actions-category-node-2583" class="md:mt-[6px] md:flex-none md:flex-row"></div>
5770        </div>
5771        <hr class="divider -mx-5 md:hidden">
5772    </div>
5773
5774    <ul role="list" class="menu__links">
5775                            <li>
5776                                    <a
5777                                                x-a11y-trap-target.initial="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-2583'"
5778                                                href="https://www.esprit-ktm.com/vetements-ktm/accessoires/chaussures.html"
5779                        role="link"
5780                        x-element-transition-trigger:category.animate="{
5781                            'title': `Chaussures`,
5782                            'url': 'https://www.esprit-ktm.com/vetements-ktm/accessoires/chaussures.html',
5783                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Accessoires&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm&#x5C;&#x2F;accessoires.html&quot;&#x7D;&#x5D;,
5784                            'img': '',
5785                            'description': `Bienvenue dans la catégorie Chaussures d&amp;
5785apos;Esprit-KTM, où le confort, la performance et le style se conjuguent pour vous accompagner à chaque pas. Lire la suitePlongez dans notre sélection de chaussures conçues spécialement pour les passionnés de moto, inspirées par l&amp;apos;héritage dynamique qui caractérise chaque trajet sur deux roues.Nos chaussures, arborant fièrement le logo emblématique de KTM, transcendent la simple fonction de protection pour devenir des compagnons essentiels de votre quotidien. Chaque paire de chaussures incarne l&amp;apos;engagement de KTM envers la qualité et le style authentique.Explorez notre collection variée de chaussures, allant des modèles décontractés aux chaussures techniques de pilotage, chacune reflétant la durabilité, la fonctionnalité et le caractère unique de la marque. Conçues pour offrir un confort exceptionnel tout en ajoutant une touche distinctive à votre look, nos chaussures sont bien plus que de simples accessoires. Elles sont une extension de votre passion, une manière de célébrer chaque trajet avec l&amp;apos;esprit indomptable de KTM.Retrouvez nos collections Team Sandals, Team Shoes, Mechanic Shoes ou encore Replica Team Shoes. `,
5786                        }"
5787                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
5788                        :class="{
5789                            'text-primary-500 font-semibold': history.includes('category-node-2589')
5790                        }">
5791                        <span
5792                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
5793                            <!-- DEBUG: Logo = EMPTY -->
5794                                                        Chaussures                        </span>
5795                    </a>
5796                            </li>
5797                                <li>
5798                                    <a
5799                                                x-a11y-trap-target.end="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-2583'"
5800                                                href="https://www.esprit-ktm.com/vetements-ktm/accessoires/chaussettes.html"
5801                        role="link"
5802                        x-element-transition-trigger:category.animate="{
5803                            'title': `Chaussettes`,
5804                            'url': 'https://www.esprit-ktm.com/vetements-ktm/accessoires/chaussettes.html',
5805                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Accessoires&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm&#x5C;&#x2F;accessoires.html&quot;&#x7D;&#x5D;,
5806                            'img': '',
5807                            'description': `Bienvenue dans la catégorie Chaussettes d&amp;apos;Esprit-KTM, où le confort et le style se rencontrent pour vous accompagner avec l&amp;apos;esprit de la marque KTM. Lire la suitePlongez dans notre sélection de chaussettes conçues spécialement pour les passionnés de moto, inspirées par l&amp;apos;héritage dynamique qui anime chaque instant sur deux roues.Nos chaussettes, ornées fièrement du logo emblématique de KTM, vont bien au-delà de simples accessoires pour devenir des partenaires de votre quotidien. Que vous soyez sur la route, sur les pistes, ou simplement en train de partager votre amour pour la moto, chaque paire incarne l&amp;apos;engagement de KTM envers le confort et le style authentique.Explorez notre collection variée de chaussettes, allant des designs décontractés aux modèles plus techniques, chacune reflétant la qualité, la durabilité et le caractère unique de la marque. Conçues pour offrir un ajustement parfait et une sensation de douceur à chaque étape, nos chaussettes sont bien plus que de simples vêtements pour vos pieds. Elles sont une extension de votre passion, une manière de célébrer chaque trajet avec l&amp;apos;esprit indomptable de KTM.Retrouvez nos chaussettes Radical Socks.`,
5808                        }"
5809                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
5810                        :class="{
5811                            'text-primary-500 font-semibold': history.includes('category-node-2585')
5812                        }">
5813                        <span
5814                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
5815                            <!-- DEBUG: Logo = EMPTY -->
5816                                                        Chaussettes                        </span>
5817                    </a>
5818                            </li>
5819                        </ul>
5820
5821    <div class="h-20 md:hidden"></div>
5822            <template
5823            x-portal="$store.main.isMobile ? document.getElementById('popup-fixed-content-portal') : document.getElementById('menu-actions-category-node-2583')">
5824            <div
5825                class="bg-bg-500 px-4 pb-2 transition-colors duration-200 md:bg-transparent md:hover:text-primary-600 md:p-0"
5826                x-transition.opacity
5827                x-show="$store.main.isMobile ? history[history.length - 1] === 'category-node-2583' && !getIsSearchActive() : history.includes('category-node-2583')"
5828                role="link">
5829                <a
5830                    x-element-transition-trigger
5831                    class="button bg-white border border-primary-500 text-primary-500 w-full hover:bg-primary-500 hover:text-white hover:scale-105 transition-all duration-200"
5832                    href="https://www.esprit-ktm.com/vetements-ktm/accessoires.html">
5833                    <template x-if="$store.main.isMobile">
5834                        <span>Tout voir <span class="lowercase">Accessoires</span></span>
5835                    </template>
5836                    <template x-if="!$store.main.isMobile">
5837                        <span class="flex items-center text-center capitalize">
5838                            <span class='border-current'>
5839                                Tout voir                                <br />
5840                                <span>Accessoires</span>
5841                            </span>
5842                        </span>
5843                    </template>
5844                </a>
5845            </div>
5846        </template>
5847    </div>
5848                    </template>
5849                            </li>
5850                                <li>
5851                                    <button
5852                                                x-a11y-trap-target.end="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-1769'"
5853                                                class="menu__link group"
5854                        @click="setHistory([...'all,category-node-1769'.split(','), 'category-node-2598'])"
5855                        :class="{ 'menu__link--active': history.includes('category-node-2598') }"
5856                        role="button"
5857                        :aria-expanded="history.includes('category-node-2598')">
5858                        <span class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
5859                            <!-- DEBUG: Logo = EMPTY -->
5860                                                        Collections KTM                        </span>
5861                        <span class="text-xl transition-[color,transform] md:group-hover:-translate-x-3 md:group-hover:text-primary-600">
5862                            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
5863    <path d="M10.707 17.707 16.414 12l-5.707-5.707-1.414 1.414L13.586 12l-4.293 4.293z"/>
5864</svg>
5865                        </span>
5866                    </button>
5867                    <template x-portal="document.getElementById('menu-sections')">
5868                        <div
5869    class="menu__level relative z-[100]"
5870    :class="{
5871        'menu__level--current': history[history.length - 1] === 'category-node-2598',
5872        'menu__level--visible': history.includes('category-node-2598'),
5873        'menu__level--same-depth': 3 <= delayedLevel,
5874        'hidden': !$store.main.isMobile && !$store.resizable.isVisible('menu-desktop'),
5875    }"
5876    :inert="!history.includes('category-node-2598')"
5877    data-menu-level="category-node-2598">
5878    <div class="menu__header">
5879        <div class="menu__header-container p-2 md:flex md:flex-col">
5880            
5881            <button
5882                @click="history.pop()"
5883                type="button"
5884                aria-label="Revenir au menu précédent"
5885                class="menu__back-button py-3 motion-reduce:max-md:animate-none"
5886                :class="{
5887                    'menu__back-button--visible max-md:animate-slideIconIn motion-reduce:translate-x-0': history.length !== 1,
5888                    'max-md:animate-slideIconOut motion-reduce:-translate-x-full': history.length == 1
5889                }"
5890                :tabindex="history.length === 1 ? -1 : 0"
5891                :aria-hidden="history.length === 1">
5892                <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
5893    <path d="M13.293 6.293 7.586 12l5.707 5.707 1.414-1.414L10.414 12l4.293-4.293z"/>
5894</svg>
5895            </button>
5896
5897            <h2
5898                class="menu__heading py-3 motion-reduce:max-md:animate-none"
5899                style="--translate-width: 52px;"
5900                :class="{
5901                    'menu__heading--root': 'category-node-2598' === 'all',
5902                    'max-md:w-[calc(100%-var(--translate-width))]': 'category-node-2598' !== 'all',
5903                    'max-md:animate-slideTitleIn motion-reduce:translate-x-[--translate-width]': history.length !== 1,
5904                    'max-md:animate-slideTitleOut motion-reduce:translate-x-0': history.length == 1
5905                }"
5906                x-show="$store.main.isMobile || 'category-node-2598' !== 'all'">
5907                Collections KTM            </h2>
5908
5909            <div id="menu-actions-category-node-2598" class="md:mt-[6px] md:flex-none md:flex-row"></div>
5910        </div>
5911        <hr class="divider -mx-5 md:hidden">
5912    </div>
5913
5914    <ul role="list" class="menu__links">
5915                            <li>
5916                                    <a
5917                                                x-a11y-trap-target.initial="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-2598'"
5918                                                href="https://www.esprit-ktm.com/vetements-ktm/collections/collection-ktm-racing-team.html"
5919                        role="link"
5920                        x-element-transition-trigger:category.animate="{
5921                            'title': `Collection KTM Racing Team`,
5922                            'url': 'https://www.esprit-ktm.com/vetements-ktm/collections/collection-ktm-racing-team.html',
5923                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Collections&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm&#x5C;&#x2F;collections.html&quot;&#x7D;&#x5D;,
5924                            'img': '',
5925                            'description': `Bienvenue dans la catégorie Collection KTM Racing Team d&amp;apos;Esprit-KTM, l&amp;apos;endroit où la passion de la course, le style emblématique et la performance se rencontrent. Lire la suitePlongez dans notre sélection exclusive, où chaque pièce incarne la puissance, la vitesse et l&amp;apos;héritage triomphant de l&amp;apos;équipe de course.La Collection KTM Racing Team, ornée fièrement du logo emblématique de KTM, représente l&amp;apos;union parfaite entre l&amp;apos;ingénierie de pointe et le style audacieux. Que vous soyez un amateur de courses, un fervent supporter de l&amp;apos;équipe ou simplement un passionné de vitesse, chaque article de cette collection est conçu pour capturer l&amp;apos;essence de la compétition sur piste.Explorez nos créations exclusives, des vestes aux finitions racées aux t-shirts respirants qui reflètent l&amp;apos;énergie effervescente des paddocks de course. Chaque pièce est pensée pour offrir un confort optimal tout en célébrant la performance inégalée de l&amp;apos;équipe KTM Racing Team.Que vous souhaitiez revêtir l&amp;apos;esprit de la compétition, ou simplement arborer un style dynamique inspiré par le monde de la course, la Collection KTM Racing Team est prête à vous propulser sur la ligne de départ.Retrouvez nos t-shirts, casquettes et bonnets, vestes, sweats, accessoires ou encore nos vêtements pour bébé.`,
5926                        }"
5927                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
5928                        :class="{
5929                            'text-primary-500 font-semibold': history.includes('category-node-2070')
5930                        }">
5931                        <span
5932                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
5933                            <!-- DEBUG: Logo = EMPTY -->
5934                                                        Collection KTM Racing Team                        </span>
5935                    </a>
5936                            </li>
5937                                <li>
5938                                    <a
5939                                                href="https://www.esprit-ktm.com/vetements-ktm/collections/collection-kini-red-bull.html"
5940                        role="link"
5941                        x-element-transition-trigger:category.animate="{
5942                            'title': `Collection KTM Red Bull Replica Racing team`,
5943                            'url': 'https://www.esprit-ktm.com/vetements-ktm/collections/collection-kini-red-bull.html',
5944                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Collections&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm&#x5C;&#x2F;collections.html&quot;&#x7D;&#x5D;,
5945                            'img': '',
5946                            'description': `Bienvenue dans la catégorie Collection KTM Red Bull Replica Racing Team d&amp;apos;Esprit-KTM, l&amp;apos;épicentre de l&amp;apos;union entre l&amp;apos;audace de Red Bull et la puissance de KTM. Lire la suitePlongez dans notre sélection exclusive, où chaque pièce célèbre l&amp;apos;alliance légendaire entre deux forces majeures du monde de la course.La Collection KTM Red Bull Replica Racing Team, arborant fièrement le logo distinctif de Red Bull et KTM, représente l&amp;apos;essence de la vitesse, de la précision et de l&amp;apos;
5946esprit de compétition. Que vous soyez un fan inconditionnel de courses, un passionné de sports extrêmes ou simplement un amoureux du design dynamique, chaque article de cette collection est une déclaration audacieuse de style et de performance.Explorez nos créations exclusives, des vestes arborant les couleurs vives de Red Bull aux t-shirts et casquettes qui reflètent l&amp;apos;énergie palpitante des circuits de course. Chaque pièce est minutieusement conçue pour incarner l&amp;apos;esprit Red Bull tout en honorant la puissance mécanique de KTM.Que vous souhaitiez ressentir l&amp;apos;adrénaline des courses, soutenir l&amp;apos;alliance gagnante entre Red Bull et KTM ou simplement afficher un look avant-gardiste, la Collection KTM Red Bull Replica Racing Team est prête à vous propulser dans une aventure de style et de vitesse.Retrouvez nos sweats et bonnets, nos t-shirts et casquettes, ou encore nos vestes et accessoires. `,
5947                        }"
5948                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
5949                        :class="{
5950                            'text-primary-500 font-semibold': history.includes('category-node-1862')
5951                        }">
5952                        <span
5953                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
5954                            <!-- DEBUG: Logo = EMPTY -->
5955                                                        Collection KTM Red Bull Replica Racing team                        </span>
5956                    </a>
5957                            </li>
5958                                <li>
5959                                    <a
5960                                                href="https://www.esprit-ktm.com/vetements-ktm/collections/collection-x-bow.html"
5961                        role="link"
5962                        x-element-transition-trigger:category.animate="{
5963                            'title': `Collection X-Bow`,
5964                            'url': 'https://www.esprit-ktm.com/vetements-ktm/collections/collection-x-bow.html',
5965                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Collections&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm&#x5C;&#x2F;collections.html&quot;&#x7D;&#x5D;,
5966                            'img': '',
5967                            'description': `Bienvenue dans la catégorie Collection X-Bow d&amp;apos;Esprit-KTM, une immersion dans l&amp;apos;univers de l&amp;apos;élégance sportive et de la performance. Lire la suiteCette collection incarne l&amp;apos;alliance harmonieuse entre l&amp;apos;icône automobile X-Bow et le style distinctif de KTM, offrant aux amateurs de conduite une gamme de vêtements et d&amp;apos;équipements qui capturent l&amp;apos;esprit dynamique de ces deux légendes.La Collection X-Bow, arborant fièrement le logo emblématique de KTM et l&amp;apos;élégant X-Bow, représente une convergence de l&amp;apos;ingénierie automobile d&amp;apos;exception et du design avant-gardiste. Que vous soyez un passionné de voitures de sport ou un amateur de la performance légendaire de KTM, chaque article de cette collection est une déclaration de style sophistiqué, conçue pour les amateurs de conduite qui apprécient l&amp;apos;alliance entre la route et la piste.Explorez nos créations exclusives, des vestes élégantes aux t-shirts, chaque pièce de la Collection X-Bow est soigneusement pensée pour offrir une expérience de conduite empreinte de luxe et de dynamisme.Que vous recherchiez une expression de style distingué, une performance exceptionnelle ou simplement une connexion avec deux icônes du monde automobile, la Collection X-Bow est prête à vous accompagner à chaque trajet.`,
5968                        }"
5969                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
5970                        :class="{
5971                            'text-primary-500 font-semibold': history.includes('category-node-1867')
5972                        }">
5973                        <span
5974                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
5975                            <!-- DEBUG: Logo = EMPTY -->
5976                                                        Collection X-Bow                        </span>
5977                    </a>
5978                            </li>
5979                                <li>
5980                                    <a
5981                                                href="https://www.esprit-ktm.com/vetements-ktm/collections/kini-red-bull.html"
5982                        role="link"
5983                        x-element-transition-trigger:category.animate="{
5984                            'title': `Kini Red Bull `,
5985                            'url': 'https://www.esprit-ktm.com/vetements-ktm/collections/kini-red-bull.html',
5986                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Collections&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm&#x5C;&#x2F;collections.html&quot;&#x7D;&#x5D;,
5987                            'img': '',
5988                            'description': `Bienvenue dans la catégorie Collection Kini Red Bull d&amp;apos;Esprit-KTM, l&amp;apos;union épique entre le style inimitable de Kini et l&amp;apos;énergie débordante de Red Bull. Lire la suiteCette collection incarne l&amp;apos;esprit de la performance, de la créativité et de l&amp;apos;audace, offrant aux passionnés de moto une gamme de vêtements et d&amp;apos;équipements qui fusionnent le dynamisme de Red Bull avec l&amp;apos;ADN distinctif de KTM.La Collection Kini Red Bull, fièrement ornée du logo emblématique de Red Bull et de l&amp;apos;emblématique KTM, représente une célébration de l&amp;apos;aventure, du style et de l&amp;apos;innovation. Que vous soyez un amateur de sports extrêmes, un fan inconditionnel de Red Bull, ou simplement un passionné du design unique de Kini, chaque article de cette collection est une déclaration de style et d&amp;apos;engagement envers une vie pleine de défis.Explorez nos créations exclusives, des sweats aux motifs vibrants aux t-shirts qui reflètent l&amp;apos;énergie débordante des sports extrêmes. Chaque pièce de la Collection Kini Red Bull est pensée pour incarner l&amp;apos;esprit intrépide de KTM tout en capturant l&amp;apos;essence dynamique de Red Bull.Que vous recherchiez une expression de style audacieux, une performance exceptionnelle ou simplement une connexion avec deux des marques les plus influentes dans le monde du sport, la Collection Kini Red Bull est prête à vous propulser dans une aventure de style et d&amp;apos;excitation.Retrouvez nos swets et t-qhirts, nos casquettes ou encore nos masques. `,
5989                        }"
5990                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
5991                        :class="{
5992                            'text-primary-500 font-semibold': history.includes('category-node-2215')
5993                        }">
5994                        <span
5995                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
5996                            <!-- DEBUG: Logo = EMPTY -->
5997                                                        Kini Red Bull                         </span>
5998                    </a>
5999                            </li>
6000                                <li>
6001                                    <a
6002                                                href="https://www.esprit-ktm.com/vetements-ktm/collections/anniversaire-duke-30-ans.html"
6003                        role="link"
6004                        x-element-transition-trigger:category.animate="{
6005                            'title': `Anniversaire Duke 30 ans`,
6006                            'url': 'https://www.esprit-ktm.com/vetements-ktm/collections/anniversaire-duke-30-ans.html',
6007                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Collections&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm&#x5C;&#x2F;collections.html&quot;&#x7D;&#x5D;,
6008                            'img': '',
6009                            'description': `&lt;p&gt;Pour fêter les 30 ans de la gamme Duke, nous vous proposons une collection historique en édition limitée !&lt;/p&gt;&lt;p&gt;Des équipements techniques (Veste, Gants, Casque, Sweat) et des accessoires de tous les jours (Casquette, Sac à dos) à l&amp;apos;effigie de la Duke et avec des patchs offerts.&lt;/p&gt;&lt;p&gt;Tout cela à un rapport qualité/ prix imbattable. Alors fan de Duke n&amp;apos;hésitez pas.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Collection en pré-commande et en édition limitée&lt;/strong&gt;&lt;/p&gt;`,
6010                        }"
6011                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
6012                        :class="{
6013                            'text-primary-500 font-semibold': history.includes('category-node-2672')
6014                        }">
6015                        <span
6016                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
6017                            <!-- DEBUG: Logo = EMPTY -->
6018                                                        Anniversaire Duke 30 ans                        </span>
6019                    </a>
6020                            </li>
6021                                <li>
6022                                    <a
6023                                                href="https://www.esprit-ktm.com/vetements-ktm/collections/mechanic.html"
6024                        role="link"
6025                        x-element-transition-trigger:category.animate="{
6026                            'title': `Mechanic`,
6027                            'url': 'https://www.esprit-ktm.com/vetements-ktm/collections/mechanic.html',
6028                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Collections&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm&#x5C;&#x2F;collections.html&quot;&#x7D;&#x5D;,
6029                            'img': '',
6030                            'description': `&lt;p&gt;Crée pour les hommes et les femmes de l&amp;apos;ombre qui agissent en coulisse , la&lt;strong&gt;collection KTM &quot;MECHANIC&quot;&lt;/strong&gt;est spécialement conçue pour les mécanicien(ne)s&lt;/p&gt;&lt;p&gt;Que vous soyez amateurs ou professionnels, que vous fassiez toutes les réparations et l&amp;apos;entretien sur votre moto ou non, cette collection est faites pour ceux qui aiment la mécanique et respectent les mécaniciens&lt;/p&gt;`,
6031                        }"
6032                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
6033                        :class="{
6034                            'text-primary-500 font-semibold': history.includes('category-node-2673')
6035                        }">
6036                        <span
6037                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
6038                            <!-- DEBUG: Logo = EMPTY -->
6039                                                        Mechanic                        </span>
6040                    </a>
6041                            </li>
6042                                <li>
6043                                    <a
6044                                                x-a11y-trap-target.end="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-2598'"
6045                                                href="https://www.esprit-ktm.com/vetements-ktm/collections/collection-pilote-ktm-red-bull-racing-team.html"
6046                        role="link"
6047                        x-element-transition-trigger:category.animate="{
6048                            'title': `Collection pilote KTM Red Bull Racing Team`,
6049                            'url': 'https://www.esprit-ktm.com/vetements-ktm/collections/collection-pilote-ktm-red-bull-racing-team.html',
6050                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;V&#x5C;u00eatements&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Collections&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;vetements-ktm&#x5C;&#x2F;collections.html&quot;&#x7D;&#x5D;,
6051                            'img': '',
6052                            'description': `&lt;p&gt;Du 19 au 24 juin 2026 achetez un produit pilote KTM Racing Team de cette page et participez au tirage au sort pour gagner une casquette dédicacé par Pedro Acosta et Brad Binder.&lt;/p&gt;&lt;p&gt;
6052Un achat = 1 chance au tirage au sort, 2 achats = 2 chances, ...&lt;/p&gt;&lt;p&gt;Tirage au sort le lundi 29 juin 2026&lt;/p&gt;&lt;p&gt;Découvrez la collection pilote KTM Racing Team de l&amp;apos;année 2026.&lt;/p&gt;&lt;p&gt;T shirts et casquettes des 2 pilotes officiels KTM Racing Team Pedro Acosta et Brad Binder.&lt;/p&gt;&lt;p&gt;T shirts et casquettes des 2 pilotes KTM Tech 3 Enea Bastianini et Maverick Vinales&lt;/p&gt;`,
6053                        }"
6054                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
6055                        :class="{
6056                            'text-primary-500 font-semibold': history.includes('category-node-3457')
6057                        }">
6058                        <span
6059                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
6060                            <!-- DEBUG: Logo = EMPTY -->
6061                                                        Collection pilote KTM Red Bull Racing Team                        </span>
6062                    </a>
6063                            </li>
6064                        </ul>
6065
6066    <div class="h-20 md:hidden"></div>
6067            <template
6068            x-portal="$store.main.isMobile ? document.getElementById('popup-fixed-content-portal') : document.getElementById('menu-actions-category-node-2598')">
6069            <div
6070                class="bg-bg-500 px-4 pb-2 transition-colors duration-200 md:bg-transparent md:hover:text-primary-600 md:p-0"
6071                x-transition.opacity
6072                x-show="$store.main.isMobile ? history[history.length - 1] === 'category-node-2598' && !getIsSearchActive() : history.includes('category-node-2598')"
6073                role="link">
6074                <a
6075                    x-element-transition-trigger
6076                    class="button bg-white border border-primary-500 text-primary-500 w-full hover:bg-primary-500 hover:text-white hover:scale-105 transition-all duration-200"
6077                    href="https://www.esprit-ktm.com/vetements-ktm/collections.html">
6078                    <template x-if="$store.main.isMobile">
6079                        <span>Tout voir <span class="lowercase">Collections KTM</span></span>
6080                    </template>
6081                    <template x-if="!$store.main.isMobile">
6082                        <span class="flex items-center text-center capitalize">
6083                            <span class='border-current'>
6084                                Tout voir                                <br />
6085                                <span>Collections KTM</span>
6086                            </span>
6087                        </span>
6088                    </template>
6089                </a>
6090            </div>
6091        </template>
6092    </div>
6093                    </template>
6094                            </li>
6095                        </ul>
6096
6097    <div class="h-20 md:hidden"></div>
6098            <template
6099            x-portal="$store.main.isMobile ? document.getElementById('popup-fixed-content-portal') : document.getElementById('menu-actions-category-node-1769')">
6100            <div
6101                class="bg-bg-500 px-4 pb-2 transition-colors duration-200 md:bg-transparent md:hover:text-primary-600 md:p-0"
6102                x-transition.opacity
6103                x-show="$store.main.isMobile ? history[history.length - 1] === 'category-node-1769' && !getIsSearchActive() : history.includes('category-node-1769')"
6104                role="link">
6105                <a
6106                    x-element-transition-trigger
6107                    class="button bg-white border border-primary-500 text-primary-500 w-full hover:bg-primary-500 hover:text-white hover:scale-105 transition-all duration-200"
6108                    href="https://www.esprit-ktm.com/vetements-ktm.html">
6109                    <template x-if="$store.main.isMobile">
6110                        <span>Tout voir <span class="lowercase">Vêtements</span></span>
6111                    </template>
6112                    <template x-if="!$store.main.isMobile">
6113                        <span class="flex items-center text-center capitalize">
6114                            <span class='border-current'>
6115                                Tout voir                                <br />
6116                                <span>Vêtements</span>
6117                            </span>
6118                        </span>
6119                    </template>
6120                </a>
6121            </div>
6122        </template>
6123    </div>
6124                    </template>
6125                            </li>
6126                                <li>
6127                                    <button
6128                                                class="menu__link group"
6129                        @click="setHistory([...'all'.split(','), 'category-node-1770'])"
6130                        :class="{ 'menu__link--active': history.includes('category-node-1770') }"
6131                        role="button"
6132                        :aria-expanded="history.includes('category-node-1770')">
6133                        <span class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
6134                            <!-- DEBUG: Logo = EMPTY -->
6135                                                        Idées Cadeaux                        </span>
6136                        <span class="text-xl transition-[color,transform] md:group-hover:-translate-x-3 md:group-hover:text-primary-600">
6137                            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
6138    <path d="M10.707 17.707 16.414 12l-5.707-5.707-1.414 1.414L13.586 12l-4.293 4.293z"/>
6139</svg>
6140                        </span>
6141                    </button>
6142                    <template x-portal="document.getElementById('menu-sections')">
6143                        <div
6144    class="menu__level relative z-[100]"
6145    :class="{
6146        'menu__level--current': history[history.length - 1] === 'category-node-1770',
6147        'menu__level--visible': history.includes('category-node-1770'),
6148        'menu__level--same-depth': 2 <= delayedLevel,
6149        'hidden': !$store.main.isMobile && !$store.resizable.isVisible('menu-desktop'),
6150    }"
6151    :inert="!history.includes('category-node-1770')"
6152    data-menu-level="category-node-1770">
6153    <div class="menu__header">
6154        <div class="menu__header-container p-2 md:flex md:flex-col">
6155            
6156            <button
6157                @click="history.pop()"
6158                type="button"
6159                aria-label="Revenir au menu précédent"
6160                class="menu__back-button py-3 motion-reduce:max-md:animate-none"
6161                :class="{
6162                    'menu__back-button--visible max-md:animate-slideIconIn motion-reduce:translate-x-0': history.length !== 1,
6163                    'max-md:animate-slideIconOut motion-reduce:-translate-x-full': history.length == 1
6164                }"
6165                :tabindex="history.length === 1 ? -1 : 0"
6166                :aria-hidden="history.length === 1">
6167                <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
6168    <path d="M13.293 6.293 7.586 12l5.707 5.707 1.414-1.414L10.414 12l4.293-4.293z"/>
6169</svg>
6170            </button>
6171
6172            <h2
6173                class="menu__heading py-3 motion-reduce:max-md:animate-none"
6174                style="--translate-width: 52px;"
6175                :class="{
6176                    'menu__heading--root': 'category-node-1770' === 'all',
6177                    'max-md:w-[calc(100%-var(--translate-width))]': 'category-node-1770' !== 'all',
6178                    'max-md:animate-slideTitleIn motion-reduce:translate-x-[--translate-width]': history.length !== 1,
6179                    'max-md:animate-slideTitleOut motion-reduce:translate-x-0': history.length == 1
6180                }"
6181                x-show="$store.main.isMobile || 'category-node-1770' !== 'all'">
6182                Idées Cadeaux            </h2>
6183
6184            <div id="menu-actions-category-node-1770" class="md:mt-[6px] md:flex-none md:flex-row"></div>
6185        </div>
6186        <hr class="divider -mx-5 md:hidden">
6187    </div>
6188
6189    <ul role="list" class="menu__links">
6190                            <li>
6191                                    <a
6192                                                x-a11y-trap-target.initial="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-1770'"
6193                                                href="https://www.esprit-ktm.com/accessoires-cadeaux-ktm/stickers.html"
6194                        role="link"
6195                        x-element-transition-trigger:category.animate="{
6196                            'title': `Autocollants & Stickers`,
6197                            'url': 'https://www.esprit-ktm.com/accessoires-cadeaux-ktm/stickers.html',
6198                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Id&#x5C;u00e9es&#x20;Cadeaux&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm.html&quot;&#x7D;&#x5D;,
6199                            'img': '',
6200                            'description': `Bienvenue dans l&amp;apos;univers des autocollants et stickers d&amp;
6200apos;Esprit-KTM, la catégorie qui vous permet d&amp;apos;exprimer votre passion pour la marque légendaire. Lire la suitePlongez-vous dans notre collection dynamique où l&amp;apos;art rencontre l&amp;apos;adrénaline, et découvrez une gamme d&amp;apos;autocollants et de stickers qui incarnent l&amp;apos;esprit audacieux de KTM.Chacun de nos autocollants est une déclaration de style et d&amp;apos;appartenance, une invitation à partager votre amour pour l&amp;apos;aventure sur deux roues. Nos designs variés offrent une manière unique de personnaliser votre espace et de mettre en avant votre passion pour la performance et l&amp;apos;innovation.Fabriqués avec une attention méticuleuse aux détails et une qualité exceptionnelle, nos autocollants sont plus que de simples ornements ; ce sont des marqueurs visuels de votre engagement envers la marque KTM. Que ce soit sur votre casque, votre véhicule ou votre équipement, nos autocollants ajoutent une touche de dynamisme et d&amp;apos;énergie à votre monde.Explorez notre catégorie autocollants et stickers, trouvez le cadeau parfait pour un amateur de moto ou faites de votre espace un terrain de jeu visuel qui célèbre l&amp;apos;esprit indomptable de KTM. `,
6201                        }"
6202                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
6203                        :class="{
6204                            'text-primary-500 font-semibold': history.includes('category-node-1874')
6205                        }">
6206                        <span
6207                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
6208                            <!-- DEBUG: Logo = EMPTY -->
6209                                                        Autocollants & Stickers                        </span>
6210                    </a>
6211                            </li>
6212                                <li>
6213                                    <button
6214                                                class="menu__link group"
6215                        @click="setHistory([...'all,category-node-1770'.split(','), 'category-node-1863'])"
6216                        :class="{ 'menu__link--active': history.includes('category-node-1863') }"
6217                        role="button"
6218                        :aria-expanded="history.includes('category-node-1863')">
6219                        <span class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
6220                            <!-- DEBUG: Logo = EMPTY -->
6221                                                        Accessoires Lifestyle KTM                        </span>
6222                        <span class="text-xl transition-[color,transform] md:group-hover:-translate-x-3 md:group-hover:text-primary-600">
6223                            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
6224    <path d="M10.707 17.707 16.414 12l-5.707-5.707-1.414 1.414L13.586 12l-4.293 4.293z"/>
6225</svg>
6226                        </span>
6227                    </button>
6228                    <template x-portal="document.getElementById('menu-sections')">
6229                        <div
6230    class="menu__level relative z-[100]"
6231    :class="{
6232        'menu__level--current': history[history.length - 1] === 'category-node-1863',
6233        'menu__level--visible': history.includes('category-node-1863'),
6234        'menu__level--same-depth': 3 <= delayedLevel,
6235        'hidden': !$store.main.isMobile && !$store.resizable.isVisible('menu-desktop'),
6236    }"
6237    :inert="!history.includes('category-node-1863')"
6238    data-menu-level="category-node-1863">
6239    <div class="menu__header">
6240        <div class="menu__header-container p-2 md:flex md:flex-col">
6241            
6242            <button
6243                @click="history.pop()"
6244                type="button"
6245                aria-label="Revenir au menu précédent"
6246                class="menu__back-button py-3 motion-reduce:max-md:animate-none"
6247                :class="{
6248                    'menu__back-button--visible max-md:animate-slideIconIn motion-reduce:translate-x-0': history.length !== 1,
6249                    'max-md:animate-slideIconOut motion-reduce:-translate-x-full': history.length == 1
6250                }"
6251                :tabindex="history.length === 1 ? -1 : 0"
6252                :aria-hidden="history.length === 1">
6253                <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
6254    <path d="M13.293 6.293 7.586 12l5.707 5.707 1.414-1.414L10.414 12l4.293-4.293z"/>
6255</svg>
6256            </button>
6257
6258            <h2
6259                class="menu__heading py-3 motion-reduce:max-md:animate-none"
6260                style="--translate-width: 52px;"
6261                :class="{
6262                    'menu__heading--root': 'category-node-1863' === 'all',
6263                    'max-md:w-[calc(100%-var(--translate-width))]': 'category-node-1863' !== 'all',
6264                    'max-md:animate-slideTitleIn motion-reduce:translate-x-[--translate-width]': history.length !== 1,
6265                    'max-md:animate-slideTitleOut motion-reduce:translate-x-0': history.length == 1
6266                }"
6267                x-show="$store.main.isMobile || 'category-node-1863' !== 'all'">
6268                Accessoires Lifestyle KTM            </h2>
6269
6270            <div id="menu-actions-category-node-1863" class="md:mt-[6px] md:flex-none md:flex-row"></div>
6271        </div>
6272        <hr class="divider -mx-5 md:hidden">
6273    </div>
6274
6275    <ul role="list" class="menu__links">
6276                            <li>
6277                                    <a
6278                                                x-a11y-trap-target.initial="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-1863'"
6279                                                href="https://www.esprit-ktm.com/accessoires-cadeaux-ktm/idees-cadeaux-ktm/lunettes-de-soleil.html"
6280                        role="link"
6281                        x-element-transition-trigger:category.animate="{
6282                            'title': `Lunettes de soleil`,
6283                            'url': 'https://www.esprit-ktm.com/accessoires-cadeaux-ktm/idees-cadeaux-ktm/lunettes-de-soleil.html',
6284                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Id&#x5C;u00e9es&#x20;Cadeaux&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Accessoires&#x20;Lifestyle&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm&#x5C;&#x2F;idees-cadeaux-ktm.html&quot;&#x7D;&#x5D;,
6285                            'img': '',
6286                            'description': `Découvrez la catégorie &quot;Lunettes de soleil&quot; d&amp;apos;Esprit KTM, où le style rencontre la protection sous le soleil éclatant de l&amp;apos;aventure. Lire la suiteNos lunettes de soleil sont bien plus que des accessoires ;
6286 elles sont des déclarations de style et des compagnons indispensables pour chaque motard qui apprécie la route sous un ciel éblouissant.Chaque paire de lunettes de soleil de notre collection incarne l&amp;apos;esthétique audacieuse de KTM, avec des designs contemporains et des détails soigneusement élaborés. Que vous préfériez un look sportif et dynamique ou quelque chose de plus décontracté, notre gamme offre une variété de styles pour s&amp;apos;adapter à votre personnalité.Les verres de haute qualité offrent une protection UV essentielle tout en améliorant votre vision pour une conduite en toute confiance. Nos lunettes de soleil allient fonctionnalité et élégance pour vous offrir le meilleur des deux mondes.Affirmez votre engagement envers l&amp;apos;esprit KTM avec des logos emblématiques et des accents distinctifs qui ajoutent une touche de passion à chaque regard. Que ce soit pour compléter votre tenue motarde ou pour offrir un cadeau élégant à un ami passionné de moto, nos lunettes de soleil sont le choix parfait.`,
6287                        }"
6288                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
6289                        :class="{
6290                            'text-primary-500 font-semibold': history.includes('category-node-2153')
6291                        }">
6292                        <span
6293                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
6294                            <!-- DEBUG: Logo = EMPTY -->
6295                                                        Lunettes de soleil                        </span>
6296                    </a>
6297                            </li>
6298                                <li>
6299                                    <a
6300                                                href="https://www.esprit-ktm.com/accessoires-cadeaux-ktm/idees-cadeaux-ktm/montres.html"
6301                        role="link"
6302                        x-element-transition-trigger:category.animate="{
6303                            'title': `Montres et Horloges`,
6304                            'url': 'https://www.esprit-ktm.com/accessoires-cadeaux-ktm/idees-cadeaux-ktm/montres.html',
6305                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Id&#x5C;u00e9es&#x20;Cadeaux&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Accessoires&#x20;Lifestyle&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm&#x5C;&#x2F;idees-cadeaux-ktm.html&quot;&#x7D;&#x5D;,
6306                            'img': '',
6307                            'description': `Découvrez l&amp;apos;élégance intemporelle et la précision mécanique avec la catégorie &quot;Montres et Horloges&quot; d&amp;apos;Esprit KTM, où le temps devient une aventure. Lire la suiteNotre collection de montres et d&amp;apos;horloges incarne l&amp;apos;alliance parfaite entre le style distinctif de KTM et la qualité horlogère, offrant des pièces qui transcendent la simple mesure du temps pour devenir de véritables compagnons de route.Chaque montre et horloge de notre gamme est une œuvre d&amp;apos;art, fusionnant l&amp;apos;héritage de KTM avec des détails raffinés et une ingénierie de pointe. Que vous optiez pour un design classique ou contemporain, chaque montre est créée pour refléter l&amp;apos;esprit intrépide de ceux qui savent que chaque instant compte sur la route et chez soi.Les cadrans affichent des logos emblématiques et des motifs inspirés de l&amp;apos;univers de la moto, ajoutant une touche distinctive à chaque poignet. Les bracelets, conçus avec soin, offrent un mélange de confort et de durabilité, adaptés à la vie quotidienne aussi bien qu&amp;apos;aux escapades épiques.`,
6308                        }"
6309                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
6310                        :class="{
6311                            'text-primary-500 font-semibold': history.includes('category-node-2155')
6312                        }">
6313                        <span
6314                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
6315                            <!-- DEBUG: Logo = EMPTY -->
6316                                                        Montres et Horloges                        </span>
6317                    </a>
6318                            </li>
6319                                <li>
6320                                    <a
6321                                                href="https://www.esprit-ktm.com/accessoires-cadeaux-ktm/idees-cadeaux-ktm/parapluies.html"
6322                        role="link"
6323                        x-element-transition-trigger:category.animate="{
6324                            'title': `Parapluies`,
6325                            'url': 'https://www.esprit-ktm.com/accessoires-cadeaux-ktm/idees-cadeaux-ktm/parapluies.html',
6326                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Id&#x5C;u00e9es&#x20;Cadeaux&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Accessoires&#x20;Lifestyle&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm&#x5C;&#x2F;idees-cadeaux-ktm.html&quot;&#x7D;&#x5D;,
6327                            'img': '',
6328                            'description': `Affrontez les jours pluvieux avec style grâce à la catégorie &quot;Parapluies Lifestyle&quot; d&amp;apos;Esprit KTM, où la fonctionnalité rencontre l&amp;apos;esthétique de la route. Lire la suiteNos parapluies sont bien plus que des abris contre la pluie ; ce sont des accessoires qui ajoutent une touche de flair KTM à chaque averse, affirmant votre passion même lorsque le ciel se couvre.Chaque parapluie de notre collection marie la qualité des matériaux à la conception innovante, offrant une protection fiable tout en capturant l&amp;apos;esprit aventurier de KTM. Que ce soit pour vous protéger lors de vos déplacements quotidiens ou pour vous accompagner lors de vos escapades en plein air, nos parapluies sont conçus pour résister aux intempéries avec style.Les designs affichent des logos emblématiques et des motifs inspirés de l&amp;apos;univers de la moto, faisant de chaque parapluie un accessoire qui déclare votre amour pour la route, même sous la pluie. Compact et pratique, notre gamme offre des options adaptées à chaque situation, du parapluie pliable que vous pouvez glisser dans votre sac aux modèles plus grands pour une protection maximale.`,
6329                        }"
6330                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
6331                        :class="{
6332                            'text-primary-500 font-semibold': history.includes('category-node-2156')
6333                        }">
6334                        <span
6335                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
6336                            <!-- DEBUG: Logo = EMPTY -->
6337                                                        Parapluies                        </span>
6338                    </a>
6339                            </li>
6340                                <li>
6341                                    <a
6342                                                x-a11y-trap-target.end="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-1863'"
6343                                                href="https://www.esprit-ktm.com/accessoires-cadeaux-ktm/idees-cadeaux-ktm/portefeuilles.html"
6344                        role="link"
6345                        x-element-transition-trigger:category.animate="{
6346                            'title': `Stylos et porte-documents`,
6347                            'url': 'https://www.esprit-ktm.com/accessoires-cadeaux-ktm/idees-cadeaux-ktm/portefeuilles.html',
6348                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Id&#x5C;u00e9es&#x20;Cadeaux&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Accessoires&#x20;Lifestyle&#x20;KTM&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm&#x5C;&#x2F;idees-cadeaux-ktm.html&quot;&#x7D;&#x5D;,
6349                            'img': '',
6350                            'description': `Plongez dans l&amp;apos;élégance fonctionnelle avec la catégorie &quot;Portefeuilles et Porte-documents&quot; d&amp;apos;
6350Esprit KTM. Lire la suiteNotre collection d&amp;apos;accessoires pour le quotidien capture l&amp;apos;esprit audacieux de KTM dans des articles qui vous accompagnent de manière raffinée à chaque étape de votre aventure quotidienne.Les portefeuilles de notre gamme incarnent la fusion parfaite entre l&amp;apos;esthétique distinctive de KTM et l&amp;apos;organisation essentielle. Fabriqués à partir de matériaux de qualité, ces portefeuilles offrent une touche de luxe tout en restant fidèles à l&amp;apos;esprit fonctionnel des motards qui exigent le meilleur.Les porte-documents, quant à eux, sont conçus pour transporter vos essentiels avec élégance. Que vous soyez en route pour le travail ou pour une escapade, nos porte-documents sont des compagnons sophistiqués qui vous permettent de rester organisé sans sacrifier le style.Affichez votre passion pour KTM avec des logos emblématiques et des détails subtils qui distinguent chaque article. Que vous choisissiez un portefeuille classique ou un porte-documents moderne, chaque pièce est une déclaration de votre engagement envers l&amp;apos;esthétique raffinée et l&amp;apos;aventure sans limites.`,
6351                        }"
6352                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
6353                        :class="{
6354                            'text-primary-500 font-semibold': history.includes('category-node-2154')
6355                        }">
6356                        <span
6357                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
6358                            <!-- DEBUG: Logo = EMPTY -->
6359                                                        Stylos et porte-documents                        </span>
6360                    </a>
6361                            </li>
6362                        </ul>
6363
6364    <div class="h-20 md:hidden"></div>
6365            <template
6366            x-portal="$store.main.isMobile ? document.getElementById('popup-fixed-content-portal') : document.getElementById('menu-actions-category-node-1863')">
6367            <div
6368                class="bg-bg-500 px-4 pb-2 transition-colors duration-200 md:bg-transparent md:hover:text-primary-600 md:p-0"
6369                x-transition.opacity
6370                x-show="$store.main.isMobile ? history[history.length - 1] === 'category-node-1863' && !getIsSearchActive() : history.includes('category-node-1863')"
6371                role="link">
6372                <a
6373                    x-element-transition-trigger
6374                    class="button bg-white border border-primary-500 text-primary-500 w-full hover:bg-primary-500 hover:text-white hover:scale-105 transition-all duration-200"
6375                    href="https://www.esprit-ktm.com/accessoires-cadeaux-ktm/idees-cadeaux-ktm.html">
6376                    <template x-if="$store.main.isMobile">
6377                        <span>Tout voir <span class="lowercase">Accessoires Lifestyle KTM</span></span>
6378                    </template>
6379                    <template x-if="!$store.main.isMobile">
6380                        <span class="flex items-center text-center capitalize">
6381                            <span class='border-current'>
6382                                Tout voir                                <br />
6383                                <span>Accessoires Lifestyle KTM</span>
6384                            </span>
6385                        </span>
6386                    </template>
6387                </a>
6388            </div>
6389        </template>
6390    </div>
6391                    </template>
6392                            </li>
6393                                <li>
6394                                    <button
6395                                                class="menu__link group"
6396                        @click="setHistory([...'all,category-node-1770'.split(','), 'category-node-2139'])"
6397                        :class="{ 'menu__link--active': history.includes('category-node-2139') }"
6398                        role="button"
6399                        :aria-expanded="history.includes('category-node-2139')">
6400                        <span class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
6401                            <!-- DEBUG: Logo = EMPTY -->
6402                                                        Accessoires maison                        </span>
6403                        <span class="text-xl transition-[color,transform] md:group-hover:-translate-x-3 md:group-hover:text-primary-600">
6404                            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
6405    <path d="M10.707 17.707 16.414 12l-5.707-5.707-1.414 1.414L13.586 12l-4.293 4.293z"/>
6406</svg>
6407                        </span>
6408                    </button>
6409                    <template x-portal="document.getElementById('menu-sections')">
6410                        <div
6411    class="menu__level relative z-[100]"
6412    :class="{
6413        'menu__level--current': history[history.length - 1] === 'category-node-2139',
6414        'menu__level--visible': history.includes('category-node-2139'),
6415        'menu__level--same-depth': 3 <= delayedLevel,
6416        'hidden': !$store.main.isMobile && !$store.resizable.isVisible('menu-desktop'),
6417    }"
6418    :inert="!history.includes('category-node-2139')"
6419    data-menu-level="category-node-2139">
6420    <div class="menu__header">
6421        <div class="menu__header-container p-2 md:flex md:flex-col">
6422            
6423            <button
6424                @click="history.pop()"
6425                type="button"
6426                aria-label="Revenir au menu précédent"
6427                class="menu__back-button py-3 motion-reduce:max-md:animate-none"
6428                :class="{
6429                    'menu__back-button--visible max-md:animate-slideIconIn motion-reduce:translate-x-0': history.length !== 1,
6430                    'max-md:animate-slideIconOut motion-reduce:-translate-x-full': history.length == 1
6431                }"
6432                :tabindex="history.length === 1 ? -1 : 0"
6433                :aria-hidden="history.length === 1">
6434                <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
6435    <path d="M13.293 6.293 7.586 12l5.707 5.707 1.414-1.414L10.414 12l4.293-4.293z"/>
6436</svg>
6437            </button>
6438
6439            <h2
6440                class="menu__heading py-3 motion-reduce:max-md:animate-none"
6441                style="--translate-width: 52px;"
6442                :class="{
6443                    'menu__heading--root': 'category-node-2139' === 'all',
6444                    'max-md:w-[calc(100%-var(--translate-width))]': 'category-node-2139' !== 'all',
6445                    'max-md:animate-slideTitleIn motion-reduce:translate-x-[--translate-width]': history.length !== 1,
6446                    'max-md:animate-slideTitleOut motion-reduce:translate-x-0': history.length == 1
6447                }"
6448                x-show="$store.main.isMobile || 'category-node-2139' !== 'all'">
6449                Accessoires maison            </h2>
6450
6451            <div id="menu-actions-category-node-2139" class="md:mt-[6px] md:flex-none md:flex-row"></div>
6452        </div>
6453        <hr class="divider -mx-5 md:hidden">
6454    </div>
6455
6456    <ul role="list" class="menu__links">
6457                            <li>
6458                                    <a
6459                                                x-a11y-trap-target.initial="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-2139'"
6460                                                href="https://www.esprit-ktm.com/accessoires-cadeaux-ktm/accessoires-maison/chaises-et-tabourets-ktm.html"
6461                        role="link"
6462                        x-element-transition-trigger:category.animate="{
6463                            'title': `Chaises et tabourets KTM`,
6464                            'url': 'https://www.esprit-ktm.com/accessoires-cadeaux-ktm/accessoires-maison/chaises-et-tabourets-ktm.html',
6465                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Id&#x5C;u00e9es&#x20;Cadeaux&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Accessoires&#x20;maison&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm&#x5C;&#x2F;accessoires-maison.html&quot;&#x7D;&#x5D;,
6466                            'img': '',
6467                            'description': `Asseyez-vous avec style et confort avec la catégorie &quot;Chaises et Tabourets&quot; d&amp;apos;Esprit KTM, où chaque siège devient une déclaration de passion pour la route. Lire la suiteNotre c
6467ollection d&amp;apos;assises combine l&amp;apos;esthétique distinctive de KTM avec le confort moderne, créant des pièces qui ajoutent une touche audacieuse à votre espace de vie.Les chaises, avec leurs designs uniques, apportent l&amp;apos;énergie de la conduite à votre salle à manger ou à votre espace de travail. Fabriquées avec des matériaux de qualité et des finitions soignées, ces chaises sont plus que des sièges ; ce sont des témoignages de votre engagement envers l&amp;apos;aventure.Les tabourets, élégants et fonctionnels, offrent une option polyvalente pour compléter votre bar ou votre coin repas. Que ce soit pour un usage quotidien ou pour accueillir des invités, nos tabourets incarnent l&amp;apos;esthétique KTM tout en offrant un confort ergonomique.Chaque assise de notre collection affiche des logos emblématiques et des détails inspirés de l&amp;apos;univers de la moto, ajoutant une touche de personnalité à chaque siège. Que vous soyez en train de savourer un repas entre amis ou de travailler sur votre dernier projet, chaque moment devient une immersion dans l&amp;apos;esprit de la conduite.`,
6468                        }"
6469                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
6470                        :class="{
6471                            'text-primary-500 font-semibold': history.includes('category-node-2142')
6472                        }">
6473                        <span
6474                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
6475                            <!-- DEBUG: Logo = EMPTY -->
6476                                                        Chaises et tabourets KTM                        </span>
6477                    </a>
6478                            </li>
6479                                <li>
6480                                    <a
6481                                                href="https://www.esprit-ktm.com/accessoires-cadeaux-ktm/accessoires-maison/decoration.html"
6482                        role="link"
6483                        x-element-transition-trigger:category.animate="{
6484                            'title': `Décorations`,
6485                            'url': 'https://www.esprit-ktm.com/accessoires-cadeaux-ktm/accessoires-maison/decoration.html',
6486                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Id&#x5C;u00e9es&#x20;Cadeaux&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Accessoires&#x20;maison&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm&#x5C;&#x2F;accessoires-maison.html&quot;&#x7D;&#x5D;,
6487                            'img': '',
6488                            'description': `Transformez votre espace de vie en un sanctuaire d&amp;apos;aventure avec la catégorie &quot;Décoration&quot; d&amp;apos;Esprit KTM. Lire la suiteNotre collection d&amp;apos;articles de décoration fusionne l&amp;apos;esthétique unique de KTM avec l&amp;apos;art de créer des espaces qui résonnent avec l&amp;apos;esprit de l&amp;apos;aventure.Des bannières aux drapeaux en passant par les paillassons et horloges, chaque pièce de décoration a été soigneusement choisie pour évoquer l&amp;apos;énergie et l&amp;apos;audace de la conduite. Les décorations KTM ajoutent une dimension artistique à votre intérieur. Fabriquées avec un souci du détail, elles incarnent l&amp;apos;esthétique mécanique tout en célébrant l&amp;apos;esthétique distinctive de KTM.Affirmez votre amour pour KTM dans chaque coin de votre chez-vous. Nos articles de décoration ne sont pas simplement des ornements ; ce sont des déclarations artistiques qui créent un environnement où l&amp;apos;esprit de l&amp;apos;aventure est tangible.`,
6489                        }"
6490                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
6491                        :class="{
6492                            'text-primary-500 font-semibold': history.includes('category-node-2141')
6493                        }">
6494                        <span
6495                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
6496                            <!-- DEBUG: Logo = EMPTY -->
6497                                                        Décorations                        </span>
6498                    </a>
6499                            </li>
6500                                <li>
6501                                    <a
6502                                                x-a11y-trap-target.end="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-2139'"
6503                                                href="https://www.esprit-ktm.com/accessoires-cadeaux-ktm/accessoires-maison/tasses-mugs-et-gourdes.html"
6504                        role="link"
6505                        x-element-transition-trigger:category.animate="{
6506                            'title': `Tasses, mugs et gourdes`,
6507                            'url': 'https://www.esprit-ktm.com/accessoires-cadeaux-ktm/accessoires-maison/tasses-mugs-et-gourdes.html',
6508                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Id&#x5C;u00e9es&#x20;Cadeaux&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Accessoires&#x20;maison&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm&#x5C;&#x2F;accessoires-maison.html&quot;&#x7D;&#x5D;,
6509                            'img': '',
6510                            'description': `Élevez votre routine quotidienne avec la catégorie &quot;Tasses, Mugs et Gourdes&quot; d&amp;apos;Esprit KTM. Lire la suiteNos accessoires pour boissons sont bien plus que des récipients ; ce sont des compagnons stylés qui ajoutent une dose d&amp;apos;aventure à chaque pause café ou hydratation.Les tasses à café et les mugs arborent des designs dynamiques, affichant fièrement les logos emblématiques de KTM. Que vous soyez en train de savourer votre boisson préférée à la maison ou au travail, chaque gorgée devient une affirmation de votre passion pour la conduite.Les gourdes, conçues pour accompagner les aventures en plein air, allient praticité et esthétique. Légères et durables, elles sont le compagnon idéal pour rester hydraté tout en affichant votre amour pour KTM, que vous soyez sur deux roues ou en balade.Sans oublier les ouvre-bouteilles et les verres KTM.`,
6511                        }"
6512                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
6513                        :class="{
6514                            'text-primary-500 font-semibold': history.includes('category-node-2140')
6515                        }">
6516                        <span
6517                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
6518                            <!-- DEBUG: Logo = EMPTY -->
6519                                                        Tasses, mugs et gourdes                        </span>
6520                    </a>
6521                            </li>
6522                        </ul>
6523
6524    <div class="h-20 md:hidden"></div>
6525            <template
6526            x-portal="$store.main.isMobile ? document.getElementById('popup-fixed-content-portal') : document.getElementById('menu-actions-category-node-2139')">
6527            <div
6528                class="bg-bg-500 px-4 pb-2 transition-colors duration-200 md:bg-transparent md:hover:text-primary-600 md:p-0"
6529                x-transition.opacity
6530                x-show="$store.main.isMobile ? history[history.length - 1] === 'category-node-2139' && !getIsSearchActive() : history.includes('category-node-2139')"
6531                role="link">
6532                <a
6533                    x-element-transition-trigger
6534                    class="button bg-white border border-primary-500 text-primary-500 w-full hover:bg-primary-500 hover:text-white hover:scale-105 transition-all duration-200"
6535                    href="https://www.esprit-ktm.com/accessoires-cadeaux-ktm/accessoires-maison.html">
6536                    <template x-if="$store.main.isMobile">
6537                        <span>Tout voir <span class="lowercase">Accessoires maison</span></span>
6538                    </template>
6539                    <template x-if="!$store.main.isMobile">
6540                        <span class="flex items-center text-center capitalize">
6541                            <span class='border-current'>
6542                                Tout voir                                <br />
6543                                <span>Accessoires maison</span>
6544                            </span>
6545                        </span>
6546                    </template>
6547                </a>
6548            </div>
6549        </template>
6550    </div>
6551                    </template>
6552                            </li>
6553                                <li>
6554                                    <button
6555                                                class="menu__link group"
6556                        @click="setHistory([...'all,category-node-1770'.split(','), 'category-node-1878'])"
6557                        :class="{ 'menu__link--active': history.includes('category-node-1878') }"
6558                        role="button"
6559                        :aria-expanded="history.includes('category-node-1878')">
6560                        <span class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
6561                            <!-- DEBUG: Logo = EMPTY -->
6562                                                        Bagagerie                        </span>
6563                        <span class="text-xl transition-[color,transform] md:group-hover:-translate-x-3 md:group-hover:text-primary-600">
6564                            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
6565    <path d="M10.707 17.707 16.414 12l-5.707-5.707-1.414 1.414L13.586 12l-4.293 4.293z"/>
6566</svg>
6567                        </span>
6568                    </button>
6569                    <template x-portal="document.getElementById('menu-sections')">
6570                        <div
6571    class="menu__level relative z-[100]"
6572    :class="{
6573        'menu__level--current': history[history.length - 1] === 'category-node-1878',
6574        'menu__level--visible': history.includes('category-node-1878'),
6575        'menu__level--same-depth': 3 <= delayedLevel,
6576        'hidden': !$store.main.isMobile && !$store.resizable.isVisible('menu-desktop'),
6577    }"
6578    :inert="!history.includes('category-node-1878')"
6579    data-menu-level="category-node-1878">
6580    <div class="menu__header">
6581        <div class="menu__header-container p-2 md:flex md:flex-col">
6582            
6583            <button
6584                @click="history.pop()"
6585                type="button"
6586                aria-label="Revenir au menu précédent"
6587                class="menu__back-button py-3 motion-reduce:max-md:animate-none"
6588                :class="{
6589                    'menu__back-button--visible max-md:animate-slideIconIn motion-reduce:translate-x-0': history.length !== 1,
6590                    'max-md:animate-slideIconOut motion-reduce:-translate-x-full': history.length == 1
6591                }"
6592                :tabindex="history.length === 1 ? -1 : 0"
6593                :aria-hidden="history.length === 1">
6594                <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
6595    <path d="M13.293 6.293 7.586 12l5.707 5.707 1.414-1.414L10.414 12l4.293-4.293z"/>
6596</svg>
6597            </button>
6598
6599            <h2
6600                class="menu__heading py-3 motion-reduce:max-md:animate-none"
6601                style="--translate-width: 52px;"
6602                :class="{
6603                    'menu__heading--root': 'category-node-1878' === 'all',
6604                    'max-md:w-[calc(100%-var(--translate-width))]': 'category-node-1878' !== 'all',
6605                    'max-md:animate-slideTitleIn motion-reduce:translate-x-[--translate-width]': history.length !== 1,
6606                    'max-md:animate-slideTitleOut motion-reduce:translate-x-0': history.length == 1
6607                }"
6608                x-show="$store.main.isMobile || 'category-node-1878' !== 'all'">
6609                Bagagerie            </h2>
6610
6611            <div id="menu-actions-category-node-1878" class="md:mt-[6px] md:flex-none md:flex-row"></div>
6612        </div>
6613        <hr class="divider -mx-5 md:hidden">
6614    </div>
6615
6616    <ul role="list" class="menu__links">
6617                            <li>
6618                                    <a
6619                                                x-a11y-trap-target.initial="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-1878'"
6620                                                href="https://www.esprit-ktm.com/accessoires-cadeaux-ktm/bagagerie/sac-a-dos-ktm.html"
6621                        role="link"
6622                        x-element-transition-trigger:category.animate="{
6623                            'title': `Sacs à dos KTM`,
6624                            'url': 'https://www.esprit-ktm.com/accessoires-cadeaux-ktm/bagagerie/sac-a-dos-ktm.html',
6625                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Id&#x5C;u00e9es&#x20;Cadeaux&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Bagagerie&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm&#x5C;&#x2F;bagagerie.html&quot;&#x7D;&#x5D;,
6626                            'img': '',
6627                            'description': `Explorez l&amp;apos;alliance parfaite entre style emblématique et fonctionnalité experte avec la catégorie &quot;Sac à dos&quot; de la bagagerie Esprit KTM. Lire la suiteDans le monde des motards, où chaque trajet est une histoire et chaque virage est une aventure, notre c
6627ollection de sacs à dos est conçue pour être votre compagnon de route ultime.Chaque sac à dos de notre gamme incarne l&amp;apos;esprit KTM avec une esthétique distinctive et une attention méticuleuse aux détails. Que vous soyez un urbain en quête d&amp;apos;un look décontracté ou un aventurier préparant une expédition à deux roues, nos sacs à dos sont conçus pour s&amp;apos;adapter à votre style de vie dynamique.La durabilité est inscrite dans l&amp;apos;ADN de chaque sac, avec des matériaux robustes et des finitions de qualité qui résistent aux rigueurs de la route. Les compartiments intelligemment conçus et les fonctionnalités pratiques garantissent que votre équipement est toujours organisé, que ce soit pour une escapade d&amp;apos;une journée ou une aventure plus longue.Affichez fièrement votre passion pour KTM avec des designs audacieux et des logos emblématiques. Chaque sac à dos est plus qu&amp;apos;un simple accessoire ; c&amp;apos;est une déclaration de votre passion pour la conduite et le mode de vie KTM. Que vous préfériez un look épuré ou une explosion de couleurs, notre collection offre une variété de styles pour répondre à toutes les préférences.`,
6628                        }"
6629                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
6630                        :class="{
6631                            'text-primary-500 font-semibold': history.includes('category-node-2145')
6632                        }">
6633                        <span
6634                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
6635                            <!-- DEBUG: Logo = EMPTY -->
6636                                                        Sacs à dos KTM                        </span>
6637                    </a>
6638                            </li>
6639                                <li>
6640                                    <a
6641                                                href="https://www.esprit-ktm.com/accessoires-cadeaux-ktm/bagagerie/sac-de-voyage-et-valises-ktm.html"
6642                        role="link"
6643                        x-element-transition-trigger:category.animate="{
6644                            'title': `Sacs de voyage et valises KTM`,
6645                            'url': 'https://www.esprit-ktm.com/accessoires-cadeaux-ktm/bagagerie/sac-de-voyage-et-valises-ktm.html',
6646                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Id&#x5C;u00e9es&#x20;Cadeaux&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Bagagerie&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm&#x5C;&#x2F;bagagerie.html&quot;&#x7D;&#x5D;,
6647                            'img': '',
6648                            'description': `Bienvenue dans la catégorie &quot;Sacs de voyage et valises&quot; d&amp;apos;Esprit KTM, où l&amp;apos;aventure rencontre l&amp;apos;organisation. Lire la suiteConçue pour les motards qui ne connaissent pas de frontières, notre collection de sacs de voyage et de valises est l&amp;apos;expression ultime du mariage entre le style KTM audacieux et la fonctionnalité robuste.Chaque sac et chaque valise de notre gamme est une invitation à explorer le monde avec une confiance totale. Fabriqués avec des matériaux de première qualité, nos bagages sont non seulement résistants aux éléments, mais aussi conçus pour résister aux rigueurs des voyages les plus audacieux.Que vous planifiiez une virée d&amp;apos;un week-end ou une épopée à travers les continents, nos sacs de voyage et valises offrent un espace généreux et une organisation intelligente pour répondre à tous vos besoins. Des compartiments dédiés pour vos équipements essentiels aux détails réfléchis qui rendent chaque voyage plus fluide, nous avons pensé à tout pour que vous puissiez vous concentrer sur l&amp;apos;essence même de votre voyage.Affichez fièrement votre passion pour KTM avec des designs accrocheurs et des logos emblématiques qui distinguent votre bagage sur n&amp;apos;importe quel tarmac. Chaque pièce de la collection est plus qu&amp;apos;
6648un simple contenant ; c&amp;apos;est un récit de votre engagement envers l&amp;apos;aventure et la liberté de la route.`,
6649                        }"
6650                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
6651                        :class="{
6652                            'text-primary-500 font-semibold': history.includes('category-node-2146')
6653                        }">
6654                        <span
6655                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
6656                            <!-- DEBUG: Logo = EMPTY -->
6657                                                        Sacs de voyage et valises KTM                        </span>
6658                    </a>
6659                            </li>
6660                                <li>
6661                                    <a
6662                                                href="https://www.esprit-ktm.com/accessoires-cadeaux-ktm/bagagerie/sac-de-sports-ktm.html"
6663                        role="link"
6664                        x-element-transition-trigger:category.animate="{
6665                            'title': `Sacs de sports KTM`,
6666                            'url': 'https://www.esprit-ktm.com/accessoires-cadeaux-ktm/bagagerie/sac-de-sports-ktm.html',
6667                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Id&#x5C;u00e9es&#x20;Cadeaux&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Bagagerie&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm&#x5C;&#x2F;bagagerie.html&quot;&#x7D;&#x5D;,
6668                            'img': '',
6669                            'description': `Découvrez la fusion parfaite entre le dynamisme sportif et le style distinctif avec la catégorie &quot;Sacs de sport&quot; d&amp;apos;Esprit KTM. Lire la suiteConçue pour les motards actifs et les passionnés de fitness, notre collection de sacs de sport incarne l&amp;apos;énergie débridée de KTM tout en offrant la fonctionnalité nécessaire pour relever tous les défis.Chaque sac de sport de notre gamme est une déclaration audacieuse qui célèbre le mouvement, l&amp;apos;endurance et le style dynamique propre à l&amp;apos;esprit KTM. Fabriqués à partir de matériaux durables, ces sacs sont prêts à suivre votre rythme, que ce soit pour un entraînement intense, une escapade sportive ou une journée décontractée.L&amp;apos;esthétique moderne et les détails ergonomiques sont combinés pour créer des sacs de sport qui ne sacrifient jamais le style au profit de la fonctionnalité. Des compartiments spécifiques pour vos équipements sportifs essentiels aux détails réfléchis qui facilitent l&amp;apos;organisation, chaque sac est conçu pour répondre aux besoins variés des athlètes KTM.`,
6670                        }"
6671                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
6672                        :class="{
6673                            'text-primary-500 font-semibold': history.includes('category-node-2147')
6674                        }">
6675                        <span
6676                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
6677                            <!-- DEBUG: Logo = EMPTY -->
6678                                                        Sacs de sports KTM                        </span>
6679                    </a>
6680                            </li>
6681                                <li>
6682                                    <a
6683                                                href="https://www.esprit-ktm.com/accessoires-cadeaux-ktm/bagagerie/sac-d-hydratation.html"
6684                        role="link"
6685                        x-element-transition-trigger:category.animate="{
6686                            'title': `Sacs d'hydratation`,
6687                            'url': 'https://www.esprit-ktm.com/accessoires-cadeaux-ktm/bagagerie/sac-d-hydratation.html',
6688                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Id&#x5C;u00e9es&#x20;Cadeaux&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Bagagerie&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm&#x5C;&#x2F;bagagerie.html&quot;&#x7D;&#x5D;,
6689                            'img': '',
6690                            'description': `Explorez la catégorie &quot;Sacs d&amp;
6690apos;hydratation&quot; d&amp;apos;Esprit KTM, où l&amp;apos;essence de l&amp;apos;aventure rencontre la nécessité de rester hydraté sur la route. Lire la suiteConçus pour les motards intrépides qui savent que chaque goutte compte, nos sacs d&amp;apos;hydratation combinent le style emblématique de KTM avec une fonctionnalité essentielle pour des voyages sans compromis.Chaque sac d&amp;apos;hydratation de notre collection est un compagnon de confiance, offrant une solution élégante pour rester frais et hydraté lors de vos expéditions. Fabriqués avec des matériaux légers et durables, ces sacs sont conçus pour résister aux rigueurs de la route tout en vous assurant d&amp;apos;avoir toujours de l&amp;apos;eau à portée de main.L&amp;apos;esthétique dynamique de KTM se marie harmonieusement avec des designs ergonomiques, offrant un confort optimal pendant les longues balades. Des systèmes d&amp;apos;hydratation intelligents aux détails réfléchis, chaque sac est pensé pour faciliter l&amp;apos;accès à l&amp;apos;eau tout en vous permettant de rester concentré sur l&amp;apos;essentiel : la route qui se déroule devant vous.Affichez votre passion pour KTM tout en restant hydraté avec des sacs qui vont au-delà de la simple fonctionnalité. Que ce soit pour une virée d&amp;apos;une journée ou une aventure plus longue, nos sacs d&amp;
6690apos;hydratation sont conçus pour répondre aux besoins des motards qui exigent le meilleur de leur équipement.`,
6691                        }"
6692                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
6693                        :class="{
6694                            'text-primary-500 font-semibold': history.includes('category-node-2148')
6695                        }">
6696                        <span
6697                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
6698                            <!-- DEBUG: Logo = EMPTY -->
6699                                                        Sacs d'hydratation                        </span>
6700                    </a>
6701                            </li>
6702                                <li>
6703                                    <a
6704                                                x-a11y-trap-target.end="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-1878'"
6705                                                href="https://www.esprit-ktm.com/accessoires-cadeaux-ktm/bagagerie/sacoches-1-sacs-bananes.html"
6706                        role="link"
6707                        x-element-transition-trigger:category.animate="{
6708                            'title': `Sacoches et bananes`,
6709                            'url': 'https://www.esprit-ktm.com/accessoires-cadeaux-ktm/bagagerie/sacoches-1-sacs-bananes.html',
6710                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Id&#x5C;u00e9es&#x20;Cadeaux&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Bagagerie&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm&#x5C;&#x2F;bagagerie.html&quot;&#x7D;&#x5D;,
6711                            'img': '',
6712                            'description': `&lt;p&gt;Plongez dans l&amp;apos;élégance fonctionnelle avec la catégorie &quot;Sacoches &amp; sacs bananes&quot; d&amp;apos;Esprit KTM.&lt;/p&gt;&lt;p&gt;&lt;u&gt;Lire la suite&lt;/u&gt;&lt;/p&gt;&lt;p&gt;Notre collection de sacs capture l&amp;apos;esprit audacieux de KTM dans des articles qui vous accompagnent de manière raffinée à chaque étape de votre aventure quotidienne. Les sacoches et bananes de notre gamme incarnent la fusion parfaite entre l&amp;apos;esthétique distinctive de KTM et l&amp;apos;organisation essentielle. Fabriqués à partir de matériaux de qualité, ces sacs offrent une touche de luxe tout en restant fidèles à l&amp;apos;esprit fonctionnel des motards qui exigent le meilleur. Affichez votre passion pour KTM avec des logos emblématiques et des détails subtils qui distinguent chaque article. Chaque pièce est une déclaration de votre engagement envers l&amp;apos;esthétique raffinée et l&amp;apos;aventure sans limites&lt;/p&gt;`,
6713                        }"
6714                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
6715                        :class="{
6716                            'text-primary-500 font-semibold': history.includes('category-node-2699')
6717                        }">
6718                        <span
6719                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
6720                            <!-- DEBUG: Logo = EMPTY -->
6721                                                        Sacoches et bananes                        </span>
6722                    </a>
6723                            </li>
6724                        </ul>
6725
6726    <div class="h-20 md:hidden"></div>
6727            <template
6728            x-portal="$store.main.isMobile ? document.getElementById('popup-fixed-content-portal') : document.getElementById('menu-actions-category-node-1878')">
6729            <div
6730                class="bg-bg-500 px-4 pb-2 transition-colors duration-200 md:bg-transparent md:hover:text-primary-600 md:p-0"
6731                x-transition.opacity
6732                x-show="$store.main.isMobile ? history[history.length - 1] === 'category-node-1878' && !getIsSearchActive() : history.includes('category-node-1878')"
6733                role="link">
6734                <a
6735                    x-element-transition-trigger
6736                    class="button bg-white border border-primary-500 text-primary-500 w-full hover:bg-primary-500 hover:text-white hover:scale-105 transition-all duration-200"
6737                    href="https://www.esprit-ktm.com/accessoires-cadeaux-ktm/bagagerie.html">
6738                    <template x-if="$store.main.isMobile">
6739                        <span>Tout voir <span class="lowercase">Bagagerie</span></span>
6740                    </template>
6741                    <template x-if="!$store.main.isMobile">
6742                        <span class="flex items-center text-center capitalize">
6743                            <span class='border-current'>
6744                                Tout voir                                <br />
6745                                <span>Bagagerie</span>
6746                            </span>
6747                        </span>
6748                    </template>
6749                </a>
6750            </div>
6751        </template>
6752    </div>
6753                    </template>
6754                            </li>
6755                                <li>
6756                                    <a
6757                                                href="https://www.esprit-ktm.com/accessoires-cadeaux-ktm/boite-et-emballage-cadeaux.html"
6758                        role="link"
6759                        x-element-transition-trigger:category.animate="{
6760                            'title': `Boites et emballages cadeaux`,
6761                            'url': 'https://www.esprit-ktm.com/accessoires-cadeaux-ktm/boite-et-emballage-cadeaux.html',
6762                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Id&#x5C;u00e9es&#x20;Cadeaux&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm.html&quot;&#x7D;&#x5D;,
6763                            'img': '',
6764                            'description': `Bienvenue dans la catégorie des boîtes et emballages cadeaux d&amp;apos;Esprit-KTM, où l&amp;apos;art de la présentation rencontre la passion pour l&amp;apos;aventure sur deux roues. Lire la suitePlongez-vous dans notre sélection élégante, conçue pour sublimer vos cadeaux et ajouter une touche distinctive à chaque occasion spéciale.Nos boîtes et emballages cadeaux sont bien plus que de simples contenants ; ce sont des témoins du soin que vous accordez à chaque détail, à l&amp;apos;image de la précision qui caractérise les motos KTM. Que vous offriez une maquette, un porte-clés ou tout autre trésor issu de notre collection, nos boîtes et emballages ajoutent une dimension supplémentaire à l&amp;apos;expérience du cadeau. L&amp;apos;emblématique logo KTM et les motifs inspirés de l&amp;apos;univers des motos confèrent à chaque présent une aura distinctive, créant une expérience mémorable pour le destinataire.Explorez notre catégorie boîtes et emballages cadeaux avec la même anticipation qu&amp;apos;un motard s&amp;apos;apprêtant à chevaucher sa machine. Que ce soit pour un anniversaire, une fête ou toute autre célébration, Esprit-KTM vous offre la possibilité d&amp;apos;offrir des cadeaux qui vont au-delà de l&amp;apos;objet, créant une expérience enveloppante qui célèbre l&amp;apos;esprit indomptable de KTM.`,
6765                        }"
6766                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
6767                        :class="{
6768                            'text-primary-500 font-semibold': history.includes('category-node-2157')
6769                        }">
6770                        <span
6771                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
6772                            <!-- DEBUG: Logo = EMPTY -->
6773                                                        Boites et emballages cadeaux                        </span>
6774                    </a>
6775                            </li>
6776                                <li>
6777                                    <button
6778                                                class="menu__link group"
6779                        @click="setHistory([...'all,category-node-1770'.split(','), 'category-node-1886'])"
6780                        :class="{ 'menu__link--active': history.includes('category-node-1886') }"
6781                        role="button"
6782                        :aria-expanded="history.includes('category-node-1886')">
6783                        <span class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
6784                            <!-- DEBUG: Logo = EMPTY -->
6785                                                        Collection Bébé                        </span>
6786                        <span class="text-xl transition-[color,transform] md:group-hover:-translate-x-3 md:group-hover:text-primary-600">
6787                            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
6788    <path d="M10.707 17.707 16.414 12l-5.707-5.707-1.414 1.414L13.586 12l-4.293 4.293z"/>
6789</svg>
6790                        </span>
6791                    </button>
6792                    <template x-portal="document.getElementById('menu-sections')">
6793                        <div
6794    class="menu__level relative z-[100]"
6795    :class="{
6796        'menu__level--current': history[history.length - 1] === 'category-node-1886',
6797        'menu__level--visible': history.includes('category-node-1886'),
6798        'menu__level--same-depth': 3 <= delayedLevel,
6799        'hidden': !$store.main.isMobile && !$store.resizable.isVisible('menu-desktop'),
6800    }"
6801    :inert="!history.includes('category-node-1886')"
6802    data-menu-level="category-node-1886">
6803    <div class="menu__header">
6804        <div class="menu__header-container p-2 md:flex md:flex-col">
6805            
6806            <button
6807                @click="history.pop()"
6808                type="button"
6809                aria-label="Revenir au menu précédent"
6810                class="menu__back-button py-3 motion-reduce:max-md:animate-none"
6811                :class="{
6812                    'menu__back-button--visible max-md:animate-slideIconIn motion-reduce:translate-x-0': history.length !== 1,
6813                    'max-md:animate-slideIconOut motion-reduce:-translate-x-full': history.length == 1
6814                }"
6815                :tabindex="history.length === 1 ? -1 : 0"
6816                :aria-hidden="history.length === 1">
6817                <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
6818    <path d="M13.293 6.293 7.586 12l5.707 5.707 1.414-1.414L10.414 12l4.293-4.293z"/>
6819</svg>
6820            </button>
6821
6822            <h2
6823                class="menu__heading py-3 motion-reduce:max-md:animate-none"
6824                style="--translate-width: 52px;"
6825                :class="{
6826                    'menu__heading--root': 'category-node-1886' === 'all',
6827                    'max-md:w-[calc(100%-var(--translate-width))]': 'category-node-1886' !== 'all',
6828                    'max-md:animate-slideTitleIn motion-reduce:translate-x-[--translate-width]': history.length !== 1,
6829                    'max-md:animate-slideTitleOut motion-reduce:translate-x-0': history.length == 1
6830                }"
6831                x-show="$store.main.isMobile || 'category-node-1886' !== 'all'">
6832                Collection Bébé            </h2>
6833
6834            <div id="menu-actions-category-node-1886" class="md:mt-[6px] md:flex-none md:flex-row"></div>
6835        </div>
6836        <hr class="divider -mx-5 md:hidden">
6837    </div>
6838
6839    <ul role="list" class="menu__links">
6840                            <li>
6841                                    <a
6842                                                x-a11y-trap-target.initial="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-1886'"
6843                                                href="https://www.esprit-ktm.com/accessoires-cadeaux-ktm/collection-bebe/biberons-et-bavoirs.html"
6844                        role="link"
6845                        x-element-transition-trigger:category.animate="{
6846                            'title': `Biberons et bavoirs`,
6847                            'url': 'https://www.esprit-ktm.com/accessoires-cadeaux-ktm/collection-bebe/biberons-et-bavoirs.html',
6848                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Id&#x5C;u00e9es&#x20;Cadeaux&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Collection&#x20;B&#x5C;u00e9b&#x5C;u00e9&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm&#x5C;&#x2F;collection-bebe.html&quot;&#x7D;&#x5D;,
6849                            'img': '',
6850                            'description': `Plongez dans le monde mignon et pratique de la catégorie &quot;Biberons et Bavoirs&quot; de la Collection Bébé d&amp;apos;Esprit KTM. Lire la suiteConçue avec soin pour les petits aventuriers en herbe, cette gamme propose des accessoires aussi fonctionnels que stylés, pour accompagner les premiers pas de votre tout-petit dans le monde de KTM.Nos biberons ont été pensés pour allier praticité et design, avec des motifs ludiques et des couleurs vives qui éveilleront la curiosité de votre bébé. Fabriqués avec des matériaux sûrs et durables, ces biberons sont non seulement fonctionnels mais aussi une manière amusante d&amp;apos;introduire la passion de KTM dès les premiers instants.Les bavoirs de la collection ajoutent une touche d&amp;apos;élégance à chaque repas, offrant une protection pratique contre les éclabou
6850ssures tout en affichant le style KTM. Des logos emblématiques aux motifs amusants, chaque bavoir est une petite œuvre d&amp;apos;art conçue pour rendre les repas aussi amusants que stylés.`,
6851                        }"
6852                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
6853                        :class="{
6854                            'text-primary-500 font-semibold': history.includes('category-node-2149')
6855                        }">
6856                        <span
6857                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
6858                            <!-- DEBUG: Logo = EMPTY -->
6859                                                        Biberons et bavoirs                        </span>
6860                    </a>
6861                            </li>
6862                                <li>
6863                                    <a
6864                                                x-a11y-trap-target.end="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-1886'"
6865                                                href="https://www.esprit-ktm.com/accessoires-cadeaux-ktm/collection-bebe/sucettes-et-tetines.html"
6866                        role="link"
6867                        x-element-transition-trigger:category.animate="{
6868                            'title': `Sucettes et tétines`,
6869                            'url': 'https://www.esprit-ktm.com/accessoires-cadeaux-ktm/collection-bebe/sucettes-et-tetines.html',
6870                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Id&#x5C;u00e9es&#x20;Cadeaux&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Collection&#x20;B&#x5C;u00e9b&#x5C;u00e9&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm&#x5C;&#x2F;collection-bebe.html&quot;&#x7D;&#x5D;,
6871                            'img': '',
6872                            'description': `Bienvenue dans la catégorie &quot;Sucettes et Tétines&quot; de la Collection Bébé d&amp;apos;Esprit KTM, où même les petits peuvent démontrer leur passion pour la moto. Lire la suiteNos sucettes et tétines combinent le charme de la petite enfance avec l&amp;apos;esprit audacieux de KTM, offrant une touche ludique et stylée pour les moments doux et réconfortants de la vie quotidienne.Chaque sucette et tétine de notre collection est conçue avec le plus grand soin pour allier confort, sécurité et un soupçon d&amp;apos;aventure. Les motifs adorables et les couleurs vives éveilleront la curiosité de votre bébé tout en introduisant subtilement le style emblématique de KTM dans les premiers instants de sa vie.Fabriquées à partir de matériaux sûrs et de qualité, nos sucettes sont non seulement apaisantes pour les tout-petits, mais elles ajoutent également une touche de personnalité à chaque sourire. Les tétines, quant à elles, sont conçues pour s&amp;apos;adapter parfaitement aux petites bouches, offrant un réconfort qui va au-delà de la simple fonction.`,
6873                        }"
6874                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
6875                        :class="{
6876                            'text-primary-500 font-semibold': history.includes('category-node-2150')
6877                        }">
6878                        <span
6879                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
6880                            <!-- DEBUG: Logo = EMPTY -->
6881                                                        Sucettes et tétines                        </span>
6882                    </a>
6883                            </li>
6884                        </ul>
6885
6886    <div class="h-20 md:hidden"></div>
6887            <template
6888            x-portal="$store.main.isMobile ? document.getElementById('popup-fixed-content-portal') : document.getElementById('menu-actions-category-node-1886')">
6889            <div
6890                class="bg-bg-500 px-4 pb-2 transition-colors duration-200 md:bg-transparent md:hover:text-primary-600 md:p-0"
6891                x-transition.opacity
6892                x-show="$store.main.isMobile ? history[history.length - 1] === 'category-node-1886' && !getIsSearchActive() : history.includes('category-node-1886')"
6893                role="link">
6894                <a
6895                    x-element-transition-trigger
6896                    class="button bg-white border border-primary-500 text-primary-500 w-full hover:bg-primary-500 hover:text-white hover:scale-105 transition-all duration-200"
6897                    href="https://www.esprit-ktm.com/accessoires-cadeaux-ktm/collection-bebe.html">
6898                    <template x-if="$store.main.isMobile">
6899                        <span>Tout voir <span class="lowercase">Collection Bébé</span></span>
6900                    </template>
6901                    <template x-if="!$store.main.isMobile">
6902                        <span class="flex items-center text-center capitalize">
6903                            <span class='border-current'>
6904                                Tout voir                                <br />
6905                                <span>Collection Bébé</span>
6906                            </span>
6907                        </span>
6908                    </template>
6909                </a>
6910            </div>
6911        </template>
6912    </div>
6913                    </template>
6914                            </li>
6915                                <li>
6916                                    <button
6917                                                class="menu__link group"
6918                        @click="setHistory([...'all,category-node-1770'.split(','), 'category-node-2162'])"
6919                        :class="{ 'menu__link--active': history.includes('category-node-2162') }"
6920                        role="button"
6921                        :aria-expanded="history.includes('category-node-2162')">
6922                        <span class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
6923                            <!-- DEBUG: Logo = EMPTY -->
6924                                                        Draisiennes                        </span>
6925                        <span class="text-xl transition-[color,transform] md:group-hover:-translate-x-3 md:group-hover:text-primary-600">
6926                            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
6927    <path d="M10.707 17.707 16.414 12l-5.707-5.707-1.414 1.414L13.586 12l-4.293 4.293z"/>
6928</svg>
6929                        </span>
6930                    </button>
6931                    <template x-portal="document.getElementById('menu-sections')">
6932                        <div
6933    class="menu__level relative z-[100]"
6934    :class="{
6935        'menu__level--current': history[history.length - 1] === 'category-node-2162',
6936        'menu__level--visible': history.includes('category-node-2162'),
6937        'menu__level--same-depth': 3 <= delayedLevel,
6938        'hidden': !$store.main.isMobile && !$store.resizable.isVisible('menu-desktop'),
6939    }"
6940    :inert="!history.includes('category-node-2162')"
6941    data-menu-level="category-node-2162">
6942    <div class="menu__header">
6943        <div class="menu__header-container p-2 md:flex md:flex-col">
6944            
6945            <button
6946                @click="history.pop()"
6947                type="button"
6948                aria-label="Revenir au menu précédent"
6949                class="menu__back-button py-3 motion-reduce:max-md:animate-none"
6950                :class="{
6951                    'menu__back-button--visible max-md:animate-slideIconIn motion-reduce:translate-x-0': history.length !== 1,
6952                    'max-md:animate-slideIconOut motion-reduce:-translate-x-full': history.length == 1
6953                }"
6954                :tabindex="history.length === 1 ? -1 : 0"
6955                :aria-hidden="history.length === 1">
6956                <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
6957    <path d="M13.293 6.293 7.586 12l5.707 5.707 1.414-1.414L10.414 12l4.293-4.293z"/>
6958</svg>
6959            </button>
6960
6961            <h2
6962                class="menu__heading py-3 motion-reduce:max-md:animate-none"
6963                style="--translate-width: 52px;"
6964                :class="{
6965                    'menu__heading--root': 'category-node-2162' === 'all',
6966                    'max-md:w-[calc(100%-var(--translate-width))]': 'category-node-2162' !== 'all',
6967                    'max-md:animate-slideTitleIn motion-reduce:translate-x-[--translate-width]': history.length !== 1,
6968                    'max-md:animate-slideTitleOut motion-reduce:translate-x-0': history.length == 1
6969                }"
6970                x-show="$store.main.isMobile || 'category-node-2162' !== 'all'">
6971                Draisiennes            </h2>
6972
6973            <div id="menu-actions-category-node-2162" class="md:mt-[6px] md:flex-none md:flex-row"></div>
6974        </div>
6975        <hr class="divider -mx-5 md:hidden">
6976    </div>
6977
6978    <ul role="list" class="menu__links">
6979                            <li>
6980                                    <a
6981                                                x-a11y-trap-target.initial="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-2162'"
6982                                                href="https://www.esprit-ktm.com/accessoires-cadeaux-ktm/draisiennes/draisienne-electrique-ktm-stacyc.html"
6983                        role="link"
6984                        x-element-transition-trigger:category.animate="{
6985                            'title': `Draisienne Electrique STACYC`,
6986                            'url': 'https://www.esprit-ktm.com/accessoires-cadeaux-ktm/draisiennes/draisienne-electrique-ktm-stacyc.html',
6987                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Id&#x5C;u00e9es&#x20;Cadeaux&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Draisiennes&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm&#x5C;&#x2F;
6987draisiennes.html&quot;&#x7D;&#x5D;,
6988                            'img': '',
6989                            'description': `&lt;p&gt;Bienvenue dans la catégorie draisiennes électriques STACYC d&amp;apos;Esprit-KTM, où l&amp;apos;esprit de l&amp;apos;aventure sur deux roues commence dès le plus jeune âge. Lire la suite Plongez dans notre sélection exceptionnelle de draisiennes électriques STACYC, conçues pour initier les futurs motards à l&amp;apos;excitation et à la liberté que seule la conduite sur deux roues peut offrir. Nos draisiennes électriques STACYC sont bien plus que de simples premiers vélos. Elles sont le point de départ d&amp;apos;un voyage passionnant, offrant aux petits aventuriers l&amp;apos;équilibre et la confiance nécessaires pour maîtriser l&amp;apos;art de la conduite avant même de monter sur une moto. Conçues avec la même qualité et l&amp;apos;attention aux détails que les légendaires motos KTM, nos draisiennes électriques sont robustes, sûres et prêtes à accompagner les premiers tours de roues de votre jeune motard en herbe. C&amp;apos;est le cadeau idéal pour les parents passionnés de moto qui souhaitent transmettre leur passion de l&amp;apos;aventure à la génération suivante. Explorez notre catégorie de draisiennes électriques STACYC et offrez un cadeau qui va au-delà du simple objet pour créer des souvenirs durables.&lt;/p&gt;`,
6990                        }"
6991                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
6992                        :class="{
6993                            'text-primary-500 font-semibold': history.includes('category-node-2049')
6994                        }">
6995                        <span
6996                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
6997                            <!-- DEBUG: Logo = EMPTY -->
6998                                                        Draisienne Electrique STACYC                        </span>
6999                    </a>
7000                            </li>
7001                                <li>
7002                                    <a
7003                                                x-a11y-trap-target.end="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-2162'"
7004                                                href="https://www.esprit-ktm.com/accessoires-cadeaux-ktm/draisiennes/draisienne-classique-ktm.html"
7005                        role="link"
7006                        x-element-transition-trigger:category.animate="{
7007                            'title': `Draisiennes classiques KTM`,
7008                            'url': 'https://www.esprit-ktm.com/accessoires-cadeaux-ktm/draisiennes/draisienne-classique-ktm.html',
7009                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Id&#x5C;u00e9es&#x20;Cadeaux&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm.html&quot;&#x7D;,&#x7B;&quot;title&quot;&#x3A;&quot;Draisiennes&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm&#x5C;&#x2F;draisiennes.html&quot;&#x7D;&#x5D;,
7010                            'img': '',
7011                            'description': `Bienvenue dans la catégorie draisiennes classiques d&amp;apos;Esprit-KTM, où l&amp;apos;esprit de l&amp;apos;aventure sur deux roues commence dès le plus jeune âge. Lire la suitePlongez dans notre sélection exceptionnelle de draisiennes classiques, conçues pour initier les futurs motards à l&amp;apos;excitation et à la liberté que seule la conduite sur deux roues peut offrir.Nos draisiennes, arborant fièrement le logo emblématique de KTM, sont bien plus que de simples premiers vélos. Elles sont le point de départ d&amp;apos;un voyage passionnant, offrant aux petits aventuriers l&amp;apos;équilibre et la confiance nécessaires pour maîtriser l&amp;apos;
7011art de la conduite avant même de monter sur une moto.Conçues avec la même qualité et l&amp;apos;attention aux détails que les légendaires motos KTM, nos draisiennes sont robustes, sûres et prêtes à accompagner les premiers tours de roues de votre jeune motard en herbe. C&amp;apos;est le cadeau idéal pour les parents passionnés de moto qui souhaitent transmettre leur passion de l&amp;apos;aventure à la génération suivante.Explorez notre catégorie de draisiennes classiques et offrez un cadeau qui va au-delà du simple objet pour créer des souvenirs durables.`,
7012                        }"
7013                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7014                        :class="{
7015                            'text-primary-500 font-semibold': history.includes('category-node-2163')
7016                        }">
7017                        <span
7018                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7019                            <!-- DEBUG: Logo = EMPTY -->
7020                                                        Draisiennes classiques KTM                        </span>
7021                    </a>
7022                            </li>
7023                        </ul>
7024
7025    <div class="h-20 md:hidden"></div>
7026            <template
7027            x-portal="$store.main.isMobile ? document.getElementById('popup-fixed-content-portal') : document.getElementById('menu-actions-category-node-2162')">
7028            <div
7029                class="bg-bg-500 px-4 pb-2 transition-colors duration-200 md:bg-transparent md:hover:text-primary-600 md:p-0"
7030                x-transition.opacity
7031                x-show="$store.main.isMobile ? history[history.length - 1] === 'category-node-2162' && !getIsSearchActive() : history.includes('category-node-2162')"
7032                role="link">
7033                <a
7034                    x-element-transition-trigger
7035                    class="button bg-white border border-primary-500 text-primary-500 w-full hover:bg-primary-500 hover:text-white hover:scale-105 transition-all duration-200"
7036                    href="https://www.esprit-ktm.com/accessoires-cadeaux-ktm/draisiennes.html">
7037                    <template x-if="$store.main.isMobile">
7038                        <span>Tout voir <span class="lowercase">Draisiennes</span></span>
7039                    </template>
7040                    <template x-if="!$store.main.isMobile">
7041                        <span class="flex items-center text-center capitalize">
7042                            <span class='border-current'>
7043                                Tout voir                                <br />
7044                                <span>Draisiennes</span>
7045                            </span>
7046                        </span>
7047                    </template>
7048                </a>
7049            </div>
7050        </template>
7051    </div>
7052                    </template>
7053                            </li>
7054                                <li>
7055                                    <a
7056                                                href="https://www.esprit-ktm.com/accessoires-cadeaux-ktm/maquette-moto.html"
7057                        role="link"
7058                        x-element-transition-trigger:category.animate="{
7059                            'title': `Maquettes Motos`,
7060                            'url': 'https://www.esprit-ktm.com/accessoires-cadeaux-ktm/maquette-moto.html',
7061                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Id&#x5C;u00e9es&#x20;Cadeaux&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm.html&quot;&#x7D;&#x5D;,
7062                            'img': '',
7063                            'description': `Bienvenue dans l&amp;apos;univers des maquettes motos d&amp;apos;Esprit-KTM, une catégorie dédiée aux passionnés de deux-roues et aux amateurs de la marque KTM. Lire la suitePlongez-vous dans une collection exceptionnelle de reproductions minutieuses, capturant l&amp;apos;esprit intrépide et la puissance brute des motos emblématiques de KTM.Chaque maquette est une œuvre d&amp;apos;art en miniature, soigneusement conçue pour refléter chaque détail, du design distinctif aux performances exceptionnelles. Notre sélection diversifiée vou
7063s offre la possibilité de posséder une pièce de l&amp;apos;histoire de KTM dans le confort de votre espace personnel.Que ce soit pour égayer votre bureau, embellir votre étagère ou offrir à un passionné de motos, nos maquettes sont plus qu&amp;apos;une simple reproduction, elles sont une célébration de l&amp;apos;ingénierie de pointe et de l&amp;apos;esprit aventureux qui caractérisent les motos KTM.Explorez notre catégorie de maquettes motos avec l&amp;apos;excitation d&amp;apos;un virage serré, découvrez des cadeaux qui font revivre l&amp;apos;essence du monde des deux-roues, et laissez Esprit-KTM vous guider dans un voyage miniature à travers l&amp;apos;univers palpitant des motos d&amp;apos;exception, comme avec la maquette moto GP Jack Miller, la KTM 450 SX-F Model Bike MY22, la KTM 300 EXC Model Bike MY22, la moto GP Brad Binder.`,
7064                        }"
7065                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7066                        :class="{
7067                            'text-primary-500 font-semibold': history.includes('category-node-1823')
7068                        }">
7069                        <span
7070                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7071                            <!-- DEBUG: Logo = EMPTY -->
7072                                                        Maquettes Motos                        </span>
7073                    </a>
7074                            </li>
7075                                <li>
7076                                    <a
7077                                                x-a11y-trap-target.end="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'category-node-1770'"
7078                                                href="https://www.esprit-ktm.com/accessoires-cadeaux-ktm/porte-cles-ktm.html"
7079                        role="link"
7080                        x-element-transition-trigger:category.animate="{
7081                            'title': `Porte-clés`,
7082                            'url': 'https://www.esprit-ktm.com/accessoires-cadeaux-ktm/porte-cles-ktm.html',
7083                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Id&#x5C;u00e9es&#x20;Cadeaux&quot;,&quot;url&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;accessoires-cadeaux-ktm.html&quot;&#x7D;&#x5D;,
7084                            'img': '',
7085                            'description': `Bienvenue dans la catégorie porte-clés d&amp;apos;Esprit-KTM, où l&amp;apos;essence de l&amp;apos;aventure sur deux-roues prend une nouvelle dimension. Lire la suitePlongez-vous dans une collection de porte-clés méticuleusement conçus qui capturent l&amp;apos;esprit audacieux et la passion infinie pour la route de la marque emblématique KTM.Chacun de nos porte-clés est bien plus qu&amp;apos;un simple accessoire ; c&amp;apos;est une déclaration de style pour les passionnés de moto. Fabriqués avec précision et souci du détail, nos porte-clés mettent en lumière l&amp;apos;ingénierie exceptionnelle et le design distinctif qui font de KTM une référence dans le monde des deux-roues.Que vous soyez un motard chevronné ou que vous cherchiez le cadeau idéal pour un amateur de moto, nos porte-clés motos sont le moyen parfait d&amp;apos;emporter avec vous un morceau de la passion et de la puissance que KTM incarne. Ils ajoutent une touche d&amp;apos;aventure à votre quotidien, rappelant constamment la passion qui anime le cœur des motards.`,
7086                        }"
7087                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7088                        :class="{
7089                            'text-primary-500 font-semibold': history.includes('category-node-1884')
7090                        }">
7091                        <span
7092                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7093                            <!-- DEBUG: Logo = EMPTY -->
7094                                                        Porte-clés                        </span>
7095                    </a>
7096                            </li>
7097                        </ul>
7098
7099    <div class="h-20 md:hidden"></div>
7100            <template
7101            x-portal="$store.main.isMobile ? document.getElementById('popup-fixed-content-portal') : document.getElementById('menu-actions-category-node-1770')">
7102            <div
7103                class="bg-bg-500 px-4 pb-2 transition-colors duration-200 md:bg-transparent md:hover:text-primary-600 md:p-0"
7104                x-transition.opacity
7105                x-show="$store.main.isMobile ? history[history.length - 1] === 'category-node-1770' && !getIsSearchActive() : history.includes('category-node-1770')"
7106                role="link">
7107                <a
7108                    x-element-transition-trigger
7109                    class="button bg-white border border-primary-500 text-primary-500 w-full hover:bg-primary-500 hover:text-white hover:scale-105 transition-all duration-200"
7110                    href="https://www.esprit-ktm.com/accessoires-cadeaux-ktm.html">
7111                    <template x-if="$store.main.isMobile">
7112                        <span>Tout voir <span class="lowercase">Idées Cadeaux</span></span>
7113                    </template>
7114                    <template x-if="!$store.main.isMobile">
7115                        <span class="flex items-center text-center capitalize">
7116                            <span class='border-current'>
7117                                Tout voir                                <br />
7118                                <span>Idées Cadeaux</span>
7119                            </span>
7120                        </span>
7121                    </template>
7122                </a>
7123            </div>
7124        </template>
7125    </div>
7126                    </template>
7127                            </li>
7128                                <li>
7129                                    <a
7130                                                href="https://www.esprit-ktm.com/motos-neuves-ktm.html"
7131                        role="link"
7132                        x-element-transition-trigger:category.animate="{
7133                            'title': `Motos Neuves`,
7134                            'url': 'https://www.esprit-ktm.com/motos-neuves-ktm.html',
7135                            'breadcrumbs': &#x5B;&#x5D;,
7136                            'img': '',
7137                            'description': `&lt;p style=&quot;text-align: center;&quot;&gt;&lt;span style=&quot;color: #ff6600; font-size: small;&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;Contactez&lt;/span&gt;&lt;strong&gt;&lt;span style=&quot;font-size: small;&quot;&gt; Julien &lt;/span&gt;&lt;/strong&gt;&lt;span style=&quot;font-size: small;&quot;&gt;ou&lt;/span&gt;&lt;strong&gt;&lt;span style=&quot;font-size: small;&quot;&gt; Arthur &lt;/span&gt;&lt;/strong&gt;&lt;span style=&quot;font-size: small;&quot;&gt;au&lt;/span&gt;&lt;strong&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span style=&quot;text-decoration: underline;&quot;&gt; &lt;span style=&quot;font-size: medium;&quot;&gt;&lt;a href=&quot;+33492531931&quot;&gt;+33(0)492531931&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br&gt;&lt;/span&gt;&lt;/p&gt;&lt;hr&gt;&lt;p style=&quot;text-align: center;&quot;&gt;&lt;span style=&quot;font-size: medium;&quot;&gt;&lt;strong&gt;&lt;span style=&quot;color: #ff6600;&quot;&gt;Nous vous livrons partout en France.&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Vous pouvez contacter Julien et Arthur pour plus de renseignement par mail à l&amp;apos;adresse&lt;/span&gt;&lt;a href=&quot;mailto:[email protected]&quot;&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;[email protected]&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt; (mailto:[email protected]) ou par téléphone au +33(0)492531931. Esprit KTM est le spécialiste de la vente de motos KTM NEUVES dans toute la France.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Motos neuves KTM à vendre&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Nous sommes concessionnaires KTM à Gap (Hautes-Alpes) et nous vous livrons partout en France, du Sud au Nord et de l&amp;apos;Est à l&amp;apos;Ouest. Retrouvez ci-dessous l&amp;apos;ensemble de la gamme KTM disponible à l&amp;apos;achat :&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;KTM 125 RC, KTM 250 RC, KTM 390 RC, KTM Duke 125, KTM 390 Duke, KTM 790 Duke, KTM 890 Duke, KTM 1290 SUPERDUKE, KTM 125 EXC, KTM 250 EXC, KTM 250 EXC-F, KTM 350 EXC, KTM 450 EXC, KTM 85 SX, KTM 125 SX, KTM 250 SX, KTM 250 SX-F, KTM 350SX, KTM 450SX, KTM 1290 SUPER ADVENTURE, KTM 390 ADVENTURE, KTM 790 ADVENTURE...**&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Notre objectif est de vous permettre de trouver facilement la moto neuve KTM qui correspond à votre utilisation, à votre expérience et à votre budget. Que vou
7137s recherchiez une moto pour vos déplacements quotidiens, une moto sportive, une moto Adventure pour voyager, une moto Enduro pour les chemins ou une moto cross neuve pour la pratique du motocross, vous pouvez retrouver différents modèles KTM sur notre site.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Acheter KTM chez Esprit KTM&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Vous souhaitez acheter KTM et vous recherchez un concessionnaire spécialisé capable de vous accompagner dans votre projet ? Esprit KTM vous propose une sélection de motos KTM neuves et vous accompagne dans votre achat.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;KTM propose plusieurs familles de motos répondant à des usages très différents. La gamme Duke est notamment destinée aux motards recherchant une moto dynamique et polyvalente pour la route. Les gammes Adventure sont quant à elles pensées pour les voyages et les longues distances, avec des motos capables de vous accompagner aussi bien sur route que sur des itinéraires plus variés.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Pour les amateurs de tout-terrain, KTM propose également des motos Enduro et Motocross. Ces modèles sont conçus pour offrir des performances adaptées à une utilisation sportive et aux terrains exigeants.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Avant de choisir votre moto, notre équipe peut vous renseigner sur les modèles disponibles, les équipements, les caractéristiques et les conditions d&amp;
7137apos;achat. Vous pouvez également nous contacter pour connaître le tarif KTM correspondant au modèle qui vous intéresse.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Les motos KTM Adventure&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;La gamme Adventure occupe une place importante dans l&amp;apos;offre KTM. Ces motos s&amp;apos;adressent aux motards qui souhaitent voyager, partir en week-end ou simplement profiter d&amp;apos;une moto polyvalente capable de s&amp;apos;adapter à différentes conditions de roulage.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Parmi les modèles de la gamme, vous pouvez notamment retrouver la KTM 125 Adventure, ainsi que différentes cylindrées Adventure adaptées aux besoins des motards recherchant davantage de puissance et de confort pour leurs déplacements.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Si vous recherchez une adventure moto stock, consultez directement les motos disponibles sur notre site. Les disponibilités peuvent évoluer régulièrement en fonction des arrivages et des ventes. Notre équipe reste également disponible pour vous renseigner sur les modèles actuellement disponibles et sur les délais éventuels.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;La gamme Adventure KTM permet ainsi de répondre à différents projets : trajet quotidien, voyage, balade, road-trip ou découverte de nouveaux itinéraires.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;KTM Duke : des motos pour la route&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;La gamme KTM Duke est particulièrement appréciée pour son caractère dynamique et son style reconnaissable. Elle comprend plusieurs cylindrées permettant de répondre aux attentes de différents profils de motards.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Parmi les modèles disponibles ou référencés dans notre gamme, vous trouverez notamment la KTM Duke 125 et les différentes versions de la gamme Duke.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Si vous effectuez une recherche sur une KTM Duke 50cc, n&amp;apos;hésitez pas à contacter notre équipe afin de connaître les modèles disponibles et les possibilités correspondant à votre besoin. Les gammes et les motorisations évoluent régulièrement, il est donc préférable de vérifier directement les modèles actuellement proposés.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;
7137Que vous soyez à la recherche d&amp;apos;une première moto, d&amp;apos;une moto légère pour vos déplacements ou d&amp;apos;un modèle plus puissant, la gamme KTM permet de trouver une solution adaptée à différents usages.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;KTM Enduro et Motocross&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Esprit KTM s&amp;apos;adresse également aux passionnés de tout-terrain à la recherche d&amp;apos;une moto KTM Enduro ou d&amp;apos;une moto destinée au motocross.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Les motos Enduro KTM sont conçues pour les pratiquants qui recherchent une machine performante et adaptée aux parcours tout-terrain. Selon votre pratique et votre niveau, différentes cylindrées sont proposées dans la gamme KTM.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;La KTM 125 Enduro constitue notamment une recherche fréquente auprès des motards souhaitant s&amp;apos;orienter vers une cylindrée accessible. Les modèles Enduro de cylindrées supérieures permettent ensuite de répondre à des besoins différents en matière de puissance et de performances.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Pour la pratique du motocross, les modèles de la gamme SX sont conçus pour une utilisation sportive sur circuit et terrains de motocross. Si vous recherchez une moto cross neuve, retrouvez les modèles KTM disponibles sur notre site et contactez-nous pour obtenir les informations concernant leur disponibilité.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;
7137Nous pouvons également vous renseigner sur les arrivages, les modèles disponibles et les conditions de livraison.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Motos KTM neuves disponibles à l&amp;apos;achat&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;La disponibilité de nos motos peut évoluer rapidement. Les modèles affichés sur cette page correspondent aux motos KTM proposées à la vente et peuvent être mis à jour en fonction des stocks, des nouveaux millésimes et des arrivages.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Vous pouvez consulter directement les fiches des motos afin de découvrir leurs caractéristiques, leur prix et les informations relatives à leur disponibilité.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Si votre modèle recherché n&amp;apos;est pas immédiatement disponible, notre équipe peut vous renseigner sur les possibilités de commande et les délais prévisionnels.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Pour les clients qui recherchent une moto bénéficiant d&amp;apos;un prix intéressant, les opérations commerciales, les arrivages ou les modèles disponibles en stock peuvent également représenter une opportunité. Les offres et promotions évoluent au fil du temps : une ancienne recherche telle que « promotion moto neuve 2021 » peut correspondre à une campagne passée, mais les offres actuelles s
7137ont à consulter directement sur notre site.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Des prix et tarifs KTM clairement indiqués&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Le prix est naturellement un élément important dans le choix d&amp;apos;une moto neuve. Chaque modèle proposé sur notre site dispose de ses propres caractéristiques et de son propre niveau d&amp;apos;équipement.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Si vous souhaitez connaître le tarif KTM d&amp;apos;un modèle précis, nous vous invitons à consulter sa fiche produit. Vous pourrez ainsi retrouver les informations disponibles concernant son prix et sa disponibilité.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Notre équipe reste également à votre disposition pour répondre à vos questions et vous accompagner dans votre choix. Le prix d&amp;apos;une moto peut notamment dépendre du modèle, de la cylindrée, du millésime et des équipements proposés.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Livraison de votre moto KTM partout en France&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;La livraison des motos s&amp;apos;effectue par Distribike, transporteur spécialisé dans la livraison des véhicules motorisés, partout en France.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Votre moto vous est livrée directement chez vous, prête à rouler. La mise en service est effectuée par nos mécaniciens et la carte grise vous est expédiée, sauf pour les modèles SX.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Le délai moyen de livraison est de 6 à 8 jours ouvrés, sous réserve de la disponibilité du véhicule et des conditions de transport.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Cette solution permet aux clients qui ne se trouvent pas à proximité de notre c
7137oncession de bénéficier eux aussi de notre sélection de motos KTM neuves.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Que vous soyez dans le Sud, dans le Nord, à l&amp;apos;Est ou à l&amp;apos;Ouest de la France, nous pouvons organiser la livraison de votre moto directement à votre domicile.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Pourquoi choisir Esprit KTM ?&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Esprit KTM est spécialisé dans la vente de motos KTM neuves et accompagne depuis de nombreuses années les passionnés de la marque dans leurs projets.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Notre concession située à Gap, dans les Hautes-Alpes, vous permet de bénéficier de l&amp;apos;expertise d&amp;apos;une équipe spécialisée KTM, que vous soyez à la recherche d&amp;apos;une moto de route, d&amp;apos;une Adventure, d&amp;apos;une Enduro ou d&amp;apos;une Motocross.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Nous vous accompagnons dans le choix de votre moto et pouvons vous renseigner sur les modèles, les disponibilités, les tarifs et les conditions de livraison.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Vous pouvez également nous contacter avant votre achat afin d&amp;
7137apos;obtenir davantage d&amp;apos;informations sur une moto présente sur notre site.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Le paiement s&amp;apos;effectue par virement bancaire.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;A très vite, l’équipe ESPRIT KTM !&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;Pour plus de renseignements, contactez Julien ou Arthur au +33(0)492531931.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-fareast-language: EN-US;&quot;&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;font-size: 12.0pt; line-height: 115%; font-family: &amp;apos;Calibri&amp;apos;,sans-serif; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-theme-font: minor-latin; mso-ansi-language: FR; mso-fareast-language: EN-US; mso-bidi-language: AR-SA;&quot;&gt;Déjà des milliers de motos neuves livrées en France.&lt;/span&gt;&lt;/p&gt;`,
7138                        }"
7139                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7140                        :class="{
7141                            'text-primary-500 font-semibold': history.includes('category-node-1771')
7142                        }">
7143                        <span
7144                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7145                            <!-- DEBUG: Logo = EMPTY -->
7146                                                        Motos Neuves                        </span>
7147                    </a>
7148                            </li>
7149                                <li>
7150                                    <a
7151                                                href="https://www.esprit-ktm.com/carte-cadeau.html"
7152                        role="link"
7153                        x-element-transition-trigger:category.animate="{
7154                            'title': `Carte Cadeau`,
7155                            'url': 'https://www.esprit-ktm.com/carte-cadeau.html',
7156                            'breadcrumbs': &#x5B;&#x5D;,
7157                            'img': '',
7158                            'description': `&lt;p&gt;Bienvenue dans la catégorie Carte Cadeau d&amp;apos;Esprit-KTM, l&amp;apos;option parfaite pour offrir à vos proches la liberté de choisir parmi notre collection KTM.&lt;/p&gt;&lt;p&gt;Les Cartes Cadeaux Esprit-KTM sont bien plus qu&amp;apos;un simple présent ;
7158 elles sont une invitation à explorer l&amp;apos;univers passionnant des deux-roues et à choisir le cadeau qui résonne le plus avec leur amour pour l&amp;apos;aventure sur route.&lt;/p&gt;&lt;p&gt;Offrez la possibilité de découvrir la bagagerie, la collection bébé, les accessoires lifestyle ou pour la maison, des maquettes impeccables, des porte-clés élégants, des autocollants vibrants, des draisiennes pour les plus jeunes, ou tout autre trésor de notre gamme diversifiée. Nos Cartes Cadeaux offrent une flexibilité totale, permettant à leurs destinataires de choisir le cadeau qui fera battre leur cœur de passionné de moto.&lt;/p&gt;&lt;p&gt;Les Cartes Cadeaux Esprit-KTM sont également une solution idéale pour ceux qui veulent garantir un cadeau mémorable sans risquer de se tromper dans leur choix. C&amp;apos;est l&amp;apos;assurance de faire plaisir en offrant la liberté de sélectionner le cadeau qui correspond parfaitement à leurs goûts et à leur style.&lt;/p&gt;`,
7159                        }"
7160                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7161                        :class="{
7162                            'text-primary-500 font-semibold': history.includes('category-node-2218')
7163                        }">
7164                        <span
7165                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7166                            <!-- DEBUG: Logo = EMPTY -->
7167                                                        Carte Cadeau                        </span>
7168                    </a>
7169                            </li>
7170                                <li>
7171                                    <a
7172                                                href="https://www.esprit-ktm.com/nouveautes-2022.html"
7173                        role="link"
7174                        x-element-transition-trigger:category.animate="{
7175                            'title': `Nouveautés 2026`,
7176                            'url': 'https://www.esprit-ktm.com/nouveautes-2022.html',
7177                            'breadcrumbs': &#x5B;&#x5D;,
7178                            'img': '',
7179                            'description': `&lt;p&gt;&lt;span class=&quot;&quot;&gt;Plongez dans l&amp;apos;univers exclusif des Nouveautés KTM 2026 - L&amp;apos;excellence motarde à son paroxysme !&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class=&quot;&quot;&gt;Esprit KTM vous présente sa collection &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class=&quot;&quot;&gt;Lire la suite&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class=&quot;&quot;&gt;ultra-performante, fruit de l&amp;apos;alliance entre innovation technique et style racing inimitable. Chaque pièce raconte l&amp;apos;histoire passionnante des pilotes Red Bull KTM, combinant technologie de pointe et design audacieux.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class=&quot;&quot;&gt;Une collection pensée pour les passionnés :&lt;/span&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;span class=&quot;&quot;&gt;Vêtements officiels reproduction team&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class=&quot;&quot;&gt;Équipements haute technicité&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class=&quot;&quot;&gt;Accessoires exclusifs&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class=&quot;&quot;&gt;Style authentique Red Bull KTM&lt;br&gt;&lt;br&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;span class=&quot;&quot;&gt;Nos produits phares :&lt;br&gt;&lt;/span&gt;✓ T-shirts KTM Red Bull&lt;br&gt;&lt;span class=&quot;&quot;&gt;✓ Sweats KTM Red Bull&lt;br&gt;&lt;/span&gt;&lt;span class=&quot;&quot;&gt;✓ Casquettes officielles&lt;br&gt;&lt;/span&gt;✓ Bonnets collectors&lt;br&gt;&lt;span class=&quot;&quot;&gt;✓ Vêtements enfants&lt;br&gt;&lt;/span&gt;✓ Accessoires premium&lt;/p&gt;&lt;p&gt;&lt;span class=&quot;&quot;&gt;Conçue pour les motards exigeants, cette collection incarne l&amp;apos;esprit de compétition et la performance. Du street wear au look racing, chaque détail a été pensé pour vous offrir le meilleur.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class=&quot;&quot;&gt;Points forts :&lt;/span&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;span class=&quot;&quot;&gt;Design inspiré des pilotes officiels&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class=&quot;&quot;&gt;Qualité premium garantie&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class=&quot;&quot;&gt;Technologies innovantes&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class=&quot;&quot;&gt;Gamme complète homme/femme/enfant&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class=&quot;&quot;&gt;Prix compétitifs&lt;br&gt;&lt;br&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;span class=&quot;&quot;&gt;Ne manquez pas cette opportunité unique de porter les couleurs de l&amp;apos;écurie KTM Red Bull ! Choisissez votre style, affirmez votre passion.&lt;/span&gt;&lt;span class=&quot;&quot;&gt;&lt;br&gt;&lt;br&gt;Stock limité - Commandez maintenant avant rupture !&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class=&quot;&quot;&gt;Livraison rapide, satisfait ou remboursé.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class=&quot;&quot;&gt;Vivez l&amp;apos;
7179expérience KTM, commandez maintenant !&lt;/span&gt;&lt;/p&gt;`,
7180                        }"
7181                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7182                        :class="{
7183                            'text-primary-500 font-semibold': history.includes('category-node-2071')
7184                        }">
7185                        <span
7186                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7187                            <!-- DEBUG: Logo = EMPTY -->
7188                                                        Nouveautés 2026                        </span>
7189                    </a>
7190                            </li>
7191                                <li>
7192                                    <a
7193                                                href="https://www.esprit-ktm.com/meilleures-vente-pieces-d-origine-ktm.html"
7194                        role="link"
7195                        x-element-transition-trigger:category.animate="{
7196                            'title': `Tops Ventes pièces d'origine KTM`,
7197                            'url': 'https://www.esprit-ktm.com/meilleures-vente-pieces-d-origine-ktm.html',
7198                            'breadcrumbs': &#x5B;&#x5D;,
7199                            'img': '',
7200                            'description': `&lt;p&gt;Chez Esprit KTM, nous mettons à votre disposition une large gamme de pièces d&amp;apos;origine pour entretenir et customiser votre moto KTM. Que vous recherchiez des filtres à air, des plaquettes de frein, de l&amp;apos;huile moteur ou tout autre accessoire, vous trouverez forcément votre bonheur dans notre catalogue en ligne.&lt;/p&gt;&lt;p&gt;Notre sélection des meilleures ventes vous permet d&amp;apos;accéder rapidement aux pièces les plus populaires auprès de notre clientèle. Fiez-vous à l&amp;apos;expertise de la marque KTM pour maintenir votre machine dans un état irréprochable et bénéficier de ses performances d&amp;apos;origine sur tous les terrains.&lt;/p&gt;&lt;p&gt;Profitez de notre expédition rapide et de notre service client attentionné pour commander vos pièces en toute confiance. Avec Esprit KTM, entretenir votre moto n&amp;apos;a jamais été aussi simple ! Découvrez notre gamme complète de pièces d&amp;apos;origine et accessoirisez votre bolide KTM selon vos envies.&lt;/p&gt;`,
7201                        }"
7202                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7203                        :class="{
7204                            'text-primary-500 font-semibold': history.includes('category-node-3055')
7205                        }">
7206                        <span
7207                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7208                            <!-- DEBUG: Logo = EMPTY -->
7209                                                        Tops Ventes pièces d'origine KTM                        </span>
7210                    </a>
7211                            </li>
7212                                <li>
7213                                    <a
7214                                                href="https://www.esprit-ktm.com/bonnes-affaires-ktm-soldes-promotions.html"
7215                        role="link"
7216                        x-element-transition-trigger:category.animate="{
7217                            'title': `Promotions`,
7218                            'url': 'https://www.esprit-ktm.com/bonnes-affaires-ktm-soldes-promotions.html',
7219                            'breadcrumbs': &#x5B;&#x5D;,
7220                            'img': '',
7221                            'description': `&lt;p&gt;&lt;span class=&quot;&quot;&gt;Envie de vous offrir des produits KTM à des prix imbattables ? Bienvenue sur la page des meilleures promotions et soldes Esprit KTM !&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class=&quot;&quot;&gt;Plongez dans un univers de réductions exclusives où passion et économies se rencontrent. Que vou
7221s soyez fan de moto, amateur de sport ou simplement à la recherche de vêtements et accessoires de qualité, notre sélection de promotions KTM vous garantit un rapport qualité-prix imbattable.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class=&quot;&quot;&gt;Nos promotions couvrent une large gamme de produits :&lt;/span&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;span class=&quot;&quot;&gt;Vêtements homme : t-shirts, polos, maillots, shorts, vestes&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class=&quot;&quot;&gt;Vêtements femme : t-shirts, débardeurs adaptés à tous les styles&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class=&quot;&quot;&gt;Vêtements enfants : t-shirts, sweats, body bébé, casquettes&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class=&quot;&quot;&gt;Accessoires : sacs de sport, casquettes, bonnets, porte-documents&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;span class=&quot;&quot;&gt;Chaque article est soigneusement sélectionné pour vous offrir :&lt;/span&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;span class=&quot;&quot;&gt;Des designs originaux inspirés de l&amp;apos;univers KTM&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class=&quot;&quot;&gt;Une qualité premium&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class=&quot;&quot;&gt;Des réductions significatives&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;span class=&quot;&quot;&gt;Points forts de nos promotions :&lt;br&gt;&lt;/span&gt;✓ Jusqu&amp;apos;à -50% sur certains articles&lt;br&gt;&lt;span class=&quot;&quot;&gt;✓ Livraison rapide &lt;br&gt;✓ Large choix de tailles &lt;br&gt;✓ Produits 100% officiels KTM&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class=&quot;&quot;&gt;Pourquoi hésiter ? Foncez et profitez de ces offres exceptionnelles avant qu&amp;apos;elles ne disparaissent ! Chaque pièce est un investissement malin pour les passionnés de moto et de sport.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span class=&quot;&quot;&gt;Stock limité, ne tardez pas ! Cliquez, choisissez et économisez sur toute la collection KTM.&lt;/span&gt;&lt;/p&gt;`,
7222                        }"
7223                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7224                        :class="{
7225                            'text-primary-500 font-semibold': history.includes('category-node-1772')
7226                        }">
7227                        <span
7228                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7229                            <!-- DEBUG: Logo = EMPTY -->
7230                                                        Promotions                        </span>
7231                    </a>
7232                            </li>
7233                                <li>
7234                                    <button
7235                                                x-a11y-trap-target.end="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'all'"
7236                                                class="menu__link group"
7237                        @click="setHistory([...'all'.split(','), 'custom-link-1'])"
7238                        :class="{ 'menu__link--active': history.includes('custom-link-1') }"
7239                        role="button"
7240                        :aria-expanded="history.includes('custom-link-1')">
7241                        <span class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7242                            <!-- DEBUG: Logo =  -->
7243                                                        Tutos mécanique                        </span>
7244                        <span class="text-xl transition-[color,transform] md:group-hover:-translate-x-3 md:group-hover:text-primary-600">
7245                            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
7246    <path d="M10.707 17.707 16.414 12l-5.707-5.707-1.414 1.414L13.586 12l-4.293 4.293z"/>
7247</svg>
7248                        </span>
7249                    </button>
7250                    <template x-portal="document.getElementById('menu-sections')">
7251                        <div
7252    class="menu__level relative z-[100]"
7253    :class="{
7254        'menu__level--current': history[history.length - 1] === 'custom-link-1',
7255        'menu__level--visible': history.includes('custom-link-1'),
7256        'menu__level--same-depth': 2 <= delayedLevel,
7257        'hidden': !$store.main.isMobile && !$store.resizable.isVisible('menu-desktop'),
7258    }"
7259    :inert="!history.includes('custom-link-1')"
7260    data-menu-level="custom-link-1">
7261    <div class="menu__header">
7262        <div class="menu__header-container p-2 md:flex md:flex-col">
7263            
7264            <button
7265                @click="history.pop()"
7266                type="button"
7267                aria-label="Revenir au menu précédent"
7268                class="menu__back-button py-3 motion-reduce:max-md:animate-none"
7269                :class="{
7270                    'menu__back-button--visible max-md:animate-slideIconIn motion-reduce:translate-x-0': history.length !== 1,
7271                    'max-md:animate-slideIconOut motion-reduce:-translate-x-full': history.length == 1
7272                }"
7273                :tabindex="history.length === 1 ? -1 : 0"
7274                :aria-hidden="history.length === 1">
7275                <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
7276    <path d="M13.293 6.293 7.586 12l5.707 5.707 1.414-1.414L10.414 12l4.293-4.293z"/>
7277</svg>
7278            </button>
7279
7280            <h2
7281                class="menu__heading py-3 motion-reduce:max-md:animate-none"
7282                style="--translate-width: 52px;"
7283                :class="{
7284                    'menu__heading--root': 'custom-link-1' === 'all',
7285                    'max-md:w-[calc(100%-var(--translate-width))]': 'custom-link-1' !== 'all',
7286                    'max-md:animate-slideTitleIn motion-reduce:translate-x-[--translate-width]': history.length !== 1,
7287                    'max-md:animate-slideTitleOut motion-reduce:translate-x-0': history.length == 1
7288                }"
7289                x-show="$store.main.isMobile || 'custom-link-1' !== 'all'">
7290                Tutos mécanique            </h2>
7291
7292            <div id="menu-actions-custom-link-1" class="md:mt-[6px] md:flex-none md:flex-row"></div>
7293        </div>
7294        <hr class="divider -mx-5 md:hidden">
7295    </div>
7296
7297    <ul role="list" class="menu__links">
7298                            <li>
7299                                    <a
7300                                                x-a11y-trap-target.initial="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'custom-link-1'"
7301                                                href="/tutos-mecanique/v
7301ideo/changement-de-pneus"
7302                        role="link"
7303                        x-element-transition-trigger:category.animate="{
7304                            'title': `Changement de pneus`,
7305                            'url': '/tutos-mecanique/video/changement-de-pneus',
7306                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Tutos&#x20;m&#x5C;u00e9canique&quot;,&quot;url&quot;&#x3A;&quot;&#x5C;&#x2F;tutos&quot;&#x7D;&#x5D;,
7307                            'img': '',
7308                            'description': ``,
7309                        }"
7310                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7311                        :class="{
7312                            'text-primary-500 font-semibold': history.includes('custom-child-2')
7313                        }">
7314                        <span
7315                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7316                            <!-- DEBUG: Logo =  -->
7317                                                        Changement de pneus                        </span>
7318                    </a>
7319                            </li>
7320                                <li>
7321                                    <a
7322                                                href="/tutos-mecanique/video/reglage-du-sag"
7323                        role="link"
7324                        x-element-transition-trigger:category.animate="{
7325                            'title': `Réglage du SAG`,
7326                            'url': '/tutos-mecanique/video/reglage-du-sag',
7327                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Tutos&#x20;m&#x5C;u00e9canique&quot;,&quot;url&quot;&#x3A;&quot;&#x5C;&#x2F;tutos&quot;&#x7D;&#x5D;,
7328                            'img': '',
7329                            'description': ``,
7330                        }"
7331                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7332                        :class="{
7333                            'text-primary-500 font-semibold': history.includes('custom-child-3')
7334                        }">
7335                        <span
7336                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7337                            <!-- DEBUG: Logo =  -->
7338                                                        Réglage du SAG                        </span>
7339                    </a>
7340                            </li>
7341                                <li>
7342                                    <a
7343                                                href="/tutos-mecanique/video/vidange"
7344                        role="link"
7345                        x-element-transition-trigger:category.animate="{
7346                            'title': `Vidange`,
7347                            'url': '/tutos-mecanique/video/vidange',
7348                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Tutos&#x20;m&#x5C;u00e9canique&quot;,&quot;url&quot;&#x3A;&quot;&#x5C;&#x2F;tutos&quot;&#x7D;&#x5D;,
7349                            'img': '',
7350                            'description': ``,
7351                        }"
7352                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7353                        :class="{
7354                            'text-primary-500 font-semibold': history.includes('custom-child-4')
7355                        }">
7356                        <span
7357                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7358                            <!-- DEBUG: Logo =  -->
7359                                                        Vidange                        </span>
7360                    </a>
7361                            </li>
7362                                <li>
7363                                    <a
7364                                                href="/tutos-mecanique/v
7364ideo/changement-pneu-et-bib-mousse"
7365                        role="link"
7366                        x-element-transition-trigger:category.animate="{
7367                            'title': `Changement pneu et Bib mousse`,
7368                            'url': '/tutos-mecanique/video/changement-pneu-et-bib-mousse',
7369                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Tutos&#x20;m&#x5C;u00e9canique&quot;,&quot;url&quot;&#x3A;&quot;&#x5C;&#x2F;tutos&quot;&#x7D;&#x5D;,
7370                            'img': '',
7371                            'description': ``,
7372                        }"
7373                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7374                        :class="{
7375                            'text-primary-500 font-semibold': history.includes('custom-child-5')
7376                        }">
7377                        <span
7378                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7379                            <!-- DEBUG: Logo =  -->
7380                                                        Changement pneu et Bib mousse                        </span>
7381                    </a>
7382                            </li>
7383                                <li>
7384                                    <a
7385                                                href="/tutos-mecanique/video/verifier-les-serrages-de-sa-moto"
7386                        role="link"
7387                        x-element-transition-trigger:category.animate="{
7388                            'title': `Vérifier les serrages de sa moto`,
7389                            'url': '/tutos-mecanique/video/verifier-les-serrages-de-sa-moto',
7390                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Tutos&#x20;m&#x5C;u00e9canique&quot;,&quot;url&quot;&#x3A;&quot;&#x5C;&#x2F;tutos&quot;&#x7D;&#x5D;,
7391                            'img': '',
7392                            'description': ``,
7393                        }"
7394                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7395                        :class="{
7396                            'text-primary-500 font-semibold': history.includes('custom-child-6')
7397                        }">
7398                        <span
7399                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7400                            <!-- DEBUG: Logo =  -->
7401                                                        Vérifier les serrages de sa moto                        </span>
7402                    </a>
7403                            </li>
7404                                <li>
7405                                    <a
7406                                                href="/tutos-mecanique/video/nettoyage-de-sa-moto"
7407                        role="link"
7408                        x-element-transition-trigger:category.animate="{
7409                            'title': `Nettoyage de sa moto`,
7410                            'url': '/tutos-mecanique/video/nettoyage-de-sa-moto',
7411                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Tutos&#x20;m&#x5C;u00e9canique&quot;,&quot;url&quot;&#x3A;&quot;&#x5C;&#x2F;tutos&quot;&#x7D;&#x5D;,
7412                            'img': '',
7413                            'description': ``,
7414                        }"
7415                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7416                        :class="{
7417                            'text-primary-500 font-semibold': history.includes('custom-child-7')
7418                        }">
7419                        <span
7420                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7421                            <!-- DEBUG: Logo =  -->
7422                                                        Nettoyage de sa moto                        </span>
7423                    </a>
7424                            </li>
7425                                <li>
7426                                    <a
7427                                                href="/tutos-mecanique/v
7427ideo/diagnostic-de-panne"
7428                        role="link"
7429                        x-element-transition-trigger:category.animate="{
7430                            'title': `Diagnostic de panne`,
7431                            'url': '/tutos-mecanique/video/diagnostic-de-panne',
7432                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Tutos&#x20;m&#x5C;u00e9canique&quot;,&quot;url&quot;&#x3A;&quot;&#x5C;&#x2F;tutos&quot;&#x7D;&#x5D;,
7433                            'img': '',
7434                            'description': ``,
7435                        }"
7436                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7437                        :class="{
7438                            'text-primary-500 font-semibold': history.includes('custom-child-8')
7439                        }">
7440                        <span
7441                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7442                            <!-- DEBUG: Logo =  -->
7443                                                        Diagnostic de panne                        </span>
7444                    </a>
7445                            </li>
7446                                <li>
7447                                    <a
7448                                                href="/tutos-mecanique/video/guidon"
7449                        role="link"
7450                        x-element-transition-trigger:category.animate="{
7451                            'title': `Guidon`,
7452                            'url': '/tutos-mecanique/video/guidon',
7453                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Tutos&#x20;m&#x5C;u00e9canique&quot;,&quot;url&quot;&#x3A;&quot;&#x5C;&#x2F;tutos&quot;&#x7D;&#x5D;,
7454                            'img': '',
7455                            'description': ``,
7456                        }"
7457                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7458                        :class="{
7459                            'text-primary-500 font-semibold': history.includes('custom-child-9')
7460                        }">
7461                        <span
7462                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7463                            <!-- DEBUG: Logo =  -->
7464                                                        Guidon                        </span>
7465                    </a>
7466                            </li>
7467                                <li>
7468                                    <a
7469                                                href="/tutos-mecanique/video/nettoyer-son-casque-efficacement"
7470                        role="link"
7471                        x-element-transition-trigger:category.animate="{
7472                            'title': `Nettoyer son casque efficacement`,
7473                            'url': '/tutos-mecanique/video/nettoyer-son-casque-efficacement',
7474                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Tutos&#x20;m&#x5C;u00e9canique&quot;,&quot;url&quot;&#x3A;&quot;&#x5C;&#x2F;tutos&quot;&#x7D;&#x5D;,
7475                            'img': '',
7476                            'description': ``,
7477                        }"
7478                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7479                        :class="{
7480                            'text-primary-500 font-semibold': history.includes('custom-child-10')
7481                        }">
7482                        <span
7483                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7484                            <!-- DEBUG: Logo =  -->
7485                                                        Nettoyer son casque efficacement                        </span>
7486                    </a>
7487                            </li>
7488                                <li>
7489                                    <a
7490                                                href="/tutos-mecanique/v
7490ideo/nettoyage-joint-spi"
7491                        role="link"
7492                        x-element-transition-trigger:category.animate="{
7493                            'title': `Nettoyage joint Spi`,
7494                            'url': '/tutos-mecanique/video/nettoyage-joint-spi',
7495                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Tutos&#x20;m&#x5C;u00e9canique&quot;,&quot;url&quot;&#x3A;&quot;&#x5C;&#x2F;tutos&quot;&#x7D;&#x5D;,
7496                            'img': '',
7497                            'description': ``,
7498                        }"
7499                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7500                        :class="{
7501                            'text-primary-500 font-semibold': history.includes('custom-child-11')
7502                        }">
7503                        <span
7504                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7505                            <!-- DEBUG: Logo =  -->
7506                                                        Nettoyage joint Spi                        </span>
7507                    </a>
7508                            </li>
7509                                <li>
7510                                    <a
7511                                                href="/tutos-mecanique/video/changement-de-pneus-avec-machine"
7512                        role="link"
7513                        x-element-transition-trigger:category.animate="{
7514                            'title': ` Changement de pneus avec machine`,
7515                            'url': '/tutos-mecanique/video/changement-de-pneus-avec-machine',
7516                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Tutos&#x20;m&#x5C;u00e9canique&quot;,&quot;url&quot;&#x3A;&quot;&#x5C;&#x2F;tutos&quot;&#x7D;&#x5D;,
7517                            'img': '',
7518                            'description': ``,
7519                        }"
7520                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7521                        :class="{
7522                            'text-primary-500 font-semibold': history.includes('custom-child-12')
7523                        }">
7524                        <span
7525                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7526                            <!-- DEBUG: Logo =  -->
7527                                                         Changement de pneus avec machine                        </span>
7528                    </a>
7529                            </li>
7530                                <li>
7531                                    <a
7532                                                href="/tutos-mecanique/video/controler-le-jeu-aux-soupapes"
7533                        role="link"
7534                        x-element-transition-trigger:category.animate="{
7535                            'title': `Contrôler le jeu aux soupapes`,
7536                            'url': '/tutos-mecanique/video/controler-le-jeu-aux-soupapes',
7537                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Tutos&#x20;m&#x5C;u00e9canique&quot;,&quot;url&quot;&#x3A;&quot;&#x5C;&#x2F;tutos&quot;&#x7D;&#x5D;,
7538                            'img': '',
7539                            'description': ``,
7540                        }"
7541                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7542                        :class="{
7543                            'text-primary-500 font-semibold': history.includes('custom-child-13')
7544                        }">
7545                        <span
7546                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7547                            <!-- DEBUG: Logo =  -->
7548                                                        Contrôler le jeu aux soupapes                        </span>
7549                    </a>
7550                            </li>
7551                                <li>
7552                                    <a
7553                                                href="/tutos-mecanique/v
7553ideo/entretien-roulements-de-bras-oscillant"
7554                        role="link"
7555                        x-element-transition-trigger:category.animate="{
7556                            'title': `Entretien roulements de bras oscillant`,
7557                            'url': '/tutos-mecanique/video/entretien-roulements-de-bras-oscillant',
7558                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Tutos&#x20;m&#x5C;u00e9canique&quot;,&quot;url&quot;&#x3A;&quot;&#x5C;&#x2F;tutos&quot;&#x7D;&#x5D;,
7559                            'img': '',
7560                            'description': ``,
7561                        }"
7562                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7563                        :class="{
7564                            'text-primary-500 font-semibold': history.includes('custom-child-14')
7565                        }">
7566                        <span
7567                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7568                            <!-- DEBUG: Logo =  -->
7569                                                        Entretien roulements de bras oscillant                        </span>
7570                    </a>
7571                            </li>
7572                                <li>
7573                                    <a
7574                                                href="/tutos-mecanique/video/remplacer-son-embrayage"
7575                        role="link"
7576                        x-element-transition-trigger:category.animate="{
7577                            'title': `Remplacer son embrayage`,
7578                            'url': '/tutos-mecanique/video/remplacer-son-embrayage',
7579                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Tutos&#x20;m&#x5C;u00e9canique&quot;,&quot;url&quot;&#x3A;&quot;&#x5C;&#x2F;tutos&quot;&#x7D;&#x5D;,
7580                            'img': '',
7581                            'description': ``,
7582                        }"
7583                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7584                        :class="{
7585                            'text-primary-500 font-semibold': history.includes('custom-child-15')
7586                        }">
7587                        <span
7588                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7589                            <!-- DEBUG: Logo =  -->
7590                                                        Remplacer son embrayage                        </span>
7591                    </a>
7592                            </li>
7593                                <li>
7594                                    <a
7595                                                href="/tutos-mecanique/video/bien-choisir-son-ressort-damortisseurs"
7596                        role="link"
7597                        x-element-transition-trigger:category.animate="{
7598                            'title': `Bien choisir son ressort d'amortisseurs`,
7599                            'url': '/tutos-mecanique/video/bien-choisir-son-ressort-damortisseurs',
7600                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Tutos&#x20;m&#x5C;u00e9canique&quot;,&quot;url&quot;&#x3A;&quot;&#x5C;&#x2F;tutos&quot;&#x7D;&#x5D;,
7601                            'img': '',
7602                            'description': ``,
7603                        }"
7604                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7605                        :class="{
7606                            'text-primary-500 font-semibold': history.includes('custom-child-16')
7607                        }">
7608                        <span
7609                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7610                            <!-- DEBUG: Logo =  -->
7611                                                        Bien choisir son ressort d'amortisseurs                        </span>
7612                    </a>
7613                            </li>
7614                                <li>
7615                                    <a
7616                                                href="/tutos-mecanique/v
7616ideo/cable-de-gaz"
7617                        role="link"
7618                        x-element-transition-trigger:category.animate="{
7619                            'title': `Câble de gaz`,
7620                            'url': '/tutos-mecanique/video/cable-de-gaz',
7621                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Tutos&#x20;m&#x5C;u00e9canique&quot;,&quot;url&quot;&#x3A;&quot;&#x5C;&#x2F;tutos&quot;&#x7D;&#x5D;,
7622                            'img': '',
7623                            'description': ``,
7624                        }"
7625                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7626                        :class="{
7627                            'text-primary-500 font-semibold': history.includes('custom-child-17')
7628                        }">
7629                        <span
7630                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7631                            <!-- DEBUG: Logo =  -->
7632                                                        Câble de gaz                        </span>
7633                    </a>
7634                            </li>
7635                                <li>
7636                                    <a
7637                                                href="/tutos-mecanique/video/affaires-de-moto"
7638                        role="link"
7639                        x-element-transition-trigger:category.animate="{
7640                            'title': `Affaires de moto`,
7641                            'url': '/tutos-mecanique/video/affaires-de-moto',
7642                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Tutos&#x20;m&#x5C;u00e9canique&quot;,&quot;url&quot;&#x3A;&quot;&#x5C;&#x2F;tutos&quot;&#x7D;&#x5D;,
7643                            'img': '',
7644                            'description': ``,
7645                        }"
7646                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7647                        :class="{
7648                            'text-primary-500 font-semibold': history.includes('custom-child-18')
7649                        }">
7650                        <span
7651                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7652                            <!-- DEBUG: Logo =  -->
7653                                                        Affaires de moto                        </span>
7654                    </a>
7655                            </li>
7656                                <li>
7657                                    <a
7658                                                href="/tutos-mecanique/video/kit-deco"
7659                        role="link"
7660                        x-element-transition-trigger:category.animate="{
7661                            'title': `Kit deco`,
7662                            'url': '/tutos-mecanique/video/kit-deco',
7663                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Tutos&#x20;m&#x5C;u00e9canique&quot;,&quot;url&quot;&#x3A;&quot;&#x5C;&#x2F;tutos&quot;&#x7D;&#x5D;,
7664                            'img': '',
7665                            'description': ``,
7666                        }"
7667                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7668                        :class="{
7669                            'text-primary-500 font-semibold': history.includes('custom-child-19')
7670                        }">
7671                        <span
7672                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7673                            <!-- DEBUG: Logo =  -->
7674                                                        Kit deco                        </span>
7675                    </a>
7676                            </li>
7677                                <li>
7678                                    <a
7679                                                href="/tutos-mecanique/v
7679ideo/purge-de-freins-et-dembrayage"
7680                        role="link"
7681                        x-element-transition-trigger:category.animate="{
7682                            'title': `Purge de freins et d'embrayage`,
7683                            'url': '/tutos-mecanique/video/purge-de-freins-et-dembrayage',
7684                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Tutos&#x20;m&#x5C;u00e9canique&quot;,&quot;url&quot;&#x3A;&quot;&#x5C;&#x2F;tutos&quot;&#x7D;&#x5D;,
7685                            'img': '',
7686                            'description': ``,
7687                        }"
7688                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7689                        :class="{
7690                            'text-primary-500 font-semibold': history.includes('custom-child-20')
7691                        }">
7692                        <span
7693                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7694                            <!-- DEBUG: Logo =  -->
7695                                                        Purge de freins et d'embrayage                        </span>
7696                    </a>
7697                            </li>
7698                                <li>
7699                                    <a
7700                                                href="/tutos-mecanique/video/changement-des-roulements-de-roue"
7701                        role="link"
7702                        x-element-transition-trigger:category.animate="{
7703                            'title': `Changement des roulements de roue`,
7704                            'url': '/tutos-mecanique/video/changement-des-roulements-de-roue',
7705                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Tutos&#x20;m&#x5C;u00e9canique&quot;,&quot;url&quot;&#x3A;&quot;&#x5C;&#x2F;tutos&quot;&#x7D;&#x5D;,
7706                            'img': '',
7707                            'description': ``,
7708                        }"
7709                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7710                        :class="{
7711                            'text-primary-500 font-semibold': history.includes('custom-child-21')
7712                        }">
7713                        <span
7714                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7715                            <!-- DEBUG: Logo =  -->
7716                                                        Changement des roulements de roue                        </span>
7717                    </a>
7718                            </li>
7719                                <li>
7720                                    <a
7721                                                href="/tutos-mecanique/video/les-5-tips-de-benji-melot"
7722                        role="link"
7723                        x-element-transition-trigger:category.animate="{
7724                            'title': `Les 5 tips de Benji Melot`,
7725                            'url': '/tutos-mecanique/video/les-5-tips-de-benji-melot',
7726                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Tutos&#x20;m&#x5C;u00e9canique&quot;,&quot;url&quot;&#x3A;&quot;&#x5C;&#x2F;tutos&quot;&#x7D;&#x5D;,
7727                            'img': '',
7728                            'description': ``,
7729                        }"
7730                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7731                        :class="{
7732                            'text-primary-500 font-semibold': history.includes('custom-child-22')
7733                        }">
7734                        <span
7735                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7736                            <!-- DEBUG: Logo =  -->
7737                                                        Les 5 tips de Benji Melot                        </span>
7738                    </a>
7739                            </li>
7740                                <li>
7741                                    <a
7742                                                href="/tutos-mecanique/v
7742ideo/les-7-taches-apres-chaque-roulage"
7743                        role="link"
7744                        x-element-transition-trigger:category.animate="{
7745                            'title': `Les 7 tâches après chaque roulage`,
7746                            'url': '/tutos-mecanique/video/les-7-taches-apres-chaque-roulage',
7747                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Tutos&#x20;m&#x5C;u00e9canique&quot;,&quot;url&quot;&#x3A;&quot;&#x5C;&#x2F;tutos&quot;&#x7D;&#x5D;,
7748                            'img': '',
7749                            'description': ``,
7750                        }"
7751                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7752                        :class="{
7753                            'text-primary-500 font-semibold': history.includes('custom-child-23')
7754                        }">
7755                        <span
7756                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7757                            <!-- DEBUG: Logo =  -->
7758                                                        Les 7 tâches après chaque roulage                        </span>
7759                    </a>
7760                            </li>
7761                                <li>
7762                                    <a
7763                                                href="/tutos-mecanique/video/outillage"
7764                        role="link"
7765                        x-element-transition-trigger:category.animate="{
7766                            'title': `Outillage`,
7767                            'url': '/tutos-mecanique/video/outillage',
7768                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Tutos&#x20;m&#x5C;u00e9canique&quot;,&quot;url&quot;&#x3A;&quot;&#x5C;&#x2F;tutos&quot;&#x7D;&#x5D;,
7769                            'img': '',
7770                            'description': ``,
7771                        }"
7772                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7773                        :class="{
7774                            'text-primary-500 font-semibold': history.includes('custom-child-24')
7775                        }">
7776                        <span
7777                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7778                            <!-- DEBUG: Logo =  -->
7779                                                        Outillage                        </span>
7780                    </a>
7781                            </li>
7782                                <li>
7783                                    <a
7784                                                href="/tutos-mecanique/video/plaquettes"
7785                        role="link"
7786                        x-element-transition-trigger:category.animate="{
7787                            'title': `Plaquettes`,
7788                            'url': '/tutos-mecanique/video/plaquettes',
7789                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Tutos&#x20;m&#x5C;u00e9canique&quot;,&quot;url&quot;&#x3A;&quot;&#x5C;&#x2F;tutos&quot;&#x7D;&#x5D;,
7790                            'img': '',
7791                            'description': ``,
7792                        }"
7793                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7794                        :class="{
7795                            'text-primary-500 font-semibold': history.includes('custom-child-25')
7796                        }">
7797                        <span
7798                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7799                            <!-- DEBUG: Logo =  -->
7800                                                        Plaquettes                        </span>
7801                    </a>
7802                            </li>
7803                                <li>
7804                                    <a
7805                                                href="/tutos-mecanique/v
7805ideo/la-moto-de-rallye"
7806                        role="link"
7807                        x-element-transition-trigger:category.animate="{
7808                            'title': `La moto de rallye`,
7809                            'url': '/tutos-mecanique/video/la-moto-de-rallye',
7810                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Tutos&#x20;m&#x5C;u00e9canique&quot;,&quot;url&quot;&#x3A;&quot;&#x5C;&#x2F;tutos&quot;&#x7D;&#x5D;,
7811                            'img': '',
7812                            'description': ``,
7813                        }"
7814                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7815                        :class="{
7816                            'text-primary-500 font-semibold': history.includes('custom-child-26')
7817                        }">
7818                        <span
7819                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7820                            <!-- DEBUG: Logo =  -->
7821                                                        La moto de rallye                        </span>
7822                    </a>
7823                            </li>
7824                                <li>
7825                                    <a
7826                                                href="/tutos-mecanique/video/nettoyage-du-filtre-a-air"
7827                        role="link"
7828                        x-element-transition-trigger:category.animate="{
7829                            'title': `Nettoyage du filtre à air`,
7830                            'url': '/tutos-mecanique/video/nettoyage-du-filtre-a-air',
7831                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Tutos&#x20;m&#x5C;u00e9canique&quot;,&quot;url&quot;&#x3A;&quot;&#x5C;&#x2F;tutos&quot;&#x7D;&#x5D;,
7832                            'img': '',
7833                            'description': ``,
7834                        }"
7835                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7836                        :class="{
7837                            'text-primary-500 font-semibold': history.includes('custom-child-27')
7838                        }">
7839                        <span
7840                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7841                            <!-- DEBUG: Logo =  -->
7842                                                        Nettoyage du filtre à air                        </span>
7843                    </a>
7844                            </li>
7845                                <li>
7846                                    <a
7847                                                href="/tutos-mecanique/video/installation-dun-ventilateur"
7848                        role="link"
7849                        x-element-transition-trigger:category.animate="{
7850                            'title': `Installation d'un ventilateur`,
7851                            'url': '/tutos-mecanique/video/installation-dun-ventilateur',
7852                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Tutos&#x20;m&#x5C;u00e9canique&quot;,&quot;url&quot;&#x3A;&quot;&#x5C;&#x2F;tutos&quot;&#x7D;&#x5D;,
7853                            'img': '',
7854                            'description': ``,
7855                        }"
7856                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7857                        :class="{
7858                            'text-primary-500 font-semibold': history.includes('custom-child-28')
7859                        }">
7860                        <span
7861                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7862                            <!-- DEBUG: Logo =  -->
7863                                                        Installation d'un ventilateur                        </span>
7864                    </a>
7865                            </li>
7866                                <li>
7867                                    <a
7868                                                href="/tutos-mecanique/v
7868ideo/remplacement-de-kits-chaine"
7869                        role="link"
7870                        x-element-transition-trigger:category.animate="{
7871                            'title': `Remplacement de Kits chaîne`,
7872                            'url': '/tutos-mecanique/video/remplacement-de-kits-chaine',
7873                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Tutos&#x20;m&#x5C;u00e9canique&quot;,&quot;url&quot;&#x3A;&quot;&#x5C;&#x2F;tutos&quot;&#x7D;&#x5D;,
7874                            'img': '',
7875                            'description': ``,
7876                        }"
7877                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7878                        :class="{
7879                            'text-primary-500 font-semibold': history.includes('custom-child-29')
7880                        }">
7881                        <span
7882                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7883                            <!-- DEBUG: Logo =  -->
7884                                                        Remplacement de Kits chaîne                        </span>
7885                    </a>
7886                            </li>
7887                                <li>
7888                                    <a
7889                                                href="/tutos-mecanique/video/entretenir-les-roulements-de-direction"
7890                        role="link"
7891                        x-element-transition-trigger:category.animate="{
7892                            'title': `Entretenir les roulements de direction`,
7893                            'url': '/tutos-mecanique/video/entretenir-les-roulements-de-direction',
7894                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Tutos&#x20;m&#x5C;u00e9canique&quot;,&quot;url&quot;&#x3A;&quot;&#x5C;&#x2F;tutos&quot;&#x7D;&#x5D;,
7895                            'img': '',
7896                            'description': ``,
7897                        }"
7898                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7899                        :class="{
7900                            'text-primary-500 font-semibold': history.includes('custom-child-30')
7901                        }">
7902                        <span
7903                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7904                            <!-- DEBUG: Logo =  -->
7905                                                        Entretenir les roulements de direction                        </span>
7906                    </a>
7907                            </li>
7908                                <li>
7909                                    <a
7910                                                href="/tutos-mecanique/video/entretien-toutes-les-15h-de-sa-moto"
7911                        role="link"
7912                        x-element-transition-trigger:category.animate="{
7913                            'title': `Entretien toutes les 15H de sa moto`,
7914                            'url': '/tutos-mecanique/video/entretien-toutes-les-15h-de-sa-moto',
7915                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Tutos&#x20;m&#x5C;u00e9canique&quot;,&quot;url&quot;&#x3A;&quot;&#x5C;&#x2F;tutos&quot;&#x7D;&#x5D;,
7916                            'img': '',
7917                            'description': ``,
7918                        }"
7919                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7920                        :class="{
7921                            'text-primary-500 font-semibold': history.includes('custom-child-31')
7922                        }">
7923                        <span
7924                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7925                            <!-- DEBUG: Logo =  -->
7926                                                        Entretien toutes les 15H de sa moto                        </span>
7927                    </a>
7928                            </li>
7929                                <li>
7930                                    <a
7931                                                href="/tutos-mecanique/v
7931ideo/changement-du-piston"
7932                        role="link"
7933                        x-element-transition-trigger:category.animate="{
7934                            'title': `Changement du piston`,
7935                            'url': '/tutos-mecanique/video/changement-du-piston',
7936                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Tutos&#x20;m&#x5C;u00e9canique&quot;,&quot;url&quot;&#x3A;&quot;&#x5C;&#x2F;tutos&quot;&#x7D;&#x5D;,
7937                            'img': '',
7938                            'description': ``,
7939                        }"
7940                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7941                        :class="{
7942                            'text-primary-500 font-semibold': history.includes('custom-child-32')
7943                        }">
7944                        <span
7945                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7946                            <!-- DEBUG: Logo =  -->
7947                                                        Changement du piston                        </span>
7948                    </a>
7949                            </li>
7950                                <li>
7951                                    <a
7952                                                href="/tutos-mecanique/video/roulements-de-direction"
7953                        role="link"
7954                        x-element-transition-trigger:category.animate="{
7955                            'title': `ROULEMENTS DE DIRECTION`,
7956                            'url': '/tutos-mecanique/video/roulements-de-direction',
7957                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Tutos&#x20;m&#x5C;u00e9canique&quot;,&quot;url&quot;&#x3A;&quot;&#x5C;&#x2F;tutos&quot;&#x7D;&#x5D;,
7958                            'img': '',
7959                            'description': ``,
7960                        }"
7961                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7962                        :class="{
7963                            'text-primary-500 font-semibold': history.includes('custom-child-33')
7964                        }">
7965                        <span
7966                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7967                            <!-- DEBUG: Logo =  -->
7968                                                        ROULEMENTS DE DIRECTION                        </span>
7969                    </a>
7970                            </li>
7971                                <li>
7972                                    <a
7973                                                href="/tutos-mecanique/video/entretien-kit-chaine"
7974                        role="link"
7975                        x-element-transition-trigger:category.animate="{
7976                            'title': `Entretien kit chaîne`,
7977                            'url': '/tutos-mecanique/video/entretien-kit-chaine',
7978                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Tutos&#x20;m&#x5C;u00e9canique&quot;,&quot;url&quot;&#x3A;&quot;&#x5C;&#x2F;tutos&quot;&#x7D;&#x5D;,
7979                            'img': '',
7980                            'description': ``,
7981                        }"
7982                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
7983                        :class="{
7984                            'text-primary-500 font-semibold': history.includes('custom-child-34')
7985                        }">
7986                        <span
7987                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
7988                            <!-- DEBUG: Logo =  -->
7989                                                        Entretien kit chaîne                        </span>
7990                    </a>
7991                            </li>
7992                                <li>
7993                                    <a
7994                                                x-a11y-trap-target.end="$store.resizable.isVisible('menu-desktop') && !$store.main.isMobile && history.length > 0 && history[history.length - 1] === 'custom-link-1'"
7995                                                href="/tutos-mecanique/v
7995ideo/presentation-ktm-450-rally-replica-2025"
7996                        role="link"
7997                        x-element-transition-trigger:category.animate="{
7998                            'title': `Présentation KTM 450 Rally Replica 2025`,
7999                            'url': '/tutos-mecanique/video/presentation-ktm-450-rally-replica-2025',
8000                            'breadcrumbs': &#x5B;&#x7B;&quot;title&quot;&#x3A;&quot;Tutos&#x20;m&#x5C;u00e9canique&quot;,&quot;url&quot;&#x3A;&quot;&#x5C;&#x2F;tutos&quot;&#x7D;&#x5D;,
8001                            'img': '',
8002                            'description': ``,
8003                        }"
8004                        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
8005                        :class="{
8006                            'text-primary-500 font-semibold': history.includes('custom-child-35')
8007                        }">
8008                        <span
8009                            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600">
8010                            <!-- DEBUG: Logo =  -->
8011                                                        Présentation KTM 450 Rally Replica 2025                        </span>
8012                    </a>
8013                            </li>
8014                        </ul>
8015
8016    <div class="h-20 md:hidden"></div>
8017            <template
8018            x-portal="$store.main.isMobile ? document.getElementById('popup-fixed-content-portal') : document.getElementById('menu-actions-custom-link-1')">
8019            <div
8020                class="bg-bg-500 px-4 pb-2 transition-colors duration-200 md:bg-transparent md:hover:text-primary-600 md:p-0"
8021                x-transition.opacity
8022                x-show="$store.main.isMobile ? history[history.length - 1] === 'custom-link-1' && !getIsSearchActive() : history.includes('custom-link-1')"
8023                role="link">
8024                <a
8025                    x-element-transition-trigger
8026                    class="button bg-white border border-primary-500 text-primary-500 w-full hover:bg-primary-500 hover:text-white hover:scale-105 transition-all duration-200"
8027                    href="/tutos">
8028                    <template x-if="$store.main.isMobile">
8029                        <span>Tout voir <span class="lowercase">Tutos mécanique</span></span>
8030                    </template>
8031                    <template x-if="!$store.main.isMobile">
8032                        <span class="flex items-center text-center capitalize">
8033                            <span class='border-current'>
8034                                Tout voir                                <br />
8035                                <span>Tutos mécanique</span>
8036                            </span>
8037                        </span>
8038                    </template>
8039                </a>
8040            </div>
8041        </template>
8042    </div>
8043                    </template>
8044                            </li>
8045                        </ul>
8046
8047    <div class="h-20 md:hidden"></div>
8048    </div>
8049    </div>
8050</nav>
8051      </div>
8052    </template>
8053  </template>
8054</div>
8055
8056
8057
8058            
8059<div
8060  class="contents"
8061  x-init="
8062    $store.popup._registerPopup({
8063      id: 'account',
8064      isFocused: true,
8065      isFullScreen: true,
8066      isAlwaysVisible: false,
8067      isPreventOverlayClose: false    });
8068  "
8069>
8070  <template x-portal="$store.main.isMobile ? document.getElementById('popup-content-portal') : document.getElementById('account-desktop')">
8071    <template x-if="$store.main.isMobile ? $store.popup._nextPopup === 'account' : true">
8072      <div
8073        class="contents "
8074        id="account"
8075      >
8076        <!-- BLOCK account\customer_0 -->
8077<div
8078  :inert="$store.main.isMobile ? $store.popup.currentPopup !== 'account' : !$store.resizable.isVisible('account-desktop')"
8079  class="contents">
8080  <div
8081    class="flex flex-col gap-5 rounded-md p-5 md:w-[--account-width] bg-bg-500 md:gap-0 md:px-0 md:py-0 max-md:py-0 [.popup\_\_main_&]:px-2">
8082    <div
8083      class="flex items-center justify-between bg-bg-500 md:h md:pt-5 md:pb-4 md:px-6 md:h-[--initial-height] md:min-
8083h-14 md:rounded-md sticky top-0 z-20">
8084      <h2 class="flex items-center text-lg text-text-500 md:text-md md:pl-2 md:pr-[10px] md:py-3">
8085        <span class="button__icon mr-4 text-[1.5rem] max-md:hidden">
8086          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
8087    <path d="M12.004 2a5 5 0 1 0 0 10 5 5 0 0 0 0-10Zm0 8a3 3 0 1 1 0-6 3 3 0 0 1 0 6Zm9 11v-1a7 7 0 0 0-7-7h-4a7 7 0 0 0-7 7v1h2v-1a5 5 0 0 1 5-5h4a5 5 0 0 1 5 5v1h2Z"/>
8088</svg>
8089        </span>
8090
8091        Compte      </h2>
8092    </div>
8093
8094    <div class="max-h-80 pb-4 md:pt-2 md:px-6">
8095      <template x-if="$store.main.isUserLoggedIn">
8096        <div class="flex flex-col gap-3">
8097          
8098    <a
8099        x-element-transition-trigger
8100        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
8101        href="https://www.esprit-ktm.com/customer/account/"
8102        role="link"
8103    >
8104        <span
8105            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600"
8106        >
8107            Mon compte        </span>
8108    </a>
8109
8110<a
8111    x-element-transition-trigger
8112    class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1 relative"
8113    href="https://www.esprit-ktm.com/wishlist/"
8114    role="link"
8115    x-data="{ itemCount: 0 }"
8116    @private-content-loaded.window="itemCount = parseInt($event.detail.data.wishlist.counter)"
8117>
8118    <span
8119        class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600"
8120    >
8121        Ma liste d&#039;achats        <template x-if="itemCount">
8122            <span class="tabular-nums" x-text="`(${itemCount})`"></span>
8123        </template>
8124    </span>
8125</a>
8126
8127    <a
8128        x-element-transition-trigger
8129        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
8130        href="https://www.esprit-ktm.com/sales/order/history/"
8131        role="link"
8132    >
8133        <span
8134            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600"
8135        >
8136            Mes commandes        </span>
8137    </a>
8138
8139    <a
8140        x-element-transition-trigger
8141        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
8142        href="https://www.esprit-ktm.com/customer/address/"
8143        role="link"
8144    >
8145        <span
8146            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600"
8147        >
8148            Carnet d&#039;adresses        </span>
8149    </a>
8150
8151<span id="customer.header.sign.out.delimiter"
8152      class="delimiter block border-b border-container w-full my-2"
8153></span>
8154
8155    <a
8156        x-element-transition-trigger
8157        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
8158        href="https://www.esprit-ktm.com/customer/account/logout/"
8159        role="link"
8160    >
8161        <span
8162            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600"
8163        >
8164            Déconnexion        </span>
8165    </a>
8166        </div>
8167      </template>
8168
8169      <template x-if="!$store.main.isUserLoggedIn">
8170        <div class="flex flex-col gap-3">
8171          
8172<a
8173    x-element-transition-trigger
8174    class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
8175    onclick="hyva.setCookie && hyva.setCookie(
8176        'login_redirect',
8177        window.location.href,
8178        1
8179        )"
8180    href="https://www.esprit-ktm.com/customer/account/index/"
8181    role="link"
8182>
8183    <span
8184        class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600"
8185    >
8186        Se connecter    </span>
8187</a>
8188
8189    <a
8190        x-element-transition-trigger
8191        class="focus-visible:focus-ring group flex min-h-11 items-center justify-between py-1"
8192        href="https://www.esprit-ktm.com/customer/account/create/"
8193        role="link"
8194    >
8195        <span
8196            class="link max-w-full truncate border-transparent transition-colors md:group-hover:border-b-1 md:group-hover:border-current md:group-hover:text-primary-600"
8197        >
8198            Créer un compte        </span>
8199    </a>
8200        </div>
8201      </template>
8202    </div>
8203  </div>
8204</div><!-- /BLOCK account\customer_0 -->      </div>
8205    </template>
8206  </template>
8207</div>
8208
8209            
8210<div
8211  class="contents"
8212  x-init="
8213    $store.popup._registerPopup({
8214      id: 'cart',
8215      isFocused: true,
8216      isFullScreen: true,
8217      isAlwaysVisible: false,
8218      isPreventOverlayClose: false    });
8219  "
8220>
8221  <template x-portal="$store.main.isMobile ? document.getElementById('popup-content-portal') : document.getElementById('cart-desktop')">
8222    <template x-if="$store.main.isMobile ? $store.popup._nextPopup === 'cart' : true">
8223      <div
8224        class="contents "
8225        id="cart"
8226      >
8227        
8228<div
8229        :inert="$store.main.isMobile ? $store.popup.currentPopup !== 'cart' : !$store.resizable.isVisible('cart-desktop')"
8230        x-data="{
8231        get cartItems() { return $store.cart.cartItems },
8232        get isCartEmpty() { return !$store.cart.cartItems.length },
8233        get isRemoveContent() { return !$store.cart.cartItems.length },
8234        isTotalsExpanded: false
8235    }"
8236    class="contents">
8237    <div
8238        class="flex flex-col gap-5 rounded-md p-5 md:w-[--minicart-width] bg-bg-500 md:gap-0 md:px-0 md:py-0 max-md:py-0 [.popup\_\_main_&]:px-2">
8239        <div
8240            class="flex items-center justify-between bg-bg-500 md:h-[--initial-height] md:min-h-14 md:rounded-md md:pt-5 md:pb-4 md:px-6 sticky top-0 z-20">
8241            <h2 class="flex items-center t
8242      ext-lg text-text-500 md:pl-2 md:pr-[10px] md:py-3 md:text-md">
8243                                    <span class="button__icon mr-4 text-[1.5rem] max-md:hidden">
8244                        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
8245    <path d="M5 22h14c1.103 0 2-.897 2-2V9a1 1 0 0 0-1-1h-3V7c0-2.757-2.243-5-5-5S7 4.243 7 7v1H4a1 1 0 0 0-1 1v11c0 1.103.897 2 2 2zM9 7c0-1.654 1.346-3 3-3s3 1.346 3 3v1H9V7zm-4 3h2v2h2v-2h6v2h2v-2h2l.002 10H5V10z">
8246    </path>
8247</svg>
8248                    </span>
8249                
8250                Panier d'achat            </h2>
8251            <template x-if="!isCartEmpty">
8252                <div
8253                    class="delay-800 mr-1 flex justify-center align-middle transition-all duration-300 "
8254                    :class="{'opacity-0': isCartEmpty}">
8255                    <a
8256                        href="https://www.esprit-ktm.com/checkout/cart/"
8257                        x-element-transition-trigger
8258                        class="link link--ghost">
8259                        Voir le panier                        <span
8260                            x-text="`(${cartItems.reduce((total, item) => total + Number(item.qty), 0)})`"
8261                            class="mr-1"></span>
8262                    </a>
8263                </div>
8264            </template>
8265        </div>
8266
8267        <div
8268            class="max-h-0 pb-0 opacity-0"
8269            :class="{
8270                'opacity-0 max-h-0 pb-0': !isCartEmpty,
8271                'opacity-1 max-h-80 pb-4 md:px-6': isCartEmpty,
8272                'hidden': !isRemoveContent
8273            }"
8274            x-init="
8275                    $watch('$store.popup.currentPopup', (value) => {
8276                        isCartVisible = value === 'cart';
8277                    })
8278                ">
8279            <p>
8280                Vous n'avez pas encore ajouté de produits au panier !            </p>
8281            <a aria-label="Retourner à la boutique"
8282                class="button button--filled-primary w-full md:hidden mt-4"
8283                href="#"
8284                @click.prevent="!isCartVisible ? $store.cart.showCart() : $store.cart.hideCart()">
8285                <span>Retourner à la boutique</span>
8286            </a>
8287        </div>
8288        <div
8289            class=" transition-opacity duration-300"
8290            :class="{
8291                'opacity-0': isCartEmpty,
8292                'opacity-1': !isCartEmpty,
8293                'hidden': isRemoveContent
8294            }"
8295            @transitionend="isRemoveContent = isCartEmpty">
8296            <div class="contents ">
8297                
8298<script>
8299    // var (not const): this template can be injected more than once per page (section reloads /
8300    // preview transitions) — a top-level const would throw "already been declared".
8301    var queryName = "productCustomDataEsprit";
8302    var stockAttr = "ham_stock";
8303    var dateAttr = "ham_date";
8304
8305    function graphQlCart() {
8306        return {
8307            loadingGraph: false,
8308            productData: {},
8309            _intervalId: null,
8310
8311            init($watch) {
8312                this.loadCache();
8313                this.updateHamData(this.cartItems || []);
8314
8315                // Watch Alpine cartItems
8316                if (typeof $watch === 'function') {
8317                    $watch('cartItems', value => this.updateHamData(value))
8318                } else {
8319                    this.$nextTick(() => this.updateHamData(this.cartItems));
8320                }
8321
8322                // Refresher périodique toutes les 1 heures
8323                const hours = 3600000;
8324                this._intervalId = setInterval(() => {
8325                    console.debug("🛒 - Cart Refresher");
8326                    const cartSkus = (this.cartItems || []).map(i => i.product_sku);
8327                    const needRefresh = cartSkus.some(sku => this.isExpired(this.productData[sku]));
8328                    if (needRefresh) this.updateHamData(this.cartItems);
8329                }, hours);
8330
8331                this.$nextTick(() => {
8332                    this.$el.addEventListener('alpine:destroy', () => clearInterval(this._intervalId));
8333                });
8334            },
8335
8336            /* ---------------- Cache ---------------- */
8337            loadCache() {
8338                try {
8339                    this.productData = JSON.parse(localStorage.getItem('mini_productData') || '{}');
8340                } catch {
8341                    this.productData = {};
8342                }
8343            },
8344            saveCache() {
8345                try {
8346                    localStorage.setItem('mini_productData', JSON.stringify(this.productData));
8347                } catch {}
8348            },
8349            isExpired(entry) {
8350                return !entry || !entry.fetchedAt || ((Date.now() / 1000 - entry.fetchedAt) > 3600);
8351            },
8352
8353            /* ---------------- Fetch GraphQL ---------------- */
8354            async fetchAvailability(skusToFetch) {
8355                if (!skusToFetch.length || this.loadingGraph) return;
8356                this.loadingGraph = true;
8357
8358                const query = `
8359                    {
8360                        ${queryName}(skus: ${JSON.stringify(skusToFetch)}) {
8361                            sku
8362                            ${stockAttr}
8363                            ${dateAttr}
8364                            salable_qty
8365                            special_from_date
8366                            special_to_date
8367                            news_from_date
8368                            news_to_date
8369                            regular_price
8370                            final_price
8371                        }
8372                    }
8373                `;
8374
8375                try {
8376                    const res = await fetch('/graphql', {
8377                        method: 'POST',
8378                        headers: {
8379                            'Content-Type': 'application/json',
8380                            "Store": CURRENT_STORE_CODE || "esprit_motoshop_fr"
8381                        },
8382                        body: JSON.stringify({
8383                            query
8384                        })
8385                    });
8386                    const json = await res.json();
8387
8388                    if (json.data?.[queryName]?.length) {
8389                        json.data[queryName].forEach(prod => {
8390                            this.productData[prod.sku] = {
8391                                ...prod,
8392                                fetchedAt: Math.floor(Date.now() / 1000),
8393                                product_hamDispo: this.calcHamData(prod),
8394                                product_news: this.calcNews(prod),
8395                                product_special: {
8396                                    from: prod.special_from_date,
8397                                    to: prod.special_to_date,
8398                                    percentage: (prod.regular_price && prod.final_price && prod.regular_price > 0) ?
8399                                        Math.round((prod.regular_price - prod.final_price) * 100 / prod.regular_price) : 0,
8400                                }
8401                            };
8402                        });
8403
8404                        // Mettre à jour immédiatement les items
8405                        this.saveCache();
8406                    }
8407                } catch (e) {
8408                    console.error('GraphQL fetch error', e);
8409                } finally {
8410                    this.loadingGraph = false;
8411                }
8412            },
8413
8414            /* ---------------- Calcul des données ---------------- */
8415            updateHamData(cartItems) {
8416                if (!cartItems?.length) return;
8417
8418                const skusToFetch = [];
8419                cartItems.forEach(item => {
8420                    const data = this.productData[item.product_sku];
8421                    if (this.isExpired(data)) {
8422                        skusToFetch.push(item.product_sku);
8423                    }
8424                });
8425
8426                if (skusToFetch.length) this.fetchAvailability(skusToFetch);
8427            },
8428            calcHamData(data) {
8429                // rawStatus mirrors Ham\Catalog\Helper\Dispo::getDispo() so the
8430                // availability pill renders with the exact same colors/labels as
8431                // the category listing pastilles.
8432                let rawStatus = 'standard',
8433                    delais = 'bg-green-300',
8434                    delaisLabel = "5/6 jours",
8435                    display = '';
8436
8437                if (data.salable_qty > 0) {
8438                    rawStatus = 'instock';
8439                    delais = 'bg-green-300';
8440                    delaisLabel = "48H";
8441                } else if (data[stockAttr] == 25339) {
8442                    rawStatus = 'standard';
8443                    delais = 'bg-green-300';
8444                    delaisLabel = "5/6 jours";
8445                } else if (data[stockAttr] == 25340) {
8446                    rawStatus = 'delais';
8447                    delais = 'bg-yellow-300';
8448                    delaisLabel = data[dateAttr] ? this.cleanHamDate(data[dateAttr]) : "Délais rallongés";
8449                } else if (data[stockAttr] == 27658) {
8450                    rawStatus = 'unavailable';
8451                    delais = 'bg-red-300';
8452                    delaisLabel = "Non disponible";
8453                }
8454
8455                return {
8456                    rawStatus,
8457                    delais,
8458                    delaisLabel,
8459                    display
8460                };
8461            },
8462            calcNews(data) {
8463                if (!data.news_from_date || !data.news_to_date) return false;
8464                const now = new Date();
8465                return now >= new Date(data.news_from_date) && now <= new Date(data.news_to_date);
8466            },
8467            cleanHamDate(hamDate) {
8468                if (!hamDate) return "Délais rallongés";
8469                const date = new Date(hamDate);
8470                if (isNaN(date)) return "Délais rallongés";
8471                return date.toLocaleDateString(document.documentElement.lang, {
8472                    year: 'numeric',
8473                    month: 'long',
8474                    day: 'numeric'
8475                });
8476            }
8477        }
8478    }
8479</script>
8479
8480
8481<div
8482    class="flex flex-col gap-5 md:overflow-auto md:max-h-[calc(100dvh-225px)] md:px-4">
8483    <div class="text-error -mt-4 -mb-2 md:mt-0 md:-mb-5"
8484        x-text="$store.cart.errorMessage"
8485        x-show="$store.cart.errorMessage.length"
8486        x-transition></div>
8487
8488    <div x-data="graphQlCart()" x-init="init($watch);"
8489        class="flex flex-col gap-5 md:pt-4 pb-5 md:pb-4">
8490        <template x-for="item in cartItems" :key="item.item_id">
8491            <div :key="item.item_id"
8492                class="card-hover group max-h-80  transition-all duration-300"
8493                :class="{
8494                    'opacity-0 -mt-5 md:-mt-4 max-h-0 overflow-hidden': item.isDeleted,
8495                    'max-h-80': !item.isDeleted,
8496                    'md:animate-[pop_300ms_1000ms_ease-in-out_forwards] animate-[pop_300ms_400ms_ease-in-out_forwards]': Date.now() < item.focusedUntil
8497                }">
8498                <a :href="item.product_has_url ? item.product_url : '#'; "
8499                    class="grid grid-cols-[94px_1fr] content-center gap-5 rounded-md "
8500                    x-element-transition-trigger:product.animate="{'productImg': item.product_image.src,'title': item.product_name}">
8501                    <div class="relative overflow-hidden rounded-md bg-[--fade-in-bg]">
8502                        <template x-if="item.product_image.src">
8503                            <img :src="item.product_image.src"
8504                                class="aspect-product h-full w-full object-cover object-center transition-transform duration-300 md:group-hover:scale-105 mix-blend-darken"
8505                                loading="lazy" alt="">
8506                        </template>
8507
8508                        <!-- New -->
8509                        <template x-if="productData[item.product_sku]?.product_news">
8510    <div class="card-product__badge-container text-white bg-primary-600 z-10 rounded-[40px] px-3 text-sm min-h-[18px] py-1 top right"
8511        x-element-transition-skip='{"transformOrigin": "right top"}'>
8512        <span class="font-semibold">
8513            NOUVEAU        </span>
8514    </div>
8515</template>
8516
8517                        <!-- Promo -->
8518                        
8519<template x-if="productData[item.product_sku]?.product_special?.percentage">
8520    <div class="card-product__badge-container text-white bg-primary-600 z-10 rounded-[40px] px-3 text-sm min-h-[18px] py-1 top left"
8521        x-element-transition-skip='{"transformOrigin": "left top"}'>
8522        <span class="font-semibold">
8523            - <span x-text="productData[item.product_sku]?.product_special?.percentage"></span>%
8524        </span>
8525    </div>
8526</template>
8527
8528                        <div class="absolute bottom-5 left-1/2 hidden max-w-min -translate-x-1/2 items-center gap-3 ">
8529                            
8530<button
8531    type="button"
8532    class="button button--outline-secondary icon-button icon-button--size-sm bg-bg-500"
8533    :aria-label="item.qty < 2 ? `Retirer du panier` : `Diminuer la quantité`"
8534    @click.prevent.stop="$store.cart.decreaseQty(item.item_id);"
8535    @transitionend.stop
8536    :aria-busy="$store.cart.isLoading"
8537    x-show="!/^FREE\s*!$/i.test((item.message || '').trim())">
8538    <span
8539        :class="{ 'hidden': item.qty > 1 }"
8540        x-show="item.qty < 2">
8541        <svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" stroke="currentColor" stroke-width="0" aria-hidden="true" class="icon icon-remove" viewBox="0 0 24 24" width="24" height="24" role="img">
8542    <path stroke="none" d="M15 2H9c-1.103 0-2 .897-2 2v2H3v2h2v12c0 1.103.897 2 2 2h10c1.103 0 2-.897 2-2V8h2V6h-4V4c0-1.103-.897-2-2-2zM9 4h6v2H9V4zm8 16H7V8h10v12z"/>
8543</svg>
8544    </span>
8545    <span
8546        :class="{ 'hidden': item.qty < 2 }"
8547        x-show="item.qty > 1">
8548        <svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" stroke="currentColor" stroke-width="0" aria-hidden="true" class="contrast-more:text-secondary-700" viewBox="0 0 24 24" width="24" height="24" role="img">
8549    <path stroke="none" d="M5 11h14v2H5z"/>
8550</svg>
8551    </span>
8552</button>
8553<label
8554    :for="`quantity_${item.item_id}-cart`"
8555    class="sr-only tracking-widest">
8556    Quantité</label>
8557<input
8558    type="number"
8559    name="quantity"
8560    class="input__field h-9 min-w-14 basis-14 text-center"
8561    min="0"
8562    :id="`quantity_${item.item_id}-cart`"
8563    x-model="item.qty"
8564    @click.prevent.stop=""
8565    @change="if (!/^FREE\s*!$/i.test((item.message || '').trim())) { $store.cart.setQty($event.target.value, item.item_id) }"
8566    :readonly="/^FREE\s*!$/i.test((item.message || '').trim())"
8567    aria-label="{$escaper->escapeHtml(__('Quantity'))}"
8568    :aria-busy="$store.cart.isLoading">
8569<button
8570    type="button"
8571    class="button button--outline-secondary icon-button icon-button--size-sm bg-bg-500"
8572    aria-label="Augmenter"
8573    @click.prevent.stop="$store.cart.increaseQty(item.item_id)"
8574    :aria-busy="$store.cart.isLoading"
8575    x-show="!/^FREE\s*!$/i.test((item.message || '').trim())">
8576    <svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" stroke="currentColor" stroke-width="0" aria-hidden="true" class="contrast-more:text-secondary-700" viewB
8576ox="0 0 24 24" width="24" height="24" role="img">
8577    <path stroke="none" d="M19 11h-6V5h-2v6H5v2h6v6h2v-6h6z"/>
8578</svg>
8579</button>
8580                        </div>
8581                    </div>
8582
8583                    <div class="flex min-w-0 flex-col items-stretch justify-center gap-5  z-10">
8584                        <div class="w-full">
8585                            <h2 class="text-md text-text-500 ">
8586                                <span x-text="(new DOMParser()).parseFromString(item.product_name, 'text/html').documentElement.textContent"></span>
8587                            </h2>
8588                            <template x-if="item.options.length">
8589                                <template x-for="(option, o) in item.options" :key="o">
8590                                    <p
8591                                        x-show="option.value != '0'"
8592                                        class="mt-0.5 text-sm text-text-400 truncate"
8593                                        x-text="`${option.label}: ${Array.isArray(option.value) ? option.value.join(', ') : option.value}`"></p>
8594                                </template>
8595                            </template>
8596                            <p class="text-[14px] text-error"
8597                                x-show="item.message && !/^FREE\s*!$/i.test((item.message || '').trim())"
8598                                x-text="item.message"></p>
8599
8600                            
8601                            <!-- Dispo + prix : sous le titre, sur la même ligne (mini-cart toujours, panier mobile uniquement - desktop la groupe plus bas) -->
8602                            <div class="mt-2 flex flex-wrap items-center justify-between gap-3 ">
8603                                <template x-if="productData[item.product_sku]?.product_hamDispo && productData[item.product_sku]?.product_hamDispo.display !== 'hidden' && productData[item.product_sku]?.product_hamDispo.delaisLabel">
8604    <div
8605        class="inline-flex w-fit items-center gap-1 rounded-full px-2.5 py-1 text-[11px] font-semibold transition-colors duration-200 "
8606        :class="{
8607            'bg-green-600 text-white': productData[item.product_sku]?.product_hamDispo.rawStatus === 'instock',
8608            'bg-green-100 text-green-700': productData[item.product_sku]?.product_hamDispo.rawStatus === 'standard',
8609            'bg-yellow-100 text-yellow-700': productData[item.product_sku]?.product_hamDispo.rawStatus === 'delais',
8610            'bg-red-100 text-red-700': productData[item.product_sku]?.product_hamDispo.rawStatus === 'unavailable',
8611        }">
8612        <template x-if="productData[item.product_sku]?.product_hamDispo.rawStatus !== 'unavailable'">
8613            <svg class="h-3.5 w-3.5 fill-none stroke-2" stroke="currentColor" viewBox="0 0 24 24" aria-hidden="true">
8614                <path stroke-linecap="round" stroke-linejoin="round" d="M8.25 18.75a1.5 1.5 0 0 1-3 0m3 0a1.5 1.5 0 0 0-3 0m3 0h6m-9 0H3.375a1.125 1.125 0 0 1-1.125-1.125V14.25m17.25 4.5a1.5 1.5 0 0 1-3 0m3 0a1.5 1.5 0 0 0-3 0m3 0h1.125c.621 0 1.125-.504 1.125-1.125v-3.026a2.999 2.999 0 0 0-.879-2.121l-2.246-2.246A2.999 2.999 0 0 0 16.5 8.252H15M2.25 14.25V5.625c0-.621.504-1.125 1.125-1.125h9.75c.621 0 1.125.504 1.125 1.125v8.625" />
8615            </svg>
8616        </template>
8617        <template x-if="productData[item.product_sku]?.product_hamDispo.rawStatus === 'unavailable'">
8618            <svg class="h-3.5 w-3.5 fill-none stroke-2" stroke="currentColor" viewBox="0 0 24 24" aria-hidden="true">
8619                <path stroke-linecap="round" stroke-linejoin="round" d="M18.364 18.364A9 9 0 0 0 5.636 5.636m12.728 12.728A9 9 0 0 1 5.636 5.636m12.728 12.728L5.636 5.636" />
8620            </svg>
8621        </template>
8622        <span x-text="productData[item.product_sku]?.product_hamDispo.delaisLabel"></span>
8623    </div>
8624</template>
8625                                <div class="minicart-item-price" x-html="/^FREE\s*!$/i.test((item.message || '').trim()) ? 'GRATUIT\u0020\u0021' : (item.product_price_html || hyva.formatPrice(item.product_price_value))"></div>
8626                            </div>
8627                        </div>
8628
8629                        <div class="flex flex-wrap items-center justify-between ">
8630                            
8631                            <div class="flex max-w-min items-center gap-3 ">
8632                                
8633<button
8634    type="button"
8635    class="button button--outline-secondary icon-button icon-button--size-sm bg-bg-500"
8636    :aria-label="item.qty < 2 ? `Retirer du panier` : `Diminuer la quantité`"
8637    @click.prevent.stop="$store.cart.decreaseQty(item.item_id);"
8638    @transitionend.stop
8639    :aria-busy="$store.cart.isLoading"
8640    x-show="!/^FREE\s*!$/i.test((item.message || '').trim())">
8641    <span
8642        :class="{ 'hidden': item.qty > 1 }"
8643        x-show="item.qty < 2">
8644        <svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" stroke="currentColor" stroke-width="0" aria-hidden="true" class="icon icon-remove" viewBox="0 0 24 24" width="24" height="24" role="img">
8645    <path stroke="none" d="M15 2H9c-1.103 0-2 .897-2 2v2H3v2h2v12c0 1.103.897 2 2 2h10c1.103 0 2-.897 2-2V8h2V6h-4V4c0-1.103-.897-2-2-2zM9 4h6v2H9V4zm8 16H7V8h10v12z"/>
8646</svg>
8647    </span>
8648    <span
8649        :class="{ 'hidden': item.qty < 2 }"
8650        x-show="item.qty > 1">
8651        <svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" stroke="currentColor" stroke-width="0" aria-hidden="true" class="contrast-more:text-secondary-700" viewB
8651ox="0 0 24 24" width="24" height="24" role="img">
8652    <path stroke="none" d="M5 11h14v2H5z"/>
8653</svg>
8654    </span>
8655</button>
8656<label
8657    :for="`quantity_${item.item_id}-minicart`"
8658    class="sr-only tracking-widest">
8659    Quantité</label>
8660<input
8661    type="number"
8662    name="quantity"
8663    class="input__field h-9 min-w-14 basis-14 text-center"
8664    min="0"
8665    :id="`quantity_${item.item_id}-minicart`"
8666    x-model="item.qty"
8667    @click.prevent.stop=""
8668    @change="if (!/^FREE\s*!$/i.test((item.message || '').trim())) { $store.cart.setQty($event.target.value, item.item_id) }"
8669    :readonly="/^FREE\s*!$/i.test((item.message || '').trim())"
8670    aria-label="{$escaper->escapeHtml(__('Quantity'))}"
8671    :aria-busy="$store.cart.isLoading">
8672<button
8673    type="button"
8674    class="button button--outline-secondary icon-button icon-button--size-sm bg-bg-500"
8675    aria-label="Augmenter"
8676    @click.prevent.stop="$store.cart.increaseQty(item.item_id)"
8677    :aria-busy="$store.cart.isLoading"
8678    x-show="!/^FREE\s*!$/i.test((item.message || '').trim())">
8679    <svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" stroke="currentColor" stroke-width="0" aria-hidden="true" class="contrast-more:text-secondary-700" viewBox="0 0 24 24" width="24" height="24" role="img">
8680    <path stroke="none" d="M19 11h-6V5h-2v6H5v2h6v6h2v-6h6z"/>
8681</svg>
8682</button>
8683                            </div>
8684                        </div>
8685                    </div>
8686                </a>
8687            </div>
8688        </template>
8689    </div>
8690</div>                <div class="h-[140px]"></div>
8691
8692                                    <template
8693                        x-portal="$store.main.isMobile ? document.getElementById('popup-fixed-content-portal') : document.getElementById('cart-desktop-fixed')">
8694                        <div
8695                            :inert="$store.main.isMobile ? $store.popup.currentPopup !== 'cart' : !$store.resizable.isVisible('cart-desktop')"
8696                            class="contents"
8697                            x-show="!$store.main.isMobile || $store.popup.currentPopup === 'cart'">
8698                            <div
8699                                class="relative px-4 md:rounded-b-md max-md:px-3"
8700                                x-show="!isCartEmpty">
8701                                <div class="contents"
8702    x-data="{
8703        excludingTaxMessage: 'HT',
8704        includingTaxMessage: 'TTC',
8705        get cartTotals() { return $store.cart.cartTotals }
8706    }">
8707    <div class="absolute left-0 right-0 top-0 origin-bottom -translate-y-[2.5rem] transition-all duration-700 motion-reduce:transition-none md:mb-0 md:w-full "
8708        :class="{
8709            '-translate-y-full': isTotalsExpanded,
8710            '-translate-y-[2.5rem] pointer-events-none': !isTotalsExpanded
8711        }"
8712                :style="{
8713                'clip-path': isTotalsExpanded ? 'inset(0 0 0 0)' : 'inset(0 0 50% 0)'
8714            }"
8715        >
8716        <div class="pointer-events-none  relative top-0 h-10 bg-gradient-to-t from-[#00000010] via-transparent to-transparent"></div>
8717        <div class="flex flex-col gap-4 bg-bg-500 px-4 pointer-events-none pt-4 [.popup\_\_wrapper--visible_&]:pointer-events-auto [.resizable--visible_&]:pointer-events-auto"
8718            :inert="!isTotalsExpanded">
8719            <div class="flex items-center justify-between pt-2">
8720                <h2 class="text-text-500">Résumé de la commande</h2>
8721                <button type="button"
8722                    class="button button--outline-secondary icon-button icon-button--size-xs "
8723                    :aria-label="isTotalsExpanded ? 'Replier' : 'Étendre'"
8724                    @click="isTotalsExpanded = !isTotalsExpanded"
8725                    @transitionend.stop>
8726                    <span :class="{ 'rotate-180': isTotalsExpanded }">
8727                        <svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" stroke="currentColor" stroke-width="0" aria-hidden="true" class="contrast-more:text-secondary-700" viewBox="0 0 24 24" width="24" height="24" role="img">
8728    <path stroke="none" d="m6.293 13.293 1.414 1.414L12 10.414l4.293 4.293 1.414-1.414L12 7.586z"/>
8729</svg>
8730                    </span>
8731                </button>
8732            </div>
8733
8734            <div class="flex flex-col gap-3">
8735                <template x-for="segment in cartTotals.total_segments"
8736                    :key="segment.code">
8737                    <div class="contents">
8738                        <template x-if="segment.code === 'subtotal'">
8739                            <div class="contents">
8740    <!-- display subtotal including and excluding tax -->
8741    <template x-if="cartTotals.review_totals_display_mode === 'both'">
8742        <div>
8743            <div class="flex justify-between">
8744                <p x-text="`${segment.title} (${excludingTaxMessage})`"></p>
8745                <p x-text="hyva.formatPrice(cartTotals.subtotal)"></p>
8746            </div>
8747
8748            <div class="flex justify-between">
8749                <p x-text="`${segment.title} (${includingTaxMessage})`"></p>
8750                <p x-text="hyva.formatPrice(cartTotals.subtotal_incl_tax)"></p>
8751            </div>
8752        </div>
8753    </template>
8754
8755    <!-- display subtotal excluding tax -->
8756    <template x-if="cartTotals.review_totals_display_mode === 'excluding'">
8757        <div class="flex justify-between">
8758            <p x-text="`${segment.title} (${excludingTaxMessage})`"></p>
8759            <p x-text="hyva.formatPrice(cartTotals.subtotal)"></p>
8760        </div>
8761    </template>
8762
8763    <!-- display subtotal including tax -->
8764    <template x-if="cartTotals.review_totals_display_mode === 'including'">
8765        <div class="flex justify-between">
8766            <p x-text="segment.title"></p>
8767            <p x-text="hyva.formatPrice(cartTotals.subtotal_incl_tax)"></p>
8768        </div>
8769    </template>
8770</div>
8771                        </template>
8772
8773                        <template x-if="segment.code === 'shipping'">
8774                            <div class="contents">
8775  <!-- display shipping including and excluding tax -->
8776  <template
8777    x-if="cartTotals.is_virtual === 0 && !!cartTotals.selected_shipping_method && cartTotals.review_shipping_display_mode === 'both'"
8778  >
8779    <div>
8780      <div class="flex justify-between">
8781        <p x-text="`${segment.title} (${excludingTaxMessage})`"></p>
8782        <p x-text="hyva.formatPrice(cartTotals.shipping_amount)"></p>
8783      </div>
8784
8785      <div class="flex justify-between">
8786        <p x-text="`${segment.title} (${includingTaxMessage})`"></p>
8787        <p x-text="hyva.formatPrice(cartTotals.shipping_incl_tax)"></p>
8788      </div>
8789    </div>
8790  </template>
8791
8792  <!-- display shipping excluding tax -->
8793  <template
8794    x-if="cartTotals.is_virtual === 0 && !!cartTotals.selected_shipping_method && cartTotals.review_shipping_display_mode === 'excluding'"
8795  >
8796    <div class="flex justify-between">
8797      <p x-text="segment.title"></p>
8798      <p x-text="hyva.formatPrice(segment.value)"></p>
8799    </div>
8800  </template>
8801
8802  <!-- display shipping including tax -->
8803  <template
8804    x-if="cartTotals.is_virtual === 0 && !!cartTotals.selected_shipping_method && cartTotals.review_shipping_display_mode === 'including'"
8805  >
8806    <div class="flex justify-between">
8807      <p x-text="segment.title"></p>
8808      <p x-text="hyva.formatPrice(cartTotals.shipping_incl_tax)"></p>
8809    </div>
8810  </template>
8811</div>                        </template>
8812
8813
8814                        <template x-if="segment.code === 'tax'">
8815                            <div class="contents">
8816  <template x-if="(segment.value > 0 || cartTotals.is_zero_tax_displayed)">
8817    <div>
8818      <template x-if="!(segment.value > 0 && cartTotals.is_full_tax_summary_displayed)">
8819        <div class="flex justify-between">
8820          <p x-text="segment.title"></p>
8821          <p x-text="hyva.formatPrice(segment.value)"></p>
8822        </div>
8823      </template>
8824
8825      <template x-if="segment.value > 0 && cartTotals.is_full_tax_summary_displayed">
8826        <div>
8827
8828          <div class="flex justify-between">
8829            <p x-text="segment.title"></p>
8830            <p x-text="hyva.formatPrice(segment.value)"></p>
8831          </div>
8832
8833          <div class="flex justify-between">
8834            <p x-text="segment.title"></p>
8835            <p x-text="hyva.formatPrice(segment.value)"></p>
8836          </div>
8837
8838
8839          <template
8840            x-for="(taxItem, index) in segment.extension_attributes.tax_grandtotal_details"
8841            :key="index"
8842          >
8843
8844            <div class="flex justify-between">
8845              <div>
8846                <template x-for="(taxRate, index) in taxItem.rates">
8847                  <p x-text="`${taxRate.title} (${taxRate.percent}%)`"></p>
8848                </template>
8849              </div>
8850              <p x-text="hyva.formatPrice(taxItem.amount)"></p>
8851            </div>
8852          </template>
8853        </div>
8854      </template>
8855    </div>
8856  </template>
8857</div>                        </template>
8858
8859                        <template x-if="segment.code === 'grand_total'">
8860                            <div class="contents">
8861                                <template x-if="cartTotals.review_totals_display_mode === 'including'">
8862                                    <div class="flex justify-between">
8863                                        <p x-text="`${cartTotals.total_segments.find(s => s.code === 'subtotal')?.title || 'Subtotal'} (${excludingTaxMessage})`"></p>
8864                                        <p x-text="hyva.formatPrice(cartTotals.subtotal)"></p>
8865                                    </div>
8866                                </template>
8867                                <div class="contents">
8868  <!-- display subtotal excluding tax -->
8869  <template x-if="cartTotals.include_tax_in_grand_total">
8870    <div>
8871      <div class="flex justify-between">
8872        <p x-text="`${segment.title} (${includingTaxMessage})`"></p>
8873        <p x-text="hyva.formatPrice(segment.value)"></p>
8874      </div>
8875
8876      <div class="flex justify-between">
8877        <p x-text="`${segment.title} (${excludingTaxMessage})`"></p>
8878        <p x-text="hyva.formatPrice(cartTotals.grand_total)"></p>
8879      </div>
8880    </div>
8881  </template>
8882
8883  <!-- display subtotal including tax -->
8884  <template x-if="!cartTotals.include_tax_in_grand_total && segment.value !== cartTotals.grand_total">
8885    <div class="flex justify-between">
8886      <p x-text="`${segment.title} (${includingTaxMessage})`"></p>
8887      <p x-text="hyva.formatPrice(segment.value)"></p>
8888    </div>
8889  </template>
8890</div>                            </div>
8891                        </template>
8892
8893                        <template x-if="segment.code === 'discount'">
8894                            <div class="flex justify-between items-center">
8895                                <p x-text="segment.title"></p>
8896                                <p x-text="hyva.formatPrice(segment.value)" class="whitespace-nowrap"></p>
8897                            </div>
8898                        </template>
8899                    </div>
8900                </template>
8901            </div>
8902                            <hr class="divider -mx-4">
8903                    </div>
8904    </div>
8905
8906    <div class="pointer-events-none px-3  relative -mx-4 rounded-b-md bg-bg-500 transition-opacity duration-300 md:pb-4 max-md:px-3 max-md:pb-5 [.popup\_\_main_&]:pb-3 [.popup\_\_wrapper--visible_&]:pointer-events-auto [.resizable--visible_&]:pointer-events-auto"
8907        :class="{
8908            'opacity-0': isCartEmpty,
8909            'opacity-1': !isCartEmpty,
8910            'hidden': isRemoveContent
8911        }">
8912        <div class="flex items-center justify-between overflow-x-hidden bg-bg-500 pb-2 px-2 pt-4 text-text-500 max-md:px-3">
8913            <h2>Total de la commande</h2>
8914            <div class="flex translate-x-0 items-center gap-5 transition-transform delay-200 duration-300 motion-reduce:transition-none"
8915                :class="{
8916                    'translate-x-11': isTotalsExpanded,
8917                    'translate-x-0 delay-200': !isTotalsExpanded
8918                }">
8919                <div>
8920                    <p class="font-bold"
8921                        x-text="hyva.formatPrice(cartTotals.grand_total || 0)"></p>
8922                </div>
8923
8924                <button type="button"
8925                    class="button button--outline-secondary icon-button icon-button--size-xs "
8926                    :aria-label="isTotalsExpanded ? `Replier` : `Étendre`"
8927                    @click="isTotalsExpanded = !isTotalsExpanded"
8928                    @transitionend.stop>
8929                    <span :class="{ 'rotate-180': isTotalsExpanded }">
8930                        <svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" stroke="currentColor" stroke-width="0" aria-hidden="true" class="contrast-more:text-secondary-700" viewBox="0 0 24 24" width="24" height="24" role="img">
8931    <path stroke="none" d="m6.293 13.293 1.414 1.414L12 10.414l4.293 4.293 1.414-1.414L12 7.586z"/>
8932</svg>
8933                    </span>
8934                </button>
8935            </div>
8936        </div>
8937
8938        <div class="mt-2 flex flex-col gap-4 rounded-b-xl bg-bg-500 max-md:px-3">
8939            <a href="https://www.esprit-ktm.com/checkout/"
8940                class="button button--filled-primary h-11 w-full"
8941                :class="{ 'button--disabled': $store.cart.isLoading }">
8942                Commander            </a>
8943        </div>
8944    </div>
8945</div>
8946                            </div>
8947                        </div>
8948                    </template>
8949                            </div>
8950        </div>
8951    </div>
8952</div>
8953      </div>
8954    </template>
8955  </template>
8956</div>
8957
8958                            
8959<div
8960  class="contents"
8961  x-init="
8962    $store.popup._registerPopup({
8963      id: 'wishlist',
8964      isFocused: true,
8965      isFullScreen: true,
8966      isAlwaysVisible: false,
8967      isPreventOverlayClose: false    });
8968  "
8969>
8970  <template x-portal="$store.main.isMobile ? document.getElementById('popup-content-portal') : document.getElementById('wishlist-desktop')">
8971    <template x-if="$store.main.isMobile ? $store.popup._nextPopup === 'wishlist' : true">
8972      <div
8973        class="contents "
8974        id="wishlist"
8975      >
8976        
8977<div
8978    :inert="$store.main.isMobile ? $store.popup.currentPopup !== 'wishlist' : !$store.resizable.isVisible('wishlist-desktop')"
8979    x-data="{
8980        get wishlistItems() { return $store.wishlist.wishlistItems },
8981        get isWishlistEmpty() { return !$store.wishlist.wishlistItems.length },
8982    }"
8983    class="contents">
8984    <div class="flex flex-col gap-5 rounded-md p-5 md:w-[--minicart-width] bg-bg-500 md:gap-0 md:px-0 md:py-0 max-md:py-0 [.popup\_\_main_&]:px-2">
8985        <div class="flex items-center justify-between bg-bg-500 md:h-[--initial-height] md:min-h-14 md:rounded-md md:pt-5 md:pb-4 md:px-6 sticky top-0 z-20">
8986            <h2 class="flex items-center text-lg text-text-500 md:pl-2 md:pr-[10px] md:py-3 md:text-md">
8987                <span class="button__icon mr-4 text-[1.5rem] max-md:hidden" x-show="isWishlistEmpty">
8988                    <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="fill-none stroke-2" width="24" height="24" style="fill:none;stroke-width:2px" role="img">
8989  <path stroke-linecap="round" stroke-linejoin="round" d="M4.318 6.318a4.5 4.5 0 000 6.364L12 20.364l7.682-7.682a4.5 4.5 0 00-6.364-6.364L12 7.636l-1.318-1.318a4.5 4.5 0 00-6.364 0z"/>
8990<title>heart</title></svg>
8991                </span>
8992                <span class="button__icon mr-4 text-[1.5rem] max-md:hidden" x-show="!isWishlistEmpty">
8993                    <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" width="24" height="24" role="img">
8994  <path fill-rule="evenodd" d="M3.172 5.172a4 4 0 015.656 0L10 6.343l1.172-1.171a4 4 0 115.656 5.656L10 17.657l-6.828-6.829a4 4 0 010-5.656z" clip-rule="evenodd"/>
8995<title>heart</title></svg>
8996                </span>
8997                Liste de souhaits            </h2>
8998            <template x-if="!isWishlistEmpty">
8999                <div class="delay-800 mr-1 flex justify-center align-middle transition-all duration-300">
9000                    <a
9001                        href="https://www.esprit-ktm.com/wishlist/"
9002                        x-element-transition-trigger
9003                        class="link link--ghost">
9004                        Voir les produits                        <span x-text="`(${wishlistItems.length})`" class="mr-1"></span>
9005                    </a>
9006                </div>
9007            </template>
9008        </div>
9009
9010        <div class="px-4 pb-4 md:px-6" x-show="isWishlistEmpty">
9011            <p>Vous n&#039;avez aucun article dans votre liste de souhaits.</p>
9012        </div>
9013
9014        <div
9015            x-show="!isWishlistEmpty"
9016            class="relative transition-opacity duration-200"
9017            :class="$store.wishlist.isAddingAllToCart ? 'opacity-40 pointer-events-none' : ''">
9018            
9019
9020<script>
9021    
9022    function wishlistDispo() {
9023        return {
9024            loadingGraph: false,
9025            productData: {},
9026
9027            init($watch) {
9028                this.loadCache();
9029                this.updateHamData(this.wishlistItems || []);
9030
9031                if (typeof $watch === 'function') {
9032                    $watch('wishlistItems', value => this.updateHamData(value));
9033                }
9034            },
9035
9036            loadCache() {
9037                try {
9038                    this.productData = JSON.parse(localStorage.getItem('mini_productData') || '{}');
9039                } catch {
9040                    this.productData = {};
9041                }
9042            },
9043            saveCache() {
9044                try {
9045                    localStorage.setItem('mini_productData', JSON.stringify(this.productData));
9046                } catch {}
9047            },
9048            isExpired(entry) {
9049                return !entry || !entry.fetchedAt || ((Date.now() / 1000 - entry.fetchedAt) > 3600);
9050            },
9051
9052            async fetchAvailability(skusToFetch) {
9053                if (!skusToFetch.length || this.loadingGraph) return;
9054                this.loadingGraph = true;
9055
9056                const query = `
9057                    {
9058                        productCustomDataEsprit(skus: ${JSON.stringify(skusToFetch)}) {
9059                            sku
9060                            ham_stock                            ham_date                            salable_qty
9061                            special_from_date
9062                            special_to_date
9063                            news_from_date
9064                            news_to_date
9065                            regular_price
9066                            final_price
9067                        }
9068                    }
9069                `;
9070
9071                try {
9072                    const res = await fetch('/graphql', {
9073                        method: 'POST',
9074                        headers: {
9075                            'Content-Type': 'application/json',
9076                            "Store": CURRENT_STORE_CODE || "esprit_motoshop_fr"
9077                        },
9078                        body: JSON.stringify({
9079                            query
9080                        })
9081                    });
9082                    const json = await res.json();
9083
9084                    if (json.data?.productCustomDataEsprit?.length) {
9085                        json.data.productCustomDataEsprit.forEach(prod => {
9086                            this.productData[prod.sku] = {
9087                                ...prod,
9088                                fetchedAt: Math.floor(Date.now() / 1000),
9089                                product_hamDispo: this.calcHamData(prod),
9090                                product_special: {
9091                                    from: prod.special_from_date,
9092                                    to: prod.special_to_date,
9093                                    percentage: (prod.regular_price && prod.final_price && prod.regular_price > 0) ?
9094                                        Math.round((prod.regular_price - prod.final_price) * 100 / prod.regular_price) : 0,
9095                                },
9096                            };
9097                        });
9098
9099                        this.saveCache();
9100                    }
9101                } catch (e) {
9102                    console.error('GraphQL fetch error', e);
9103                } finally {
9104                    this.loadingGraph = false;
9105                }
9106            },
9107
9108            updateHamData(wishlistItems) {
9109                if (!wishlistItems?.length) return;
9110
9111                const skusToFetch = [];
9112                wishlistItems.forEach(item => {
9113                    const data = this.productData[item.product_sku];
9114                    if (this.isExpired(data)) {
9115                        skusToFetch.push(item.product_sku);
9116                    }
9117                });
9118
9119                if (skusToFetch.length) this.fetchAvailability(skusToFetch);
9120            },
9121            calcHamData(data) {
9122                let rawStatus = 'standard',
9123                    delaisLabel = "5/6 jours";
9124
9125                if (data.salable_qty > 0) {
9126                    rawStatus = 'instock';
9127                    delaisLabel = "48H";
9128                } else if (data["ham_stock"] == 25339) {
9129                    rawStatus = 'standard';
9130                    delaisLabel = "5/6 jours";
9131                } else if (data["ham_stock"] == 25340) {
9132                    rawStatus = 'delais';
9133                    delaisLabel = data["ham_date"] ? this.cleanHamDate(data["ham_date"]) : "Délais rallongés";
9134                } else if (data["ham_stock"] == 27658) {
9135                    rawStatus = 'unavailable';
9136                    delaisLabel = "Non disponible";
9137                }
9138
9139                return {
9140                    rawStatus,
9141                    delaisLabel,
9142                    display: ''
9143                };
9144            },
9145            cleanHamDate(hamDate) {
9146                if (!hamDate) return "Délais rallongés";
9147                const date = new Date(hamDate);
9148                if (isNaN(date)) return "Délais rallongés";
9149                return date.toLocaleDateString(document.documentElement.lang, {
9150                    year: 'numeric',
9151                    month: 'long',
9152                    day: 'numeric'
9153                });
9154            }
9155        }
9156    }
9157</script>
9157
9158
9159<div
9160    x-data="wishlistDispo()"
9161    x-init="init($watch)"
9162    class="flex flex-col gap-5 md:overflow-auto md:max-h-[calc(100dvh-225px)] md:px-4">
9163    <div class="flex flex-col gap-5 md:pt-4 pb-5 md:pb-4">
9164        <template
9165            x-for="item in wishlistItems"
9166            :key="item.wishlist_item_id ?? item.product_id">
9167            <div
9168                :key="item.wishlist_item_id ?? item.product_id"
9169                class="card-hover group max-h-80 transition-all duration-300">
9170                <a
9171                    x-element-transition-trigger:product.animate="
9172            {
9173              'variantImg': item.image.src,
9174              'title': (new DOMParser()).parseFromString(item.product_name, 'text/html').documentElement.textContent
9175            }
9176          "
9177                    :href="item.product_url"
9178                    class="grid grid-cols-[94px_1fr] content-center gap-5 rounded-md">
9179                    <div class="relative overflow-hidden rounded-md bg-[--fade-in-bg]">
9180                        <template x-if="item.image.src">
9181                            <img
9182                                :src="item.image.src"
9183                                class="aspect-product h-full w-full object-cover object-center transition-transform duration-300 md:group-hover:scale-105 mix-blend-darken"
9184                                loading="lazy"
9185                                width=""
9186                                height=""
9187                                alt="">
9188                        </template>
9189
9190                        
9191<template x-if="productData[item.product_sku]?.product_special?.percentage">
9192    <div class="card-product__badge-container text-white bg-primary-600 z-10 rounded-[40px] px-3 text-sm min-h-[18px] py-1 top left"
9193        x-element-transition-skip='{"transformOrigin": "left top"}'>
9194        <span class="font-semibold">
9195            - <span x-text="productData[item.product_sku]?.product_special?.percentage"></span>%
9196        </span>
9197    </div>
9198</template>
9199                    </div>
9200                    <div class="flex min-w-0 flex-col items-stretch justify-center gap-5 z-10">
9201                        <div class="w-full">
9202                            <h2 class="text-md text-text-500">
9203                                <span x-text="(new DOMParser()).parseFromString(item.product_name, 'text/html').documentElement.textContent"></span>
9204                            </h2>
9205                            <template x-if="item.options.length">
9206                                <template
9207                                    x-for="(option, o) in item.options"
9208                                    :key="o">
9209                                    <p
9210                                        x-show="option.value != '0'"
9211                                        class="text-[14px]"
9212                                        x-text="`${option.label}: ${Array.isArray(option.value) ? option.value.join(', ') : option.value}`"></p>
9213                                </template>
9214                            </template>
9215                            <div class="mt-2 flex flex-wrap items-center justify-between gap-3">
9216                                <template x-if="productData[item.product_sku]?.product_hamDispo && productData[item.product_sku]?.product_hamDispo.display !== 'hidden' && productData[item.product_sku]?.product_hamDispo.delaisLabel">
9217    <div
9218        class="inline-flex w-fit items-center gap-1 rounded-full px-2.5 py-1 text-[11px] font-semibold transition-colors duration-200 "
9219        :class="{
9220            'bg-green-600 text-white': productData[item.product_sku]?.product_hamDispo.rawStatus === 'instock',
9221            'bg-green-100 text-green-700': productData[item.product_sku]?.product_hamDispo.rawStatus === 'standard',
9222            'bg-yellow-100 text-yellow-700': productData[item.product_sku]?.product_hamDispo.rawStatus === 'delais',
9223            'bg-red-100 text-red-700': productData[item.product_sku]?.product_hamDispo.rawStatus === 'unavailable',
9224        }">
9225        <template x-if="productData[item.product_sku]?.product_hamDispo.rawStatus !== 'unavailable'">
9226            <svg class="h-3.5 w-3.5 fill-none stroke-2" stroke="currentColor" viewBox="0 0 24 24" aria-hidden="true">
9227                <path stroke-linecap="round" stroke-linejoin="round" d="M8.25 18.75a1.5 1.5 0 0 1-3 0m3 0a1.5 1.5 0 0 0-3 0m3 0h6m-9 0H3.375a1.125 1.125 0 0 1-1.125-1.125V14.25m17.25 4.5a1.5 1.5 0 0 1-3 0m3 0a1.5 1.5 0 0 0-3 0m3 0h1.125c.621 0 1.125-.504 1.125-1.125v-3.026a2.999 2.999 0 0 0-.879-2.121l-2.246-2.246A2.999 2.999 0 0 0 16.5 8.252H15M2.25 14.25V5.625c0-.621.504-1.125 1.125-1.125h9.75c.621 0 1.125.504 1.125 1.125v8.625" />
9228            </svg>
9229        </template>
9230        <template x-if="productData[item.product_sku]?.product_hamDispo.rawStatus === 'unavailable'">
9231            <svg class="h-3.5 w-3.5 fill-none stroke-2" stroke="currentColor" viewBox="0 0 24 24" aria-hidden="true">
9232                <path stroke-linecap="round" stroke-linejoin="round" d="M18.364 18.364A9 9 0 0 0 5.636 5.636m12.728 12.728A9 9 0 0 1 5.636 5.636m12.728 12.728L5.636 5.636" />
9233            </svg>
9234        </template>
9235        <span x-text="productData[item.product_sku]?.product_hamDispo.delaisLabel"></span>
9236    </div>
9237</template>
9238                                <div class="wishlist-item-price" x-html="item.product_price"></div>
9239                            </div>
9240                        </div>
9241                        <div
9242                            class="flex items-center justify-between gap-3"
9243                            x-show="item.product_is_saleable_and_visible">
9244                            <div class="flex items-center gap-2">
9245                                <button
9246                                    type="button"
9247                                    class="button button--outline-secondary icon-button icon-button--size-sm bg-bg-500"
9248                                    :aria-label="item.qty < 2 ? 'Retirer\u0020l\u0027article' : 'Diminuer\u0020la\u0020quantit\u00E9'"
9249                                    @click.prevent.stop="(item.qty || 1) < 2 ? $store.wishlist.removeItem(item) : $store.wishlist.updateQty(item, item.qty - 1)">
9250                                    <span x-show="(item.qty || 1) < 2">
9251                                        <svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" stroke="currentColor" stroke-width="0" aria-hidden="true" class="text-lg" viewBox="0 0 24 24" width="24" height="24" role="img">
9252    <path stroke="none" d="M15 2H9c-1.103 0-2 .897-2 2v2H3v2h2v12c0 1.103.897 2 2 2h10c1.103 0 2-.897 2-2V8h2V6h-4V4c0-1.103-.897-2-2-2zM9 4h6v2H9V4zm8 16H7V8h10v12z"/>
9253</svg>
9254                                    </span>
9255                                    <span x-show="(item.qty || 1) >= 2">
9256                                        <svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" stroke="currentColor" stroke-width="0" aria-hidden="true" class="text-lg" viewBox="0 0 24 24" width="24" height="24" role="img">
9257    <path stroke="none" d="M5 11h14v2H5z"/>
9258</svg>
9259                                    </span>
9260                                </button>
9261                                <label
9262                                    :for="`quantity_${item.product_id}-wishlist`"
9263                                    class="sr-only tracking-widest">
9264                                    Quantité                                </label>
9265                                <input
9266                                    type="number"
9267                                    name="quantity"
9268                                    class="input__field h-9 min-w-14 basis-14 text-center"
9269                                    min="1"
9270                                    :id="`quantity_${item.product_id}-wishlist`"
9271                                    :value="item.qty"
9272                                    @click.prevent.stop=""
9273                                    @change="$store.wishlist.updateQty(item, $event.target.value)"
9274                                    aria-label="Quantité">
9275                                <button
9276                                    type="button"
9277                                    class="button button--outline-secondary icon-button icon-button--size-sm bg-bg-500"
9278                                    aria-label="Augmenter"
9279                                    @click.prevent.stop="$store.wishlist.updateQty(item, (item.qty || 1) + 1)">
9280                                    <svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" stroke="currentColor" stroke-width="0" aria-hidden="true" class="text-lg" viewBox="0 0 24 24" width="24" height="24" role="img">
9281    <path stroke="none" d="M19 11h-6V5h-2v6H5v2h6v6h2v-6h6z"/>
9282</svg>
9283                                </button>
9284                            </div>
9285                            <div class="flex items-center gap-2">
9286                                <button
9287                                    type="button"
9288                                    @click.prevent.stop="$store.wishlist.addItemToCart(item)"
9289                                    title="Ajouter&#x20;au&#x20;panier"
9290                                    aria-label="Ajouter&#x20;au&#x20;panier"
9291                                    class="button button--filled-primary w-9 h-9 p-0 flex-none">
9292                                    <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" class="text-lg" width="24" height="24" role="img">
9293    <path d="M5 22h14c1.103 0 2-.897 2-2V9a1 1 0 0 0-1-1h-3V7c0-2.757-2.243-5-5-5S7 4.243 7 7v1H4a1 1 0 0 0-1 1v11c0 1.103.897 2 2 2zM9 7c0-1.654 1.346-3 3-3s3 1.346 3 3v1H9V7zm-4 3h2v2h2v-2h6v2h2v-2h2l.002 10H5V10z">
9294    </path>
9295<title>Ajouter au panier</title></svg>
9296                                    <span class="sr-only">Ajouter au panier</span>
9297                                </button>
9298                                <button
9299                                    type="button"
9300                                    @click.prevent.stop="$store.wishlist.removeItem(item)"
9301                                    title="Retirer&#x20;l&#x27;article"
9302                                    class="button button--outline-primary w-9 h-9 p-0 flex-none">
9303                                    <svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" stroke="currentColor" stroke-width="0" aria-hidden="true" class="text-lg" viewBox="0 0 24 24" width="24" height="24" role="img">
9304    <path stroke="none" d="M15 2H9c-1.103 0-2 .897-2 2v2H3v2h2v12c0 1.103.897 2 2 2h10c1.103 0 2-.897 2-2V8h2V6h-4V4c0-1.103-.897-2-2-2zM9 4h6v2H9V4zm8 16H7V8h10v12z"/>
9305<title>Retirer l'article</title></svg>
9306                                    <span class="sr-only">Retirer l&#039;article</span>
9307                                </button>
9308                            </div>
9309                        </div>
9310                    </div>
9311                </a>
9312
9313                <div
9314                    class="mt-3 flex items-center gap-3"
9315                    x-show="!(item.product_is_saleable_and_visible)">
9316                    <a
9317                        :href="item.product_url"
9318                        class="button button--outline-primary flex-1">
9319                        <span x-text="!item.product_is_saleable_and_visible ?
9320                            'Rupture\u0020de\u0020stock' :
9321                            'Choisir\u0020les\u0020options'"></span>
9322                    </a>
9323                    <button
9324                        type="button"
9325                        @click="$store.wishlist.removeItem(item)"
9326                        title="Retirer&#x20;l&#x27;article"
9327                        class="button button--outline-primary w-11 p-0 flex-none">
9328                        <svg xmlns="http://www.w3.org/2000/svg" fill="currentColor" stroke="currentColor" stroke-width="0" aria-hidden="true" class="text-lg" viewBox="0 0 24 24" width="24" height="24" role="img">
9329    <path stroke="none" d="M15 2H9c-1.103 0-2 .897-2 2v2H3v2h2v12c0 1.103.897 2 2 2h10c1.103 0 2-.897 2-2V8h2V6h-4V4c0-1.103-.897-2-2-2zM9 4h6v2H9V4zm8 16H7V8h10v12z"/>
9330<title>Retirer l'article</title></svg>
9331                        <span class="sr-only">Retirer l&#039;article</span>
9332                    </button>
9333                </div>
9334            </div>
9335        </template>
9336    </div>
9337</div>            <div class="h-[140px]"></div>
9338
9339            <div
9340                x-show="$store.wishlist.isAddingAllToCart"
9341                class="absolute inset-0 flex items-start justify-center pt-10">
9342                <svg class="animate-spin h-8 w-8 text-primary-600" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24">
9343                    <circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle>
9344                    <path class="opacity-75" fill="currentColor" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"></path>
9345                </svg>
9346            </div>
9347        </div>
9348
9349                <template
9350            x-portal="$store.main.isMobile ? document.getElementById('popup-fixed-content-portal') : document.getElementById('wishlist-desktop-fixed')">
9351            <div
9352                :inert="$store.main.isMobile ? $store.popup.currentPopup !== 'wishlist' : !$store.resizable.isVisible('wishlist-desktop')"
9353                class="relative flex items-center gap-3 px-4 pb-4 md:rounded-b-md max-md:px-3"
9354                x-show="!isWishlistEmpty">
9355                                <button
9356                    type="button"
9357                    @click='$store.wishlist.addAllToCart({"action":"https:\/\/www.esprit-ktm.com\/wishlist\/index\/allcart\/","data":{"wishlist_id":null}})'
9358                    :class="$store.wishlist.isAddingAllToCart ? 'button--disabled' : ''"
9359                    :disabled="$store.wishlist.isAddingAllToCart"
9360                    :aria-busy="$store.wishlist.isAddingAllToCart"
9361                    class="button button--filled-primary flex-1 gap-2">
9362                    <template x-if="$store.wishlist.isAddingAllToCart">
9363                        <svg class="animate-spin h-5 w-5" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24">
9364                            <circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle>
9365                            <path class="opacity-75" fill="currentColor" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"></path>
9366                        </svg>
9367                    </template>
9368                    <template x-if="!$store.wishlist.isAddingAllToCart">
9369                        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" class="text-lg" width="24" height="24" role="img">
9370    <path d="M5 22h14c1.103 0 2-.897 2-2V9a1 1 0 0 0-1-1h-3V7c0-2.757-2.243-5-5-5S7 4.243 7 7v1H4a1 1 0 0 0-1 1v11c0 1.103.897 2 2 2zM9 7c0-1.654 1.346-3 3-3s3 1.346 3 3v1H9V7zm-4 3h2v2h2v-2h6v2h2v-2h2l.002 10H5V10z">
9371    </path>
9372</svg>
9373                    </template>
9374                    <span x-text="$store.wishlist.isAddingAllToCart ?
9375                        'Ajout\u0020en\u0020cours...' :
9376                        'Tout\u0020ajouter\u0020au\u0020panier'"></span>
9377                </button>
9378            </div>
9379        </template>
9380    </div>
9381</div>      </div>
9382    </template>
9383  </template>
9384</div>
9385                    </div>
9386    </div>
9387</header>
9388</header>
9389<div
9390    class="transition-preview"
9391    x-data="TransitionPreview()"
9392    :class="{
9393        'transition-preview--active': isActive,
9394        'is-transition': $store['transition'].isPreviewAnimating,
9395    }"
9396    style="--scroll-progress: 0; --offset-top: 400;"
9397    :style="{
9398        '--offset-top': offsetTop,
9399    }"
9400    x-ref="preview"
9401>
9402    <div
9403        class="transition-preview__wrapper"
9404        @click="(e) => {
9405            if ($refs.transitionContent.contains(e.target)) return;
9406            if ($refs.transitionBg === e.target) return;
9407
9408            hidePreview();
9409        }"
9410    >
9411        <div class="content-wrapper relative mx-auto">
9412            <div x-ref="transitionBg" class="transition-preview__bg"></div>
9413        </div>
9414        <div
9415            x-ref="scrollContainer"
9416            :aria-hidden="!isActive"
9417            class="transition-preview__scroll"
9418            x-a11y-trap.watch="isActive"
9419        >
9420            <div class="content-wrapper relative mx-auto">
9421                <div class="transition-preview__content" x-ref="transitionContent">
9422                    <div id="PreviewContent"></div>
9423                    <div class="content-wrapper pointer-events-none fixed bottom-0 left-1/2 z-50 -translate-x-1/2">
9424                        <div
9425                            class="flex h-56 w-full items-end justify-center bg-gradient-to-t from-[--color-background-500] via-transparent to-transparent py-10 text-4xl opacity-[calc(1-var(--scroll-progress))]"
9426                        >
9427                            <div
9428                                class="animate-[bounce_2s_infinite] text-2xl text-text-50"
9429                                :class="{
9430                                    'animate-none': $store.main.isReducedMotion
9431                                }"
9432                            >
9433                                <div class="flex flex-col items-center [&>svg]:text-4xl">
9434                                    <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 22 46" aria-hidden="true" role="img">
9435    <path fill-rule="evenodd" clip-rule="evenodd" d="M11 2c-4.98 0-9 3.994-9 8.9v13.2c0 4.905 4.02 8.9 9 8.9s9-3.994 9-8.9V10.9C20 5.994 15.98 2 11 2ZM0 10.9C0 4.871 4.935 0 11 0s11 4.871 11 10.9v13.2C22 30.129 17.065 35 11 35S0 30.129 0 24.1V10.9Z"/>
9436    <path fill-rule="evenodd" clip-rule="evenodd" d="M10 13V8h2v5h-2ZM10.998 43.271l2.637-2.61 1.407 1.42-4.044 4.005-4.045-4.004L8.36 40.66l2.638 2.611Z"/>
9437</svg>
9438                                </div>
9439                            </div>
9440                        </div>
9441                    </div>
9442                </div>
9443            </div>
9444        </div>
9445    </div>
9446</div>
9447<div
9448  x-data
9449  x-element-transition-wrapper
9450  class="element-transition opacity-0"
9451  :class="
9452    {
9453      'opacity-100': $store['transition'].isTransitioning
9454    }
9455  "
9456></div>
9457<template x-fallback-template-type="search">
9458    <div class="mt-[72px] md:mt-[89px]"></div>
9459
9460    <div class="max-md:hidden">
9461            </div>
9462
9463    <article
9464        aria-label="Détails de la recherche"
9465        class="content-wrapper mx-auto flex flex-col items-start gap-3 py-5 pb-6 pt-3">
9466        <div class="flex flex-col gap-3 w-full">
9467            <h2 class="text-lg"
9468                x-text="hyva.strf('Résultats de recherche pour : %0', `'${$store['transition'].pageData?.search ?? ''}'`)">
9469            </h2>
9470        </div>
9471
9472        <!-- Loader -->
9473        <div class="flex justify-center items-center w-full min-h-[50vh]">
9474            <div class="flex flex-col items-center gap-3 text-gray-500">
9475                <!-- Spinner -->
9476                <svg class="animate-spin h-10 w-10 text-primary-600" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24">
9477                    <circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle>
9478                    <path class="opacity-75" fill="currentColor" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"></path>
9479                </svg>
9480                <p class="text-sm">Chargement des résultats...</p>
9481            </div>
9482        </div>
9483    </article>
9484</template>
9485<template x-fallback-template-type="product">
9486    <template x-if="($store['transition'].originalFocusableEl?.getAttribute('data-product-type') || $store['transition'].pageData?.productType || '') === 'grouped'">
9487        <div id="PreviewContent" class="contents">
9488            <div class="[&:not(.transition-preview_&)]:mt-[76px] md:[&:not(.transition-preview_&)]:mt-[89px]"></div>
9489            <div class="flex w-full flex-col gap-4 rounded-md bg-white max-md:pb-6 md:p-8 [.transition-preview_&]:md:p-6">
9490                <h1 x-html="$store['transition'].pageData?.title" class="heading m-0 text-[22px] font-bold leading-[1.2] text-[#181818] max-md:px-4 md:text-[26px]"></h1>
9491                <div class="grid grid-cols-2 gap-4 max-md:px-4 md:grid-cols-4">
9492                    <template x-for="i in 4" :key="i">
9493                        <div class="aspect-product animate-pulse rounded-sm bg-[#EFECE8]"></div>
9494                    </template>
9495                </div>
9496            </div>
9497        </div>
9498    </template>
9499
9500    <template x-if="($store['transition'].originalFocusableEl?.getAttribute('data-product-type') || $store['transition'].pageData?.productType || '') !== 'grouped'">
9501        <div id="PreviewContent" class="contents"
9502             x-data="{
9503                 dispoLabels: &#x7B;&quot;instock&quot;&#x3A;&quot;En&#x20;stock&#x20;&#x5C;u2014&#x20;Livr&#x5C;u00e9&#x20;sous&#x20;48h&quot;,&quot;standard&quot;&#x3A;&quot;Disponible&#x20;&#x5C;u2014&#x20;Livr&#x5C;u00e9&#x20;sous&#x20;5&#x20;&#x5C;u00e0&#x20;6&#x20;jours&quot;,&quot;delais&quot;&#x3A;&quot;En&#x20;r&#x5C;u00e9assort&quot;,&quot;unavailable&quot;&#x3A;&quot;Non&#x20;disponible&quot;&#x7D;,
9504                 dotClasses: &#x7B;&quot;instock&quot;&#x3A;&quot;bg-&#x5B;&#x23;16A34A&#x5D;&quot;,&quot;standard&quot;&#x3A;&quot;bg-&#x5B;&#x23;16A34A&#x5D;&quot;,&quot;delais&quot;&#x3A;&quot;bg-yellow-500&quot;,&quot;unavailable&quot;&#x3A;&quot;bg-&#x5B;&#x23;B40C1C&#x5D;&quot;&#x7D;,
9505                 get pd() { return $store['transition'].pageData || {}; },
9506                 get isConfigurable() { return this.pd.productType === 'configurable'; },
9507                 get hasPromo() { return !!this.pd.regularPrice && this.pd.regularPrice > this.pd.finalPrice; },
9508                 get discount() {
9509                     if (this.pd.discountPercentage) return this.pd.discountPercentage;
9510                     return this.hasPromo ? Math.round((this.pd.regularPrice - this.pd.finalPrice) * 100 / this.pd.regularPrice) : 0;
9511                 },
9512                 get dispoLabel() { return this.dispoLabels[this.pd.dispoStatus] || ''; },
9513                 get dotClass() { return this.dotClasses[this.pd.dispoStatus] || 'bg-[#B9B2AA]'; },
9514                 get thumbCount() { return Math.min(Math.max((this.pd.mediaCount || 1) - 1, 0), 5); },
9515             }">
9516
9517            <!-- MPA fallback (page reload / mobile): keep the header offset -->
9518            <div class="[&:not(.transition-preview_&)]:mt-[76px] md:[&:not(.transition-preview_&)]:mt-[89px]"></div>
9519
9520            <!-- White content card (mirrors ham.pdp.card) -->
9521            <div class="flex w-full flex-col gap-4 rounded-md bg-white max-md:pb-6 md:p-8 [.transition-preview_&]:md:p-6">
9522
9523                <!-- Breadcrumb -->
9524                <nav class="breadcrumbs w-full max-md:px-4 max-md:pt-4 max-md:pb-2 md:mb-3" aria-label="Breadcrumb">
9525                    <ol class="items flex items-center text-[12.5px] leading-none text-[#5C5C5C] max-md:flex-nowrap max-md:overflow-hidden max-md:whitespace-nowrap md:flex-wrap">
9526                        <template x-for="(crumb, index) in (pd.breadcrumbs || [])" :key="index">
9527                            <li class="flex flex-none items-center">
9528                                <template x-if="index > 0"><span aria-hidden="true" class="mx-1.5 text-[10px] text-gray-300">›</span></template>
9529                                <template x-if="crumb.link"><a :href="crumb.link" class="hover:underline" x-text="crumb.label"></a></template>
9530                                <template x-if="!crumb.link"><span x-text="crumb.label"></span></template>
9531                            </li>
9532                        </template>
9533                        <li class="flex min-w-0 items-center">
9534                            <span aria-hidden="true" class="mx-1.5 text-[10px] text-gray-300" x-show="(pd.breadcrumbs || []).length">›</span>
9535                            <span class="block min-w-0 truncate text-gray-500" x-html="pd.title"></span>
9536                        </li>
9537                    </ol>
9538                </nav>
9539
9540                <!-- Gallery / buy box grid (same tracks as product-details.phtml) -->
9541                <div class="relative z-30 mx-auto flex w-full flex-col justify-center gap-4 md:grid md:grid-cols-[minmax(260px,300px)_1fr] md:items-start md:gap-5 lg:grid-cols-[minmax(460px,560px)_1fr] lg:gap-8 xl:grid-cols-[minmax(520px,600px)_1fr] xl:gap-9">
9542
9543                    <!-- Desktop: compat banner placeholder + rail gallery -->
9544                    <div class="min-w-0 max-md:hidden">
9545                        <div class="mb-1.5 flex h-[42px] items-center justify-between border-b-2 border-[#E8E4DF] bg-[#F9F9F9] px-3.5">
9546                            <span class="h-3 w-56 animate-pulse rounded-sm bg-[#EFECE8]"></span>
9547                            <span class="h-3 w-12 animate-pulse rounded-sm bg-[#EFECE8]"></span>
9548                        </div>
9549                        <div class="flex gap-3.5">
9550                            <div class="flex w-[74px] flex-none flex-col gap-2.5">
9551                                <div class="aspect-square overflow-hidden border-2 border-[#181818] bg-[--fade-in-bg]">
9552                                    <img x-show="pd.productImg" :src="pd.productImg" class="size-full object-cover object-center mix-blend-darken" width="74" height="74" alt="">
9553                                </div>
9554                                <template x-for="i in thumbCount" :key="'thumb-' + i">
9555                                    <div class="aspect-square border border-[#E8E4DF] bg-[#F9F9F9]"></div>
9556                                </template>
9557                            </div>
9558                            <div class="relative flex aspect-product min-w-0 flex-1 items-center justify-center overflow-hidden bg-[--fade-in-bg]">
9559                                <img x-show="pd.productImg" :src="pd.productImg" class="size-full object-cover object-center mix-blend-darken" width="100%" height="100%" :alt="pd.title" alt="">
9560                            </div>
9561                        </div>
9562                    </div>
9563
9564                    <!-- Buy box column -->
9565                    <div class="product-details">
9566
9567                        <!-- Mobile: compat banner placeholder + image -->
9568                        <div class="mb-4 md:hidden">
9569                            <div class="flex h-[42px] items-center justify-between border-b-2 border-[#E8E4DF] bg-[#F9F9F9] px-3.5">
9570                                <span class="h-3 w-48 animate-pulse rounded-sm bg-[#EFECE8]"></span>
9571                                <span class="h-3 w-12 animate-pulse rounded-sm bg-[#EFECE8]"></span>
9572                            </div>
9573                            <div class="relative">
9574                                <div x-element-transition-dest="img" class="relative flex aspect-[4/5] min-h-0 items-center justify-center bg-[--fade-in-bg]">
9575                                    <img x-show="pd.productImg" :src="pd.productImg" class="size-full object-cover object-center mix-blend-darken" width="100%" height="100%" :alt="pd.title" alt="">
9576                                </div>
9577                                
9578    <div
9579        x-data="
9580            {
9581                                    finalPrice: $store['transition'].pageData?.finalPrice,
9582                    regularPrice: $store['transition'].pageData?.regularPrice
9583                            }
9584        "
9585        class="card-product__badge-container z-10 rounded-[40px] bg-bg-500 px-3 text-sm min-h-[18px] md:hidden bottom left"
9586        x-show="regularPrice>finalPrice && regularPrice">
9587        <span x-text="'-' + Math.round(((regularPrice - finalPrice) * 100.0) / regularPrice) + '%'" class="font-semibold">
9588        </span>
9589    </div>
9590                                <div class="absolute right-3 top-3 z-[60] flex flex-col gap-2">
9591                                    <span class="block size-10 rounded border-[1.5px] border-[#E8E4DF] bg-white"></span>
9592                                    <span class="block size-10 rounded border-[1.5px] border-[#E8E4DF] bg-white"></span>
9593                                </div>
9594                            </div>
9595                        </div>
9596
9597                        <div class="flex flex-col gap-4 md:min-h-[520px] lg:min-h-[560px] xl:min-h-[600px]">
9598                            <!-- Title + reference -->
9599                            <div class="flex flex-col gap-1 px-4 md:px-0">
9600                                <h1 x-html="pd.title" class="heading m-0 text-[22px] font-bold leading-[1.2] text-[#181818] md:text-[26px] md:leading-[1.25]"></h1>
9601                                <div class="flex items-baseline gap-1.5 text-[12px] leading-5 text-[#5C5C5C]" x-show="pd.sku">
9602                                    <span>Réf.</span>
9603                                    <span class="font-mono tracking-[0.01em] text-[#424242]" x-text="pd.sku"></span>
9604                                </div>
9605                            </div>
9606
9607                            <!-- Price zone -->
9608                            <div class="border-b border-[#E8E4DF] px-4 pb-4 md:px-0">
9609                                <div class="flex flex-col gap-1.5">
9610                                    <div class="flex items-baseline gap-3">
9611                                        <span class="text-[36px] font-bold leading-none tracking-[-0.01em] text-[#181818] tabular-nums"
9612                                              x-html="pd.finalPrice ? hyva.formatPrice(pd.finalPrice) : ''"></span>
9613                                        <template x-if="hasPromo">
9614                                            <span class="contents">
9615                                                <span class="text-[16px] text-[#5C5C5C] line-through tabular-nums" x-html="hyva.formatPrice(pd.regularPrice)"></span>
9616                                                <span class="text-[12.5px] font-bold text-[#B40C1C] tabular-nums" x-text="'−' + discount + ' %'"></span>
9617                                            </span>
9618                                        </template>
9619                                    </div>
9620                                    <div class="flex items-baseline gap-3.5">
9621                                        <span class="h-3.5 w-40 animate-pulse rounded-sm bg-[#EFECE8]"></span>
9622                                    </div>
9623                                </div>
9624                            </div>
9625
9626                            <!-- Configurable: size selector placeholder -->
9627                            <template x-if="isConfigurable">
9628                                <div class="flex flex-col gap-3 max-md:px-4">
9629                                    <div class="flex items-baseline justify-between text-[14px] leading-tight">
9630                                        <span class="text-[#424242]">Sélectionnez votre taille</span>
9631                                        <span class="font-extrabold text-[#181818]">&mdash;</span>
9632                                    </div>
9633                                    <div class="flex flex-wrap gap-2.5">
9634                                        <template x-for="i in 4" :key="'pill-' + i">
9635                                            <span class="flex h-11 min-w-[54px] items-center justify-center rounded border-[1.5px] border-[#E8E4DF] bg-white px-3">
9636                                                <span class="h-3 w-7 animate-pulse rounded-sm bg-[#EFECE8]"></span>
9637                                            </span>
9638                                        </template>
9639                                    </div>
9640                                </div>
9641                            </template>
9642
9643                            <div class="hidden md:block md:flex-1"></div>
9644
9645                            <!-- Availability + free-shipping card -->
9646                            <div class="max-md:px-4">
9647                                <div class="border border-[#E8E4DF] bg-white text-[13.5px] leading-[1.6]">
9648                                    <div class="flex flex-col px-[15px] py-[13px]">
9649                                        <div class="flex items-center gap-[9px] font-bold text-[#181818]">
9650                                            <span class="size-2.5 flex-none rounded-full" :class="dispoLabel ? dotClass : 'bg-[#B9B2AA]'"></span>
9651                                            <span x-show="dispoLabel" x-text="dispoLabel"></span>
9652                                            <span x-show="!dispoLabel" class="h-3.5 w-56 animate-pulse rounded-sm bg-[#EFECE8]"></span>
9653                                        </div>
9654                                        <span class="mt-[7px] ml-[19px] h-3 w-64 max-w-full animate-pulse rounded-sm bg-[#EFECE8]"></span>
9655                                    </div>
9656                                    <div class="border-t border-[#E8E4DF] px-[15px] pb-[13px] pt-2.5">
9657                                        <div class="mb-1.5 flex items-baseline justify-between gap-2">
9658                                            <span class="h-3 w-40 animate-pulse rounded-sm bg-[#EFECE8]"></span>
9659                                            <span class="h-3 w-24 animate-pulse rounded-sm bg-[#EFECE8]"></span>
9660                                        </div>
9661                                        <div class="h-1.5 bg-[#F0EDE9]"></div>
9662                                    </div>
9663                                </div>
9664                            </div>
9665
9666                            <div class="hidden md:block md:flex-1"></div>
9667
9668                            <!-- Buy row -->
9669                            <div class="flex items-stretch gap-3 max-md:px-4">
9670                                <span class="block h-12 w-[118px] flex-none rounded border-[1.5px] border-[#E8E4DF] bg-white max-md:w-[110px]"></span>
9671                                <span class="block h-12 min-w-0 flex-1 rounded bg-[#E8E4DF] animate-pulse"></span>
9672                                <span class="block size-12 flex-none rounded border-[1.5px] border-[#E8E4DF] bg-white max-lg:hidden"></span>
9673                                <span class="block size-12 flex-none rounded border-[1.5px] border-[#E8E4DF] bg-white max-lg:hidden"></span>
9674                            </div>
9675
9676                            <div class="hidden md:block md:flex-1"></div>
9677
9678                            <!-- Reassurance -->
9679                            <div class="max-md:px-4">
9680                                <div class="grid grid-cols-1 gap-3.5 border-t border-[#E8E4DF] pt-3.5 lg:grid-cols-3">
9681                                    <template x-for="i in 3" :key="'reassurance-' + i">
9682                                        <div class="flex min-w-0 items-start gap-2.5">
9683                                            <span class="mt-0.5 size-[22px] flex-none rounded-full border-[1.8px] border-[#D9D4CE]"></span>
9684                                            <div class="flex min-w-0 flex-1 flex-col gap-1.5 pt-0.5">
9685                                                <span class="h-2.5 w-3/4 animate-pulse rounded-sm bg-[#EFECE8]"></span>
9686                                                <span class="h-2.5 w-full animate-pulse rounded-sm bg-[#EFECE8]"></span>
9687                                            </div>
9688                                        </div>
9689                                    </template>
9690                                </div>
9691                            </div>
9692                        </div>
9693                    </div>
9694                </div>
9695
9696                <!-- Tabs placeholder -->
9697                <div class="mx-auto w-full max-md:px-4">
9698                    <div class="overflow-hidden border border-[#
9698E8E4DF]">
9699                        <div class="flex border-b border-[#E8E4DF] bg-[#F9F9F9]">
9700                            <span class="-mb-px border-b-2 border-[#181818] bg-white px-[18px] py-3 text-[13.5px] font-bold leading-[1.6] text-[#181818]">Description</span>
9701                        </div>
9702                        <div class="flex flex-col gap-2.5 px-4 py-[14px]">
9703                            <span class="h-3 w-full animate-pulse rounded-sm bg-[#EFECE8]"></span>
9704                            <span class="h-3 w-5/6 animate-pulse rounded-sm bg-[#EFECE8]"></span>
9705                            <span class="h-3 w-4/6 animate-pulse rounded-sm bg-[#EFECE8]"></span>
9706                        </div>
9707                    </div>
9708                </div>
9709            </div>
9710        </div>
9711    </template>
9712</template>
9713
9714<template x-fallback-template-type="category">
9715  <!--Breadcrumbs fallback-->
9716  <div class="mt-[72px] md:mt-[89px]"></div>
9717
9718  <div class="max-md:hidden">
9719      </div>
9720
9721  <article
9722    aria-label="Category details"
9723    class="content-wrapper mx-auto flex flex-col items-start gap-3 py-5 pb-6 pt-3"
9724  >
9725    <template x-if="$store['transition'].pageData?.img">
9726      <div class="mb-2 h-[40vh] w-full rounded-md bg-[--fade-in-bg] object-cover">
9727        <img
9728          :src="$store['transition'].pageData?.img"
9729          :alt="$store['transition'].pageData?.title"
9730          class="no-fade h-[40vh] w-full rounded-md object-cover transition-opacity duration-300"
9731          width="100%"
9732          height="100%"
9733        >
9734      </div>
9735    </template>
9736    <div class="flex flex-col gap-3">
9737        <h1 class="text-xl md:text-[32px] text-text-500" x-text="$store['transition'].pageData?.title"></h1>
9738      <div
9739        class="rte"
9740        x-html="$store['transition'].pageData?.description"
9741        x-show="$store['transition'].pageData?.description && $store['transition'].pageData?.description !== ''"
9742      >
9743      </div>
9744    </div>
9745    <div class="min-h-screen"></div>
9746  </article>
9747</template>
9748<div
9749  x-data
9750  x-cloak
9751  class="contents"
9752  :style="
9753    {
9754      '--popup-end-of-header-height': $store.popup.__endOfHeaderHeight + 'px',
9755      '--popup-content-ratio': $store.popup._popupContentRatio,
9756      '--popup-content-height': $store.popup.__popupContentHeight + 'px',
9757      '--popup-max-height': Math.min($store.popup.__popupContentHeight, $store.popup.__getWindowHeight() - $store.popup.__endOfHeaderHeight - 8 * 4) + 'px',
9758    }
9759  "
9760>
9761  <div
9762    class="popup__overlay"
9763    :class="
9764      {
9765        'popup__overlay--full-screen': $store.popup.isCurrentPopupFullScreen,
9766        'popup__overlay--focused': $store.main.isPopupFocused()
9767      }
9768    "
9769    @click="$store.main.hideAllPopupsAndResizables()"
9770  ></div>
9771  <div class="popup__main" :style="`opacity: ${$store.main.opacityOnZoom}`">
9772    <div
9773      class="popup__shadow"
9774      :class="
9775        {
9776          'popup__shadow--large': $store.popup._isPopupSimple
9777        }
9778      "
9779    ></div>
9780    <div
9781      class="popup__wrapper"
9782      :class="
9783        {
9784          'popup__wrapper--visible': $store.popup._isPopupVisible,
9785        }
9786      "
9787      x-a11y-trap="$store.popup._isPopupVisible"
9788    >
9789      <div class="popup__content-wrapper">
9790        <div
9791          class="popup__content-top"
9792          :class="
9793            {
9794              'popup__content-top--full-screen': $store.popup.isCurrentPopupFullScreen,
9795            }
9796          "
9797        ></div>
9798        <div
9799          id="popup-content"
9800          class="popup__content"
9801          :class="
9802            {
9803              'popup__content--visible': !$store.popup._isPopupContentHidden,
9804              'popup__content--full-screen': $store.popup.isCurrentPopupFullScreen,
9805            }
9806          "
9807        >
9808          <div
9809            id="popup-content-portal"
9810            class="popup__content-portal"
9811            :class="
9812              {
9813                'popup__content-portal--full-screen': $store.popup.isCurrentPopupFullScreen,
9814              }
9815            "
9816          ></div>
9817        </div>
9818        <div
9819          id="popup-fixed-content-portal"
9820          class="popup__fixed-content-portal"
9821          :class="
9822            {
9823              'popup__fixed-content-portal--visible': $store.popup._isPopupVisible,
9824            }
9825          "
9826        ></div>
9827      </div>
9828      <div class="popup__bottom"></div>
9829    </div>
9830  </div>
9831</div>
9832<div class="main-wrapper">
9833<!-- main-content -->
9834<main id="MainContent"
9835      class="content-for-layout focus-none flex h-full origin-top flex-col transition-transform duration-500 will-change-transform motion-reduce:transition-none"
9836      :class="{
9837            'is-transition': $store['transition'].isAnimating
9838        }"
9839      role="main"
9840      tabindex="-1"
9841      :style="{
9842            transform: ($store.popup.isCurrentPopupFocused && !$store.main.isReducedMotion)
9843            ? `scale(${$store.main.scaleFactor}) translateY(${$store.main.yOffset}px)`
9844            : 'scale(1)'
9845        }"
9846      @scroll.window="$store.main.setTransformValues"
9847>
9848    <div class="mt-[60px] md:mt-[80px]"></div>
9849    <div id="maincontent" class="contents"><div id="contentarea" tabindex="-1"></div>
9850<div class="page messages">
9850<script>
9851    /**
9852     * Kept inline (not part of the app.js bundle, which loads with `defer`) so that
9853     * window.dispatchMessages and the network-error suppression are guaranteed to be
9854     * available as soon as this template is parsed, regardless of bundle load order.
9855     * The stateful toast-stack rendering logic lives in the "toast" Alpine store
9856     * (see src/store/Toast.ts) and only needs to be ready once Alpine starts.
9857     */
9858
9859    window.addEventListener('error', function(event) {
9860        if (event.message && (
9861                event.message.includes('NetworkError') ||
9862                event.message.includes('TypeError: NetworkError when attempting to fetch resource') ||
9863                event.message.includes('TypeError: Load failed') ||
9864                event.message.includes('Load failed') ||
9865                event.message.includes('NS_BINDING_ABORTED')
9866            )) {
9867            event.preventDefault();
9868            return false;
9869        }
9870    });
9871
9872    window.addEventListener('unhandledrejection', function(event) {
9873        if (event.reason && event.reason.message && (
9874                event.reason.message.includes('NetworkError') ||
9875                event.reason.message.includes('Load failed') ||
9876                event.reason.message.includes('fetch resource') ||
9877                event.reason.message.includes('NS_BINDING_ABORTED')
9878            )) {
9879            event.preventDefault();
9880            return false;
9881        }
9882    });
9883
9884    window.translations = window.translations || {};
9885    window.translations.notifications = {"login_success":"Vous vous \u00eates connect\u00e9 avec succ\u00e8s.","account_created":"Votre compte a \u00e9t\u00e9 cr\u00e9\u00e9 avec succ\u00e8s.","added_to_cart":"%1 a \u00e9t\u00e9 ajout\u00e9 \u00e0 votre panier.","quantity_increased":"Quantit\u00e9 de \"%1\" augment\u00e9e \u00e0 %2","quantity_decreased":"Quantit\u00e9 de \"%1\" diminu\u00e9e \u00e0 %2","item_removed":"\"%1\" a \u00e9t\u00e9 retir\u00e9 du panier","quantity_updated":"Quantit\u00e9 de \"%1\" mise \u00e0 jour \u00e0 %2","wishlist_sign_in_required":"Veuillez vous connecter pour ajouter des \u00e9l\u00e9ments \u00e0 votre liste de souhaits.","wishlist_sign_in":"Connexion","wishlist_select_options":"Veuillez s\u00e9lectionner toutes les options avant d'ajouter cet article \u00e0 votre liste de souhaits.","wishlist_all_added_to_cart":"Tous les articles disponibles ont \u00e9t\u00e9 ajout\u00e9s \u00e0 votre panier.","wishlist_shared":"Votre liste d'achats a \u00e9t\u00e9 partag\u00e9e."};
9886
9887    window.isNetworkError = function(message) {
9888        if (message && typeof message === 'object') {
9889            if (message.name === 'TypeError' && message.message &&
9890                (message.message.includes('NetworkError when attempting to fetch resource') ||
9891                    message.message.includes('Load failed'))) {
9892                return true;
9893            }
9894
9895            if (message.message) {
9896                return window.isNetworkError(message.message);
9897            }
9898
9899            if (message.toString) {
9900                const str = message.toString();
9901                if (str.includes('TypeError') || str.includes('NetworkError') || str.includes('Load failed')) {
9902                    return true;
9903                }
9904            }
9905        }
9906
9907        if (!message || typeof message !== 'string') return false;
9908
9909        const networkPatterns = [
9910            'NetworkError',
9911            'TypeError: NetworkError when attempting to fetch resource',
9912            'TypeError: Load failed',
9913            'Load failed',
9914            'TypeError',
9915            'NS_BINDING_ABORTED',
9916            'fetch resource',
9917            'Network request failed',
9918            'Network failed'
9919        ];
9920
9921        const msgLower = message.toLowerCase();
9922        return networkPatterns.some(pattern => msgLower.includes(pattern.toLowerCase()));
9923    };
9924
9925    window.decodeHTMLEntities = function(text) {
9926        if (!text || typeof text !== 'string') return text;
9927        const textarea = document.createElement('textarea');
9928        textarea.innerHTML = text;
9929        return textarea.value;
9930    };
9931
9932    window.dispatchMessages = function(messages, hideTime = null) {
9933        if (!messages) return;
9934
9935        const dispatchOne = (msg) => {
9936            const messageText = msg.title || msg.text || msg.message || '';
9937
9938            if (window.isNetworkError(messageText) ||
9939                window.isNetworkError(msg.text) ||
9940                window.isNetworkError(msg.title) ||
9941                (msg.type === 'error' && msg.text &&
9942                    (msg.text.toString().includes('TypeError') || msg.text.toString().includes('Load failed')))) {
9943                return;
9944            }
9945
9946            window.dispatchEvent(new CustomEvent('toast-show', {
9947                detail: {
9948                    type: msg.type ?? 'default',
9949                    message: window.decodeHTMLEntities(msg.title ?? ''),
9950                    description: window.decodeHTMLEntities(msg.text ?? ''),
9951                    position: msg.position ?? 'top-center',
9952                    url: msg.url ?? '',
9953                    alt: msg.alt ?? '',
9954                    time: hideTime ?? 5000,
9955                    html: msg.html ?? ''
9956                }
9957            }));
9958        };
9959
9960        if (Array.isArray(messages)) {
9961            messages.forEach(dispatchOne);
9962        } else if (messages.detail) {
9963            dispatchOne(messages.detail);
9964        }
9965    };
9966</script>
9966
9967
9968<div class="relative w-auto h-auto">
9969    <!--
9970        Uses this theme's own custom x-portal directive (src/plugins/Portal.ts)
9971        rather than Alpine's native x-teleport - the built-in directive was
9972        confirmed to silently fail to mount this element into <body> (it stayed
9973        inert as unprocessed <template> content, so no toast ever appeared,
9974        including this file's own dispatchMessages() output). x-portal is the
9975        established, working convention elsewhere in this theme for the exact
9976        same "detached template rendered into a fixed body-level container" use
9977        case (minicart overlay, search, menu, popups) - see Portal.ts's own
9978        comment on why x-teleport is unreliable in this SPA/soft-navigation setup.
9979    -->
9980    <template x-portal="document.body">
9981        <ul
9982            id="toast-list-container"
9983            x-data
9984            x-init="
9985                $store.toast.init({ position: 'top-center', nbVisible: 2 });
9986                $store.toast.stackToasts();
9987            "
9988            @set-toasts-layout.window="$store.toast.setLayout(event.detail.layout)"
9989            @toast-show.window="
9990                event.stopPropagation();
9991                $store.toast.addToast(event.detail);
9992            "
9993            @mouseenter="$store.toast.setHovered(true, $el)"
9994            @mouseleave="$store.toast.setHovered(false, $el)"
9995            class="fixed block w-full group z-[2147483647] top-[72px] md:top-[89px]"
9996            style="max-width: 28rem;"
9997            :class="{
9998                'right-0 top-0 mt-6 sm:mr-6': $store.toast.position=='top-right',
9999                'left-0 top-0 mt-6 sm:ml-6': $store.toast.position=='top-left',
10000                'left-1/2 -translate-x-1/2 top-0 mt-6': $store.toast.position=='top-center',
10001                'right-0 bottom-0 sm:mr-6 sm:mb-6': $store.toast.position=='bottom-right',
10002                'left-0 bottom-0 sm:ml-6 sm:mb-6': $store.toast.position=='bottom-left',
10003                'left-1/2 -translate-x-1/2 bottom-0 sm:mb-6': $store.toast.position=='bottom-center'
10004            }"
10005            x-cloak
10006            role="status"
10007            aria-live="polite">
10008
10009            <template x-for="(toast, index) in $store.toast.toasts" :key="toast.id">
10010                <li
10011                    :id="toast.id"
10012                    x-data="{ toastHovered: false }"
10013                    x-init="
10014                        if($store.toast.position.includes('bottom')){
10015                            $el.firstElementChild.classList.add('toast-bottom');
10016                            $el.firstElementChild.classList.add('opacity-0', 'translate-y-full');
10017                        } else {
10018                            $el.firstElementChild.classList.add('opacity-0', '-translate-y-full');
10019                        }
10020                                                requestAnimationFrame(function(){
10021                            requestAnimationFrame(function(){
10022                                if($store.toast.position.includes('bottom')){
10023                                    $el.firstElementChild.classList.remove('opacity-0', 'translate-y-full');
10024                                } else {
10025                                    $el.firstElementChild.classList.remove('opacity-0', '-translate-y-full');
10026                                }
10027                                $el.firstElementChild.classList.add('opacity-100', 'translate-y-0');
10028                                setTimeout(function(){ $store.toast.stackToasts(); }, 10);
10029                            });
10030                        });
10031
10032                                                if (toast.toastType !== 'product') {
10033                            setTimeout(function(){
10034                                setTimeout(function(){
10035                                    $el.firstElementChild.classList.remove('opacity-100');
10036                                    $el.firstElementChild.classList.add('opacity-0');
10037                                    if($store.toast.toasts.length == 1){
10038                                        $el.firstElementChild.classList.remove('translate-y-0');
10039                                        $el.firstElementChild.classList.add('-translate-y-full');
10040                                    }
10041                                    setTimeout(function(){ $store.toast.deleteToastWithId(toast.id); }, 300);
10042                                }, 5);
10043                            }, toast.time);
10044                        }
10045                    "
10046                    @mouseover="toastHovered=true"
10047                    @mouseout="toastHovered=false"
10048                    @mouseenter="if (toast.toastType === 'product') $store.toast.pause(toast.id);"
10049                    @mouseleave="if (toast.toastType === 'product') $store.toast.resume(toast.id);"
10050                    class="absolute w-full duration-300 ease-out select-none p-2 sm:p-0"
10051                    :class="{ 'toast-no-description': toast.toastType !== 'product' && !toast.description }">
10052                    <template x-if="toast.toastType === 'product'">
10053                        <span
10054                            class="relative flex flex-col items-start shadow-[0_10px_30px_rgba(24,24,24,0.14)] w-full max-w-[372px] mx-auto transition-all duration-300 ease-out bg-white border border-[#E8E4DF] rounded-xl overflow-hidden group">
10055                            <div class="flex items-center gap-3 py-[13px] px-[14px] w-full">
10056                                <div class="w-[46px] h-[46px] flex-none rounded-lg bg-[#F9F9F9] border border-[#E8E4DF] flex items-center justify-center overflow-hidden">
10057                                    <img
10058                                        x-show="toast.productImageSrc"
10059                                        :src="toast.productImageSrc"
10060                                        :alt="toast.productImageAlt"
10061                                        class="w-full h-full object-contain">
10062                                </div>
10063                                <div class="flex-1 min-w-0">
10064                                    <div class="flex items-center gap-[7px] text-[13.5px] font-extrabold">
10065                                        <template x-if="toast.kind === 'add' && toast.context === 'wishlist'">
10066                                            <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" viewBox="0 0 24 24" class="fill-white stroke-2 text-green-500" aria-hidden="true"><path d="M2 9.5a5.5 5.5 0 0 1 9.591-3.676.56.56 0 0 0 .818 0A5.49 5.49 0 0 1 22 9.5c0 2.29-1.5 4-3 5.5l-5.492 5.313a2 2 0 0 1-3 .019L5 15c-1.5-1.5-3-3.2-3-5.5"/></svg>
10067                                        </template>
10068                                        <template x-if="toast.kind === 'add' && toast.context !== 'wishlist'">
10069                                            <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" viewBox="0 0 24 24" class="fill-white stroke-2 text-green-500" aria-hidden="true"><path d="M20 6 9 17l-5-5"/></svg>
10070                                        </template>
10071                                        <template x-if="toast.kind === 'update'">
10072                                            <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" viewBox="0 0 24 24" class="fill-white stroke-2 text-blue-500" aria-hidden="true"><path d="M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8"/><path d="M3 3v5h5"/></svg>
10073                                        </template>
10074                                        <template x-if="toast.kind === 'remove'">
10075                                            <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" viewBox="0 0 24 24" class="fill-white stroke-2 text-red-500" aria-hidden="true"><path d="M10 11v6M14 11v6M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6M3 6h18M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"/></svg>
10076                                        </template>
10077                                        <span
10078                                            :class="{
10079                                                'text-green-500': toast.kind === 'add',
10080                                                'text-blue-500': toast.kind === 'update',
10081                                                'text-red-500': toast.kind === 'remove',
10082                                            }"
10083                                            x-text="(toast.context === 'wishlist' ? {
10084                                                add: 'Ajouté à la liste de souhaits',
10085                                                update: 'Quantité mise à jour',
10086                                                remove: 'Retiré de la liste de souhaits',
10087                                            } : {
10088                                                add: 'Ajouté au panier',
10089                                                update: 'Quantité mise à jour',
10090                                                remove: 'Retiré du panier',
10091                                            })[toast.kind]"></span>
10092                                    </div>
10093                                    <div class="text-[12.5px] text-[#5C5C5C] mt-0.5 whitespace-nowrap overflow-hidden text-ellipsis" x-text="toast.productName"></div>
10094                                </div>
10095                                <span
10096                                    x-show="toast.context !== 'wishlist' || toast.kind === 'update'"
10097                                    class="flex-none inline-flex items-center justify-center min-w-[26px] h-[22px] px-1.5 rounded-full bg-[#F0EDE9] text-[12px] font-bold text-primary-bg tabular-nums"
10098                                    x-text="`×${toast.qty}`"></span>
10099                                <button
10100                                    type="button"
10101                                    @click="$store.toast.close(toast.id)"
10102                                    aria-label="Fermer la notification"
10103                                    class="w-6 h-6 flex-none border-none bg-transparent p-0 cursor-pointer flex items-center justify-center">
10104                                    <svg style="width:14px;height:14px" viewBox="0 0 24 24">
10105                                        <path d="M6 6l12 12M18 6L6 18" fill="none" stroke="#B9B2AA" stroke-width="2.2"></path>
10106                                    </svg>
10107                                </button>
10108                            </div>
10109                            <div class="h-[3px] bg-[#F0EDE9] w-full">
10110                                <div
10111                                    class="h-full"
10112                                    x-data="{ _lastDepart: null }"
10113                                    :class="{
10114                                        'bg-green-600': toast.kind === 'add',
10115                                        'bg-blue-500': toast.kind === 'update',
10116                                        'bg-error': toast.kind === 'remove',
10117                                    }"
10118                                    x-effect="
10119                                        if (_lastDepart !== toast.depart) {
10120                                            _lastDepart = toast.depart;
10121                                            $el.style.animation = '
10121none';
10122                                            void $el.offsetWidth;
10123                                            $el.style.animation = `cart-toast-bar ${toast.duree}ms linear both`;
10124                                        }
10125                                        $el.style.animationPlayState = toast.paused ? 'paused' : 'running';
10126                                    ">
10127                                </div>
10128                            </div>
10129                        </span>
10130                    </template>
10131                    <template x-if="toast.toastType !== 'product'">
10132                        <span
10133                            class="relative flex flex-col items-start shadow-[0_10px_30px_rgba(24,24,24,0.14)] w-full transition-all duration-300 ease-out bg-white border border-[#E8E4DF] rounded-xl overflow-hidden group">
10134                            <template x-if="!toast.html">
10135                                <div class="flex items-center gap-3 py-[13px] px-[14px] w-full">
10136                                    <div class="flex-1 min-w-0">
10137                                        <div class="flex items-center gap-[7px] text-[13.5px] font-extrabold shrink-0"
10138                                            :class="$store.toast.getTextClass(toast.type)">
10139                                            <template x-if="toast.type=='success'">
10140                                                <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" viewBox="0 0 24 24" class="shrink-0 fill-white stroke-2 text-green-500" aria-hidden="true"><path d="M20 6 9 17l-5-5"/></svg>
10141                                            </template>
10142                                            <template x-if="toast.type=='info'">
10143                                                <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" viewBox="0 0 24 24" class="shrink-0 fill-white stroke-2 text-blue-500" aria-hidden="true"><circle cx="12" cy="12" r="10"/><path d="M12 16v-4M12 8h.01"/></svg>
10144                                            </template>
10145                                            <template x-if="toast.type=='warning'">
10146                                                <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" viewBox="0 0 24 24" class="shrink-0 fill-white stroke-2 text-orange-400" aria-hidden="true"><path d="m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3M12 9v4M12 17h.01"/></svg>
10147                                            </template>
10148                                            <template x-if="toast.type=='danger'">
10149                                                <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" viewBox="0 0 24 24" class="shrink-0 fill-white stroke-2 text-red-500" aria-hidden="true"><circle cx="12" cy="12" r="10"/><path d="m15 9-6 6M9 9l6 6"/></svg>
10150                                            </template>
10151                                            <template x-if="toast.type=='default'">
10152                                                <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" viewBox="0 0 24 24" class="shrink-0 fill-white stroke-2 text-gray-800" aria-hidden="true"><path d="M10.268 21a2 2 0 0 0 3.464 0M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326"/></svg>
10153                                            </template>
10154                                            <!--
10155                                                Short, fixed-length label next to the icon (same pattern as
10156                                                the product toast above, whose title row is always a short
10157                                                kind label, never the variable-length product name). The
10158                                                actual session message - often a full sentence - goes on its
10159                                                own line below, same treatment as the product toast's
10160                                                productName line, so a long message wraps cleanly instead of
10161                                                fighting the icon for room on one line.
10162                                            -->
10163                                            <span x-text="{
10164                                                success: 'Succès',
10165                                                info: 'Info',
10166                                                warning: 'Attention',
10167                                                danger: 'Erreur',
10168                                                default: 'Avis',
10169                                            }[toast.type]"></span>
10170                                        </div>
10171                                        <div class="text-[12.5px] text-[#5C5C5C] mt-0.5" x-text="toast.message"></div>
10172                                        <div x-show="toast.description!==''"
10173                                            class="text-[12.5px] text-[#5C5C5C]" x-text="toast.description"></div>
10174                                        <a
10175                                            x-show="toast.url!=='' && toast.alt!==''"
10176                                            :href="toast.url"
10177                                            :alt="toast.alt"
10178                                            x-text="toast.alt"
10179                                            class="inline-block mt-1 text-[12.5px] font-bold text-primary-bg underline cursor-pointer">
10180                                        </a>
10181                                    </div>
10182                                    <button
10183                                        type="button"
10184                                        @click="$store.toast.burnToast(toast.id)"
10185                                        aria-label="Fermer la notification"
10186                                        class="w-6 h-6 flex-none border-none bg-transparent p-0 cursor-pointer flex items-center justify-center">
10187                                        <svg style="width:14px;height:14px" viewBox="0 0 24 24">
10188                                            <path d="M6 6l12 12M18 6L6 18" fill="none" stroke="#B9B2AA" stroke-width="2.2"></path>
10189                                        </svg>
10190                                    </button>
10191                                </div>
10192                            </template>
10193                            <template x-if="toast.html">
10194                                <div x-html="toast.html"></div>
10195                            </template>
10196                            <div class="h-[3px] bg-[#F0EDE9] w-full">
10197                                <div class="h-full"
10198                                    :class="$store.toast.getBgClass(toast.type)"
10199                                    :style="`animation: toast-bar-deplete ${toast.time}ms linear both;`">
10200                                </div>
10201                            </div>
10202                        </span>
10203                    </template>
10204                </li>
10205            </template>
10206        </ul>
10207    </template>
10208</div>
10209
10210<style>
10211    /* Depleting progress bar, same visual language as the product toast's own
10212       bar animation below, so both toast types read as one family. */
10213    @keyframes toast-bar-deplete {
10214        from {
10215            width: 100%;
10216        }
10217
10218        to {
10219            width: 0%;
10220        }
10221    }
10222
10223    @keyframes cart-toast-bar {
10224        from {
10225            width: 100%;
10226        }
10227
10228        to {
10229            width: 0%;
10230        }
10231    }
10232</style>
10233
10234<script>
10235    /**
10236     * Self-healing fallback: on some pages, Alpine's initial DOM walk does not
10237     * process this template's x-portal directive (root cause not fully pinned
10238     * down - the "portal" directive mechanism itself is confirmed working via
10239     * Alpine.initTree() called manually on this exact element, so it's a
10240     * one-off timing/ordering issue at Alpine.start() rather than a broken
10241     * directive). Once Alpine has finished its initial walk (alpine:initialized
10242     * fires after that), check whether the toast container ever made it into
10243     * <body> and force it through Alpine.initTree() if not.
10244     */
10245    document.addEventListener('alpine:initialized', function() {
10246        if (document.getElementById('toast-list-container')) {
10247            return;
10248        }
10249
10250        var toastTemplate = document.querySelector('template[x-portal="document.body"]');
10251        if (toastTemplate && window.Alpine) {
10252            Alpine.initTree(toastTemplate);
10253        }
10254    });
10255</script>
10255</div>
10256<!-- preview-content -->
10257<div id="PreviewContent" class="contents">
10258    <div class="grid-columns"><div class="h-full row-span-2 col-span-3 only:col-span-full"><article>
10259  
10260  <div
10261    class="animate-on-transition"
10262    itemprop="articleBody"
10263  >
10264    <style>.cmsp182-static {
10265position: static
10266}
10267.cmsp182-relative {
10268position: relative
10269}
10270.cmsp182-inset-0 {
10271inset: 0px
10272}
10273.cmsp182-bottom-\[calc\(160px\/5-160px\)\] {
10274bottom: calc(160px / 5 - 160px)
10275}
10276.cmsp182-bottom-\[calc\(212px\/5-212px\)\] {
10277bottom: calc(212px / 5 - 212px)
10278}
10279.cmsp182-bottom-\[calc\(248px\/5-248px\)\] {
10280bottom: calc(248px / 5 - 248px)
10281}
10282.cmsp182-bottom-\[calc\(76px\/2-76px\)\] {
10283bottom: calc(76px / 2 - 76px)
10284}
10285.cmsp182-mx-auto {
10286margin-left: auto;
10287margin-right: auto
10288}
10289.cmsp182-mb-\[calc\(160px-160px\/5\)\] {
10290margin-bottom: calc(160px - 160px / 5)
10291}
10292.cmsp182-mb-\[calc\(212px-212px\/5\)\] {
10293margin-bottom: calc(212px - 212px / 5)
10294}
10295.cmsp182-mb-\[calc\(248px-248px\/5\)\] {
10296margin-bottom: calc(248px - 248px / 5)
10297}
10298.cmsp182-mb-\[calc\(76px\/2\)\] {
10299margin-bottom: calc(76px / 2)
10300}
10301.cmsp182-mt-5 {
10302margin-top: 1.25rem
10303}
10304.cmsp182-block {
10305display: block
10306}
10307.cmsp182-flex {
10308display: flex
10309}
10310.cmsp182-h-2 {
10311height: 0.5rem
10312}
10313.cmsp182-h-4 {
10314height: 1rem
10315}
10316.cmsp182-h-auto {
10317height: auto
10318}
10319.cmsp182-h-full {
10320height: 100%
10321}
10322.cmsp182-w-full {
10323width: 100%
10324}
10325.cmsp182-flex-col {
10326flex-direction: column
10327}
10328.cmsp182-overflow-hidden {
10329overflow: hidden
10330}
10331.cmsp182-rounded-lg {
10332border-radius: 0.5rem
10333}
10334@media (min-width: 1024px) {
10335.cmsp182-lg\:absolute {
10336position: absolute
10337}
10338.cmsp182-lg\:relative {
10339position: relative
10340}
10341.cmsp182-lg\:col-span-1 {
10342grid-column: span 1 / span 1
10343}
10344.cmsp182-lg\:col-span-2 {
10345grid-column: span 2 / span 2
10346}
10347.cmsp182-lg\:mt-0 {
10348margin-top: 0px
10349}
10350.cmsp182-lg\:flex {
10351display: flex
10352}
10353.cmsp182-lg\:grid {
10354display: grid
10355}
10356.cmsp182-lg\:h-\[390px\] {
10357height: 390px
10358}
10359.cmsp182-lg\:grid-cols-3 {
10360grid-template-columns: repeat(3, minmax(0, 1fr))
10361}
10362.cmsp182-lg\:gap-6 {
10363gap: 1.5rem
10364}
10365.cmsp182-lg\:border {
10366border-width: 1px
10367}
10368.cmsp182-lg\:border-zinc-200 {
10369--tw-border-opacity: 1;
10370border-color: rgb(228 228 231 / var(--tw-border-opacity))
10371}
10372.cmsp182-lg\:bg-white {
10373--tw-bg-opacity: 1;
10374background-color: rgb(255 255 255 / var(--tw-bg-opacity))
10375}
10376.cmsp182-lg\:shadow-xl {
10377--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
10378--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);
10379box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
10380}
10381}
10382@media (min-width: 1280px) {
10383.cmsp182-xl\:h-\[492px\] {
10384height: 492px
10385}
10386}
10387@media (min-width: 1536px) {
10388.cmsp182-\32xl\:h-\[576px\] {
10389height: 576px
10390}
10391}</style>
10392<section class="cmsp182-flex cmsp182-flex-col">
10393<style>
10394.mb-[calc(248px-248px/5)] {
10395  margin-bottom: calc(248px - 248px / 5);
10396}
10397.bottom-[calc(248px/5-248px)] {
10398  bottom: calc(248px / 5 - 248px);
10399}
10400@media (min-width: 640px) {
10401  .mb-[calc(212px-212px/5)] {
10402    margin-bottom: calc(212px - 212px / 5);
10403  }
10404  .bottom-[calc(212px/5-212px)] {
10405    bottom: calc(212px / 5 - 212px);
10406  }
10407}
10408@media (min-width: 768px) {
10409  .mb-[calc(160px-160px/5)] {
10410    margin-bottom: calc(160px - 160px / 5);
10411  }
10412  .bottom-[calc(160px/5-160px)] {
10413    bottom: calc(160px / 5 - 160px);
10414  }}
10415@media (min-width: 1024px) {
10416  .mb-[calc(76px/2)] {
10417    margin-bottom: calc(76px / 2);
10418  }
10419  .bottom-[calc(76px/2-76px)] {
10420    bottom: calc(76px / 2 - 76px);
10421  }
10422}
10423</style>
10424<div class="content-wrapper cmsp182-mx-auto">
10425    <!-- DESKTOP (banner left / partfinder right) -->
10426    <section class="cmsp182-block cmsp182-w-full cmsp182-lg:grid cmsp182-lg:grid-cols-3 lg:gap-4 items-stretch">
10427        <!-- LEFT : BANNER CAROUSEL -->
10428        <div class="banner-container cmsp182-lg:col-span-2 cmsp182-relative cmsp182-w-full cmsp182-h-full cmsp182-rounded-lg cmsp182-overflow-hidden shadow-xl">
10429             <!-- Removed fixed heights -->
10430             <style>
10431    /* BannerMarketing - Fixed proportional sizing using aspect ratio */
10432    .banner-carousel-wrapper {
10433        position: relative;
10434        width: 100%;
10435        aspect-ratio: 16 / 9;
10436    }
10437
10438    /* Content box - Flexible sizing to fit content without line breaks */
10439    /* Mobile-first: smaller on sm screens */
10440    .banner-content-box {
10441        width: auto;
10442        max-width: min(280px, 55%);
10443        min-width: 120px;
10444        padding: 1.5% 2%;
10445        background: rgba(0, 0, 0, 0.3);
10446        backdrop-filter: blur(4px);
10447        -webkit-backdrop-filter: blur(4px);
10448        border: 1px solid rgba(255, 255, 255, 0.1);
10449        border-radius: 0.375rem;
10450        box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
10451        text-align: center;
10452    }
10453
10454    .banner-content-box h3 {
10455        font-size: clamp(0.55rem, 0.9vw, 0.9rem);
10456        font-weight: 700;
10457        color: white;
10458        text-shadow: 0 1px 2px rgba(0,0,0,0.3);
10459        line-height: 1.2;
10460        margin: 0;
10461    }
10462
10463    .banner-content-box p {
10464        font-size: clamp(0.5rem, 0.7vw, 0.7rem);
10465        color: rgba(255, 255, 255, 0.9);
10466        text-shadow: 0 1px 2px rgba(0,0,0,0.2);
10467        line-height: 1.3;
10468        margin: 0.3em 0 0 0;
10469    }
10470
10471    /* md and above: restore original larger sizes */
10472    @media (min-width: 768px) {
10473        .banner-content-box {
10474            max-width: min(380px, 45%);
10475            min-width: 160px;
10476            padding: 2% 3%;
10477        }
10478
10479        .banner-content-box h3 {
10480            font-size: clamp(0.7rem, 1.1vw, 1.1rem);
10481            line-height: 1.3;
10482        }
10483
10484        .banner-content-box p {
10485            font-size: clamp(0.6rem, 0.85vw, 0.85rem);
10486            line-height: 1.4;
10487            margin: 0.5em 0 0 0;
10488        }
10489    }
10490
10491    .banner-content-box .banner-cta {
10492        display: inline-block;
10493        margin-top: 0.15rem;
10494        padding: 0.25rem 0.5rem;
10495        font-size: 0.55rem;
10496        font-weight: 700;
10497        color: white;
10498        border: 1px solid white;
10499        border-radius: 0.2rem;
10500        transition: background-color 0.3s ease, color 0.3s ease;
10501        box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
10502        white-space: nowrap;
10503    }
10504
10505    .banner-content-box .banner-cta:hover {
10506        background: white;
10507        color: black;
10508    }
10509
10510    /* Standalone CTA - Default uses hover styling of regular CTA */
10511    .banner-cta-standalone {
10512        display: inline-block;
10513        margin-top: 0.15rem;
10514        padding: 0.25rem 0.5rem;
10515        font-size: 0.55rem;
10516        font-weight: 700;
10517        background: white;
10518        color: black;
10519        border: 1px solid white;
10520        border-radius: 0.2rem;
10521        transition: background-color 0.3s ease, color 0.3s ease, transform 0.2s ease;
10522        box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
10523        white-space: nowrap;
10524    }
10525
10526    .banner-cta-standalone:hover {
10527        transform: scale(1.05);
10528    }
10529
10530    /* Responsive CTA padding - matches original Tailwind: px-4 py-2 / md:px-6 md:py-2 / lg:px-8 lg:py-3 / xl:px-10 xl:py-4 */
10531    @media (min-width: 768px) {
10532        .banner-content-box .banner-cta,
10533        .banner-cta-standalone {
10534            padding: 0.5rem 1.5rem;
10535            font-size: 0.875rem;
10536        }
10537    }
10538
10539    @media (min-width: 1024px) {
10540        .banner-content-box .banner-cta,
10541        .banner-cta-standalone {
10542            padding: 0.75rem 2rem;
10543        }
10544    }
10545
10546    @media (min-width: 1280px) {
10547        .banner-content-box .banner-cta,
10548        .banner-cta-standalone {
10549            padding: 1rem 2.5rem;
10550        }
10551    }
10552
10553    /* Safe positioning area - prevents overlap with controls */
10554    .banner-safe-zone {
10555        position: absolute;
10556        /* Inset from all edges */
10557        top: 8%;
10558        left: 8%;
10559        right: 8%;
10560        bottom: 12%; /* Extra space for dots */
10561        display: flex;
10562        pointer-events: none;
10563    }
10564
10565    @media (min-width: 768px) {
10566        .banner-safe-zone {
10567            top: 6%;
10568            left: 10%;
10569            right: 10%;
10570            bottom: 15%;
10571        }
10572    }
10573
10574    @media (min-width: 1024px) {
10575        .banner-safe-zone {
10576            top: 5%;
10577            left: 8%;
10578            right: 8%;
10579            bottom: 12%;
10580        }
10581    }
10582</style>
10583
10584<div class="banner-carousel-wrapper group"
10585     x-data="{
10586        autoplayIntervalTime: 5000,
10587        slides: &#x5B;&#x7B;&quot;id&quot;&#x3A;641,&quot;imgSrc&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;media.esprit-ktm.com&#x5C;&#x2F;unsafe&#x5C;&#x2F;resize&#x3A;fill&#x3A;1920&#x3A;1080&#x5C;&#x2F;gravity&#x3A;sm&#x5C;&#x2F;plain&#x5C;&#x2F;local&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;media&#x5C;&#x2F;bannerMarketing&#x5C;&#x2F;espritktm&#x5C;&#x2F;KTM_8__1.png&quot;,&quot;imgSrcset&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;media.esprit-ktm.com&#x5C;&#x2F;unsafe&#x5C;&#x2F;resize&#x3A;fill&#x3A;480&#x3A;270&#x5C;&#x2F;gravity&#x3A;sm&#x5C;&#x2F;plain&#x5C;&#x2F;local&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;media&#x5C;&#x2F;bannerMarketing&#x5C;&#x2F;espritktm&#x5C;&#x2F;KTM_8__1.png&#x20;480w,&#x20;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;media.esprit-ktm.com&#x5C;&#x2F;unsafe&#x5C;&#x2F;resize&#x3A;fill&#x3A;960&#x3A;540&#x5C;&#x2F;gravity&#x3A;sm&#x5C;&#x2F;plain&#x5C;&#x2F;local&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;media&#x5C;&#x2F;bannerMarketing&#x5C;&#x2F;espritktm&#x5C;&#x2F;KTM_8__1.png&#x20;960w,&#x20;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;media.esprit-ktm.com&#x5C;&#x2F;unsafe&#x5C;&#x2F;resize&#x3A;fill&#x3A;1440&#x3A;810&#x5C;&#x2F;gravity&#x3A;sm&#x5C;&#x2F;plain&#x5C;&#x2F;local&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;media&#x5C;&#x2F;bannerMarketing&#x5C;&#x2F;espritktm&#x5C;&#x2F;KTM_8__1.png&#x20;1440w,&#x20;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;media.esprit-ktm.com&#x5C;&#x2F;unsafe&#x5C;&#x2F;resize&#x3A;fill&#x3A;1920&#x3A;1080&#x5C;&#x2F;gravity&#x3A;sm&#x5C;&#x2F;plain&#x5C;&#x2F;local&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;media&#x5C;&#x2F;bannerMarketing&#x5C;&#x2F;espritktm&#x5C;&#x2F;KTM_8__1.png&#x20;1920w&quot;,&quot;imgAlt&quot;&#x3A;&quot;Microfiches&quot;,&quot;title&quot;&#x3A;&quot;&quot;,&quot;description&quot;&#x3A;&quot;&quot;,&quot;ctaText&quot;&#x3A;&quot;&quot;,&quot;ctaUrl&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;pieces-detachees-origines-ktm.html&quot;,&quot;position&quot;&#x3A;&quot;bottom-right&quot;&#x7D;,&#x7B;&quot;id&quot;&#x3A;642,&quot;imgSrc&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;media.esprit-ktm.com&#x5C;&#x2F;unsafe&#x5C;&#x2F;resize&#x3A;fill&#x3A;1920&#x3A;1080&#x5C;&#x2F;gravity&#x3A;sm&#x5C;&#x2F;plain&#x5C;&#x2F;local&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;media&#x5C;&#x2F;bannerMarketing&#x5C;&#x2F;espritktm&#x5C;&#x2F;KTM_VETEMENTS_2026.png&quot;,&quot;imgSrcset&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;media.esprit-ktm.com&#x5C;&#x2F;unsafe&#x5C;&#x2F;resize&#x3A;fill&#x3A;480&#x3A;270&#x5C;&#x2F;gravity&#x3A;sm&#x5C;&#x2F;plain&#x5C;&#x2F;local&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;media&#x5C;&#x2F;bannerMarketing&#x5C;&#x2F;espritktm&#x5C;&#x2F;KTM_VETEMENTS_2026.png&#x20;480w,&#x20;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;media.esprit-ktm.com&#x5C;&#x2F;unsafe&#x5C;&#x2F;resize&#x3A;fill&#x3A;960&#x3A;540&#x5C;&#x2F;gravity&#x3A;sm&#x5C;&#x2F;plain&#x5C;&#x2F;local&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;media&#x5C;&#x2F;bannerMarketing&#x5C;&#x2F;espritktm&#x5C;&#x2F;KTM_VETEMENTS_2026.png&#x20;960w,&#x20;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;media.esprit-ktm.com&#x5C;&#x2F;unsafe&#x5C;&#x2F;resize&#x3A;fill&#x3A;1440&#x3A;810&#x5C;&#x2F;gravity&#x3A;sm&#x5C;&#x2F;plain&#x5C;&#x2F;local&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;media&#x5C;&#x2F;bannerMarketing&#x5C;&#x2F;espritktm&#x5C;&#x2F;KTM_VETEMENTS_2026.png&#x20;1440w,&#x20;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;media.esprit-ktm.com&#x5C;&#x2F;unsafe&#x5C;&#x2F;resize&#x3A;fill&#x3A;1920&#x3A;1080&#x5C;&#x2F;gravity&#x3A;sm&#x5C;&#x2F;plain&#x5C;&#x2F;local&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;media&#x5C;&#x2F;bannerMarketing&#x5C;&#x2F;espritktm&#x5C;&#x2F;KTM_VETEMENTS_2026.png&#x20;1920w&quot;,&quot;imgAlt&quot;&#x3A;&quot;Nouveaut&#x5C;u00e9s&quot;,&quot;title&quot;&#x3A;&quot;&quot;,&quot;description&quot;&#x3A;&quot;&quot;,&quot;ctaText&quot;&#x3A;&quot;&quot;,&quot;ctaUrl&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;nouveautes-2022.html&quot;,&quot;position&quot;&#x3A;&quot;middle-right&quot;&#x7D;,&#x7B;&quot;id&quot;&#x3A;643,&quot;imgSrc&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;media.esprit-ktm.com&#x5C;&#x2F;unsafe&#x5C;&#x2F;resize&#x3A;fill&#x3A;1920&#x3A;1080&#x5C;&#x2F;gravity&#x3A;sm&#x5C;&#x2F;plain&#x5C;&#x2F;local&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;media&#x5C;&#x2F;bannerMarketing&#x5C;&#x2F;espritktm&#x5C;&#x2F;Muc_Off.png&quot;,&quot;imgSrcset&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;media.esprit-ktm.com&#x5C;&#x2F;unsafe&#x5C;&#x2F;resize&#x3A;fill&#x3A;480&#x3A;270&#x5C;&#x2F;gravity&#x3A;sm&#x5C;&#x2F;plain&#x5C;&#x2F;local&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;media&#x5C;&#x2F;bannerMarketing&#x5C;&#x2F;espritktm&#x5C;&#x2F;Muc_Off.png&#x20;480w,&#x20;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;media.esprit-ktm.com&#x5C;&#x2F;unsafe&#x5C;&#x2F;resize&#x3A;fill&#x3A;960&#x3A;540&#x5C;&#x2F;gravity&#x3A;sm&#x5C;&#x2F;plain&#x5C;&#x2F;local&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;media&#x5C;&#x2F;bannerMarketing&#x5C;&#x2F;espritktm&#x5C;&#x2F;Muc_Off.png&#x20;960w,&#x20;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;media.esprit-ktm.com&#x5C;&#x2F;unsafe&#x5C;&#x2F;resize&#x3A;fill&#x3A;1440&#x3A;810&#x5C;&#x2F;gravity&#x3A;sm&#x5C;&#x2F;plain&#x5C;&#x2F;local&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;media&#x5C;&#x2F;bannerMarketing&#x5C;&#x2F;espritktm&#x5C;&#x2F;Muc_Off.png&#x20;1440w,&#x20;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;media.esprit-ktm.com&#x5C;&#x2F;unsafe&#x5C;&#x2F;resize&#x3A;fill&#x3A;1920&#x3A;1080&#x5C;&#x2F;gravity&#x3A;sm&#x5C;&#x2F;plain&#x5C;&#x2F;local&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;media&#x5C;&#x2F;bannerMarketing&#x5C;&#x2F;espritktm&#x5C;&#x2F;Muc_Off.png&#x20;1920w&quot;,&quot;imgAlt&quot;&#x3A;&quot;Jeu&#x20;concours&quot;,&quot;title&quot;&#x3A;&quot;&quot;,&quot;description&quot;&#x3A;&quot;&quot;,&quot;ctaText&quot;&#x3A;&quot;D&#x5C;u00e9couvrir&quot;,&quot;ctaUrl&quot;&#x3A;&quot;https&#x3A;&#x5C;&#x2F;&#x5C;&#x2F;www.esprit-ktm.com&#x5C;&#x2F;catalogsearch&#x5C;&#x2F;result&#x3F;q&#x3D;muc&#x25;20off&quot;,&quot;position&quot;&#x3A;&quot;bottom-center&quot;&#x7D;&#x5D;,
10588        currentSlideIndex: 1,
10589        isPaused: false,
10590        autoplayInterval: null,
10591        touchStartX: null,
10592        touchEndX: null,
10593        mouseStartX: null,
10594        mouseEndX: null,
10595        isDragging: false,
10596        wasDragged: false,
10597        swipeThreshold: 50,
10598        previous() {
10599            if (this.currentSlideIndex > 1) {
10600                this.currentSlideIndex = this.currentSlideIndex - 1
10601            } else {
10602                this.currentSlideIndex = this.slides.length
10603            }
10604            this.resetAutoplay()
10605        },
10606        next(manual = true) {
10607            if (this.currentSlideIndex < this.slides.length) {
10608                this.currentSlideIndex = this.currentSlideIndex + 1
10609            } else {
10610                this.currentSlideIndex = 1
10611            }
10612            if (manual) this.resetAutoplay()
10613        },
10614        autoplay() {
10615            this.autoplayInterval = setInterval(() => {
10616                if (!this.isPaused) {
10617                    this.next(false)
10618                }
10619            }, this.autoplayIntervalTime)
10620        },
10621        resetAutoplay() {
10622            clearInterval(this.autoplayInterval)
10623            this.autoplay()
10624        },
10625        handleTouchStart(event) {
10626            this.touchStartX = event.touches[0].clientX
10627        },
10628        handleTouchMove(event) {
10629            this.touchEndX = event.touches[0].clientX
10630        },
10631        handleTouchEnd() {
10632            if(this.touchEndX){
10633                if (this.touchStartX - this.touchEndX > this.swipeThreshold) {
10634                    this.next()
10635                }
10636                if (this.touchStartX - this.touchEndX < -this.swipeThreshold) {
10637                    this.previous()
10638                }
10639                this.touchStartX = null
10640                this.touchEndX = null
10641            }
10642        },
10643        handleMouseDown(event) {
10644            event.preventDefault()
10645            this.isDragging = true
10646            this.mouseStartX = event.clientX
10647            this.mouseEndX = null
10648        },
10649        handleMouseMove(event) {
10650            if (this.isDragging) {
10651                this.mouseEndX = event.clientX
10652            }
10653        },
10654        handleMouseUp() {
10655            if (this.isDragging && this.mouseEndX !== null) {
10656                const diff = this.mouseStartX - this.mouseEndX
10657                if (Math.abs(diff) > 5) {
10658                    this.wasDragged = true
10659                }
10660                if (diff > this.swipeThreshold) {
10661                    this.next()
10662                } else if (diff < -this.swipeThreshold) {
10663                    this.previous()
10664                }
10665            }
10666            this.isDragging = false
10667            this.mouseStartX = null
10668            this.mouseEndX = null
10669        },
10670        handleClick(event) {
10671            if (this.wasDragged) {
10672                event.preventDefault()
10673                this.wasDragged = false
10674            }
10675        },
10676        handleMouseLeave() {
10677            if (this.isDragging) {
10678                this.handleMouseUp()
10679            }
10680            this.isPaused = false
10681        }
10682     }"
10683     x-init="autoplay()"
10684     @mouseenter="isPaused = true"
10685     @mouseleave="handleMouseLeave()">
10686
10687    <!-- Slides -->
10688    <div class="absolute inset-0 w-full h-full overflow-hidden rounded-lg select-none"
10689         :class="{ 'cursor-grabbing': isDragging, 'cursor-grab': !isDragging }"
10690         @touchstart="handleTouchStart($event)"
10691         @touchmove="handleTouchMove($event)"
10692         @touchend="handleTouchEnd()"
10693         @mousedown="handleMouseDown($event)"
10694         @mousemove="handleMouseMove($event)"
10695         @mouseup="handleMouseUp()">
10696        <template x-for="(slide, index) in slides" :key="slide.id">
10697            <div x-cloak
10698                 x-show="currentSlideIndex == index + 1"
10699                 class="absolute inset-0 w-full h-full"
10700                 x-transition:enter="transition ease-out duration-500"
10701                 x-transition:enter-start="opacity-0"
10702                 x-transition:enter-end="opacity-100"
10703                 x-transition:leave="transition ease-in duration-500"
10704                 x-transition:leave-start="opacity-100"
10705                 x-transition:leave-end="opacity-0">
10706
10707                <!-- Content Overlay - Safe zone prevents overlap with controls -->
10708                <div class="banner-safe-zone z-10"
10709                     :class="{
10710                        'items-start justify-start': slide.position === 'top-left',
10711                        'items-start justify-center': slide.position === 'top-center',
10712                        'items-start justify-end': slide.position === 'top-right',
10713                        'items-center justify-start': slide.position === 'middle-left',
10714                        'items-center justify-center': slide.position === 'middle-center',
10715                        'items-center justify-end': slide.position === 'middle-right',
10716                        'items-end justify-start': slide.position === 'bottom-left',
10717                        'items-end justify-center': slide.position === 'bottom-center',
10718                        'items-end justify-end': slide.position === 'bottom-right'
10719                     }">
10720
10721                    <!-- Content Box - Fixed percentage width -->
10722                    <div x-show="slide.title || slide.description"
10723                         class="banner-content-box pointer-events-auto flex flex-col justify-center items-center gap-1">
10724
10725                        <h3 x-show="slide.title" x-html="slide.title"></h3>
10726                        <p x-show="slide.description" x-html="slide.description"></p>
10727                        <a x-show="slide.ctaText && slide.ctaUrl"
10728                           :href="slide.ctaUrl"
10729                           class="banner-cta"
10730                           x-html="slide.ctaText"></a>
10731                    </div>
10732
10733                    <!-- Standalone Button -->
10734                    <a x-show="!slide.title && !slide.description && slide.ctaText && slide.ctaUrl"
10735                       :href="slide.ctaUrl"
10736                       class="banner-cta-standalone pointer-events-auto"
10737                       x-html="slide.ctaText"></a>
10738                </div>
10739
10740                <!-- Image -->
10741                <template x-if="slide.ctaUrl">
10742                    <a :href="slide.ctaUrl" class="block absolute inset-0 w-full h-full z-0" @click="handleClick($event)">
10743                        <img class="block w-full h-full object-cover"
10744                             :src="slide.imgSrc"
10745                             :srcset="slide.imgSrcset"
10746                             sizes="100vw"
10747                             decoding="async"
10748                             :alt="slide.imgAlt"
10749                             draggable="false" />
10750                    </a>
10751                </template>
10752                <template x-if="!slide.ctaUrl">
10753                    <img class="absolute block w-full h-full inset-0 object-cover"
10754                         :src="slide.imgSrc"
10755                         :srcset="slide.imgSrcset"
10756                         sizes="100vw"
10757                         decoding="async"
10758                         :alt="slide.imgAlt"
10759                         draggable="false" />
10760                </template>
10761            </div>
10762        </template>
10763    </div>
10764
10765    <!-- Indicators -->
10766    <div class="absolute rounded-full bottom-3 md:bottom-5 left-1/2 z-20 flex -translate-x-1/2 gap-4 md:gap-3 bg-black/20 backdrop-blur-sm border border-white/10 shadow-lg px-3 py-2" style="-webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px);" role="group" aria-label="slides">
10767        <template x-for="(slide, index) in slides">
10768            <button class="size-2 md:size-3 rounded-full transition"
10769                    x-on:click="currentSlideIndex = index + 1; resetAutoplay()"
10770                    x-bind:class="[currentSlideIndex === index + 1 ? 'bg-white scale-125' : 'bg-white/50 hover:bg-white/80']"
10771                    x-bind:aria-label="'slide ' + (index + 1)"></button>
10772        </template>
10773    </div>
10774
10775    <!-- Navigation Chevrons -->
10776    <template x-if="slides.length > 1">
10777        <div class="hidden md:block">
10778            <button type="button" class="absolute left-5 top-1/2 z-20 flex rounded-full -translate-y-1/2 items-center justify-center bg-black/20 backdrop-blur-sm border border-white/10 shadow-lg p-1 md:p-2 text-white transition hover:bg-black/60" style="-webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px);" aria-label="previous slide" x-on:click="previous()">
10779                <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-4 h-4 md:w-6 md:h-6 stroke-current stroke-2 fill-none stroke-white" width="24" height="24" role="img">
10780  <path stroke-linecap="round" stroke-linejoin="round" d="M15 19l-7-7 7-7"/>
10781<title>chevron-left</title></svg>
10782            </button>
10783            <button type="button" class="absolute right-5 top-1/2 z-20 flex rounded-full -translate-y-1/2 items-center justify-center bg-black/20 backdrop-blur-sm border border-white/10 shadow-lg p-1 md:p-2 text-white transition hover:bg-black/60" style="-webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px);" aria-label="next slide" x-on:click="next()">
10784                <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-4 h-4 md:w-6 md:h-6 stroke-current stroke-2 fill-none stroke-white" width="24" height="24" role="img">
10785  <path stroke-linecap="round" stroke-linejoin="round" d="M9 5l7 7-7 7"/>
10786<title>chevron-right</title></svg>
10787            </button>
10788        </div>
10789    </template>
10790</div>
10791
10792        </div>
10793        <!-- RIGHT : PARTFINDER -->
10794        <div class="cmsp182-w-full cmsp182-mt-5 cmsp182-lg:mt-0 cmsp182-lg:col-span-1 cmsp182-h-full">
10795            <div class="cmsp182-lg:bg-white cmsp182-lg:shadow-xl cmsp182-rounded-lg cmsp182-lg:flex cmsp182-lg:border 
10795cmsp182-lg:border-zinc-200 cmsp182-w-full cmsp182-flex cmsp182-flex-col cmsp182-h-full">
10796                 <!-- h-full helps it fill the grid cell -->
10797                    
10798<!-- Load dependencies -->
10799<script src="https://www.esprit-ktm.com/static/version1791195787/frontend/Ham/hyva/fr_FR/Mageants_PartFinder/js/hyva-model-search-integrated.min.js"></script>
10799
10800<!-- Selection tracking beacon, shared by every selection path (main form,
10801     quick search, PDP modal, garage page). Self-guarded against double load. -->
10802<script src="https://www.esprit-ktm.com/static/version1791195787/frontend/Ham/hyva/fr_FR/Mageants_PartFinder/js/partfinder-track.min.js"></script>
10802
10803
10804<!-- Inline PartFinder JS to avoid extra request and double initialization -->
10805<script>
10806    
10807window.PartFinder = function(propsConfig, propsSearchModels, propsFormKey) {
10808    const config = propsConfig || window.partFinderConfig || {};
10809    const searchModels = propsSearchModels || window.partFinderSearchModels || [];
10810    const formKey = propsFormKey || window.FORM_KEY || '';
10811    // Helper functions
10812    const normalizeVehicleName = (modelName) => {
10813        if (!modelName) return '';
10814
10815        // Decode URL encoding
10816        let normalized = decodeURIComponent(modelName);
10817
10818        // Extract year from the beginning (4 digits)
10819        const yearMatch = normalized.match(/^(\d{4})/);
10820        const year = yearMatch ? yearMatch[1] : '';
10821
10822        // Remove the year from the beginning and clean up
10823        let nameWithoutYear = normalized.replace(/^(\d{4})\s*/, '').trim();
10824
10825        // Remove any duplicate year that appears later in the string
10826        if (year) {
10827            const yearRegex = new RegExp(`\\b${year}\\b`, 'g');
10828            nameWithoutYear = nameWithoutYear.replace(yearRegex, '').trim();
10829            // Clean up multiple spaces
10830            nameWithoutYear = nameWithoutYear.replace(/\s+/g, ' ').trim();
10831        }
10832
10833        // Rebuild the name with year at the start
10834        return year ? `${year} ${nameWithoutYear}`.trim() : nameWithoutYear;
10835    };
10836
10837    const setPartfinderCookie = (key, value) => {
10838        const days = 30; // Cookie lifetime in days
10839
10840        if (typeof hyva !== 'undefined' && hyva.setCookie) {
10841            // hyva.setCookie(name, value, days, skipSetDomain)
10842            // Use skipSetDomain=true to avoid domain conflicts
10843            hyva.setCookie(key, value, days, true);
10844        } else {
10845            console.warn('Hyva not available, using fallback document.cookie');
10846            // Fallback: Set cookie without domain (uses current domain only, no subdomain sharing)
10847            const expires = new Date();
10848            expires.setTime(expires.getTime() + (days * 24 * 60 * 60 * 1000));
10849            document.cookie = `${key}=${encodeURIComponent(value)}; path=/; expires=${expires.toUTCString()}; SameSite=Lax`;
10850        }
10851    };
10852
10853    const getPartfinderCookie = (key) => {
10854        if (typeof hyva !== 'undefined' && hyva.getCookie) {
10855            const value = hyva.getCookie(key);
10856            return value;
10857        } else {
10858            console.warn('Hyva not available, using fallback document.cookie');
10859            const cookies = document.cookie.split(';');
10860            for (let cookie of cookies) {
10861                const [name, value] = cookie.trim().split('=');
10862                if (name === key) {
10863                    return decodeURIComponent(value);
10864                }
10865            }
10866            return null;
10867        }
10868    };
10869
10870    const clearPartfinderCookie = (key) => {
10871        // NUCLEAR OPTION FIRST: Clear ALL possible domain variations
10872        // This ensures we clear cookies that may have been set with different domain logic
10873        const currentDomain = window.location.hostname;
10874
10875        // Get all possible domain variations to clear
10876        const domainsToTry = [
10877            undefined, // No domain (current exact domain)
10878            currentDomain, // Explicit current domain
10879            '.' + currentDomain, // Dot-prefixed (subdomain-wide)
10880        ];
10881
10882        // Also try parent domain if we're on a subdomain
10883        const domainParts = currentDomain.split('.');
10884        if (domainParts.length > 2) {
10885            // If we're on www.example.com or shop.example.com, also try .example.com
10886            const parentDomain = '.' + domainParts.slice(-2).join('.');
10887            domainsToTry.push(parentDomain);
10888        }
10889
10890        // Clear with all domain variations
10891        domainsToTry.forEach(domain => {
10892            const domainAttr = domain ? `; domain=${domain}` : '';
10893            // Try with and without SameSite
10894            document.cookie = `${key}=; path=/${domainAttr}; expires=Thu, 01 Jan 1970 00:00:00 GMT`;
10895            document.cookie = `${key}=; path=/${domainAttr}; expires=Thu, 01 Jan 1970 00:00:00 GMT; SameSite=Lax`;
10896            document.cookie = `${key}=; path=/${domainAttr}; expires=Thu, 01 Jan 1970 00:00:00 GMT; SameSite=Strict`;
10897            document.cookie = `${key}=; path=/${domainAttr}; expires=Thu, 01 Jan 1970 00:00:00 GMT; SameSite=None; Secure`;
10898        });
10899
10900        // THEN try Hyvä's method (but it might not work as expected)
10901        if (typeof hyva !== 'undefined' && hyva.setCookie) {
10902            try {
10903                hyva.setCookie(key, '', -1, true);
10904            } catch (e) {
10905                console.warn('Hyva setCookie failed during clear:', e);
10906            }
10907        }
10908    };
10909
10910    const isYearOption = (label) => {
10911        if (!label) return false;
10912        const normalized = label.toLowerCase().normalize('NFD').replace(/[\u0300-\u036f]/g, '');
10913        return normalized.includes('year')
10914            || normalized.includes('annee')
10915            || normalized.includes('ano')
10916            || normalized.includes('jahr')
10917            || normalized.includes('año');
10918    };
10919
10920    return {
10921        finderOptions: config.finderOptions,
10922        selectedModel: '',
10923        isSubmitting: false,
10924        vinValue: '',
10925        plateValue: '',
10926        // Inline error shown under the plate/VIN slot ('' = no error)
10927        slotError: '',
10928        // Active mode of the top "exact identifier" slot: 'plate' | 'vin' | ''
10929        slotMode: '',
10930        // Active browse method when tabs are shown: 'name' | 'cascade'
10931        browseMode: 'name',
10932        // Reactive page state properties
10933        isGaragePage: false,
10934        isHomepage: false,
10935        isPiecesOrigine: false,
10936        isVinSearchEnabled: false,
10937        isPlateSearchEnabled: false,
10938        // Form titles
10939        partfinderFormTitle: config.partfinderFormTitle,
10940        garageFormTitle: config.garageFormTitle,
10941        // Garage vehicle functionality
10942        garageVehicles: [],
10943        selectedGarageVehicle: '',
10944        isLoadingGarageVehicles: false,
10945        // Only keep showActions for mobile toggle functionality
10946        showActions: false,
10947        // Mobile collapsible form functionality
10948        isScreenMobile: false,
10949        isMobileCollapsed: true,
10950        // Enable skeleton loader initially if no model selected
10951        ready: config.selectedModel ? true : false,
10952        // Tab system for search
10953        activeTab: 'search',
10954        searchModels: searchModels || [],
10955        searchQuery: '',
10956
10957        // Expose helper to template
10958        normalizeVehicleName,
10959
10960        // Garage pill label: the saved label minus the year (shown greyed,
10961        // separately) so "2024 KTM 390 Duke" reads as "KTM 390 Duke" + "2024".
10962        garageVehicleName(vehicle) {
10963            const label = (vehicle?.ham_model_label || '').trim();
10964            const year = String(vehicle?.ham_model_year || '').trim();
10965            if (!year) return label;
10966            return label
10967                .replace(new RegExp('\\b' + year + '\\b', 'g'), '')
10968                .replace(/\s+/g, ' ')
10969                .trim();
10970        },
10971
10972        async init() {
10973            // Initialize reactive page state
10974            this.updatePageState();
10975            // Listen for navigation changes
10976            window.addEventListener('popstate', () => {
10977                this.updatePageState();
10978            });
10979            // Mobile detection and responsive behavior
10980            this.updateMobileState();
10981            // Listen for window resize to update mobile state
10982            window.addEventListener('resize', () => {
10983                this.updateMobileState();
10984            });
10985            // Initialize selected model based on page type
10986            if (!this.isGaragePage) {
10987                this.selectedModel = config.selectedModel || getPartfinderCookie('selected_model') || '';
10988            }
10989
10990            // If we have a selected model (from config or cookie), mark as ready immediately
10991            if (this.selectedModel) {
10992                this.ready = true;
10993            }
10994
10995            // Stay in sync when the model is changed/reset from ANY component
10996            // (modal, popup, another instance). Replaces the old full-page reload:
10997            // the form selectors must hide and the selected-model card must show.
10998            window.addEventListener('partfinder-changed', () => this.syncSelectedModelFromCookie());
10999            window.addEventListener('partfinder-reset', () => this.resetSelectedModelState());
11000
11001            // Mirror the quick-search query (dispatched by the autocomplete
11002            // sub-components) so the banner can dim the cascade while typing.
11003            window.addEventListener('search-query-updated', (event) => {
11004                this.searchQuery = event.detail || '';
11005            });
11006
11007            // Watch for login state changes and act when it becomes true
11008            this.$watch('$store.main.isUserLoggedIn', async (isLoggedIn) => {
11009                if (isLoggedIn && !this.isGaragePage) {
11010                    await this.loadGarageVehicles();
11011                }
11012            });
11013            // If already logged in (SPA navigation), load immediately
11014            if (this.$store.main.isUserLoggedIn && !this.isGaragePage) {
11015                await this.loadGarageVehicles();
11016            }
11017            if (!this.finderOptions[0]?.values?.length && !this.selectedModel) {
11018                await this.loadFirstOption();
11019            }
11020            this.attachMethods();
11021        },
11022        // Update all reactive page state properties
11023        updatePageState() {
11024            const currentPath = window.location.pathname;
11025            // Garage + legacy result routes keep the form in "fresh search" mode
11026            // (no selected-model card). Anything else (categories, search, home)
11027            // syncs with the selected_model cookie.
11028            this.isGaragePage = currentPath.includes('/partfinder/garage')
11029                || currentPath.includes('/partfinder/result');
11030            this.isHomepage = typeof config.isHomepage === 'boolean'
11031                ? config.isHomepage
11032                : currentPath === '/';
11033            // Use server-side category check for Pièces Origine
11034            this.isPiecesOrigine = config.isPiecesOrigineCategory;
11035            // VIN search is enabled by default (can be overridden by server config)
11036            this.isVinSearchEnabled = config.initialVinSearchEnabled;
11037            // Plate search enabled from server config
11038            this.isPlateSearchEnabled = config.initialPlateSearchEnabled;
11039            // Initialise the slot mode once: plate has priority over VIN.
11040            // Only set when empty so a user's manual toggle survives popstate.
11041            if (!this.slotMode) {
11042                this.slotMode = this.isPlateSearchEnabled
11043                    ? 'plate'
11044                    : (this.isVinSearchEnabled ? 'vin' : '');
11045            }
11046        },
11047        // Sync this instance's display with the selected_model cookie when a model
11048        // is picked elsewhere (modal/popup/other instance). Hides the selectors form
11049        // and shows the selected-model card without a page reload.
11050        syncSelectedModelFromCookie() {
11051            const model = getPartfinderCookie('selected_model') || '';
11052            this.selectedModel = model;
11053            if (model) {
11054                this.ready = true;
11055                this.isMobileCollapsed = true;
11056            }
11057        },
11058        // Reset this instance back to the selectors form when the model is cleared
11059        // from anywhere (replaces the old reload on reset).
11060        resetSelectedModelState() {
11061            this.selectedModel = '';
11062            this.vinValue = '';
11063            this.plateValue = '';
11064            this.slotError = '';
11065            this.selectedGarageVehicle = '';
11066            this.finderOptions.forEach((option) => {
11067                option.selectedValue = '';
11068                if (option.level > 0) {
11069                    option.isDisabled = true;
11070                    option.values = [];
11071                }
11072            });
11073            if (!this.finderOptions[0]?.values?.length) {
11074                this.loadFirstOption();
11075            }
11076            this.ready = true;
11077        },
11078        // Update mobile state based on screen size
11079        updateMobileState() {
11080            this.isScreenMobile = !window.matchMedia('(min-width: 1280px)').matches;
11081        },
11082        // Load garage vehicles for logged-in users
11083        async loadGarageVehicles() {
11084            if (!this.$store.main.isUserLoggedIn) return;
11085            this.isLoadingGarageVehicles = true;
11086            try {
11087                const response = await fetch(config.urls.garageOptions, {
11088                    method: 'GET',
11089                    headers: {
11090                        'X-Requested-With': 'XMLHttpRequest'
11091                    }
11092                });
11093                if (response.ok) {
11094                    const data = await response.json();
11095                    // Parse the JSON string if it's double-encoded
11096                    const vehicles = typeof data === 'string' ? JSON.parse(data) : data;
11097                    this.garageVehicles = vehicles?.items || [];
11098                } else {
11099                    console.error('Failed to load garage vehicles:', response.statusText);
11100                }
11101            } catch (error) {
11102                console.error('Error loading garage vehicles:', error);
11103            } finally {
11104                this.isLoadingGarageVehicles = false;
11105            }
11106        },
11107        // Handle garage vehicle selection
11108        async handleGarageVehicleSelection() {
11109            if (!this.selectedGarageVehicle) return;
11110            const selectedVehicle = this.garageVehicles.find(v =>
11111                String(v.ham_model_id) === String(this.selectedGarageVehicle)
11112            );
11113            if (selectedVehicle) {
11114                // Extract model name from the label (remove year if present)
11115                let modelName = selectedVehicle.ham_model_label;
11116                if (selectedVehicle.ham_model_year) {
11117                    // Remove year from the beginning of the label if present
11118                    modelName = modelName.replace(new RegExp('^' + selectedVehicle.ham_model_year + '\\s*'), '').trim();
11119                }
11120                // Create proper findpart string format following the same pattern as dropdown selections
11121                // Format: year-modelname-valueid (same as VIN search and dropdown format)
11122                const year = selectedVehicle.ham_model_year || '';
11123                const modelNameFormatted = modelName.toLowerCase().replace(/\s+/g, '');
11124                const valueId = selectedVehicle.ham_model_id;
11125                const findpartString = `${year}-${modelNameFormatted}-${valueId}`.toLowerCase();
11126                // Store in cookies
11127                setPartfinderCookie('current_findpart', findpartString);
11128                setPartfinderCookie('selected_model', selectedVehicle.ham_model_label);
11129
11130                // Dispatch event for compatibility badges to update
11131                window.dispatchEvent(new CustomEvent('partfinder-changed', { detail: { selectedModel: selectedVehicle.ham_model_label } }));
11132
11133                // Stats: a vehicle reused from the garage (fire-and-forget)
11134                window.partFinderTrackSelection?.('garage', {
11135                    valueId: valueId,
11136                    label: selectedVehicle.ham_model_label,
11137                    year: year
11138                });
11139
11140                // Clear other form selections
11141                this.vinValue = '';
11142                this.finderOptions.forEach(option => {
11143                    option.selectedValue = '';
11144                    if (option.level > 0) {
11145                        option.isDisabled = true;
11146                        option.values = [];
11147                    }
11148                });
11149                // Check if we're on catalog search results page
11150                // Note: isCatalogSearchPage needs to be passed or detected.
11151                // In the original code it was injected via PHP.
11152                // We can detect it from URL or window config.
11153                const isCatalogSearchPage = window.location.pathname.includes('catalogsearch'); // Simple detection
11154
11155                if (isCatalogSearchPage) {
11156                    // On search results page: set selected model and reload
11157                    this.selectedModel = selectedVehicle.ham_model_label;
11158                    window.location.reload();
11159                    return;
11160                }
11161
11162                // If on homepage, redirect to Pièces Origine category
11163                if (this.isHomepage && config.urls.piecesOrigine) {
11164                    window.location.href = config.urls.piecesOrigine;
11165                    return;
11166                }
11167
11168                // Category / Pièces Origine pages: no full-page reload. The page is
11169                // cached once at the CDN; the product grid is swapped in place via the
11170                // "partfinder-changed" event (hole-punch on /partfinder/category/grid).
11171                this.selectedModel = selectedVehicle.ham_model_label;
11172            }
11173        },
11174        async loadFirstOption() {
11175            const firstOption = this.finderOptions[0];
11176            if (!firstOption) return;
11177            firstOption.isLoading = true;
11178            try {
11179                const response = await fetch(firstOption.optionUrl + 'parent_id/0/level/0');
11180                const data = await response.json();
11181                if (data.error) {
11182                    if (window.dispatchMessages) {
11183                        window.dispatchMessages([{
11184                            type: 'error',
11185                            text: data.message
11186                        }], 5000);
11187                    }
11188                    return;
11189                }
11190                firstOption.values = data;
11191                firstOption.isLoading = false;
11192                this.ready = true;
11193            } catch (error) {
11194                this.ready = true;
11195                firstOption.isLoading = false;
11196            }
11197        },
11198        attachMethods() {
11199            for (const finderOption of this.finderOptions) {
11200                finderOption.toggleLoading = () => {
11201                    finderOption.isLoading = !finderOption.isLoading;
11202                };
11203                finderOption.handleChange = async () => {
11204                    const nextLevel = finderOption.level + 1;
11205                    const nextOption = this.finderOptions[nextLevel];
11206                    if (!nextOption || !finderOption.selectedValue) {
11207                        return;
11208                    }
11209                    nextOption.toggleLoading();
11210                    nextOption.values = [];
11211                    try {
11212                        const selectedValue = String(finderOption.selectedValue);
11213                        const selectedObj = finderOption.values.find((v) => String(v.id) === selectedValue);
11214                        const selectedText = selectedObj ? selectedObj.text : '';
11215                        const response = await fetch(
11216                            `${nextOption.optionUrl}parent_id/${selectedValue}/value/${encodeURIComponent(selectedText)}/level/${nextLevel}`
11217                        );
11218                        const data = await response.json();
11219                        if (data.error) {
11220                            if (window.dispatchMessages) {
11221                                window.dispatchMessages([{
11222                                    type: 'error',
11223                                    text: data.message
11224                                }], 5000);
11225                            }
11226                            nextOption.toggleLoading();
11227                            return;
11228                        }
11229                        nextOption.values = data;
11230                        nextOption.selectedValue = '';
11231                        nextOption.isDisabled = false;
11232                        nextOption.toggleLoading();
11233                    } catch (error) {
11234                        nextOption.toggleLoading();
11235                    }
11236                };
11237            }
11238        },
11239        // Handle form submission
11240        async handleSubmit(event) {
11241            this.isSubmitting = true;
11242            // A completed cascade always wins; a leftover VIN typed in the slot
11243            // must not hijack a cascade submit. The VIN path only applies when
11244            // nothing is selected in the cascade.
11245            const hasCascadeSelection = this.finderOptions.some((option) => option.selectedValue);
11246            if (!hasCascadeSelection && this.vinValue?.trim()) {
11247                await this.handleVinSearch(event);
11248                return;
11249            }
11250            let findpartString = '';
11251            let lastSelectedId = '';
11252            let vehicleName = '';
11253            let vehicleYear = '';
11254            // Determine year and model indices dynamically from option labels
11255            // so stores with reversed or extra cascade levels still work.
11256            const yearIndex = this.finderOptions.findIndex(o => isYearOption(o.label));
11257            const nonYearOptions = this.finderOptions
11258                .map((o, i) => ({ index: i, label: o.label }))
11259                .filter(o => !isYearOption(o.label));
11260            const modelIndex = nonYearOptions.length > 0
11261                ? nonYearOptions[nonYearOptions.length - 1].index
11262                : this.finderOptions.length - 1;
11263            this.finderOptions.forEach((option, index) => {
11264                if (option.selectedValue) {
11265                    const selectedOption = option.values.find(v => String(v.id) === String(option.selectedValue));
11266                    if (selectedOption) {
11267                        findpartString += selectedOption.text.toLowerCase().replace(/\s+/g, '') + '-';
11268                        lastSelectedId = option.selectedValue;
11269                        // Store year and model separately
11270                        if (index === yearIndex) {
11271                            vehicleYear = selectedOption.text;
11272                        } else if (index === modelIndex) {
11273                            vehicleName = selectedOption.text;
11274                        }
11275                    }
11276                }
11277            });
11278            if (!lastSelectedId) {
11279                // Nothing selected (and no VIN): don't navigate, release the form.
11280                event.preventDefault();
11281                this.isSubmitting = false;
11282                return;
11283            }
11284            {
11285                findpartString += lastSelectedId;
11286                // Store in cookies only
11287                setPartfinderCookie('current_findpart', findpartString);
11288                setPartfinderCookie('selected_model', vehicleName);
11289
11290                // Dispatch event for compatibility badges to update
11291                window.dispatchEvent(new CustomEvent('partfinder-changed', { detail: { selectedModel: vehicleName } }));
11292
11293                // Stats: a model picked through the cascading selectors
11294                // (fire-and-forget, never awaited — see partfinder-track.js)
11295                window.partFinderTrackSelection?.('cascade', {
11296                    valueId: lastSelectedId,
11297                    label: vehicleName,
11298                    year: vehicleYear
11299                });
11300
11301                if (this.$store.main.isUserLoggedIn) {
11302                    event.preventDefault();
11303                    const result = await this.saveVehicleToGarage({
11304                        vehicle_name: vehicleName,
11305                        vehicle_year: vehicleYear,
11306                        vehicle_id: lastSelectedId
11307                    }, findpartString);
11308                    // this.selectedModel = vehicleName;
11309                    // Check if we're on catalog search results page
11310                    const isCatalogSearchPage = window.location.pathname.includes('catalogsearch');
11311                    if (isCatalogSearchPage) {
11312                        // On search results page: refresh to show filtered results
11313                        event.preventDefault();
11314                        window.location.reload();
11315                        return;
11316                    }
11317
11318                    // If on homepage, redirect to Pièces Origine category
11319                    if (this.isHomepage && config.urls.piecesOrigine) {
11320                        event.preventDefault();
11321                        window.location.href = config.urls.piecesOrigine;
11322                        return;
11323                    }
11324
11325                    // Category / Pièces Origine pages: no reload, the grid is
11326                    // hole-punched via "partfinder-changed".
11327                    event.preventDefault();
11328                    this.isSubmitting = false;
11329                    this.selectedModel = vehicleName;
11330                } else {
11331                    // Check if we're on catalog search results page
11332                    const isCatalogSearchPage = window.location.pathname.includes('catalogsearch');
11333                    if (isCatalogSearchPage) {
11334                        // On search results page: refresh to show filtered results
11335                        event.preventDefault();
11336                        window.location.reload();
11337                        return;
11338                    }
11339
11340                    // If on homepage, redirect to Pièces Origine category
11341                    if (this.isHomepage && config.urls.piecesOrigine) {
11342                        event.preventDefault();
11343                        window.location.href = config.urls.piecesOrigine;
11344                        return;
11345                    }
11346
11347                    // Category / Pièces Origine pages: no reload, the grid is
11348                    // hole-punched via "partfinder-changed".
11349                    event.preventDefault();
11350                    this.isSubmitting = false;
11351                    this.selectedModel = vehicleName;
11352                }
11353            }
11354        },
11355        // Handle VIN search
11356        async handleVinSearch(event) {
11357            event.preventDefault();
11358            const vinValue = this.vinValue.trim();
11359            try {
11360                const formData = new FormData();
11361                formData.append('input-vin', vinValue);
11362                formData.append('form_key', formKey);
11363                // Search-log dimensions: only the rendering side knows them
11364                formData.append('finder_id', String(config.finderId || ''));
11365                formData.append('page_type', String(config.pageType || ''));
11366                const response = await fetch(config.urls.vinSearch, {
11367                    method: 'POST',
11368                    body: formData,
11369                    headers: {
11370                        'X-Requested-With': 'XMLHttpRequest'
11371                    }
11372                });
11373                if (response.ok) {
11374                    const data = await response.json();
11375                    if (data.success) {
11376                        // Check if we're on catalog search results page
11377                        const isCatalogSearchPage = window.location.pathname.includes('catalogsearch');
11378                        if (isCatalogSearchPage) {
11379                            // On search results page: just set the selected model and refresh
11380                            if (data.vehicleName) {
11381                                this.selectedModel = data.vehicleName;
11382                            }
11383                            window.location.reload();
11384                            return;
11385                        }
11386
11387                        // If on homepage, redirect to Pièces Origine category
11388                        if (this.isHomepage && config.urls.piecesOrigine) {
11389                            window.location.href = config.urls.piecesOrigine;
11390                            return;
11391                        }
11392
11393                        // Category / Pièces Origine pages: no reload. The cookie
11394                        // "current_findpart" is set by the VIN search response; notify
11395                        // the grid so it hole-punches the filtered views in place.
11396                        if (data.vehicleName) {
11397                            this.selectedModel = data.vehicleName;
11398                        }
11399                        window.dispatchEvent(new CustomEvent('partfinder-changed', { detail: { selectedModel: data.vehicleName || '' } }));
11400                        this.isSubmitting = false;
11401                    } else {
11402                        // Inline error under the slot, next to where the user is looking
11403                        this.slotError = data.message || config.messages.unexpectedError;
11404                        this.isSubmitting = false;
11405                    }
11406                } else {
11407                    this.slotError = config.messages.unexpectedError;
11408                    this.isSubmitting = false;
11409                }
11410            } catch (error) {
11411                this.slotError = config.messages.unexpectedError;
11412                this.isSubmitting = false;
11413            }
11414        },
11415        // Handle Plate search
11416        async searchByPlate() {
11417            if (!this.plateValue?.trim()) return;
11418
11419            this.isSubmitting = true;
11420            const plateValue = this.plateValue.trim().toUpperCase();
11421
11422            try {
11423                const formData = new FormData();
11424                formData.append('input-plate', plateValue);
11425                formData.append('form_key', formKey);
11426                // Search-log dimensions: only the rendering side knows them
11427                formData.append('finder_id', String(config.finderId || ''));
11428                formData.append('page_type', String(config.pageType || ''));
11429
11430                const response = await fetch(config.urls.plateSearch || config.urls.vinSearch, {
11431                    method: 'POST',
11432                    body: formData,
11433                    headers: {
11434                        'X-Requested-With': 'XMLHttpRequest'
11435                    }
11436                });
11437
11438                if (response.ok) {
11439                    const data = await response.json();
11440                    if (data.success) {
11441                        // Check if we're on catalog search results page
11442                        const isCatalogSearchPage = window.location.pathname.includes('catalogsearch');
11443                        if (isCatalogSearchPage) {
11444                            if (data.vehicleName) {
11445                                this.selectedModel = data.vehicleName;
11446                            }
11447                            window.location.reload();
11448                            return;
11449                        }
11450
11451                        // If on homepage, redirect to Pièces Origine category
11452                        if (this.isHomepage && config.urls.piecesOrigine) {
11453                            window.location.href = config.urls.piecesOrigine;
11454                            return;
11455                        }
11456
11457                        // Category / Pièces Origine pages: no reload. Notify the grid
11458                        // so it hole-punches the filtered views in place.
11459                        if (data.vehicleName) {
11460                            this.selectedModel = data.vehicleName;
11461                        }
11462                        window.dispatchEvent(new CustomEvent('partfinder-changed', { detail: { selectedModel: data.vehicleName || '' } }));
11463                        this.isSubmitting = false;
11464                    } else {
11465                        // Inline error under the slot, next to where the user is looking
11466                        this.slotError = data.message || config.messages.unexpectedError;
11467                        this.isSubmitting = false;
11468                    }
11469                } else {
11470                    this.slotError = config.messages.unexpectedError;
11471                    this.isSubmitting = false;
11472                }
11473            } catch (error) {
11474                console.error('Plate search error:', error);
11475                this.slotError = config.messages.unexpectedError;
11476                this.isSubmitting = false;
11477            }
11478        },
11479        // Whether the user has started picking in the cascade selectors.
11480        // Used by the desktop split banner to dim the other browse method.
11481        cascadeStarted() {
11482            return this.finderOptions.some((option) => option.selectedValue);
11483        },
11484        // Toggle the top slot between plate and VIN. Each mode keeps its own
11485        // typed value so switching back doesn't lose the input.
11486        toggleSlotMode() {
11487            this.slotMode = this.slotMode === 'plate' ? 'vin' : 'plate';
11488            this.slotError = '';
11489        },
11490        // Normalise the plate while typing: uppercase, strip anything that is
11491        // not a letter/digit/dash/space/dot. Clears the inline error.
11492        onPlateInput() {
11493            this.plateValue = this.plateValue.toUpperCase().replace(/[^A-Z0-9\-\s.]/g, '');
11494            this.slotError = '';
11495        },
11496        // Normalise the VIN while typing: uppercase, alphanumerics only.
11497        onVinInput() {
11498            this.vinValue = this.vinValue.toUpperCase().replace(/[^A-Z0-9]/g, '');
11499            this.slotError = '';
11500        },
11501        // Client-side format check before hitting the server. Accepts the SIV
11502        // format (AB-123-CD) and the old FNI format (123 ABC 75), separators
11503        // optional. Returns an error message or '' when valid.
11504        validateSlot() {
11505            if (this.slotMode === 'plate') {
11506                const plate = this.plateValue.replace(/[^A-Z0-9]/g, '');
11507                if (!/^[A-Z]{2}\d{3}[A-Z]{2}$/.test(plate) && !/^\d{1,4}[A-Z]{1,3}\d{2,3}$/.test(plate)) {
11508                    return config.messages.invalidPlate || 'Invalid plate format';
11509                }
11510            } else {
11511                if (this.vinValue.length !== 17) {
11512                    return config.messages.invalidVin || 'Invalid VIN';
11513                }
11514            }
11515            return '';
11516        },
11517        // Submit the top slot according to the active mode.
11518        submitSlot(event) {
11519            this.slotError = this.validateSlot();
11520            if (this.slotError) {
11521                return;
11522            }
11523            if (this.slotMode === 'plate') {
11524                this.searchByPlate();
11525            } else {
11526                this.handleVinSearch(event);
11527            }
11528        },
11529        // Save vehicle to garage
11530        async saveVehicleToGarage(vehicleData, findpartString) {
11531            const garageData = {
11532                vehicle_in_garage: 1,
11533                form_key: formKey,
11534                findpart: findpartString || '',
11535                vehicle_name: vehicleData.vehicle_name || this.selectedModel || '',
11536                vehicle_year: vehicleData.vehicle_year || '',
11537                vehicle_id: vehicleData.vehicle_id || ''
11538            };
11539            try {
11540                const response = await fetch(config.urls.garageAdd, {
11541                    method: 'POST',
11542                    headers: {
11543                        'Content-Type': 'application/x-www-form-urlencoded',
11544                        'X-Requested-With': 'XMLHttpRequest'
11545                    },
11546                    body: new URLSearchParams(garageData)
11547                });
11548                return await response.json();
11549            } catch (error) {
11550                throw error;
11551            }
11552        },
11553        // Add selected vehicle to garage (for garage pages)
11554        async addToGarage() {
11555            this.isSubmitting = true;
11556            try {
11557                let findpartString = '';
11558                let lastSelectedId = '';
11559                let vehicleName = '';
11560                let vehicleYear = '';
11561                // Determine year and model indices dynamically from option labels
11562                // so stores with reversed or extra cascade levels still work.
11563                const yearIndex = this.finderOptions.findIndex(o => isYearOption(o.label));
11564                const nonYearOptions = this.finderOptions
11565                    .map((o, i) => ({ index: i, label: o.label }))
11566                    .filter(o => !isYearOption(o.label));
11567                const modelIndex = nonYearOptions.length > 0
11568                    ? nonYearOptions[nonYearOptions.length - 1].index
11569                    : this.finderOptions.length - 1;
11570                // Build findpart string from current form selection
11571                this.finderOptions.forEach((option, index) => {
11572                    if (option.selectedValue) {
11573                        const selectedOption = option.values.find(v => String(v.id) === String(option.selectedValue));
11574                        if (selectedOption) {
11575                            findpartString += selectedOption.text.toLowerCase().replace(/\s+/g, '') + '-';
11576                            lastSelectedId = option.selectedValue;
11577                            // Store year and model separately
11578                            if (index === yearIndex) {
11579                                vehicleYear = selectedOption.text;
11580                            } else if (index === modelIndex) {
11581                                vehicleName = selectedOption.text;
11582                            }
11583                        }
11584                    }
11585                });
11586                if (this.vinValue?.trim()) {
11587                    // For VIN search, use the VIN value
11588                    findpartString = this.vinValue.trim();
11589                } else if (lastSelectedId) {
11590                    // For regular selection, complete the findpart string
11591                    findpartString += lastSelectedId;
11592                }
11593                // Make request to partfinder add
11594                const finalVehicleName = vehicleName || this.selectedModel;
11595                const result = await this.saveVehicleToGarage({
11596                    vehicle_name: finalVehicleName,
11597                    vehicle_year: vehicleYear,
11598                    vehicle_id: lastSelectedId
11599                }, findpartString);
11600                // Reset the form without affecting cookies
11601                this.resetFormOnly();
11602                // Trigger event to update vehicle list in garage
11603                window.dispatchEvent(new CustomEvent('vehicle-added', {
11604                    detail: {
11605                        id: null,
11606                        year: vehicleYear,
11607                        model: finalVehicleName,
11608                        date: new Date().toLocaleDateString(),
11609                        result: result
11610                    }
11611                }));
11612            } catch (error) {
11613                if (window.dispatchMessages) {
11614                    window.dispatchMessages([{
11615                        type: 'error',
11616                        text: config.messages.unexpectedError,
11617                    }], 5000);
11618                }
11619            } finally {
11620                this.isSubmitting = false;
11621            }
11622        },
11623        // Reset form only (without affecting cookies) - used on garage pages
11624        resetFormOnly() {
11625            // Reset all form selections
11626            this.finderOptions.forEach(option => {
11627                option.selectedValue = '';
11628                if (option.level > 0) {
11629                    option.isDisabled = true;
11630                    option.values = [];
11631                }
11632            });
11633            // Clear VIN value
11634            this.vinValue = '';
11635            // Don't set selectedModel - keep form in unselected state
11636            this.selectedModel = '';
11637        },
11638        // Get vehicle icon type based on selected range
11639        getVehicleIconType() {
11640            // Default to motorcycle if no range selector (2 options) or no selection
11641            if (this.finderOptions.length < 3 || !this.finderOptions[0]?.selectedValue) {
11642                return 'motorcycle';
11643            }
11644            // Get the selected range text
11645            const rangeOption = this.finderOptions[0];
11646            const selectedRange = rangeOption.values?.find(v => String(v.id) === String(rangeOption.selectedValue));
11647            const rangeText = selectedRange?.text?.toLowerCase() || '';
11648            // Determine icon based on range text
11649            if (rangeText.includes('moto') || rangeText.includes('3 roues')) {
11650                return 'motorcycle';
11651            } else if (rangeText.includes('quad')) {
11652                return 'quad';
11653            } else {
11654                return 'ssv';
11655            }
11656        },
11657        // Get vehicle icon SVG HTML based on selected range
11658        getVehicleIcon() {
11659            const iconType = this.getVehicleIconType();
11660            const icons = config.vehicleIcons || {};
11661            return icons[iconType] || icons.motorcycle || '';
11662        },
11663        // Manual reset function
11664        async resetPartFinder() {
11665            // Clear cookies
11666            clearPartfinderCookie('current_findpart');
11667            clearPartfinderCookie('selected_model');
11668
11669            // Dispatch event for compatibility badges to update
11670            window.dispatchEvent(new CustomEvent('partfinder-reset'));
11671
11672            // Check if we're on a category page (detect category URLs)
11673            const currentPath = window.location.pathname;
11674            const isCategoryPage = currentPath.includes('/category/') ||
11675                currentPath.match(/\/[^\/]+\.html$/) || // Product or category URLs ending with .html
11676                (currentPath !== '/' && !currentPath.includes('/partfinder/') && !currentPath.includes('/catalogsearch/'));
11677
11678            // On Pièces Origine pages, always reset selectedModel to show the form (even though it's a category)
11679            if (this.isPiecesOrigine || this.isGaragePage || this.isHomepage) {
11680                // Reset form state
11681                this.selectedModel = '';
11682                this.vinValue = '';
11683                this.plateValue = '';
11684                this.slotError = '';
11685                this.selectedGarageVehicle = '';
11686
11687                // Reset all form selections
11688                this.finderOptions.forEach(option => {
11689                    option.selectedValue = '';
11690                    if (option.level > 0) {
11691                        option.isDisabled = true;
11692                        option.values = [];
11693                    }
11694                });
11695
11696                // Load first option if it's not already loaded
11697                if (!this.finderOptions[0]?.values?.length) {
11698                    await this.loadFirstOption();
11699                }
11700            }
11701
11702            // No reload: the cached page stays in place and the grid is restored to
11703            // the full (unfiltered) view via the "partfinder-reset" event (hole-punch).
11704            this.selectedModel = '';
11705        }
11706    };
11707}
11708</script>
11708
11709
11710<script>
11711    window.partFinderConfig = {"finderOptions":[{"id":"16","name":"Year","sortOrder":"1","optionUrl":"https:\/\/www.esprit-ktm.com\/partfinder\/index\/option\/id\/16\/","level":0,"isDisabled":false,"isLoading":false,"label":"Ann\u00e9e","values":[],"selectedValue":""},{"id":"17","name":"Model","sortOrder":"2","optionUrl":"https:\/\/www.esprit-ktm.com\/partfinder\/index\/option\/id\/17\/","level":1,"isDisabled":true,"isLoading":false,"label":"Mod\u00e8le","values":[],"selectedValue":""}],"community":"KTM","initialVinSearchEnabled":true,"initialPlateSearchEnabled":true,"isPiecesOrigineCategory":false,"isHomepage":true,"finderId":9,"pageType":"homepage","currentFindpart":"","selectedModel":"","urls":{"garageAdd":"https:\/\/www.esprit-ktm.com\/partfinder\/garage\/add\/","vinSearch":"https:\/\/www.esprit-ktm.com\/partfinder\/vin\/search\/","plateSearch":"https:\/\/www.esprit-ktm.com\/partfinder\/plate\/search\/","garageOptions":"https:\/\/www.esprit-ktm.com\/partfinder\/garage\/options\/","piecesOrigine":"https:\/\/www.esprit-ktm.com\/pieces-detachees-origines-ktm.html","searchTrack":"https:\/\/www.esprit-ktm.com\/partfinder\/search\/track\/"},"messages":{"unexpectedError":"Une erreur inattendue s'est produite. Veuillez r\u00e9essayer.","invalidPlate":"Veuillez saisir une plaque d'immatriculation valide (ex : AB-123-CD).","invalidVin":"Le num\u00e9ro VIN doit comporter exactement 17 caract\u00e8res."},"partfinderFormTitle":"S\u00e9lectionnez votre mod\u00e8le <span class=\"text-primary-500 font-bold\">KTM<\/span>","garageFormTitle":"Ajoutez votre mod\u00e8le <span class=\"text-primary-500 font-bold\">KTM<\/span> \u00e0 votre garage","vehicleIcons":{"motorcycle":"<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" xmlns:xlink=\"http:\/\/www.w3.org\/1999\/xlink\" version=\"1.1\" width=\"24\" height=\"24\" x=\"0\" y=\"0\" viewBox=\"0 0 512 512\" style=\"enable-background:new 0 0 512 512\" xml:space=\"preserve\" class=\"w-4 h-4 stroke-2 fill-none\" role=\"img\"><g><path d=\"m306.765 268.325-34.112 40.241a8.25 8.25 0 0 0 .958 11.631 8.22 8.22 0 0 0 5.332 1.958c2.342 0 4.667-.99 6.3-2.916l34.112-40.241a8.25 8.25 0 0 0-.958-11.631 8.253 8.253 0 0 0-11.632.958z\" fill=\"#000000\" opacity=\"1\" data-original=\"#000000\" class=\"\"\/><path d=\"M511.903 337.698c-.023-.429-.056-.854-.089-1.281l-.069-.925a45.77 45.77 0 0 0-.119-1.497 64.894 64.894 0 0 0-.256-2.142l-.074-.591a35.097 35.097 0 0 0-.114-.876 75.63 75.63 0 0 0-.489-2.874l-.022-.123a19.924 19.924 0 0 0-.103-.57 77.997 77.997 0 0 0-1.686-6.867c-5.429-18.405-17.526-33.972-34.06-43.834a74.489 74.489 0 0 0-3.33-1.871l-.611-.314a74.937 74.937 0 0 0-2.814-1.391c-.206-.096-.41-.189-.617-.281l-.307-.139a73.62 73.62 0 0 0-3.502-1.476l-.243-.095a77.297 77.297 0 0 0-3.771-1.35 74.777 74.777 0 0 0-2.401-.741 63.028 63.028 0 0 0-3.8-1.002l-.12-.027a61.474 61.474 0 0 0-1.384-.319 72.708 72.708 0 0 0-2.412-.468l-.374-.069c-.381-.069-.76-.14-1.136-.2a75.772 75.772 0 0 0-2.301-.321l-.612-.078c-.363-.05-.727-.097-1.082-.134-.9-.096-1.81-.162-2.764-.23l-.364-.029c-.297-.024-.592-.048-.918-.067a73.976 73.976 0 0 0-8.17.002c-.296.016-.59.04-.885.065l-.413.032c-.91.065-1.819.131-2.709.226-.365.039-.728.086-1.09.134l-.572.075c-.785.1-1.566.201-2.326.324-.396.064-.788.134-1.177.207l-.342.063c-.81.145-1.621.297-2.44.473-.5.109-.995.227-1.459.339-.805.189-1.609.386-2.408.603-.309.085-.61.172-.911.259l-6.605-10.67c12.417-4.416 24.332-6.281 33.576-6.991.14-.011.281-.024.42-.043 16.434-2.112 26.538-12.359 26.372-26.745a8.42 8.42 0 0 0-.054-.841 165.998 165.998 0 0 0-.898-6.746 8.053 8.053 0 0 0-.129-.651c-.377-1.574-.498-2.51-.533-3.019a8.812 8.812 0 0 0-.117-.928c-14.151-76.771-76.744-114.588-79.403-116.16a8.252 8.252 0 0 0-9.868 1.104c-21.727 20.519-30.655 35.25-28.094 46.356 1.019 4.416 3.703 7.407 6.404 9.104 10.525 13.016 14.137 24.354 10.736 33.716a23.089 23.089 0 0 1-.923 2.147l-10.861-17.546a8.254 8.254 0 0 0-8.278-3.813c.467-1.879.717-3.844.717-5.865 0-13.442-10.936-24.378-24.378-24.378s-24.378 10.936-24.378 24.378c0 2.416.359 4.749 1.017 6.954-20.715-6.863-39.924-7.109-57.366-.677-29.214 10.769-44.798 37.207-50.949 50.289-19.264-6.892-23.641-13.199-24.611-15.513-13.243-31.589-41.467-38.532-99.638-42.143-27.61-1.997-38.041 8.779-41.808 15.372-6.073 10.625 1.149 21.039 7.484 25.446.206.142.417.276.634.398l82.958 47.163a8.255 8.255 0 0 0 11.254-3.095 8.252 8.252 0 0 0-3.095-11.254l-82.421-46.859c-1.341-1.126-2.548-2.829-2.568-3.426 0 0 .015-.06.087-.186 3.091-5.408 12.922-8.059 26.373-7.093 58.79 3.649 76.373 10.241 85.521 32.056 5.369 12.803 23.216 22.889 54.364 30.655-9.752 8.436-17.452 17.804-23.026 28.017l-33.81-19.224c-3.963-2.257-9-.869-11.254 3.095a8.253 8.253 0 0 0 3.095 11.254l35.427 20.143a85.15 85.15 0 0 0-.886 2.955 90.455 90.455 0 0 0-1.078 2.433l-34.097 13.285a76.098 76.098 0 0 0-25.329-24.656l-.123-.072a76.331 76.331 0 0 0-3.207-1.799l-.616-.318a80.264 80.264 0 0 0-2.806-1.387c-.206-.097-.413-.189-.62-.282l-.306-.138a73.62 73.62 0 0 0-3.611-1.519l-.133-.052a78.456 78.456 0 0 0-3.763-1.349 77.048 77.048 0 0 0-2.408-.744 77.595 77.595 0 0 0-1.418-.403 71.01 71.01 0 0 0-2.374-.595c-.494-.118-.989-.237-1.508-.348a69.077 69.077 0 0 0-2.416-.469l-.373-.069c-.383-.07-.764-.141-1.137-.2a74.048 74.048 0 0 0-2.341-.326l-.569-.074a37.722 37.722 0 0 0-1.085-.134 79.404 79.404 0 0 0-2.761-.23l-.363-.029c-.298-.024-.595-.048-.922-.067a73.399 73.399 0 0 0-8.165.002c-.3.016-.599.04-.89
117116.065l-.404.032a77.01 77.01 0 0 0-2.705.226c-.37.039-.736.086-1.1.135l-.569.074c-.785.1-1.566.201-2.333.325-.383.062-.763.131-1.143.201l-.37.068a75.71 75.71 0 0 0-2.44.473c-.5.11-.995.227-1.459.339-.805.189-1.609.386-2.408.603-.473.129-.943.264-1.399.397a74.205 74.205 0 0 0-3.71 1.184c-.834.292-1.658.596-2.488.918l-.124.047a70.005 70.005 0 0 0-3.646 1.534l-.27.121c-.207.092-.415.185-.62.282-.946.442-1.878.907-2.814 1.391l-.613.315a77.384 77.384 0 0 0-3.324 1.87C20.647 285.973 8.549 301.542 3.12 319.95l-.023.076a77.31 77.31 0 0 0-.909 3.369l-.069.3a74.783 74.783 0 0 0-.68 3.094c-.043.215-.08.434-.118.651l-.009.059c-.18.956-.349 1.912-.486 2.856-.044.297-.081.596-.117.895l-.054.427a62.432 62.432 0 0 0-.278 2.31c-.045.459-.078.921-.111 1.384l-.076 1.034c-.034.43-.068.859-.091 1.306A73.411 73.411 0 0 0 0 341.515c0 5.16.522 10.318 1.547 15.33 5.018 24.534 21.815 45.018 44.935 54.797 9.392 3.97 19.36 5.984 29.627 5.984s20.235-2.013 29.629-5.984c21.218-8.975 37.105-26.971 43.449-48.815l17.253 1.692c.932 7.383 1.968 12.135 2.119 12.813a8.253 8.253 0 0 0 8.053 6.447h154.054a8.252 8.252 0 0 0 8.253-8.253c0-12.373.971-24.038 2.883-34.671a8.254 8.254 0 0 0-16.246-2.922c-1.651 9.178-2.657 19.017-3.005 29.341H183.516a182.005 182.005 0 0 1-1.41-11.895c-.052-.603-.103-1.208-.15-1.831-.029-.382-.055-.776-.081-1.165a178.666 178.666 0 0 1-.29-5.224c-.01-.229-.021-.451-.03-.682a178.984 178.984 0 0 1-.089-3.188c-.003-.183-.004-.369-.008-.551-.014-.938-.022-1.885-.021-2.843l.002-.671c.005-1.091.02-2.192.047-3.307l.001-.084c.064-2.481.187-5.018.382-7.588v-.007c.782-10.317 2.721-21.204 6.627-31.403.022-.057.032-.117.053-.175a81.287 81.287 0 0 1 2.222-5.189c1.476-3.145 3.154-6.198 5.086-9.109 9.685-14.582 24.432-23.745 43.834-27.233 45.723-8.221 93.095-19.102 120.76-38.046.088-.06.175-.121.263-.183a87.668 87.668 0 0 0 2.857-2.048 81.956 81.956 0 0 0 2.189-1.706c.258-.207.516-.414.768-.623a69.908 69.908 0 0 0 1.887-1.612c.301-.266.591-.535.884-.802.403-.37.798-.742 1.186-1.117.198-.191.413-.38.606-.571.025-.025.043-.055.068-.08 5.135-5.105 8.973-10.713 11.22-16.899 5.661-15.586.745-32.808-14.614-51.189a8.305 8.305 0 0 0-1.906-1.674c.332-2.18 2.698-9.533 18.577-25.376 14.59 10.447 55.73 44.371 66.347 101.068.132 1.45.404 3.051.826 4.868.251 1.628.483 3.378.711 5.328-.009 2.438-.582 8.246-11.777 9.752-29.389 2.298-81.994 14.778-105.941 72.35a8.253 8.253 0 0 0 4.45 10.79 8.252 8.252 0 0 0 10.79-4.45c5.679-13.653 13.286-24.344 21.854-32.731l6.949 11.227c-7.241 8.269-12.638 18.02-15.745 28.547-.028.097-.035.118-.056.197a73.467 73.467 0 0 0-.875 3.253l-.065.279a72.421 72.421 0 0 0-.684 3.112c-.037.186-.07.375-.103.565l-.03.166a77.267 77.267 0 0 0-.482 2.835c-.044.297-.08.596-.116.896l-.055.436a69.474 69.474 0 0 0-.281 2.33c-.046.478-.08.957-.113 1.439l-.064.845c-.039.475-.075.951-.098 1.41a76.831 76.831 0 0 0 1.449 19.132c5.021 24.533 21.818 45.018 44.936 54.796 9.391 3.97 19.359 5.984 29.628 5.984 10.268 0 20.235-2.013 29.626-5.984 23.118-9.776 39.915-30.261 44.937-54.794a76.549 76.549 0 0 0 1.449-19.151zM99.31 396.438c-7.348 3.105-15.153 4.681-23.201 4.681s-15.852-1.576-23.198-4.68c-18.109-7.66-31.264-23.697-35.193-42.904a59.95 59.95 0 0 1-1.138-14.989c.014-.276.036-.549.059-.822l.09-1.217c.02-.292.039-.581.07-.901.056-.588.135-1.169.212-1.748l.078-.628c.019-.146.034-.292.06-.463.108-.742.24-1.474.393-2.295l.08-.464c.164-.831.349-1.651.545-2.47l.055-.243c.216-.875.45-1.74.703-2.598l.011-.037.01-.032c4.246-14.397 13.71-26.579 26.645-34.307l.109-.065.001.001a60.51 60.51 0 0 1 2.536-1.424l.463-.238a65.77 65.77 0 0 1 2.227-1.103l.711-.32a59.185 59.185 0 0 1 2.083-.895c.237-.098.475-.19.714-.283l.12-.047a60.047 60.047 0 0 1 2.96-1.061 58.353 58.353 0 0 1 1.906-.586c.363-.108.726-.212 1.087-.31a58.44 58.44 0 0 1 1.887-.471c.386-.092.771-.186 1.139-.265a56.574 56.574 0 0 1 1.877-.362l.443-.08c.252-.047.505-.095.767-.136.595-.096 1.195-.171 1.798-.248l.675-.088c.208-.028.417-.057.643-.08.711-.076 1.427-.125 2.109-.174l.643-.049c.141-.012.282-.024.397-.031a58.753 58.753 0 0 1 6.406-.002c.142.009.283.022.424.033l.609.047c.716.051 1.435.1 2.159.177.21.023.419.052.627.079l.674.088c.602.076 1.203.152 1.811.25.252.04.501.087.749.133l.452.083c.625.113 1.251.228 1.851.357.39.084.775.177 1.193.276.621.146 1.241.298 1.852.463.365.099.728.205 1.108.316a58.54 58.54 0 0 1 2.897.923c.658.229 1.307.47 1.944.715l.13.051c.24.094.479.186.764.303a56.48 56.48 0 0 1 1.997.858l.748.337c.752.352 1.491.722 2.219 1.098l.468.24a59.36 59.36 0 0 1 2.541 1.426l.001-.001c.036.023.074.044.111.066a59.642 59.642 0 0 1 17.994 16.592l-13.743 5.354a45.302 45.302 0 0 0-5.372-5.402 41.819 41.819 0 0 0-1.348-1.097l-.205-.16a45.19 45.19 0 0 0-1.39-1.038c-.009-.007-.112-.079-.12-.086l-.12-.085a46.5 46.5 0 0 0-1.399-.953l-.102-.066-.157-.101a48.473 48.473 0 0 0-1.583-.974c-.019-.012-.036-.023-.056-.033a45.692 45.692 0 0 0-6.625-3.185c-.151-.062-.3-.12-.408-.16a44.166 44.166 0 0 0-1.261-.443l-.789-.265a50.461 50.461 0 0 0-1.059-.317 32.094 32.094 0 0 0-.928-.264c-.368-.101-.737-.191-1.112-.283a47.341 47.341 0 0 0-1.045-.242 40.397 40.397 0 0 0-2.197-.419l-.183-.03a40.174 40.174 0 0 0-.754-.119c-.414-.059-.829-.11-1.27-.162l-.188-.022a22.345 22.345 0 0 0-.725-.08 51.786 51.786 0 0 0-1.427-.109l-.745-.05a47.843 47.843 0 0 0-4.465.003l-.694.046c-.474.031-.947.065-1.44.111-.237.023-.47.05-.702.078l-.211.024c-.418.05-.834.1-1.259.161-.248.035-.494.076-.742.117l-.206.033a42.205 42.205 0 0 0-2.181.418 47.402 47.402 0 0 0-3.045.778c-.364.107-.73.212-1.152.346l-.705.239-.123.042c-.388.132-.777.266-1.117.392-.152.056-.302.114-.464.18a45.665 45.665 0 0 0-6.613 3.18l-.051.029a49.39 49.39 0 0 0-1.61.992l-.136.088-.102.066c-.474.31-.939.627-1.476 1.008l4.815 6.702-4.979-6.586a45.19 45.19 0 0 0-1.39 1.038h.001l-.163.125a45.45 45.45 0 0 0-1.391 1.131c-7.425 6.304-12.541 14.622-14.793 24.045a44.471 44.471 0 0 0-.52 2.479l-.017.087a47.192 47.192 0 0 0-.372 2.477l-.045.35c-.078.69-.139 1.385-.191 2.139-.013.163-.025.327-.034.476a44.177 44.177 0 0 0-.02 4.929c1.226 24.179 21.165 43.119 45.391 43.119 18.271 0 34.51-10.896 41.643-27.22l6.278.615 8.374.822c-5.493 15.765-17.443 28.638-33.087 35.256zM77.959 355.58a8.274 8.274 0 0 0 2.025.46l19.913 1.952c-5.29 7.631-14.081 12.466-23.786 12.466-15.429 0-28.126-12.057-28.907-27.449a28.333 28.333 0 0 1 .021-3.209l.023-.299c.031-.445.069-.889.121-1.338l.034-.261c.061-.482.13-.962.214-1.438h-.001l.008-.041.014-.074c.099-.54.209-1.077.331-1.591 1.436-5.998 4.696-11.293 9.427-15.311.284-.241.573-.475.893-.726l.121-.092c.284-.222.574-.438.788-.591l.221-.157c.293-.207.588-.409.889-.607l.157-.1c.296-.189.592-.376.895-.557l.199-.116a29.16 29.16 0 0 1 4.176-2.004l.248-.099c.245-.09.495-.175.749-.262l.503-.172c.252-.079.505-.153.794-.238.186-.055.373-.109.599-.169.21-.058.424-.109.637-.161.222-.054.443-.107.647-.151.22-.047.437-.094.664-.136.24-.046.479-.089.695-.125l.65-.105c.271-.
1171104.542-.07.793-.1l.552-.066c.318-.029.639-.052.951-.072l.458-.032a31.59 31.59 0 0 1 2.82-.003l.505.035c.321.021.643.043.938.069l.552.065c.274.032.546.064.804.101l.639.103a29.099 29.099 0 0 1 1.36.261c.223.048.445.101.667.155.212.052.427.102.674.169.188.051.374.106.596.171.253.074.507.147.699.207l.57.194c.249.085.497.169.724.254l.264.105a28.897 28.897 0 0 1 4.176 2.004l.2.116c.303.18.599.366.881.548l.169.11c.302.197.598.401.96.657l.07.049a26.01 26.01 0 0 1 1.014.761c.033.025.064.053.097.078l-11.104 4.327c-4.922 1.92-17.996 7.024-17.878 17.733.106 9.556 10.753 13.923 12.887 14.702zm87.093-7.784-41.968-4.114-10.173-.998-.018-.001-27.393-2.685a53.908 53.908 0 0 1 3.446-1.473l21.948-8.551.025-.009 28.804-11.223.014-.007 28.411-11.07c-3.059 14.196-3.572 28.332-3.096 40.131zm158.09-194.941c4.341 0 7.872 3.531 7.872 7.872 0 4.341-3.531 7.872-7.872 7.872s-7.872-3.531-7.872-7.872c0-4.341 3.531-7.872 7.872-7.872zm-115.646 69.301c5.737-11.363 18.642-31.611 40.74-39.705 19.926-7.3 43.497-3.385 70.095 11.628-12.946 1.91-33.47 5.814-55.16 13.398-14.846 5.19-27.996 11.36-39.367 18.416-6.054-1.226-11.468-2.477-16.308-3.737zm29.277 16.724c-1.323.238-2.622.506-3.911.788 35.139-21.526 80.779-28.492 95.652-30.266l2.799 4.521c-31.832 13.68-75.635 21.558-94.54 24.957zm109.384-32.341-6.325-10.215-.009-.017-3.462-5.591a99.296 99.296 0 0 1 8.634-5.244l9.572 15.462c-2.529 1.949-5.352 3.816-8.41 5.605zm47.063 57.858 16.008 25.865 11.895 19.22.01.013 16.751 27.062a5.058 5.
11711058 0 0 1-1.638 6.956 4.943 4.943 0 0 1-2.641.757 5.038 5.038 0 0 1-4.309-2.394L412.845 315.3l-.003-.008-16.808-27.155-.006-.008-11.449-18.497a98.668 98.668 0 0 1 8.641-5.235zm58.7 63.471-8.921-14.412c.13.032.267.067.43.112.184.048.364.101.581.165.253.074.507.147.699.207l.516.176c.273.092.544.184.779.272l.264.105a29.01 29.01 0 0 1 5.257 2.667l.163.105c.296.196.589.395.923.633l.114.078a32.307 32.307 0 0 1 1.881 1.465c4.735 4.02 7.994 9.315 9.429 15.321.121.506.227 1.018.321 1.534l.039.215c.08.459.147.922.206 1.386l.039.302c.052.439.087.884.119 1.328l.026.344c.031.544.051 1.089.051 1.64 0 .502-.014.998-.039 1.495-.779 15.39-13.475 27.447-28.905 27.447-15.429 0-28.126-12.057-28.907-27.449a29.37 29.37 0 0 1 .012-3.135c.011-.127.022-.253.029-.381.031-.431.066-.859.116-1.286l.015-.119.02-.154c.015-.116.036-.229.052-.344l8.034 12.978c3.961 6.394 10.818 10.211 18.342 10.211a21.5 21.5 0 0 0 11.333-3.231c10.105-6.256 13.237-19.568 6.982-29.675zm42.362 25.668c-3.93 19.206-17.087 35.244-35.194 42.902-7.345 3.106-15.15 4.681-23.197 4.681-8.048 0-15.854-1.575-23.198-4.68-18.108-7.66-31.265-23.697-35.195-42.901a60.25 60.25 0 0 1-1.134-15.026c.014-.292.04-.58.064-.87l.078-1.059c.023-.328.043-.654.073-.955.058-.592.138-1.176.215-1.762l.086-.685c.015-.13.029-.261.05-.396.112-.756.246-1.501.382-2.233l.102-.566c.16-.818.341-1.628.539-2.45l.06-.262a54.884 54.884 0 0 1 .743-2.739l.005-.018a59.428 59.428 0 0 1 9.085-18.249l8.241 13.312a45.002 45.002 0 0 0-4.955 14.076 50.772 50.772 0 0 0-.338 2.262l-.043.348a48.26 48.26 0 0 0-.199 2.194c-.013.155-.025.309-.034.479a46.167 46.167 0 0 0-.017 4.904c1.226 24.179 21.165 43.119 45.391 43.119 24.228 0 44.165-18.94 45.389-43.118a45.023 45.023 0 0 0-.017-4.915c-.01-.165-.023-.329-.043-.579a45.607 45.607 0 0 0-.18-1.997l-.062-.503a46.347 46.347 0 0 0-.376-2.465 46.63 46.63 0 0 0-.517-2.468c-2.254-9.429-7.369-17.748-14.797-24.056a41.31 41.31 0 0 0-1.609-1.3c-.439-.34-.886-.673-1.412-1.051l-.145-.101a46.529 46.529 0 0 0-1.399-.954l-.119-.077-.157-.101c-.472-.302-.949-.6-1.432-.887a10.304 10.304 0 0 0-.198-.114l-.009-.006a45.583 45.583 0 0 0-6.627-3.187c-.151-.062-.3-.12-.425-.165a42.637 42.637 0 0 0-1.247-.437l-.179-.062c-.182-.064-.363-.124-.607-.205a50.461 50.461 0 0 0-1.059-.317 36.663 36.663 0 0 0-2.039-.547 45.215 45.215 0 0 0-2.069-.452 43.611 43.611 0 0 0-1.166-.208l-.161-.025a34.31 34.31 0 0 0-2.055-.286l-.19-.023c-.23-.028-.462-.055-.723-.079-.47-.044-.944-.077-1.423-.109l-.75-.049a47.736 47.736 0 0 0-4.46.003l-.699.046c-.202.013-.406.026-.611.042l-8.131-13.136c.335-.065.672-.125 1.013-.187l.415-.076c.257-.047.516-.096.79-.14.595-.096 1.196-.171 1.798-.248l.68-.089c.207-.028.415-.057.635-.079.711-.076 1.427-.125 2.106-.174.218-.014.436-.032.653-.051.14-.012.279-.023.39-.03a59.853 59.853 0 0 1 6.41-.002c.141.009.279.022.418.032.217.019.434.036.614.048.716.051 1.434.1 2.155.177.211.023.423.052.632.079l.711.092c.589.075 1.179.149 1.769.244.254.041.507.088.759.135l.448.081a56.37 56.37 0 0 1 1.851.357c.351.076.698.16 1.046.242l.146.034a48.672 48.672 0 0 1 2.959.78c.633.185 1.263.377 1.881.579.341.112.679.227 1.009.341a70.98 70.98 0 0 1 1.934.712l.243.095a56.48 56.48 0 0 1 2.664 1.123l.754.34c.748.35 1.483.716 2.248 1.114l.434.221c.877.466 1.728.943 2.532 1.422v-.001c.047.029.1.059.153.089 12.855 7.691 22.273 19.782 26.574 34.164.019.069.037.139.058.208a55.733 55.733 0 0 1 .755 2.826c.196.819.381 1.638.545 2.47l.092.53c.138.741.273 1.479.385 2.247.022.149.039.297.056.445l.098.766c.07.543.143 1.085.198 1.635.032.325.054.654.075.983l.084 1.127c.022.27.044.538.057.793a59.759 59.759 0 0 1-1.133 15.008z\" fill=\"#000000\" opacity=\"1\" data-original=\"#000000\" class=\"\"\/><\/g><\/svg>\n","quad":"<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" xmlns:xlink=\"http:\/\/www.w3.org\/1999\/xlink\" version=\"1.1\" width=\"24\" height=\"24\" x=\"0\" y=\"0\" viewBox=\"0 0 512 512\" style=\"enable-background:new 0 0 512 512\" xml:space=\"preserve\" class=\"w-4 h-4 stroke-2 fill-none\" role=\"img\"><g><path d=\"M84 402.549c28.055 0 50.88-22.824 50.88-50.879 0-28.056-22.825-50.881-50.88-50.881s-50.88 22.825-50.88 50.881c.001 28.055 22.825 50.879 50.88 50.879zm0-86.76c19.784 0 35.88 16.096 35.88 35.881 0 19.784-16.096 35.879-35.88 35.879s-35.88-16.095-35.88-35.879c.001-19.785 16.096-35.881 35.88-35.881z\" fill=\"#000000\" opacity=\"1\" data-original=\"#000000\" class=\"\"\/><path d=\"M84 373.454c12.012 0 21.785-9.772 21.785-21.785 0-12.012-9.772-21.784-21.785-21.784-12.012 0-21.784 9.772-21.784 21.784 0 12.013 9.773 21.785 21.784 21.785zm0-28.569c3.741 0 6.785 3.043 6.785 6.784s-3.043 6.785-6.785 6.785c-3.741 0-6.784-3.044-6.784-6.785s3.044-6.784 6.784-6.784z\" fill=\"#000000\" opacity=\"1\" data-original=\"#000000\" class=\"\"\/><path d=\"M499.853 308.137a7.5 7.5 0 0 0-12.823 7.783c6.522 10.745 9.97 23.107 9.97 35.75 0 38.047-30.954 69-69 69-38.047 0-69.001-30.953-69.001-69s30.954-69.001 69.001-69.001c13.033 0 25.72 3.648 36.688 10.551a7.5 7.5 0 0 0 7.989-12.696c-11.248-7.078-23.973-11.335-37.178-12.51v-43.905h18.026c12.492 0 22.655-10.163 22.655-22.654 0-10.056-6.466-18.77-16.09-21.682l-24.591-7.445v-27.323c0-7.799-4.036-14.777-10.796-18.667-6.76-3.892-14.821-3.873-21.564.047l-40.888 23.766-24.226-7.335a52.603 52.603 0 0 0-1.793-.505l-13.182-31.807c-8.603-20.76-28.683-34.174-51.154-34.174H226.2c-11.58 0-21 9.421-21 21s9.42 21 21 21h45.696a13.333 13.333 0 0 1 12.354 8.253l9.795 23.635a50.116 50.116 0 0 0-5.591 4.705l-24.786 24.187H162.44c-4.142 0-7.5 3.357-7.5 7.5s3.358 7.5 7.5 7.5h85.341l-11.317 10.63a35.472 35.472 0 0 1-24.37 9.65h-90.263c-9.808 
117110-18.933-4.404-25.036-12.082l-6.516-8.198h42.4c4.142 0 7.5-3.357 7.5-7.5s-3.358-7.5-7.5-7.5H25.14C11.278 179.11 0 190.387 0 204.25s11.278 25.141 25.14 25.141h33.38l18.827 11.521c8.25 5.048 13.286 14.192 13.143 23.864l-.047 3.166c-2.129-.162-4.272-.272-6.442-.272-46.318 0-84 37.683-84 84.001 0 13.472 3.268 26.868 9.451 38.743a7.499 7.499 0 0 0 10.116 3.188 7.499 7.499 0 0 0 3.188-10.116C17.609 373.603 15 362.897 15 351.67c0-38.047 30.954-69.001 69-69.001 38.047 0 69.001 30.954 69.001 69.001s-30.954 69-69.001 69c-16.168 0-31.887-5.705-44.262-16.065a7.5 7.5 0 0 0-9.628 11.502C45.179 428.722 64.318 435.67 84 435.67c46.318 0 84.001-37.683 84.001-84a83.566 83.566 0 0 0-5.322-29.4h23.501v11.284c0 22.001 17.899 39.9 39.9 39.9h59.84c22.001 0 39.9-17.899 39.9-39.9V322.27h23.501a83.566 83.566 0 0 0-5.322 29.4c0 46.317 37.683 84 84.001 84s84-37.683 84-84c0-15.388-4.201-30.441-12.147-43.533zm-89.176-168.783c2.949-1.716 5.561-.583 6.545-.015.985.567 3.277 2.254 3.277 5.666v22.781l-38.621-11.693zM220.2 97.33c0-3.309 2.691-6 6-6h19.7v12h-19.7c-3.308 0-6-2.691-6-6zm77.907 23.511a28.288 28.288 0 0 0-26.211-17.511H260.9v-12h10.996c16.384 0 31.024 9.78 37.297 24.916l10.19 24.589a50.186 50.186 0 0 0-11.964 2.477zM15 204.249c0-5.591 4.549-10.14 10.14-10.14h45.98l13.932 17.53c.76.956 1.563 1.864 2.384 2.75H25.14c-5.591.001-10.14-4.548-10.14-10.14zM155.261 307.27c-11.196-17.904-28.936-31.309-49.855-36.827l.081-5.445c.211-14.172-6.783-27.602-18.376-35.607h34.029c35.863 0 65.04 29.177 65.04 65.04v12.84h-30.919zm155.559 26.284c0 13.73-11.17 24.9-24.9 24.9h-59.84c-13.73 0-24.9-11.17-24.9-24.9V294.43c0-26.774-13.228-50.502-33.477-65.04h44.391a50.416 50.416 0 0 0 34.639-13.717l25.122-23.597c.017-.016.031-.034.049-.05l.055-.048 26.971-26.318a35.16 35.16 0 0 1 34.75-8.487l122.066 36.958a7.609 7.609 0 0 1 5.436 7.325c0 4.221-3.434 7.654-7.655 7.654H390.86c-31.951 0-59.578 18.825-72.402 45.96H275.72c-4.142 0-7.5 3.357-7.5 7.5s3.358 7.5 7.5 7.5h37.416a79.923 79.923 0 0 0-2.316 19.08zm15-26.284v-18.12c0-35.863 29.177-65.04 65.04-65.04h29.64v43.912c-26.884 2.391-50.157 17.493-63.761 39.248z\" fill=\"#000000\" opacity=\"1\" data-original=\"#000000\" class=\"\"\/><path d=\"M428 300.789c-28.055 0-50.88 22.825-50.88 50.881 0 28.055 22.825 50.879 50.88 50.879s50.88-22.824 50.88-50.879c-.001-28.056-22.825-50.881-50.88-50.881zm0 86.76c-19.784 0-35.88-16.095-35.88-35.879 0-19.785 16.096-35.881 35.88-35.881s35.88 16.096 35.88 35.881c-.001 19.784-16.096 35.879-35.88 35.879z\" fill=\"#000000\" opacity=\"1\" data-original=\"#000000\" class=\"\"\/><path d=\"M428 329.885c-12.012 0-21.785 9.772-21.785 21.784 0 12.013 9.772 21.785 21.785 21.785 12.012 0 21.784-9.772 21.784-21.785 0-12.012-9.773-21.784-21.784-21.784zm0 28.569c-3.741 0-6.785-3.044-6.785-6.785s3.043-6.784 6.785-6.784c3.741 0 6.784 3.043 6.784 6.784s-3.044 6.785-6.784 6.785zM243.585 255.069h-5.495c-4.142 0-7.5 3.357-7.5 7.5s3.358 7.5 7.5 7.5h5.495c4.142 0 7.5-3.357 7.5-7.5s-3.358-7.5-7.5-7.5z\" fill=\"#000000\" opacity=\"1\" data-original=\"#000000\" class=\"\"\/><\/g><\/svg>\n","ssv":"<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" xmlns:xlink=\"http:\/\/www.w3.org\/1999\/xlink\" version=\"1.1\" width=\"24\" height=\"24\" x=\"0\" y=\"0\" viewBox=\"0 0 511.998 511\" style=\"enable-background:new 0 0 512 512\" xml:space=\"preserve\" class=\"w-4 h-4 stroke-2 fill-none\" role=\"img\"><g><path d=\"M66.16 192.32c-34.46 0-62.496 28.035-62.496 62.496S31.7 317.312 66.16 317.312s62.496-28.035 62.496-62.496c0-34.46-28.035-62.496-62.496-62.496zm0 104.993c-23.433 0-42.496-19.067-42.496-42.497 0-23.433 19.063-42.496 42.496-42.496 23.43 0 42.496 19.063 42.496 42.496 0 23.43-19.066 42.496-42.496 42.496zM449.504 192.32c-34.461 0-62.496 28.035-62.496 62.496s28.035 62.496 62.496 62.496c34.457 0 62.496-28.035 62.496-62.496 0-34.46-28.04-62.496-62.496-62.496zm0 104.993c-23.434 0-42.5-19.067-42.5-42.497 0-23.433 19.066-42.496 42.5-42.496 23.43 0 42.496 19.063 42.496 42.496 0 23.43-19.066 42.496-42.496 42.496zm0 0\" fill=\"#000000\" opacity=\"1\" data-original=\"#000000\" class=\"\"\/><path d=\"M432.648 183.758h40.567c5.52 0 10.601-2.766 13.601-7.403a16.137 16.137 0 0 0 1.172-15.44l-3.215-7.145a9.963 9.963 0 0 0 3.2-7.313v-40.25c0-8.668-5.16-16.465-13.141-19.867-8.078
11711-3.442-17.031-1.805-23.355 4.27-7.582 7.285-11.758 17.081-11.758 27.593 0 3.414.453 6.727 1.297 9.879h-14.344c-6.09 0-12.156-1.5-17.547-4.332l-17.477-9.184a61.199 61.199 0 0 0-28.359-6.996h-28.23l-59.164-88.14A42.708 42.708 0 0 0 240.383.5h-133.54a29.132 29.132 0 0 0-27.827 20.3L60.594 78.243a22.738 22.738 0 0 0 .082 14.235l2.074 6.222H45.785c-11.3 0-21.34 6.774-25.574 17.25L2.477 159.852c-2.59 3.656-3.223 8.375-1.551 12.695 2.039 5.262 7 8.664 12.644 8.664h86.485c7.39 0 14.14 4.344 17.195 11.07l39.223 86.27c3.433 7.55 11.011 12.43 19.304 12.43H349.91c12.813 0 23.235-10.426 23.235-23.239v-39.234a22.299 22.299 0 0 1 9.585-18.313l28.422-19.71a37.56 37.56 0 0 1 21.496-6.727zm32.68-78.723c.156-.152.469-.45.98-.45.2 0 .426.044.684.153.977.418.977 1.18.977 1.469v27.262c-4.965-3.266-8.254-8.89-8.254-15.266 0-5.016 1.996-9.691 5.613-13.168zM121.778 74.77 138.44 20.5H240.38c7.605 0 14.672 3.77 18.91 10.078l58.98 87.867-5.894 12.567-14.43-8.067 3.313-5.894c2.699-4.817.988-10.914-3.828-13.617-4.817-2.704-10.91-.989-13.614 3.828l-8.218 14.644v.004c-.004 0-.004.004-.004.004l-8.633 15.387c-2.703 4.816-.988 10.914 3.828 13.613a9.92 9.92 0 0 0 4.883 1.281c3.5 0 6.894-1.84 8.73-5.105l3.758-6.703 15.703 8.777-3.941 8.402a43.86 43.86 0 0 0-4.121 18.496v58.844c0 2.883-1.559 4.688-2.485 5.504-.804.715-2.414 1.809-4.703 1.84h-.082a6.612 6.612 0 0 1-.984-.059c-.05-.007-.106-.011-.156-.02l-17.594-1.91v-10.745c0-20.508-16.688-37.192-37.203-37.192h-15.551l-53.09-89.297a34.437 34.437 0 0 0-12.55-12.316 34.483 34.483 0 0 0-16.954-4.473c-4.91 0-9.672 1.055-14.07 3.035a33.53 33.53 0 0 1-.27-3.855c0-.035.004-.07.004-.106 0-.046-.004-.093-.004-.136.004-3.457.543-6.91 1.625-10.274.016-.043.032-.086.043-.132zm-35.602 30.968a.269.269 0 0 0-.012-.031L82.7 95.313h18.38a54.4 54.4 0 0 0 1.694 6.566l2.024 6.18c.008.027.016.054.023.086l6.473 19.773H93.57zm11.883-78.832a9.196 9.196 0 0 1 8.785-6.406h10.676l-14.84 48.336a54.225 54.225 0 0 0-1.64 6.477H82.534zM45.785 118.7h23.63l3.073 9.219h-23.27a31.36 31.36 0 0 0-13.503 3.055l3.043-7.532a7.55 7.55 0 0 1 7.027-4.742zM349.91 270.98H175.777c-.472 0-.906-.277-1.101-.707l-39.219-86.27c-6.297-13.847-20.191-22.792-35.402-22.792H30.21l11.328-10.32a11.377 11.377 0 0 1 7.68-2.973h67.89c6.618 0 12.832 3.527 16.223 9.21l4.984 8.356c2.473 4.153 7.485 5.86 11.875 4.325a9.899 9.899 0 0 0 1.836-.86c4.746-2.828 6.297-8.969 3.47-13.71l-4.985-8.356c-2.664-4.461-6.324-8.535-10.586-11.524-2.059-1.441-4.196-2.75-6.485-3.797-.261-.12-1.093-.375-1.238-.601-.203-.324-.012-1.563-.047-1.996a17.588 17.588 0 0 0-.804-4.059l-5.235-15.996.035-.023a14.242 14.242 0 0 1 8.297-2.645c2.477 0 4.934.649 7.074 1.86a14.349 14.349 0 0 1 5.23 5.14l56.009 94.195a9.993 9.993 0 0 0 8.593 4.887h21.239c9.488 0 17.203 7.715 17.203 17.196v8.57l-39.379-4.285c-5.55-.711-10.375-3.875-13.246-8.688l-2.984-5c-2.56-4.293-7.825-5.96-12.317-4.144-.473.191-.941.41-1.394.68-4.747 2.827-6.297 8.964-3.47 13.71l2.99 5.008c6.07 10.164 16.28 16.832 28.019 18.293.05.008.105.012.156.02l50.547 5.496c.027.004.058.004.086.007l26.351 2.864c1.04.125 2.074.187 3.11.195.05 0 .097.008.152.008h64.727v5.492a3.24 3.24 0 0 1-3.235 3.234zm21.422-77.218a42.295 42.295 0 0 0-18.187 34.746v13.742h-38.356a27.337 27.337 0 0 0 1.012-7.344v-58.844c0-3.433.77-6.894 2.23-10.003l18.051-38.489h27.207c6.61 0 13.2 1.625 19.055 4.703l17.476 9.18a57.938 57.938 0 0 0 26.852 6.625h21.621a18.578 18.578 0 0 1 16.914 10.942l2.133 4.738h-71.692a25.267 25.267 0 0 1-15.37-5.246l-1.692-1.309c-7.86-6.07-17.66-9.418-27.594-9.418h-5.332c-5.523 0-10 4.48-10 10 0 5.524 4.477 10 10 10h5.332a25.264 25.264 0 0 1 15.367 5.246l1.692 1.309c5.554 4.293 12.082 7.215 18.937 8.562zm0 0\" fill=\"#000000\" opacity=\"1\" data-original=\"#000000\" class=\"\"\/><path d=\"M66.16 229c-14.234 0-25.816 11.582-25.816 25.813 0 14.234 11.582 25.812 25.816 25.812 14.23 0 25.813-11.578 25.813-25.813C91.973 240.583 80.39 229 66.16 229zm0 31.629a5.822 5.822 0 0 1-5.816-5.813A5.823 5.823 0 0 1 66.16 249a5.822 5.822 0 0 1 5.813 5.816 5.822 5.822 0 0 1-5.813 5.813zM449.715 229c-14.235 0-25.813 11.582-25.813 25.813 0 14.234 11.578 25.812 25.813 25.812s25.812-11.578 25.812-25.813c.004-14.23-11.578-25.812-25.812-25.812zm0 31.629a5.819 5.819 0 0 1-5.813-5.813 5.82 5.82 0 0 1 5.813-5.816 5.82 5.82 0 0 1 5.812 5.816c.004 3.204-2.605 5.813-5.812 5.813zM176.273 195.113c.82-4.097-1.09-8.383-4.671-10.527-3.653-2.184-8.352-1.774-11.606.95-3.2 2.679-4.351 7.253-2.883 11.148 1.457 3.859 5.223 6.464 9.352 6.472 4.722.004 8.867-3.426 9.808-8.043zm0 0\" fill=\"#000000\" opacity=\"1\" data-original=\"#000000\" class=\"\"\/><\/g><\/svg>\n"}};
11712    window.partFinderSearchModels = [{"id":"16486","value":"105 SX 2004 (EU)","parent_id":"14812"}
11712,{"id":"16039","value":"105 SX 2006 (EU)","parent_id":"15071"},{"id":"15826","value":"1050 ADVENTURE ABS 2015 (EU)","parent_id":"14773"},{"id":"33284","value":"1050 ADVENTURE ABS 2015 (FR)","parent_id":"14773"},{"id":"15865","value":"1050 ADVENTURE ABS 2016 (EU)","parent_id":"14775"},{"id":"14732","value":"1090 ADVENTURE 2017 (EU)","parent_id":"14729"},{"id":"16632","value":"1090 ADVENTURE 2018 (EU)","parent_id":"14738"},{"id":"14730","value":"1090 ADVENTURE L 2017 (EU)","parent_id":"14729"},{"id":"14744","value":"1090 ADVENTURE L 2018 (EU)","parent_id":"14738"},{"id":"14745","value":"1090 ADVENTURE L 2019 (EU)","parent_id":"14740"},{"id":"14731","value":"1090 ADVENTURE R 2017 (EU)","parent_id":"14729"},{"id":"14739","value":"1090 ADVENTURE R 2018 (EU)","parent_id":"14738"},{"id":"14741","value":"1090 ADVENTURE R 2019 (EU)","parent_id":"14740"},{"id":"14743","value":"1090 ADVENTURE S 2019 (EU)","parent_id":"14740"},{"id":"14753","value":"1190 ADV. ABS GREY WES. 2013 (EU)","parent_id":"14748"},{"id":"14755","value":"1190 ADV. ABS GREY WES. 2013 (FR)","parent_id":"14748"},{"id":"14765","value":"1190 ADV. ABS GREY WES. 2014 (EU)","parent_id":"14758"},{"id":"14767","value":"1190 ADV. ABS GREY WES. 2014 (FR)","parent_id":"14758"},{"id":"14774","value":"1190 ADV. ABS GREY WES. 2015 (EU)","parent_id":"14773"},{"id":"14782","value":"1190 ADV. ABS GREY WES. 2015 (FR)","parent_id":"14773"},{"id":"33218","value":"1190 ADV. ABS GREY WES. 2016 (EU)","parent_id":"14775"},{"id":"33278","value":"1190 ADV. ABS GREY WES. 2016 (FR)","parent_id":"14775"}
11712,{"id":"16633","value":"1190 ADV. ABS ORANGE WES. 2013 (EU)","parent_id":"14748"},{"id":"16636","value":"1190 ADV. ABS ORANGE WES. 2014 (EU)","parent_id":"14758"},{"id":"33285","value":"1190 ADV. ABS ORANGE WES. 2015 (EU)","parent_id":"14773"},{"id":"16681","value":"1190 ADV. ABS ORANGE WES. 2016 (EU)","parent_id":"14775"},{"id":"14749","value":"1190 ADVENTURE ABS GREY 2013 (EU)","parent_id":"14748"},{"id":"14751","value":"1190 ADVENTURE ABS GREY 2013 (FR)","parent_id":"14748"},{"id":"14762","value":"1190 ADVENTURE ABS GREY 2014 (EU)","parent_id":"14758"},{"id":"14763","value":"1190 ADVENTURE ABS GREY 2014 (FR)","parent_id":"14758"},{"id":"14789","value":"1190 ADVENTURE ABS GREY 2015 (EU)","parent_id":"14773"},{"id":"14796","value":"1190 ADVENTURE ABS GREY 2015 (FR)","parent_id":"14773"},{"id":"14780","value":"1190 ADVENTURE ABS GREY 2016 (EU)","parent_id":"14775"},{"id":"14787","value":"1190 ADVENTURE ABS GREY 2016 (FR)","parent_id":"14775"},{"id":"16634","value":"1190 ADVENTURE ABS ORANGE 2013 (EU)","parent_id":"14748"},{"id":"16635","value":"1190 ADVENTURE ABS ORANGE 2013 (FR)","parent_id":"14748"},{"id":"16637","value":"1190 ADVENTURE ABS ORANGE 2014 (EU)","parent_id":"14758"},{"id":"16638","value":"1190 ADVENTURE ABS ORANGE 2014 (FR)","parent_id":"14758"},{"id":"16639","value":"1190 ADVENTURE ABS ORANGE 2015 (EU)","parent_id":"14773"},{"id":"16640","value":"1190 ADVENTURE ABS ORANGE 2015 (FR)","parent_id":"14773"},{"id":"16641","value":"1190 ADVENTURE ABS ORANGE 2016 (EU)","parent_id":"14775"}
11712,{"id":"14800","value":"1190 ADVENTURE ABS ORANGE 2016 (FR)","parent_id":"14775"},{"id":"14750","value":"1190 ADVENTURE R ABS 2013 (EU)","parent_id":"14748"},{"id":"14757","value":"1190 ADVENTURE R ABS 2013 (FR)","parent_id":"14748"},{"id":"14790","value":"1190 ADVENTURE R ABS 2014 (EU)","parent_id":"14758"},{"id":"14783","value":"1190 ADVENTURE R ABS 2014 (FR)","parent_id":"14758"},{"id":"14804","value":"1190 ADVENTURE R ABS 2015 (EU)","parent_id":"14773"},{"id":"14798","value":"1190 ADVENTURE R ABS 2015 (FR)","parent_id":"14773"},{"id":"14779","value":"1190 ADVENTURE R ABS 2016 (EU)","parent_id":"14775"},{"id":"14809","value":"1190 ADVENTURE R ABS 2016 (FR)","parent_id":"14775"},{"id":"16339","value":"1190 RC 8 2007 (EU)","parent_id":"14846"},{"id":"16574","value":"1190 RC 8 BLACK 2009 (EU)","parent_id":"14736"},{"id":"16575","value":"1190 RC 8 BLACK 2009 (FR)","parent_id":"14736"},{"id":"16578","value":"1190 RC 8 BLACK RRS 2009 (EU)","parent_id":"14736"},{"id":"15640","value":"1190 RC 8 ORANGE 2008 (EU)","parent_id":"14985"},{"id":"15447","value":"1190 RC 8 ORANGE 2008 (FR)","parent_id":"14985"},{"id":"15587","value":"1190 RC 8 ORANGE 2009 (EU)","parent_id":"14736"}
11712,{"id":"15556","value":"1190 RC 8 ORANGE 2009 (FR)","parent_id":"14736"},{"id":"15672","value":"1190 RC 8 R 2009 (EU)","parent_id":"14736"},{"id":"15427","value":"1190 RC 8 R 2009 (FR)","parent_id":"14736"},{"id":"15642","value":"1190 RC 8 R TNT EDIT. 2009 (EU)","parent_id":"14736"},{"id":"16572","value":"1190 RC 8 WHITE 2008 (EU)","parent_id":"14985"},{"id":"16573","value":"1190 RC 8 WHITE 2008 (FR)","parent_id":"14985"},{"id":"16576","value":"1190 RC 8 WHITE 2009 (EU)","parent_id":"14736"},{"id":"16577","value":"1190 RC 8 WHITE 2009 (FR)","parent_id":"14736"},{"id":"16579","value":"1190 RC 8R LIM.ED. RED BULL 09 (EU)","parent_id":"14736"},{"id":"16580","value":"1190 RC 8R LIM.ED.AKRAPOVIC 09 (EU)","parent_id":"14736"},{"id":"33252","value":"1190 RC8 BLACK 2010 (EU)","parent_id":"14733"},{"id":"33253","value":"1190 RC8 BLACK 2010 (FR)","parent_id":"14733"},{"id":"15504","value":"1190 RC8 ORANGE 2010 (EU)","parent_id":"14733"},{"id":"15561","value":"1190 RC8 ORANGE 2010 (FR)","parent_id":"14733"},{"id":"33216","value":"1190 RC8 ORANGE 2011 (EU)","parent_id":"14769"},{"id":"33246","value":"1190 RC8 ORANGE 2011 (FR)","parent_id":"14769"},{"id":"15560","value":"1190 RC8 R BLACK 2011 (EU)","parent_id":"14769"},{"id":"15617","value":"1190 RC8 R BLACK 2011 (FR)","parent_id":"14769"},{"id":"15479","value":"1190 RC8 R BLACK 2012 (EU)","parent_id":"14746"},{"id":"15536","value":"1190 RC8 R BLACK 2012 (FR)","parent_id":"14746"},{"id":"33217","value":"1190 RC8 R COLOR 2 2013 (EU)","parent_id":"14748"},{"id":"33276","value":"1190 RC8 R COLOR 2 2013 (FR)","parent_id":"14748"},{"id":"16582","value":"1190 RC8 R WHITE 2011 (EU)","parent_id":"14769"},{"id":"16583","value":"1190 RC8 R WHITE 2011 (FR)","parent_id":"14769"},{"id":"16584","value":"1190 RC8 R WHITE 2012 (EU)","parent_id":"14746"},{"id":"16585","value":"1190 RC8 R WHITE 2012 (FR)","parent_id":"14746"},{"id":"15753","value":"1190 RC8 R WHITE 2013 (EU)","parent_id":"14748"},{"id":"15789","value":"1190 RC8 R WHITE 2013 (FR)","parent_id":"14748"},{"id":"15832","value":"1190 RC8 R WHITE 2014 (EU)","parent_id":"14758"},{"id":"15873","value":"1190 RC8 R WHITE 2014 (FR)","parent_id":"14758"},{"id":"36468","value":"1190 RC8 R WHITE 2015 (EU)","parent_id":"14773"},{"id":"15913","value":"1190 RC8 R WHITE 2015 (EU\/GB)","parent_id":"14773"},{"id":"15734","value":"1190 RC8 R WHITE 2015 (FR)","parent_id":"14773"},{"id":"36469","value":"1190 RC8 R WHITE 2016 (EU)","parent_id":"14775"}
11712,{"id":"15770","value":"1190 RC8 R WHITE 2016 (EU\/GB)","parent_id":"14775"},{"id":"33280","value":"1190 RC8 R WHITE 2016 (FR)","parent_id":"14775"},{"id":"16581","value":"1190 RC8 WHITE 2010 (EU)","parent_id":"14733"},{"id":"33254","value":"1190 RC8 WHITE 2010 (FR)","parent_id":"14733"},{"id":"16424","value":"1190 RC8-R 2010 (EU)","parent_id":"14733"},{"id":"15502","value":"1190 RC8-R 2010 (FR)","parent_id":"14733"},{"id":"15480","value":"1190 RC8R TRACK 2011 (EU)","parent_id":"14733"},{"id":"15537","value":"1190 RC8R TRACK 2012 (EU)","parent_id":"14746"},{"id":"36514","value":"125 DUKE 2011 (DE)","parent_id":"14769"},{"id":"16140","value":"125 DUKE 2011 (EU)","parent_id":"14769"},{"id":"16214","value":"125 DUKE BLACK - B.D. 2021 (EU)","parent_id":"15038"},{"id":"17231","value":"125 DUKE BLACK - B.D. 2022","parent_id":"15040"},{"id":"45868","value":"125 DUKE BLACK - B.D. 2026 (EU\/GB)","parent_id":"41435"},{"id":"16207","value":"125 DUKE BLACK 2021 (EU)","parent_id":"15038"},{"id":"17234","value":"125 DUKE BLACK 2022 (EU)","parent_id":"15040"},{"id":"32490","value":"125 DUKE BLACK 2023 (EU)","parent_id":"17270"},{"id":"45867","value":"125 DUKE BLACK 2026 (EU)","parent_id":"41435"},{"id":"32491","value":"125 DUKE BLACK W\/O DRL - B.D. 2023","parent_id":"17270"},{"id":"32492","value":"125 DUKE BLACK W\/O DRL 2023","parent_id":"17270"},{"id":"36487","value":"125 DUKE BLACK W\/O DRL 2023 (EU)","parent_id":"17270"},{"id":"45870","value":"125 DUKE BLUE - B.D. 2026 (EU\/GB)","parent_id":"41435"},{"id":"33179","value":"125 DUKE BLUE - NHD - B.D. 2024 (EU)","parent_id":"32421"},{"id":"40811","value":"125 DUKE BLUE - NHD - B.D. 2025 (EU)","parent_id":"33058"},{"id":"33181","value":"125 DUKE BLUE 2024 (EU)","parent_id":"32421"},{"id":"40810","value":"125 DUKE BLUE 2025 (EU)","parent_id":"33058"},{"id":"45869","value":"125 DUKE BLUE 2026 (EU)","parent_id":"41435"},{"id":"33225","value":"125 DUKE COLOR 1 ABS 2012 (EU)","parent_id":"14748"},{"id":"36516","value":"125 DUKE GREY 2012 (DE)","parent_id":"14746"},{"id":"16713","value":"125 DUKE GREY 2012 (EU)","parent_id":"14746"},{"id":"36515","value":"125 DUKE ORANGE (DE)","parent_id":"14746"},{"id":"16714","value":"125 DUKE ORANGE (EU)","parent_id":"14746"},{"id":"16767","value":"125 DUKE ORANGE - B.D. 2018 (EU)","parent_id":"14738"},{"id":"16775","value":"125 DUKE ORANGE - B.D. 2019 (EU)","parent_id":"14740"},{"id":"16778","value":"125 DUKE ORANGE - B.D. 2020 (EU)","parent_id":"14863"},{"id":"33182","value":"125 DUKE ORANGE - NHD - B.D. 2024 (EU)","parent_id":"32421"},{"id":"40813","value":"125 DUKE ORANGE - NHD - B.D. 2025 (EU)","parent_id":"33058"},{"id":"16145","value":"125 DUKE ORANGE 2012 (EU)","parent_id":"14746"},{"id":"16159","value":"125 DUKE ORANGE 2017 (EU)","parent_id":"14729"},{"id":"16166","value":"125 DUKE ORANGE 2018 (EU)","parent_id":"14738"},{"id":"16192","value":"125 DUKE ORANGE 2019 (EU)","parent_id":"14740"},{"id":"16171","value":"125 DUKE ORANGE 2020 (EU)","parent_id":"14863"},{"id":"33177","value":"125 DUKE ORANGE 2024 (EU)","parent_id":"32421"},{"id":"40812","value":"125 DUKE ORANGE 2025 (EU)","parent_id":"33058"},{"id":"16147","value":"125 DUKE ORANGE ABS 2013 (EU)","parent_id":"14748"},{"id":"16148","value":"125 DUKE ORANGE ABS 2014 (EU)","parent_id":"14758"},{"id":"16152","value":"125 DUKE ORANGE ABS 2015 (EU)","parent_id":"14773"},{"id":"16273","value":"125 DUKE ORANGE ABS 2016 (EU)","parent_id":"14775"}
11712,{"id":"16743","value":"125 DUKE ORANGE ABS B.D. 15 (EU)","parent_id":"14773"},{"id":"16749","value":"125 DUKE ORANGE ABS B.D. 16 (EU)","parent_id":"14775"},{"id":"16734","value":"125 DUKE ORANGE ABS BAJ.DIR.13 (EU)","parent_id":"14748"},{"id":"16737","value":"125 DUKE ORANGE ABS BAJ.DIR.14 (EU)","parent_id":"14758"},{"id":"16766","value":"125 DUKE ORANGE B.D. 17 (EU)","parent_id":"14729"},{"id":"16782","value":"125 DUKE SILVER - B.D. 2021 (EU)","parent_id":"15038"},{"id":"17236","value":"125 DUKE SILVER - B.D. 2022","parent_id":"15040"},{"id":"16781","value":"125 DUKE SILVER 2021 (EU)","parent_id":"15038"},{"id":"17237","value":"125 DUKE SILVER 2022 (EU)","parent_id":"15040"},{"id":"16185","value":"125 DUKE WHITE - B.D. 2018 (EU)","parent_id":"14738"},{"id":"16777","value":"125 DUKE WHITE - B.D. 2019 (EU)","parent_id":"14740"},{"id":"16780","value":"125 DUKE WHITE - B.D. 2020 (EU)","parent_id":"14863"},{"id":"32493","value":"125 DUKE WHITE 2 2023 (EU)","parent_id":"17270"},{"id":"32488","value":"125 DUKE WHITE 2 W\/O DRL - B.D. 2023","parent_id":"17270"},{"id":"32489","value":"125 DUKE WHITE 2 W\/O DRL 2023","parent_id":"17270"},{"id":"36486","value":"125 DUKE WHITE 2 W\/O DRL 2023 (EU)","parent_id":"17270"},{"id":"16769","value":"125 DUKE WHITE 2017 (EU)","parent_id":"14729"},{"id":"16768","value":"125 DUKE WHITE 2018 (EU)","parent_id":"14738"},{"id":"16776","value":"125 DUKE WHITE 2019 (EU)","parent_id":"14740"},{"id":"16779","value":"125 DUKE WHITE 2020 (EU)","parent_id":"14863"},{"id":"16733","value":"125 DUKE WHITE ABS 2013 (EU)","parent_id":"14748"},{"id":"16736","value":"125 DUKE WHITE ABS 2014 (EU)","parent_id":"14758"},{"id":"16744","value":"125 DUKE WHITE ABS 2015 (EU)","parent_id":"14773"},{"id":"16750","value":"125 DUKE WHITE ABS 2016 (EU)","parent_id":"14775"}
11712,{"id":"16745","value":"125 DUKE WHITE ABS B.D. 15 (EU)","parent_id":"14773"},{"id":"16751","value":"125 DUKE WHITE ABS B.D. 16 (EU)","parent_id":"14775"},{"id":"16144","value":"125 DUKE WHITE ABS BAJ.DIR.13 (EU)","parent_id":"14748"},{"id":"16738","value":"125 DUKE WHITE ABS BAJ.DIR.14 (EU)","parent_id":"14758"},{"id":"16770","value":"125 DUKE WHITE B.D. 17 (EU)","parent_id":"14729"},{"id":"41456","value":"125 E-GS (EU)","parent_id":"15319"},{"id":"14914","value":"125 E-GS WP (EU)","parent_id":"14913"},{"id":"14915","value":"125 E-GS WP (FR)","parent_id":"14913"},{"id":"33294","value":"125 E-XC (EU)","parent_id":"15319"},{"id":"41457","value":"125 E-XC MARZ. (EU)","parent_id":"15319"},{"id":"33354","value":"125 E-XC MARZ\/\u00d6HL (EU)","parent_id":"14913"},{"id":"14917","value":"125 E-XC MARZ\/U00D6HL (EU)","parent_id":"14913"},{"id":"14916","value":"125 E-XC WP (EU)","parent_id":"14913"},{"id":"40734","value":"125 EGS 6KW '99 (EU)","parent_id":"15048"},{"id":"15142","value":"125 EGS 6KW (EU)","parent_id":"14940"}
11712,{"id":"15150","value":"125 EGS 6KW 99 (EU)","parent_id":"15048"},{"id":"33342","value":"125 EGS M\/\u00d6 6KW (EU)","parent_id":"14826"},{"id":"33343","value":"125 EGS M\/\u00d6 6KW (FR)","parent_id":"14826"},{"id":"16519","value":"125 EGS M\/U00D6 6KW (EU)","parent_id":"14935"},{"id":"14828","value":"125 EGS M\/U00D6 6KW (FR)","parent_id":"14826"},{"id":"41516","value":"125 ENDURO R - B.D. 2026 (EU\/GB)","parent_id":"41435"},{"id":"41515","value":"125 ENDURO R 2026 (EU)","parent_id":"41435"},{"id":"41513","value":"125 ENDURO R ORANGE - B.D. 2025","parent_id":"33058"},{"id":"41512","value":"125 ENDURO R ORANGE - B.D. 2025 (EU\/GB)","parent_id":"33058"},{"id":"41514","value":"125 ENDURO R ORANGE - NHD - B.D. 2025 (EU)","parent_id":"33058"},{"id":"41511","value":"125 ENDURO R ORANGE 2025 (EU)","parent_id":"33058"},{"id":"40735","value":"125 EXC '99 (EU)","parent_id":"15048"},{"id":"15290","value":"125 EXC (EU)","parent_id":"14769"},{"id":"16356","value":"125 EXC 2000 (EU)","parent_id":"15051"},{"id":"14842","value":"125 EXC 2001 (EU)","parent_id":"14841"}
11712,{"id":"16327","value":"125 EXC 2002 (EU)","parent_id":"15208"},{"id":"16398","value":"125 EXC 2003 (EU)","parent_id":"14920"},{"id":"16046","value":"125 EXC 2004 (EU)","parent_id":"14812"},{"id":"15064","value":"125 EXC 2005 (EU)","parent_id":"14946"},{"id":"15205","value":"125 EXC 2006 (EU)","parent_id":"15071"},{"id":"14847","value":"125 EXC 2007 (EU)","parent_id":"14846"},{"id":"15412","value":"125 EXC 2008 (EU)","parent_id":"14985"},{"id":"15457","value":"125 EXC 2009 (EU)","parent_id":"14736"},{"id":"15499","value":"125 EXC 2010 (EU)","parent_id":"14733"},{"id":"14918","value":"125 EXC 2012 (EU)","parent_id":"14746"},{"id":"15929","value":"125 EXC 2013 (EU)","parent_id":"14748"},{"id":"14884","value":"125 EXC 2014 (EU)","parent_id":"14758"},{"id":"14889","value":"125 EXC 2015 (EU)","parent_id":"14773"},{"id":"14893","value":"125 EXC 2016 (EU)","parent_id":"14775"},{"id":"15053","value":"125 EXC 99 (EU)","parent_id":"15048"},{"id":"15519","value":"125 EXC CHAMPION EDITION 2010 (EU)","parent_id":"14733"},{"id":"15292","value":"125 EXC FACTORY EDIT. 2011 (EU)","parent_id":"14769"},{"id":"14912","value":"125 EXC FACTORY EDITION 2015 (EU)","parent_id":"14773"},{"id":"33219","value":"125 EXC M\/\u00d6 (EU)","parent_id":"14826"}
11712,{"id":"16520","value":"125 EXC M\/U00D6 (EU)","parent_id":"14935"},{"id":"14843","value":"125 EXC SIX-DAYS 2001 (EU)","parent_id":"14841"},{"id":"16328","value":"125 EXC SIX-DAYS 2002 (EU)","parent_id":"15208"},{"id":"16399","value":"125 EXC SIX-DAYS 2003 (EU)","parent_id":"14920"},{"id":"16048","value":"125 EXC SIX-DAYS 2004 (EU)","parent_id":"14812"},{"id":"15061","value":"125 EXC SIX-DAYS 2005 (EU)","parent_id":"14946"},{"id":"15200","value":"125 EXC SIX-DAYS 2006 (EU)","parent_id":"15071"},{"id":"15202","value":"125 EXC SIX-DAYS 2007 (EU)","parent_id":"14846"},{"id":"16338","value":"125 EXC SIX-DAYS 2008 (EU)","parent_id":"14985"},{"id":"14919","value":"125 EXC SIX-DAYS 2009 (EU)","parent_id":"14736"},{"id":"15410","value":"125 EXC SIX-DAYS 2010 (EU)","parent_id":"14733"},{"id":"15378","value":"125 EXC SIX-DAYS 2011 (EU)","parent_id":"14769"},{"id":"15013","value":"125 EXC SIX-DAYS 2012 (EU)","parent_id":"14746"},{"id":"15017","value":"125 EXC SIX-DAYS 2013 (EU)","parent_id":"14748"},{"id":"15305","value":"125 EXC SIX-DAYS 2014 (EU)","parent_id":"14758"},{"id":"14925","value":"125 EXC SIX-DAYS 2015 (EU)","parent_id":"14773"},{"id":"14924","value":"125 EXC SIX-DAYS 2016 (EU)","parent_id":"14775"}
11712,{"id":"16513","value":"125 EXE 100 2000 (EU)","parent_id":"15051"},{"id":"16515","value":"125 EXE 100 2001 (EU)","parent_id":"14841"},{"id":"16514","value":"125 EXE 80 2000 (EU)","parent_id":"15051"},{"id":"16516","value":"125 EXE 80 2001 (EU)","parent_id":"14841"},{"id":"40884","value":"125 LC2 '96","parent_id":"14826"},{"id":"40887","value":"125 LC2 100 '98 (EU)","parent_id":"14940"},{"id":"14944","value":"125 LC2 100 98 (EU)","parent_id":"14940"},{"id":"40769","value":"125 LC2 100 EUROPA '96 (EU)","parent_id":"14826"},{"id":"14945","value":"125 LC2 100 EUROPA 96 (EU)","parent_id":"14826"},{"id":"40770","value":"125 LC2 100 SCHWEIZ '96 (EU)","parent_id":"14826"},{"id":"14934","value":"125 LC2 100 SCHWEIZ 96 (EU)","parent_id":"14826"},{"id":"40771","value":"125 LC2 100\/ORANGE '97 (EU)","parent_id":"14935"},{"id":"14936","value":"125 LC2 100\/ORANGE 97 (EU)","parent_id":"14935"},{"id":"40772","value":"125 LC2 100\/ORANGE BRD '96 (EU)","parent_id":"14826"},{"id":"14937","value":"125 LC2 100\/ORANGE BRD 96 (EU)","parent_id":"14826"},{"id":"40773","value":"125 LC2 100\/WEISS '97 (EU)","parent_id":"14935"},{"id":"14938","value":"125 LC2 100\/WEISS 97 (EU)","parent_id":"14935"},{"id":"40774","value":"125 LC2 100\/WEISS BRD '96 (EU)","parent_id":"14826"}
11712,{"id":"17268","value":"125 LC2 100\/WEISS BRD 96 (EU)","parent_id":"14826"},{"id":"14939","value":"125 LC2 100\/WEIU00DF BRD 96 (EU)","parent_id":"14826"},{"id":"33323","value":"125 LC2 11KW MIL (EU)","parent_id":"14935"},{"id":"40759","value":"125 LC2 80 '98 (EU)","parent_id":"14940"},{"id":"14941","value":"125 LC2 80 98 (EU)","parent_id":"14940"},{"id":"40889","value":"125 LC2 80\/ORANGE '97 (EU)","parent_id":"14935"},{"id":"33324","value":"125 LC2 80\/ORANGE 97 (EU)","parent_id":"14935"},{"id":"40775","value":"125 LC2 80\/ORANGE BRD '96 (EU)","parent_id":"14826"},{"id":"14942","value":"125 LC2 80\/ORANGE BRD 96 (EU)","parent_id":"14826"},{"id":"40890","value":"125 LC2 80\/WEISS '97 (EU)","parent_id":"14935"},{"id":"33325","value":"125 LC2 80\/WEISS 97 (EU)","parent_id":"14935"},{"id":"40776","value":"125 LC2 80\/WEISS BRD '96 (EU)","parent_id":"14826"},{"id":"17269","value":"125 LC2 80\/WEISS BRD 96 (EU)","parent_id":"14826"},{"id":"14943","value":"125 LC2 80\/WEIU00DF BRD 96 (EU)","parent_id":"14826"},{"id":"33291","value":"125 LC2 96","parent_id":"14826"},{"id":"33344","value":"125 SIX-DAYS M\/\u00d6 (EU)","parent_id":"14826"}
11712,{"id":"14835","value":"125 SIX-DAYS M\/U00D6 (EU)","parent_id":"14826"},{"id":"41505","value":"125 SMC R - B.D. 2026 (EU\/GB)","parent_id":"41435"},{"id":"41503","value":"125 SMC R - NHD - B.D. 2025 (EU)","parent_id":"33058"},{"id":"41502","value":"125 SMC R 2025 (EU)","parent_id":"33058"},{"id":"41504","value":"125 SMC R 2026 (EU)","parent_id":"41435"},{"id":"40819","value":"125 STING '97 (EU)","parent_id":"14935"},{"id":"40777","value":"125 STING '98 (EU)","parent_id":"14940"},{"id":"16503","value":"125 STING 97 (EU)","parent_id":"14935"},{"id":"16460","value":"125 STING 98 (EU)","parent_id":"14940"},{"id":"40778","value":"125 STING\/100 '97 (EU)","parent_id":"14935"},{"id":"40820","value":"125 STING\/100 '98 (EU)","parent_id":"14940"},{"id":"16461","value":"125 STING\/100 97 (EU)","parent_id":"14935"},{"id":"16504","value":"125 STING\/100 98 (EU)","parent_id":"14940"},{"id":"40821","value":"125 STING\/80 '97 (EU)","parent_id":"14935"},{"id":"40779","value":"125 STING\/80 '98 (EU)","parent_id":"14940"},{"id":"16505","value":"125 STING\/80 97 (EU)","parent_id":"14935"},{"id":"16462","value":"125 STING\/80 98 (EU)","parent_id":"14940"}
11712,{"id":"16316","value":"125 SUPERMOTO 100 2000 (EU)","parent_id":"15051"},{"id":"16318","value":"125 SUPERMOTO 100 2001 (EU)","parent_id":"14841"},{"id":"16530","value":"125 SUPERMOTO 80 2000 (EU)","parent_id":"15051"},{"id":"16524","value":"125 SUPERMOTO 80 2001 (EU)","parent_id":"14841"},{"id":"40766","value":"125 SX '98 (EU)","parent_id":"14940"},{"id":"40745","value":"125 SX '99 (EU)","parent_id":"15048"},{"id":"41470","value":"125 SX (EU)","parent_id":"14985"},{"id":"16434","value":"125 SX 2000 (EU)","parent_id":"15051"},{"id":"16385","value":"125 SX 2001 (EU)","parent_id":"14841"},{"id":"16334","value":"125 SX 2002 (EU)","parent_id":"15208"},{"id":"16430","value":"125 SX 2003 (EU)","parent_id":"14920"},{"id":"16052","value":"125 SX 2004 (EU)","parent_id":"14812"},{"id":"15058","value":"125 SX 2005 (EU)","parent_id":"14946"},{"id":"15197","value":"125 SX 2006 (EU)","parent_id":"15071"},{"id":"15468","value":"125 SX 2007 (EU)","parent_id":"14846"},{"id":"15552","value":"125 SX 2009 (EU)","parent_id":"14736"},{"id":"15598","value":"125 SX 2010 (EU)","parent_id":"14733"},{"id":"15638","value":"125 SX 2011 (EU)","parent_id":"14769"},{"id":"15677","value":"125 SX 2012 (EU)","parent_id":"14746"},{"id":"15760","value":"125 SX 2013 (EU)","parent_id":"14748"},{"id":"15787","value":"125 SX 2014 (EU)","parent_id":"14758"},{"id":"15820","value":"125 SX 2015 (EU)","parent_id":"14773"},{"id":"15857","value":"125 SX 2016 (EU)","parent_id":"14775"}
11712,{"id":"15883","value":"125 SX 2017 (EU)","parent_id":"14729"},{"id":"15912","value":"125 SX 2018 (EU)","parent_id":"14738"},{"id":"15728","value":"125 SX 2019 (EU)","parent_id":"14740"},{"id":"15754","value":"125 SX 2020 (EU)","parent_id":"14863"},{"id":"15781","value":"125 SX 2021 (EU)","parent_id":"15038"},{"id":"15817","value":"125 SX 2022 (EU)","parent_id":"15040"},{"id":"32456","value":"125 SX 2023 (EU)","parent_id":"17270"},{"id":"32449","value":"125 SX 2024 (EU)","parent_id":"32421"},{"id":"33079","value":"125 SX 2025 (EU)","parent_id":"33058"},{"id":"41450","value":"125 SX 2026","parent_id":"41435"},{"id":"45842","value":"125 SX 2027","parent_id":"45841"},{"id":"15107","value":"125 SX 98 (EU)","parent_id":"14940"},{"id":"15050","value":"125 SX 99 (EU)","parent_id":"15048"},{"id":"33277","value":"125 SX M\/\u00d6 (EU)","parent_id":"14826"},{"id":"16484","value":"125 SX M\/U00D6 (EU)","parent_id":"14935"},{"id":"33279","value":"125 SX MARZ\/\u00d6HL (EU)","parent_id":"14913"},{"id":"16336","value":"125 SX MARZ\/U00D6HL (EU)","parent_id":"14913"},{"id":"16442","value":"125 SX TYLA RATTRAY 2005 (EU)","parent_id":"14946"},{"id":"33304","value":"125 SXS 2000 (EU)","parent_id":"15051"},{"id":"16061","value":"125 SXS 2001 (EU)","parent_id":"14841"}
11712,{"id":"16326","value":"125 SXS 2002 (EU)","parent_id":"15208"},{"id":"16429","value":"125 SXS 2003 (EU)","parent_id":"14920"},{"id":"16045","value":"125 SXS 2004 (EU)","parent_id":"14812"},{"id":"16439","value":"125 SXS 2005 (EU)","parent_id":"14946"},{"id":"16337","value":"125 SXS 2006 (EU)","parent_id":"15071"},{"id":"15637","value":"125 SXS 2007 (EU)","parent_id":"14846"},{"id":"15680","value":"125 SXS 2008 (EU)","parent_id":"14985"},{"id":"36539","value":"125 XC 2024 (US)","parent_id":"32421"},{"id":"33083","value":"125 XC 2025","parent_id":"33058"},{"id":"15281","value":"125 XC-W 2017 (EU)","parent_id":"14729"},{"id":"15283","value":"125 XC-W 2018 (EU)","parent_id":"14738"},{"id":"15823","value":"125 XC-W 2019 (EU)","parent_id":"14740"},{"id":"36536","value":"125 XC-W 2025 (EU)","parent_id":"33058"},{"id":"41436","value":"125 XC-W 2026 (EU)","parent_id":"41435"},{"id":"14882","value":"1290 SUPER ADV. S BLACK 17 (EU)","parent_id":"14729"},{"id":"14865","value":"1290 SUPER ADV. S ORANGE 17 (EU)","parent_id":"14729"},{"id":"14862","value":"1290 SUPER ADVENTURE R 2017 (EU)","parent_id":"14729"},{"id":"14873","value":"1290 SUPER ADVENTURE R 2018 (EU)","parent_id":"14738"},{"id":"14870","value":"1290 SUPER ADVENTURE R 2019 (EU)","parent_id":"14740"},{"id":"14878","value":"1290 SUPER ADVENTURE R 2020 (EU)","parent_id":"14863"},{"id":"16471","value":"1290 SUPER ADVENTURE R 2021 (EU)","parent_id":"15038"},{"id":"17252","value":"1290 SUPER ADVENTURE R 2022 (EU)","parent_id":"15040"},{"id":"30371","value":"1290 SUPER ADVENTURE R 2023 (EU)","parent_id":"17270"},{"id":"33130","value":"1290 SUPER ADVENTURE R 2024 (EU)","parent_id":"32421"}
11712,{"id":"16682","value":"1290 SUPER ADVENTURE R OT 2021 (EU)","parent_id":"15038"},{"id":"17249","value":"1290 SUPER ADVENTURE R OT 2022 (EU)","parent_id":"15040"},{"id":"30372","value":"1290 SUPER ADVENTURE R OT 2023 (EU)","parent_id":"17270"},{"id":"33129","value":"1290 SUPER ADVENTURE R OT 2024 (EU)","parent_id":"32421"},{"id":"14866","value":"1290 SUPER ADVENTURE R TKC 17 (EU)","parent_id":"14729"},{"id":"16644","value":"1290 SUPER ADVENTURE R TKC 2018 (EU)","parent_id":"14738"},{"id":"16642","value":"1290 SUPER ADVENTURE R TKC 2019 (EU)","parent_id":"14740"},{"id":"16643","value":"1290 SUPER ADVENTURE R TKC 2020 (EU)","parent_id":"14863"},{"id":"14869","value":"1290 SUPER ADVENTURE S BLACK 2018 (EU)","parent_id":"14738"},{"id":"16683","value":"1290 SUPER ADVENTURE S BLACK 2021 (EU)","parent_id":"15038"},{"id":"17250","value":"1290 SUPER ADVENTURE S BLACK 2022 (EU)","parent_id":"15040"},{"id":"30380","value":"1290 SUPER ADVENTURE S GREY 2023 (EU)","parent_id":"17270"},{"id":"33056","value":"1290 SUPER ADVENTURE S GREY 2024 (EU)","parent_id":"32421"}
11712,{"id":"16834","value":"1290 SUPER ADVENTURE S ORANGE 2018 (EU)","parent_id":"14738"},{"id":"14876","value":"1290 SUPER ADVENTURE S ORANGE 2019 (EU)","parent_id":"14740"},{"id":"14864","value":"1290 SUPER ADVENTURE S ORANGE 2020 (EU)","parent_id":"14863"},{"id":"16474","value":"1290 SUPER ADVENTURE S ORANGE 2021 (EU)","parent_id":"15038"},{"id":"17251","value":"1290 SUPER ADVENTURE S ORANGE 2022 (EU)","parent_id":"15040"},{"id":"30381","value":"1290 SUPER ADVENTURE S ORANGE 2023 (EU)","parent_id":"17270"},{"id":"33057","value":"1290 SUPER ADVENTURE S ORANGE 2024 (EU)","parent_id":"32421"},{"id":"16835","value":"1290 SUPER ADVENTURE S SILVER 2019 (EU)","parent_id":"14740"},{"id":"16836","value":"1290 SUPER ADVENTURE S SILVER 2020 (EU)","parent_id":"14863"},{"id":"14879","value":"1290 SUPER ADVENTURE T 2017 (EU)","parent_id":"14729"},{"id":"14868","value":"1290 SUPER ADVENTURE WH ABS 15 (EU)","parent_id":"14773"},{"id":"14871","value":"1290 SUPER ADVENTURE WH ABS 15 (FR)","parent_id":"14773"},{"id":"14875","value":"1290 SUPER ADVENTURE WH ABS 16 (EU)","parent_id":"14775"}
11712,{"id":"14880","value":"1290 SUPER ADVENTURE WH ABS 16 (FR)","parent_id":"14775"},{"id":"16071","value":"1290 SUPER DUKE GT BLACK 2018 (EU)","parent_id":"14738"},{"id":"16075","value":"1290 SUPER DUKE GT BLACK 2019 (EU)","parent_id":"14740"},{"id":"16068","value":"1290 SUPER DUKE GT BLACK 2020 (EU)","parent_id":"14863"},{"id":"16072","value":"1290 SUPER DUKE GT BLACK 2021 (EU)","parent_id":"15038"},{"id":"16067","value":"1290 SUPER DUKE GT GREY 17 (EU)","parent_id":"14729"},{"id":"15911","value":"1290 SUPER DUKE GT GREY ABS 16 (EU)","parent_id":"14775"},{"id":"33220","value":"1290 SUPER DUKE GT GREY ABS 16 (FR)","parent_id":"14775"},{"id":"16631","value":"1290 SUPER DUKE GT OR. ABS 16 (EU)","parent_id":"14775"},{"id":"16833","value":"1290 SUPER DUKE GT OR. ABS 16 (FR)","parent_id":"14775"},{"id":"16676","value":"1290 SUPER DUKE GT ORANGE 17 (EU)","parent_id":"14729"},{"id":"16677","value":"1290 SUPER DUKE GT ORANGE 2018 (EU)","parent_id":"14738"},{"id":"17264","value":"1290 SUPER DUKE GT ORANGE 2022 (EU)","parent_id":"15040"},{"id":"30390","value":"1290 SUPER DUKE GT ORANGE 2023 (EU)","parent_id":"17270"},{"id":"33091","value":"1290 SUPER DUKE GT ORANGE 2024 (EU)","parent_id":"32421"}
11712,{"id":"16678","value":"1290 SUPER DUKE GT WHITE 2019 (EU)","parent_id":"14740"},{"id":"16679","value":"1290 SUPER DUKE GT WHITE 2020 (EU)","parent_id":"14863"},{"id":"16680","value":"1290 SUPER DUKE GT WHITE 2021 (EU)","parent_id":"15038"},{"id":"14797","value":"1290 SUPER DUKE R BLACK 2018 (EU)","parent_id":"14738"},{"id":"16673","value":"1290 SUPER DUKE R BLACK 2019 (EU)","parent_id":"14740"},{"id":"16077","value":"1290 SUPER DUKE R BLACK 2020 (EU)","parent_id":"14863"},{"id":"16082","value":"1290 SUPER DUKE R BLACK 2021 (EU)","parent_id":"15038"},{"id":"17248","value":"1290 SUPER DUKE R BLACK 2022 (EU)","parent_id":"15040"},{"id":"30370","value":"1290 SUPER DUKE R BLACK 2023 (EU)","parent_id":"17270"},{"id":"16674","value":"1290 SUPER DUKE R BLACK EU5 KR 2020 (EU)","parent_id":"14863"},{"id":"17178","value":"1290 SUPER DUKE R EVO BLACK 2022 (EU)","parent_id":"15040"},{"id":"30368","value":"1290 SUPER DUKE R EVO BLACK 2023 (EU)","parent_id":"17270"},{"id":"17179","value":"1290 SUPER DUKE R EVO ORANGE 2022 (EU)","parent_id":"15040"},{"id":"30369","value":"1290 SUPER DUKE R EVO ORANGE 2023 (EU)","parent_id":"17270"},{"id":"16079","value":"1290 SUPER DUKE R ORANGE 2020 (EU)","parent_id":"14863"},{"id":"16671","value":"1290 SUPER DUKE R ORANGE 2021 (EU)","parent_id":"15038"},{"id":"17246","value":"1290 SUPER DUKE R ORANGE 2022 (EU)","parent_id":"15040"},{"id":"30379","value":"1290 SUPER DUKE R ORANGE 2023 (EU)","parent_id":"17270"},{"id":"16675","value":"1290 SUPER DUKE R ORANGE EU5 KR 2020 (EU)","parent_id":"14863"},{"id":"14803","value":"1290 SUPER DUKE R WHITE 2018 (EU)","parent_id":"14738"},{"id":"14778","value":"1290 SUPER DUKE R WHITE 2019 (EU)","parent_id":"14740"},{"id":"16080","value":"1290 SUPER DUKE RR 2021 (EU)","parent_id":"15038"},{"id":"32431","value":"1290 SUPER DUKE RR 2023 (EU)","parent_id":"17270"},{"id":"16672","value":"1290 SUPERDUKE R BLACK 17 (EU)","parent_id":"14729"},{"id":"14777","value":"1290 SUPERDUKE R BLACK ABS 14 (EU)","parent_id":"14758"},{"id":"14786","value":"1290 SUPERDUKE R BLACK ABS 14 (FR)","parent_id":"14758"},{"id":"14805","value":"1290 SUPERDUKE R BLACK ABS 15 (EU)","parent_id":"14773"},{"id":"14811","value":"1290 SUPERDUKE R BLACK ABS 15 (FR)","parent_id":"14773"},{"id":"14795","value":"1290 SUPERDUKE R BLACK ABS 16 (EU)","parent_id":"14775"}
11712,{"id":"14801","value":"1290 SUPERDUKE R BLACK ABS 16 (FR)","parent_id":"14775"},{"id":"16623","value":"1290 SUPERDUKE R ORANGE ABS 14 (EU)","parent_id":"14758"},{"id":"16624","value":"1290 SUPERDUKE R ORANGE ABS 14 (FR)","parent_id":"14758"},{"id":"16625","value":"1290 SUPERDUKE R ORANGE ABS 15 (EU)","parent_id":"14773"},{"id":"16626","value":"1290 SUPERDUKE R ORANGE ABS 15 (FR)","parent_id":"14773"},{"id":"16627","value":"1290 SUPERDUKE R ORANGE ABS 16 (EU)","parent_id":"14775"},{"id":"14776","value":"1290 SUPERDUKE R ORANGE ABS 16 (FR)","parent_id":"14775"},{"id":"14785","value":"1290 SUPERDUKE R S.E. ABS 16 (EU)","parent_id":"14775"},{"id":"14792","value":"1290 SUPERDUKE R S.E. ABS 16 (FR)","parent_id":"14775"},{"id":"14791","value":"1290 SUPERDUKE R WHITE 17 (EU)","parent_id":"14729"},{"id":"36509","value":"1390 SUPER ADVENTURE R 2025","parent_id":"33058"},{"id":"40792","value":"1390 SUPER ADVENTURE R 2025 (EU)","parent_id":"33058"},{"id":"41496","value":"1390 SUPER ADVENTURE R 2026 (EU)","parent_id":"41435"},{"id":"36508","value":"1390 SUPER ADVENTURE R OT 2025","parent_id":"33058"},{"id":"40793","value":"1390 SUPER ADVENTURE R OT 2025 (EU)","parent_id":"33058"},{"id":"41497","value":"1390 SUPER ADVENTURE R OT 2026 (EU)","parent_id":"41435"},{"id":"36512","value":"1390 SUPER ADVENTURE S BLACK 2025","parent_id":"33058"},{"id":"40794","value":"1390 SUPER ADVENTURE S BLACK 2025 (EU)","parent_id":"33058"},{"id":"41498","value":"1390 SUPER ADVENTURE S BLACK 2026 (EU)","parent_id":"41435"},{"id":"40796","value":"1390 SUPER ADVENTURE S EVO BLACK 2025 (EU)","parent_id":"33058"},{"id":"41500","value":"1390 SUPER ADVENTURE S EVO BLACK 2026 (EU)","parent_id":"41435"},{"id":"40797","value":"1390 SUPER ADVENTURE S EVO ORANGE 2025 (EU)","parent_id":"33058"},{"id":"41501","value":"1390 SUPER ADVENTURE S EVO ORANGE 2026 (EU)","parent_id":"41435"},{"id":"36511","value":"1390 SUPER ADVENTURE S ORANGE 2025","parent_id":"33058"},{"id":"40795","value":"1390 SUPER ADVENTURE S ORANGE 2025 (EU)","parent_id":"33058"},{"id":"41499","value":"1390 SUPER ADVENTURE S ORANGE 2026 (EU)","parent_id":"41435"},{"id":"33149","value":"1390 SUPER DUKE R BLACK 2024 (EU)","parent_id":"32421"},{"id":"36510","value":"1390 SUPER DUKE R BLACK 2025 (EU)","parent_id":"33058"},{"id":"45860","value":"1390 SUPER DUKE R BLACK 2026 (EU)","parent_id":"41435"},{"id":"36507","value":"1390 SUPER DUKE R BLACK DISPLAY 2025 (EU)","parent_id":"33058"},{"id":"33150","value":"1390 SUPER DUKE R EVO BLACK 2024 (EU)","parent_id":"32421"},{"id":"36505","value":"1390 SUPER DUKE R EVO BLACK 2025 (EU)","parent_id":"33058"},{"id":"41494","value":"1390 SUPER DUKE R EVO BLACK 2026 (EU)","parent_id":"41435"},{"id":"33147","value":"1390 SUPER DUKE R EVO ORANGE 2024 (EU)","parent_id":"32421"},{"id":"36506","value":"1390 SUPER DUKE R EVO ORANGE 2025 (EU)","parent_id":"33058"},{"id":"41495","value":"1390 SUPER DUKE R EVO ORANGE 2026 (EU)","parent_id":"41435"},{"id":"33148","value":"1390 SUPER DUKE R ORANGE 2024 (EU)","parent_id":"32421"},{"id":"36513","value":"1390 SUPER DUKE R ORANGE 2025 (EU)","parent_id":"33058"},{"id":"45861","value":"1390 SUPER DUKE R ORANGE 2026 (EU)","parent_id":"41435"},{"id":"45862","value":"1390 SUPER DUKE RR 2026 (EU)","parent_id":"41435"},{"id":"45863","value":"1390 SUPER DUKE RR TRACK 2026 (EU)","parent_id":"41435"},{"id":"17275","value":"150 EXC 2023 (EU)","parent_id":"17270"},{"id":"32458","value":"150 EXC 2024 (EU)","parent_id":"32421"},{"id":"36503","value":"150 EXC 2025 (EU)","parent_id":"33058"},{"id":"15037","value":"150 EXC TPI 2020 (EU)","parent_id":"14863"},{"id":"15039","value":"150 EXC TPI 2021 (EU)","parent_id":"15038"},{"id":"15041","value":"150 EXC TPI 2022 (EU)","parent_id":"15040"},{"id":"15411","value":"150 SX 2011 (EU)","parent_id":"14769"},{"id":"15449","value":"150 SX 2012 (EU)","parent_id":"14746"},{"id":"15815","value":"150 SX 2013 (EU)","parent_id":"14748"},{"id":"15846","value":"150 SX 2014 (EU)","parent_id":"14758"},{"id":"15876","value":"150 SX 2015 (EU)","parent_id":"14773"},{"id":"15904","value":"150 SX 2016 (EU)","parent_id":"14775"}
11712,{"id":"15934","value":"150 SX 2017 (EU)","parent_id":"14729"},{"id":"15748","value":"150 SX 2018 (EU)","parent_id":"14738"},{"id":"15775","value":"150 SX 2019 (EU)","parent_id":"14740"},{"id":"15806","value":"150 SX 2020 (EU)","parent_id":"14863"},{"id":"16413","value":"150 SX 2021 (EU)","parent_id":"15038"},{"id":"15868","value":"150 SX 2022 (EU)","parent_id":"15040"},{"id":"33080","value":"150 SX 2025 (EU)","parent_id":"33058"},{"id":"16252","value":"200 DUKE BLACK W\/O ABS - B.D. 2020 (EU)","parent_id":"14863"},{"id":"16243","value":"200 DUKE BLACK W\/O ABS - B.D. 2021 (EU)","parent_id":"15038"},{"id":"17263","value":"200 DUKE BLACK W\/O ABS - B.D. 2022 (EU)","parent_id":"15040"},{"id":"16244","value":"200 DUKE BLACK W\/O ABS-B.D. 2018 (EU)","parent_id":"14738"},{"id":"16251","value":"200 DUKE BLACK W\/O ABS-B.D. 2019 (EU)","parent_id":"14740"},{"id":"16167","value":"200 DUKE BLACK W\/O ABS-B.D.17 (EU)","parent_id":"14729"},{"id":"16715","value":"200 DUKE GREY 2012 (EU)","parent_id":"14746"},{"id":"30377","value":"200 DUKE GREY ABS-B.D. 2023 (EU)","parent_id":"17270"},{"id":"33092","value":"200 DUKE GREY ABS-B.D. 2024 (EU)","parent_id":"32421"},{"id":"40806","value":"200 DUKE GREY ABS-B.D. 2025 (RW)","parent_id":"33058"},{"id":"16234","value":"200 DUKE OR. W\/O ABS B.D. 14 (EU)","parent_id":"14758"},{"id":"16154","value":"200 DUKE OR. W\/O ABS B.D. 15 (EU)","parent_id":"14773"},{"id":"16272","value":"200 DUKE OR. W\/O ABS B.D. 16 (EU)","parent_id":"14775"}
11712,{"id":"16227","value":"200 DUKE ORANGE 2012 (EU)","parent_id":"14746"},{"id":"17233","value":"200 DUKE ORANGE 2022","parent_id":"15040"},{"id":"16161","value":"200 DUKE ORANGE ABS 2013 (EU)","parent_id":"14748"},{"id":"16229","value":"200 DUKE ORANGE ABS 2014 (EU)","parent_id":"14758"},{"id":"16710","value":"200 DUKE ORANGE ABS BAJ.DIR.13 (EU)","parent_id":"14748"},{"id":"16740","value":"200 DUKE ORANGE ABS BAJDIR 14 (EU)","parent_id":"14758"},{"id":"16198","value":"200 DUKE ORANGE ABS-B.D. 2020 (EU)","parent_id":"14863"},{"id":"16176","value":"200 DUKE ORANGE ABS-B.D. 2021 (EU)","parent_id":"15038"},{"id":"17235","value":"200 DUKE ORANGE ABS-B.D. 2022 (EU)","parent_id":"15040"},{"id":"30378","value":"200 DUKE ORANGE ABS-B.D. 2023 (EU)","parent_id":"17270"},{"id":"33076","value":"200 DUKE ORANGE ABS-B.D. 2024 (EU)","parent_id":"32421"},{"id":"40807","value":"200 DUKE ORANGE ABS-B.D. 2025 (RW)","parent_id":"33058"},{"id":"16804","value":"200 DUKE ORANGE W\/O ABS - B.D. 2020 (EU)","parent_id":"14863"},{"id":"16806","value":"200 DUKE ORANGE W\/O ABS - B.D. 2021 (EU)","parent_id":"15038"},{"id":"17262","value":"200 DUKE ORANGE W\/O ABS - B.D. 2022 (EU)","parent_id":"15040"},{"id":"32434","value":"200 DUKE ORANGE W\/O ABS - B.D. 2023 (EU)","parent_id":"17270"},{"id":"33062","value":"200 DUKE ORANGE W\/O ABS - B.D. 2024 (EU)","parent_id":"32421"},{"id":"40808","value":"200 DUKE ORANGE W\/O ABS - B.D. 2025 (RW)","parent_id":"33058"},{"id":"16711","value":"200 DUKE ORANGE W\/O ABS B.D.13 (EU)","parent_id":"14748"},{"id":"16752","value":"200 DUKE ORANGE W\/O ABS-B.D. 17 (EU)","parent_id":"14729"},{"id":"16754","value":"200 DUKE ORANGE W\/O ABS-B.D. 2018 (EU)","parent_id":"14738"},{"id":"16801","value":"200 DUKE ORANGE W\/O ABS-B.D. 2019 (EU)","parent_id":"14740"},{"id":"33229","value":"200 DUKE R ORANGE ABS 2014 (EU)","parent_id":"14758"},{"id":"33230","value":"200 DUKE R ORANGE ABS BAJDIR14 (EU)","parent_id":"14758"},{"id":"33231","value":"200 DUKE R WHITE ABS 2014 (EU)","parent_id":"14758"},{"id":"33221","value":"200 DUKE R WHITE ABS BAJ.DIR14 (EU)","parent_id":"14758"},{"id":"16735","value":"200 DUKE WH. W\/O ABS B.D. 14 (EU)","parent_id":"14758"},{"id":"16747","value":"200 DUKE WH. W\/O ABS B.D. 15 (EU)","parent_id":"14773"},{"id":"16276","value":"200 DUKE WH. W\/O ABS B.D. 16 (EU)","parent_id":"14775"}
11712,{"id":"17238","value":"200 DUKE WHITE 2022","parent_id":"15040"},{"id":"16709","value":"200 DUKE WHITE ABS 2013 (EU)","parent_id":"14748"},{"id":"16739","value":"200 DUKE WHITE ABS 2014 (EU)","parent_id":"14758"},{"id":"16741","value":"200 DUKE WHITE ABS BAJ.DIR 14 (EU)","parent_id":"14758"},{"id":"16716","value":"200 DUKE WHITE ABS BAJ.DIR.13 (EU)","parent_id":"14748"},{"id":"16172","value":"200 DUKE WHITE ABS-B.D. 2020 (EU)","parent_id":"14863"},{"id":"16179","value":"200 DUKE WHITE ABS-B.D. 2021 (EU)","parent_id":"15038"},{"id":"17232","value":"200 DUKE WHITE ABS-B.D. 2022 (EU)","parent_id":"15040"},{"id":"16805","value":"200 DUKE WHITE W\/O ABS - B.D. 2020 (EU)","parent_id":"14863"},{"id":"16807","value":"200 DUKE WHITE W\/O ABS - B.D. 2021 (EU)","parent_id":"15038"},{"id":"17261","value":"200 DUKE WHITE W\/O ABS - B.D. 2022 (EU)","parent_id":"15040"},{"id":"32435","value":"200 DUKE WHITE W\/O ABS - B.D. 2023 (EU)","parent_id":"17270"},{"id":"33061","value":"200 DUKE WHITE W\/O ABS - B.D. 2024 (EU)","parent_id":"32421"},{"id":"40809","value":"200 DUKE WHITE W\/O ABS - B.D. 2025 (RW)","parent_id":"33058"},{"id":"16717","value":"200 DUKE WHITE W\/O ABS B.D. 13 (EU)","parent_id":"14748"},{"id":"16249","value":"200 DUKE WHITE W\/O ABS-B.D. 2018 (EU)","parent_id":"14738"},{"id":"16802","value":"200 DUKE WHITE W\/O ABS-B.D. 2019 (EU)","parent_id":"14740"},{"id":"16803","value":"200 DUKE WHITE W\/O ABS-B.D. ASEAN 2019 (EU)","parent_id":"14740"},{"id":"16753","value":"200 DUKE WHITE W\/O ABS-B.D.17 (EU)","parent_id":"14729"},{"id":"40736","value":"200 EGS 8KW '99 (EU)","parent_id":"15048"},{"id":"15121","value":"200 EGS 8KW (EU)","parent_id":"14940"}
11712,{"id":"15125","value":"200 EGS 8KW 99 (EU)","parent_id":"15048"},{"id":"40737","value":"200 EXC '99 (EU)","parent_id":"15048"},{"id":"15146","value":"200 EXC (EU)","parent_id":"14940"},{"id":"14845","value":"200 EXC - GS 2001 (EU)","parent_id":"14841"},{"id":"16522","value":"200 EXC - GS 2002 (EU)","parent_id":"15208"},{"id":"15052","value":"200 EXC - GS 8KW 2000 (EU)","parent_id":"15051"},{"id":"16350","value":"200 EXC 2000 (EU)","parent_id":"15051"},{"id":"14844","value":"200 EXC 2001 (EU)","parent_id":"14841"},{"id":"16330","value":"200 EXC 2002 (EU)","parent_id":"15208"},{"id":"16400","value":"200 EXC 2003 (EU)","parent_id":"14920"},{"id":"16051","value":"200 EXC 2004 (EU)","parent_id":"14812"},{"id":"15057","value":"200 EXC 2005 (EU)","parent_id":"14946"},{"id":"15196","value":"200 EXC 2006 (EU)","parent_id":"15071"},{"id":"14852","value":"200 EXC 2007 (EU)","parent_id":"14846"},{"id":"15510","value":"200 EXC 2008 (EU)","parent_id":"14985"},{"id":"15557","value":"200 EXC 2009 (EU)","parent_id":"14736"},{"id":"15603","value":"200 EXC 2010 (EU)","parent_id":"14733"},{"id":"15070","value":"200 EXC 2011 (EU)","parent_id":"14769"},{"id":"16340","value":"200 EXC 2012 (EU)","parent_id":"14746"},{"id":"15776","value":"200 EXC 2013 (EU)","parent_id":"14748"},{"id":"14896","value":"200 EXC 2014 (EU)","parent_id":"14758"},{"id":"14901","value":"200 EXC 2015 (EU)","parent_id":"14773"},{"id":"14903","value":"200 EXC 2016 (EU)","parent_id":"14775"}
11712,{"id":"15049","value":"200 EXC 99 (EU)","parent_id":"15048"},{"id":"16431","value":"200 SX 2003 (EU)","parent_id":"14920"},{"id":"16053","value":"200 SX 2004 (EU)","parent_id":"14812"},{"id":"30365","value":"250 ADVENTURE BLACK - B.D. 2020 (EU)","parent_id":"14863"},{"id":"16819","value":"250 ADVENTURE BLACK - B.D. 2021 (EU)","parent_id":"15038"},{"id":"17202","value":"250 ADVENTURE BLUE - B.D. 2022 (EU)","parent_id":"15040"},{"id":"32495","value":"250 ADVENTURE BLUE - B.D. 2023 (EU)","parent_id":"17270"},{"id":"33124","value":"250 ADVENTURE BLUE - B.D. 2024 (EU)","parent_id":"32421"},{"id":"17192","value":"250 ADVENTURE BLUE - B.D. LS 2022 (EU)","parent_id":"15040"},{"id":"32496","value":"250 ADVENTURE BLUE - B.D. LS 2023 (EU)","parent_id":"17270"},{"id":"33125","value":"250 ADVENTURE GREY - B.D. 2024 (EU)","parent_id":"32421"},{"id":"30366","value":"250 ADVENTURE ORANGE - B.D. 2020 (EU)","parent_id":"14863"},{"id":"15293","value":"250 ADVENTURE ORANGE - B.D. 2021 (EU)","parent_id":"15038"},{"id":"17195","value":"250 ADVENTURE ORANGE - B.D. 2022 (EU)","parent_id":"15040"},{"id":"32497","value":"250 ADVENTURE ORANGE - B.D. 2023 (EU)","parent_id":"17270"},{"id":"17199","value":"250 ADVENTURE ORANGE - B.D. LS 2022 (EU)","parent_id":"15040"},{"id":"33189","value":"250 ADVENTURE ORANGE - B.D. LS 2023 (EU)","parent_id":"17270"},{"id":"16270","value":"250 DUKE BL. ABS B.D. 15 (EU)","parent_id":"14773"},{"id":"16277","value":"250 DUKE BL. ABS B.D. 16 (EU)","parent_id":"14775"}
11712,{"id":"16187","value":"250 DUKE BLACK - B.D. 2021 (EU)","parent_id":"15038"},{"id":"17180","value":"250 DUKE BLACK - B.D. 2022 (EU)","parent_id":"15040"},{"id":"32441","value":"250 DUKE BLACK - B.D. 2023","parent_id":"17270"},{"id":"32442","value":"250 DUKE BLACK - B.D. 2023 (EU)","parent_id":"17270"},{"id":"45871","value":"250 DUKE BLACK - B.D. 2026","parent_id":"41435"},{"id":"17184","value":"250 DUKE BLACK - B.D. LS 2022 (EU)","parent_id":"15040"},{"id":"32436","value":"250 DUKE BLACK 2 - B.D. 2023","parent_id":"17270"},{"id":"32437","value":"250 DUKE BLACK 2 - B.D. 2023 (EU)","parent_id":"17270"},{"id":"32438","value":"250 DUKE BLACK 2 W\/O ABS-B.D. 2023","parent_id":"17270"},{"id":"32439","value":"250 DUKE BLACK 2 W\/O ABS-B.D. 2023 (EU)","parent_id":"17270"},{"id":"17276","value":"250 DUKE BLACK 2022","parent_id":"15040"},{"id":"17188","value":"250 DUKE BLACK W\/O ABS-B.D. 2022 (EU)","parent_id":"15040"},{"id":"32440","value":"250 DUKE BLACK W\/O ABS-B.D. 2023 (EU)","parent_id":"17270"},{"id":"16200","value":"250 DUKE ORANGE - B.D. 2018 (EU)","parent_id":"14738"},{"id":"16182","value":"250 DUKE ORANGE - B.D. 2019 (EU)","parent_id":"14740"},{"id":"16205","value":"250 DUKE ORANGE - B.D. 2020 (EU)","parent_id":"14863"},{"id":"33184","value":"250 DUKE ORANGE - B.D. 2024 (EU)","parent_id":"32421"},{"id":"41535","value":"250 DUKE ORANGE - NHD - B.D. 2025 (EU)","parent_id":"33058"},{"id":"16218","value":"250 DUKE ORANGE B.D. 17 (EU)","parent_id":"14729"},{"id":"16809","value":"250 DUKE ORANGE W\/O ABS-B.D. 17 (EU)","parent_id":"14729"},{"id":"16811","value":"250 DUKE ORANGE W\/O ABS-B.D. 2018 (EU)","parent_id":"14738"},{"id":"16813","value":"250 DUKE ORANGE W\/O ABS-B.D. 2019 (EU)","parent_id":"14740"},{"id":"16257","value":"250 DUKE ORANGE W\/O ABS-B.D. 2020 (EU)","parent_id":"14863"},{"id":"16787","value":"250 DUKE SILVER - B.D. 2021 (EU)","parent_id":"15038"},{"id":"17189","value":"250 DUKE SILVER - B.D. 2022 (EU)","parent_id":"15040"},{"id":"45872","value":"250 DUKE SILVER - B.D. 2026","parent_id":"41435"},{"id":"17183","value":"250 DUKE SILVER - B.D. LS 2022 (EU)","parent_id":"15040"},{"id":"17277","value":"250 DUKE SILVER 2022","parent_id":"15040"},{"id":"17187","value":"250 DUKE SILVER W\/O ABS-B.D. 2022 (EU)","parent_id":"15040"},{"id":"16755","value":"250 DUKE WH. ABS B.D. 15 (EU)","parent_id":"14773"},{"id":"16808","value":"250 DUKE WH. ABS B.D. 16 (EU)","parent_id":"14775"}
11712,{"id":"16783","value":"250 DUKE WHITE - B.D. 17 (EU)","parent_id":"14729"},{"id":"16216","value":"250 DUKE WHITE - B.D. 2018 (EU)","parent_id":"14738"},{"id":"16784","value":"250 DUKE WHITE - B.D. 2019 (EU)","parent_id":"14740"},{"id":"16785","value":"250 DUKE WHITE - B.D. 2020 (EU)","parent_id":"14863"},{"id":"33185","value":"250 DUKE WHITE - B.D. 2024 (EU)","parent_id":"32421"},{"id":"40814","value":"250 DUKE WHITE - B.D. 2025 (RW)","parent_id":"33058"},{"id":"41536","value":"250 DUKE WHITE - NHD - B.D. 2025 (EU)","parent_id":"33058"},{"id":"16810","value":"250 DUKE WHITE W\/O ABS-B.D. 17 (EU)","parent_id":"14729"},{"id":"16812","value":"250 DUKE WHITE W\/O ABS-B.D. 2018 (EU)","parent_id":"14738"},{"id":"16814","value":"250 DUKE WHITE W\/O ABS-B.D. 2019 (EU)","parent_id":"14740"},{"id":"16815","value":"250 DUKE WHITE W\/O ABS-B.D. 2020 (EU)","parent_id":"14863"},{"id":"16405","value":"250 E-XC (EU)","parent_id":"15319"},{"id":"40738","value":"250 EGS 11KW '99 (EU)","parent_id":"15048"},{"id":"15097","value":"250 EGS 11KW (EU)","parent_id":"14940"}
11712,{"id":"15106","value":"250 EGS 11KW 99 (EU)","parent_id":"15048"},{"id":"33345","value":"250 EGS M\/\u00d6 12KW (EU)","parent_id":"14826"},{"id":"33328","value":"250 EGS M\/\u00d6 12KW (FR)","parent_id":"14935"},{"id":"16525","value":"250 EGS M\/U00D6 12KW (EU)","parent_id":"14935"},{"id":"40760","value":"250 EXC '98 (EU)","parent_id":"14940"},{"id":"40739","value":"250 EXC '99 (EU)","parent_id":"15048"},{"id":"16349","value":"250 EXC 2000 (EU)","parent_id":"15051"},{"id":"15718","value":"250 EXC 2001 (EU)","parent_id":"14841"},{"id":"15318","value":"250 EXC 2002 (EU)","parent_id":"15208"},{"id":"15727","value":"250 EXC 2003 (EU)","parent_id":"14920"},{"id":"16047","value":"250 EXC 2004 (EU)","parent_id":"14812"},{"id":"15065","value":"250 EXC 2005 (EU)","parent_id":"14946"},{"id":"15206","value":"250 EXC 2006 (EU)","parent_id":"15071"},{"id":"14848","value":"250 EXC 2007 (EU)","parent_id":"14846"},{"id":"15297","value":"250 EXC 2008 (EU)","parent_id":"14985"},{"id":"15467","value":"250 EXC 2009 (EU)","parent_id":"14736"}
11712,{"id":"14998","value":"250 EXC 2010 (EU)","parent_id":"14733"},{"id":"15001","value":"250 EXC 2011 (EU)","parent_id":"14769"},{"id":"15606","value":"250 EXC 2012 (EU)","parent_id":"14746"},{"id":"15246","value":"250 EXC 2013 (EU)","parent_id":"14748"},{"id":"14885","value":"250 EXC 2014 (EU)","parent_id":"14758"},{"id":"14891","value":"250 EXC 2015 (EU)","parent_id":"14773"},{"id":"14897","value":"250 EXC 2016 (EU)","parent_id":"14775"},{"id":"15285","value":"250 EXC 2017 (EU)","parent_id":"14729"},{"id":"17286","value":"250 EXC 2023 (EU)","parent_id":"17270"},{"id":"32464","value":"250 EXC 2024 (EU)","parent_id":"32421"},{"id":"36496","value":"250 EXC 2025 (EU)","parent_id":"33058"},{"id":"15143","value":"250 EXC 98 (EU)","parent_id":"14940"},{"id":"15152","value":"250 EXC 99 (EU)","parent_id":"15048"},{"id":"36493","value":"250 EXC CHAMPION EDITION 2025","parent_id":"33058"},{"id":"41475","value":"250 EXC CHAMPION EDITION 2025 (EU)","parent_id":"33058"},{"id":"15004","value":"250 EXC E-STARTER 2010 (EU)","parent_id":"14733"},{"id":"15352","value":"250 EXC FACTORY 2005 (EU)","parent_id":"14946"}
11712,{"id":"15007","value":"250 EXC FACTORY EDIT. 2011 (EU)","parent_id":"14769"},{"id":"14906","value":"250 EXC FACTORY EDITION 2015 (EU)","parent_id":"14773"},{"id":"33115","value":"250 EXC M\/O (EU)","parent_id":"14935"},{"id":"15102","value":"250 EXC M\/U00D6 (EU)","parent_id":"14935"},{"id":"16351","value":"250 EXC RACING 2001 (EU)","parent_id":"14841"},{"id":"16382","value":"250 EXC RACING 2002 (EU)","parent_id":"15208"},{"id":"15946","value":"250 EXC RACING 2003 (EU)","parent_id":"14920"},{"id":"14822","value":"250 EXC RACING 2004 (EU)","parent_id":"14812"},{"id":"15952","value":"250 EXC RACING 2005 (EU)","parent_id":"14946"},{"id":"16348","value":"250 EXC RACING 2006 (EU)","parent_id":"15071"},{"id":"16523","value":"250 EXC RACING SIX DAYS 2002 (EU)","parent_id":"15208"},{"id":"15945","value":"250 EXC RACING SIX DAYS 2003 (EU)","parent_id":"14920"},{"id":"17287","value":"250 EXC SIX DAYS 2023 (EU)","parent_id":"17270"},{"id":"32474","value":"250 EXC SIX DAYS 2024 (EU)","parent_id":"32421"},{"id":"36498","value":"250 EXC SIX DAYS 2025 (EU)","parent_id":"33058"},{"id":"15892","value":"250 EXC SIX DAYS TPI 2018 (EU)","parent_id":"14738"},{"id":"15840","value":"250 EXC SIX DAYS TPI 2019 (EU)","parent_id":"14740"},{"id":"15712","value":"250 EXC SIX DAYS TPI 2020 (EU)","parent_id":"14863"},{"id":"15713","value":"250 EXC SIX DAYS TPI 2021 (EU)","parent_id":"15038"},{"id":"15919","value":"250 EXC SIX DAYS TPI 2022 (EU)","parent_id":"15040"},{"id":"15717","value":"250 EXC SIX-DAYS 2001 (EU)","parent_id":"14841"}
11712,{"id":"15314","value":"250 EXC SIX-DAYS 2002 (EU)","parent_id":"15208"},{"id":"15726","value":"250 EXC SIX-DAYS 2003 (EU)","parent_id":"14920"},{"id":"16049","value":"250 EXC SIX-DAYS 2004 (EU)","parent_id":"14812"},{"id":"15062","value":"250 EXC SIX-DAYS 2005 (EU)","parent_id":"14946"},{"id":"15201","value":"250 EXC SIX-DAYS 2006 (EU)","parent_id":"15071"},{"id":"15204","value":"250 EXC SIX-DAYS 2007 (EU)","parent_id":"14846"},{"id":"15296","value":"250 EXC SIX-DAYS 2008 (EU)","parent_id":"14985"},{"id":"15404","value":"250 EXC SIX-DAYS 2009 (EU)","parent_id":"14736"},{"id":"14995","value":"250 EXC SIX-DAYS 2010 (EU)","parent_id":"14733"},{"id":"14997","value":"250 EXC SIX-DAYS 2011 (EU)","parent_id":"14769"},{"id":"15016","value":"250 EXC SIX-DAYS 2012 (EU)","parent_id":"14746"},{"id":"15019","value":"250 EXC SIX-DAYS 2013 (EU)","parent_id":"14748"},{"id":"15253","value":"250 EXC SIX-DAYS 2014 (EU)","parent_id":"14758"},{"id":"15247","value":"250 EXC SIX-DAYS 2015 (EU)","parent_id":"14773"},{"id":"15249","value":"250 EXC SIX-DAYS 2016 (EU)","parent_id":"14775"}
11712,{"id":"15803","value":"250 EXC SIX-DAYS 2017 (EU)","parent_id":"14729"},{"id":"15280","value":"250 EXC TPI 2018 (EU)","parent_id":"14738"},{"id":"15766","value":"250 EXC TPI 2019 (EU)","parent_id":"14740"},{"id":"15801","value":"250 EXC TPI 2020 (EU)","parent_id":"14863"},{"id":"15836","value":"250 EXC TPI 2021 (EU)","parent_id":"15038"},{"id":"15878","value":"250 EXC TPI 2022 (EU)","parent_id":"15040"},{"id":"16395","value":"250 EXC-F 2006 (EU)","parent_id":"15071"},{"id":"14849","value":"250 EXC-F 2007 (EU)","parent_id":"14846"},{"id":"15438","value":"250 EXC-F 2008 (EU)","parent_id":"14985"},{"id":"15482","value":"250 EXC-F 2009 (EU)","parent_id":"14736"},{"id":"14999","value":"250 EXC-F 2010 (EU)","parent_id":"14733"},{"id":"15003","value":"250 EXC-F 2011 (EU)","parent_id":"14769"},{"id":"15291","value":"250 EXC-F 2012 (EU)","parent_id":"14746"},{"id":"14953","value":"250 EXC-F 2013 (EU)","parent_id":"14748"},{"id":"14890","value":"250 EXC-F 2014 (EU)","parent_id":"14758"},{"id":"14894","value":"250 EXC-F 2015 (EU)","parent_id":"14773"},{"id":"14900","value":"250 EXC-F 2016 (EU)","parent_id":"14775"}
11712,{"id":"14980","value":"250 EXC-F 2017 (EU)","parent_id":"14729"},{"id":"14983","value":"250 EXC-F 2018 (EU)","parent_id":"14738"},{"id":"14961","value":"250 EXC-F 2019 (EU)","parent_id":"14740"},{"id":"15332","value":"250 EXC-F 2020 (EU)","parent_id":"14863"},{"id":"15335","value":"250 EXC-F 2021 (EU)","parent_id":"15038"},{"id":"15336","value":"250 EXC-F 2022 (EU)","parent_id":"15040"},{"id":"17272","value":"250 EXC-F 2023 (EU)","parent_id":"17270"},{"id":"32483","value":"250 EXC-F 2024 (EU)","parent_id":"32421"},{"id":"36535","value":"250 EXC-F 2025 (EU)","parent_id":"33058"},{"id":"41438","value":"250 EXC-F 2026 (EU)","parent_id":"41435"},{"id":"41443","value":"250 EXC-F 6DAYS 2026 (EU)","parent_id":"41435"},{"id":"15586","value":"250 EXC-F CHAMPION EDIT. 2010 (EU)","parent_id":"14733"},{"id":"36528","value":"250 EXC-F CHAMPION EDITION 2025","parent_id":"33058"},{"id":"40780","value":"250 EXC-F CHAMPION EDITION 2025 (EU)","parent_id":"33058"},{"id":"14992","value":"250 EXC-F FACTORY EDIT. 2011 (EU)","parent_id":"14769"},{"id":"14908","value":"250 EXC-F FACTORY EDITION 2015 (EU)","parent_id":"14773"},{"id":"15433","value":"250 EXC-F SIX DAYS 2007 (EU)","parent_id":"14846"}
11712,{"id":"15478","value":"250 EXC-F SIX DAYS 2008 (EU)","parent_id":"14985"},{"id":"15529","value":"250 EXC-F SIX DAYS 2009 (EU)","parent_id":"14736"},{"id":"15002","value":"250 EXC-F SIX DAYS 2010 (EU)","parent_id":"14733"},{"id":"15005","value":"250 EXC-F SIX DAYS 2011 (EU)","parent_id":"14769"},{"id":"15010","value":"250 EXC-F SIX DAYS 2012 (EU)","parent_id":"14746"},{"id":"14954","value":"250 EXC-F SIX DAYS 2013 (EU)","parent_id":"14748"},{"id":"14895","value":"250 EXC-F SIX DAYS 2014 (EU)","parent_id":"14758"},{"id":"14899","value":"250 EXC-F SIX DAYS 2015 (EU)","parent_id":"14773"},{"id":"14902","value":"250 EXC-F SIX DAYS 2016 (EU)","parent_id":"14775"},{"id":"14982","value":"250 EXC-F SIX DAYS 2017 (EU)","parent_id":"14729"},{"id":"14962","value":"250 EXC-F SIX DAYS 2018 (EU)","parent_id":"14738"},{"id":"14965","value":"250 EXC-F SIX DAYS 2019 (EU)","parent_id":"14740"},{"id":"15334","value":"250 EXC-F SIX DAYS 2020 (EU)","parent_id":"14863"},{"id":"15337","value":"250 EXC-F SIX DAYS 2021 (EU)","parent_id":"15038"},{"id":"15338","value":"250 EXC-F SIX DAYS 2022 (EU)","parent_id":"15040"},{"id":"17271","value":"250 EXC-F SIX DAYS 2023 (EU)","parent_id":"17270"},{"id":"32453","value":"250 EXC-F SIX DAYS 2024 (EU)","parent_id":"32421"},{"id":"36533","value":"250 EXC-F SIX DAYS 2025 (EU)","parent_id":"33058"},{"id":"40765","value":"250 SX '98 (EU)","parent_id":"14940"},{"id":"40744","value":"250 SX '99 (EU)","parent_id":"15048"},{"id":"16341","value":"250 SX 2000 (EU)","parent_id":"15051"},{"id":"16329","value":"250 SX 2001 (EU)","parent_id":"14841"}
11712,{"id":"16331","value":"250 SX 2002 (EU)","parent_id":"15208"},{"id":"16458","value":"250 SX 2003 (EU)","parent_id":"14920"},{"id":"16050","value":"250 SX 2004 (EU)","parent_id":"14812"},{"id":"15066","value":"250 SX 2005 (EU)","parent_id":"14946"},{"id":"15195","value":"250 SX 2006 (EU)","parent_id":"15071"},{"id":"15444","value":"250 SX 2007 (EU)","parent_id":"14846"},{"id":"15299","value":"250 SX 2008 (EU)","parent_id":"14985"},{"id":"15528","value":"250 SX 2009 (EU)","parent_id":"14736"},{"id":"16359","value":"250 SX 2010 (EU)","parent_id":"14733"},{"id":"15607","value":"250 SX 2011 (EU)","parent_id":"14769"},{"id":"15650","value":"250 SX 2012 (EU)","parent_id":"14746"},{"id":"15743","value":"250 SX 2013 (EU)","parent_id":"14748"},{"id":"15767","value":"250 SX 2014 (EU)","parent_id":"14758"},{"id":"15792","value":"250 SX 2015 (EU)","parent_id":"14773"},{"id":"15830","value":"250 SX 2016 (EU)","parent_id":"14775"},{"id":"15861","value":"250 SX 2017 (EU)","parent_id":"14729"},{"id":"16386","value":"250 SX 2018 (EU)","parent_id":"14738"},{"id":"16042","value":"250 SX 2019 (EU)","parent_id":"14740"},{"id":"16041","value":"250 SX 2020 (EU)","parent_id":"14863"},{"id":"16411","value":"250 SX 2021 (EU)","parent_id":"15038"},{"id":"16412","value":"250 SX 2022 (EU)","parent_id":"15040"},{"id":"32473","value":"250 SX 2023 (EU)","parent_id":"17270"},{"id":"32461","value":"250 SX 2024 (EU)","parent_id":"32421"},{"id":"33081","value":"250 SX 2025 (EU)","parent_id":"33058"},{"id":"41488","value":"250 SX 2026","parent_id":"41435"},{"id":"45858","value":"250 SX 2027","parent_id":"45841"}
11712,{"id":"15098","value":"250 SX 98 (EU)","parent_id":"14940"},{"id":"15108","value":"250 SX 99 (EU)","parent_id":"15048"},{"id":"33117","value":"250 SX M\/O (EU)","parent_id":"14935"},{"id":"16529","value":"250 SX M\/U00D6 (EU)","parent_id":"14935"},{"id":"16498","value":"250 SX-F 2005 (EU)","parent_id":"14946"},{"id":"16416","value":"250 SX-F 2006 (EU)","parent_id":"15071"},{"id":"15474","value":"250 SX-F 2007 (EU)","parent_id":"14846"},{"id":"15524","value":"250 SX-F 2008 (EU)","parent_id":"14985"},{"id":"15563","value":"250 SX-F 2009 (EU)","parent_id":"14736"},{"id":"15604","value":"250 SX-F 2010 (EU)","parent_id":"14733"},{"id":"15651","value":"250 SX-F 2011 (EU)","parent_id":"14769"},{"id":"15397","value":"250 SX-F 2012 (EU)","parent_id":"14746"},{"id":"15779","value":"250 SX-F 2013 (EU)","parent_id":"14748"},{"id":"15816","value":"250 SX-F 2014 (EU)","parent_id":"14758"},{"id":"15854","value":"250 SX-F 2015 (EU)","parent_id":"14773"},{"id":"15884","value":"250 SX-F 2016 (EU)","parent_id":"14775"},{"id":"16062","value":"250 SX-F 2017 (EU)","parent_id":"14729"},{"id":"15735","value":"250 SX-F 2018 (EU)","parent_id":"14738"},{"id":"15765","value":"250 SX-F 2019 (EU)","parent_id":"14740"},{"id":"15796","value":"250 SX-F 2020 (EU)","parent_id":"14863"},{"id":"15835","value":"250 SX-F 2021 (EU)","parent_id":"15038"},{"id":"17260","value":"250 SX-F 2022","parent_id":"15040"},{"id":"32481","value":"250 SX-F 2023 (EU)","parent_id":"17270"},{"id":"32466","value":"250 SX-F 2024 (EU)","parent_id":"32421"},{"id":"33077","value":"250 SX-F 2025 (EU)","parent_id":"33058"},{"id":"41479","value":"250 SX-F 2026 (EU)","parent_id":"41435"},{"id":"45849","value":"250 SX-F 2027","parent_id":"45841"},{"id":"33082","value":"250 SX-F ADAMO EDITION 2025","parent_id":"33058"},{"id":"15620","value":"250 SX-F FACT.REPL.MUSQ. ED 10 (EU)","parent_id":"14733"},{"id":"15659","value":"250 SX-F MUSQUIN REPLICA 11 (EU)","parent_id":"14769"},{"id":"15755","value":"250 SX-F PRADO 2020 (EU)","parent_id":"14863"},{"id":"15458","value":"250 SX-F ROCZEN REPLICA 12 (EU)","parent_id":"14746"},{"id":"15827","value":"250 SX-F TROY LEE DESIGNS 2021 (EU)","parent_id":"15038"},{"id":"33305","value":"250 SXS 2000 (EU)","parent_id":"15051"},{"id":"16335","value":"250 SXS 2001 (EU)","parent_id":"14841"}
11712,{"id":"16459","value":"250 SXS 2003 (EU)","parent_id":"14920"},{"id":"16043","value":"250 SXS 2004 (EU)","parent_id":"14812"},{"id":"15059","value":"250 SXS 2005 (EU)","parent_id":"14946"},{"id":"16396","value":"250 SXS 2006 (EU)","parent_id":"15071"},{"id":"15496","value":"250 SXS 2007 (EU)","parent_id":"14846"},{"id":"33267","value":"250 SXS 2008 (EU)","parent_id":"14985"},{"id":"33315","value":"250 SXS 2009","parent_id":"14736"},{"id":"15555","value":"250 SXS-F 2007 (EU)","parent_id":"14846"},{"id":"15601","value":"250 SXS-F 2008 (EU)","parent_id":"14985"},{"id":"33233","value":"250 SXS-F 2009","parent_id":"14736"},{"id":"33226","value":"250 SXS-F 2010","parent_id":"14733"},{"id":"33268","value":"250 XC 2007 (EU)","parent_id":"14846"},{"id":"41451","value":"250 XC 2011 (EU US)","parent_id":"14769"},{"id":"14770","value":"250 XC 2011 (EU\/US)","parent_id":"14769"},{"id":"41453","value":"250 XC 2012 (EU US)","parent_id":"14746"},{"id":"14771","value":"250 XC 2012 (EU\/US)","parent_id":"14746"},{"id":"41455","value":"250 XC 2013 
11712(EU US)","parent_id":"14748"},{"id":"15927","value":"250 XC 2013 (EU\/US)","parent_id":"14748"},{"id":"14759","value":"250 XC 2014 (EU\/US)","parent_id":"14758"},{"id":"16358","value":"250 XC 2015 (EU\/US)","parent_id":"14773"},{"id":"15793","value":"250 XC 2016 (EU\/US)","parent_id":"14775"},{"id":"33060","value":"250 XC 2025","parent_id":"33058"},{"id":"33085","value":"250 XC-F 2025","parent_id":"33058"},{"id":"41437","value":"250 XC-W 2026 (EU)","parent_id":"41435"},{"id":"15721","value":"300 E-GS WP (EU)","parent_id":"14913"},{"id":"15722","value":"300 E-GS WP (FR)","parent_id":"14913"},{"id":"16404","value":"300 E-XC MARZ. (EU)","parent_id":"15319"},{"id":"33355","value":"300 E-XC MARZ\/\u00d6HL (EU)","parent_id":"14913"},{"id":"15723","value":"300 E-XC MARZ\/U00D6HL (EU)","parent_id":"14913"},{"id":"15720","value":"300 E-XC WP (EU)","parent_id":"14913"},{"id":"40740","value":"300 EGS 10KW '99 (EU)","parent_id":"15048"},{"id":"15132","value":"300 EGS 10KW (EU)","parent_id":"14940"},{"id":"15139","value":"300 EGS 10KW 99 (EU)","parent_id":"15048"},{"id":"33197","value":"300 EGS M\/O 12KW (EU)","parent_id":"14826"},{"id":"33194","value":"300 EGS M\/O 13LT (EU)","parent_id":"14826"},{"id":"33332","value":"300 EGS M\/\u00d6 16KW (FR)","parent_id":"14935"},{"id":"16526","value":"300 EGS M\/U00D6 12KW (EU)","parent_id":"14935"},{"id":"14830","value":"300 EGS M\/U00D6 13LT (EU)","parent_id":"14826"},{"id":"40741","value":"300 EXC '99 (EU)","parent_id":"15048"},{"id":"15127","value":"300 EXC (EU)","parent_id":"14940"}
11712,{"id":"16354","value":"300 EXC 2000 (EU)","parent_id":"15051"},{"id":"15715","value":"300 EXC 2001 (EU)","parent_id":"14841"},{"id":"15316","value":"300 EXC 2002 (EU)","parent_id":"15208"},{"id":"15725","value":"300 EXC 2003 (EU)","parent_id":"14920"},{"id":"16044","value":"300 EXC 2004 (EU)","parent_id":"14812"},{"id":"15063","value":"300 EXC 2005 (EU)","parent_id":"14946"},{"id":"15203","value":"300 EXC 2006 (EU)","parent_id":"15071"},{"id":"14860","value":"300 EXC 2007 (EU)","parent_id":"14846"},{"id":"15399","value":"300 EXC 2009 (EU)","parent_id":"14736"},{"id":"14994","value":"300 EXC 2010 (EU)","parent_id":"14733"},{"id":"14996","value":"300 EXC 2011 (EU)","parent_id":"14769"},{"id":"15538","value":"300 EXC 2012 (EU)","parent_id":"14746"},{"id":"15252","value":"300 EXC 2013 (EU)","parent_id":"14748"},{"id":"14907","value":"300 EXC 2014 (EU)","parent_id":"14758"},{"id":"14911","value":"300 EXC 2015 (EU)","parent_id":"14773"},{"id":"14888","value":"300 EXC 2016 (EU)","parent_id":"14775"},{"id":"15284","value":"300 EXC 2017 (EU)","parent_id":"14729"},{"id":"17292","value":"300 EXC 2023 (EU)","parent_id":"17270"},{"id":"32476","value":"300 EXC 2024 (EU)","parent_id":"32421"},{"id":"36497","value":"300 EXC 2025 (EU)","parent_id":"33058"},{"id":"41441","value":"300 EXC 2026 (EU)","parent_id":"41435"},{"id":"41446","value":"300 EXC 6DAYS 2026 (EU)","parent_id":"41435"},{"id":"15138","value":"300 EXC 99 (EU)","parent_id":"15048"},{"id":"36499","value":"300 EXC CHAMPION EDITION 2025 (EU)","parent_id":"33058"},{"id":"41449","value":"300 EXC CHAMPION EDITION 2026 (EU)","parent_id":"41435"},{"id":"15831","value":"300 EXC CKD 2021 (EU)","parent_id":"15038"},{"id":"32429","value":"300 EXC ERZBERGRODEO 2023 (EU)","parent_id":"17270"},{"id":"15000","value":"300 EXC FACTORY EDIT. 2011 (EU)","parent_id":"14769"},{"id":"14898","value":"300 EXC FACTORY EDITION 2015 (EU)","parent_id":"14773"},{"id":"32447","value":"300 EXC HARDENDURO 2024 (EU)","parent_id":"32421"},{"id":"36495","value":"300 EXC HARDENDURO 2025 (EU)","parent_id":"33058"},{"id":"41448","value":"300 EXC HARDENDURO 2026 (EU)","parent_id":"41435"},{"id":"33192","value":"300 EXC M\/O (EU)","parent_id":"14826"}
11712,{"id":"16527","value":"300 EXC M\/U00D6 (EU)","parent_id":"14935"},{"id":"17293","value":"300 EXC SIX DAYS 2023 (EU)","parent_id":"17270"},{"id":"32459","value":"300 EXC SIX DAYS 2024 (EU)","parent_id":"32421"},{"id":"36492","value":"300 EXC SIX DAYS 2025 (EU)","parent_id":"33058"},{"id":"15822","value":"300 EXC SIX DAYS TPI 2018 (EU)","parent_id":"14738"},{"id":"15899","value":"300 EXC SIX DAYS TPI 2019 (EU)","parent_id":"14740"},{"id":"15714","value":"300 EXC SIX DAYS TPI 2020 (EU)","parent_id":"14863"},{"id":"15711","value":"300 EXC SIX DAYS TPI 2021 (EU)","parent_id":"15038"},{"id":"15785","value":"300 EXC SIX DAYS TPI 2022 (EU)","parent_id":"15040"},{"id":"15719","value":"300 EXC SIX-DAYS 2001 (EU)","parent_id":"14841"},{"id":"15315","value":"300 EXC SIX-DAYS 2002 (EU)","parent_id":"15208"},{"id":"15724","value":"300 EXC SIX-DAYS 2003 (EU)","parent_id":"14920"},{"id":"33243","value":"300 EXC SIX-DAYS 2004 (EU)","parent_id":"14812"},{"id":"15060","value":"300 EXC SIX-DAYS 2005 (EU)","parent_id":"14946"},{"id":"15198","value":"300 EXC SIX-DAYS 2006 (EU)","parent_id":"15071"},{"id":"15199","value":"300 EXC SIX-DAYS 2007 (EU)","parent_id":"14846"}
11712,{"id":"15567","value":"300 EXC SIX-DAYS 2009 (EU)","parent_id":"14736"},{"id":"15020","value":"300 EXC SIX-DAYS 2012 (EU)","parent_id":"14746"},{"id":"15021","value":"300 EXC SIX-DAYS 2013 (EU)","parent_id":"14748"},{"id":"15248","value":"300 EXC SIX-DAYS 2014 (EU)","parent_id":"14758"},{"id":"15250","value":"300 EXC SIX-DAYS 2015 (EU)","parent_id":"14773"},{"id":"15251","value":"300 EXC SIX-DAYS 2016 (EU)","parent_id":"14775"},{"id":"15860","value":"300 EXC SIX-DAYS 2017 (EU)","parent_id":"14729"},{"id":"15282","value":"300 EXC TPI 2018 (EU)","parent_id":"14738"},{"id":"15810","value":"300 EXC TPI 2019 (EU)","parent_id":"14740"},{"id":"15851","value":"300 EXC TPI 2020 (EU)","parent_id":"14863"},{"id":"15885","value":"300 EXC TPI 2021 (EU)","parent_id":"15038"},{"id":"15921","value":"300 EXC TPI 2022 (EU)","parent_id":"15040"},{"id":"15811","value":"300 EXC TPI ERZBERGRODEO 2020 (EU)","parent_id":"14863"},{"id":"15848","value":"300 EXC TPI ERZBERGRODEO 2021 (EU)","parent_id":"15038"},{"id":"15886","value":"300 EXC TPI ERZBERGRODEO 2022 (EU)","parent_id":"15040"},{"id":"14851","value":"300 EXC-E 2007 (EU)","parent_id":"14846"}
11712,{"id":"15298","value":"300 EXC-E 2008 (EU)","parent_id":"14985"},{"id":"15300","value":"300 EXC-E SIX-DAYS 2008 (EU)","parent_id":"14985"},{"id":"15006","value":"300 EXC-E SIX-DAYS 2010 (EU)","parent_id":"14733"},{"id":"14993","value":"300 EXC-E SIX-DAYS 2011 (EU)","parent_id":"14769"},{"id":"33191","value":"300 SIX-DAYS M\/O (EU)","parent_id":"14826"},{"id":"14831","value":"300 SIX-DAYS M\/U00D6 (EU)","parent_id":"14826"},{"id":"32472","value":"300 SX 2023 (EU)","parent_id":"17270"},{"id":"32482","value":"300 SX 2024 (EU)","parent_id":"32421"},{"id":"33084","value":"300 SX 2025 (EU)","parent_id":"33058"},{"id":"41483","value":"300 SX 2026 (EU)","parent_id":"41435"},{"id":"45854","value":"300 SX 2027","parent_id":"45841"},{"id":"41452","value":"300 XC 2011 (EU US)","parent_id":"14769"},{"id":"14772","value":"300 XC 2011 (EU\/US)","parent_id":"14769"},{"id":"41454","value":"300 XC 2012 (EU US)","parent_id":"14746"},{"id":"14768","value":"300 XC 2012 (EU\/US)","parent_id":"14746"},{"id":"45880","value":"300 XC 2013 (EU US)","parent_id":"14748"},{"id":"15750","value":"300 XC 2013 (EU\/US)","parent_id":"14748"},{"id":"14760","value":"300 XC 2014 (EU\/US)","parent_id":"14758"},{"id":"15813","value":"300 XC 2015 (EU\/US)","parent_id":"14773"},{"id":"15849","value":"300 XC 2016 (EU\/US)","parent_id":"14775"},{"id":"33059","value":"300 XC 2025","parent_id":"33058"},{"id":"36494","value":"300 XC-W CHAMPION EDITION 2025","parent_id":"33058"},{"id":"15320","value":"350 E-XC 20KW\/SUP.COM (EU)","parent_id":"15319"},{"id":"15321","value":"350 E-XC 4T (EU)","parent_id":"15319"},{"id":"33295","value":"350 E-XC 4T MARZ. (EU)","parent_id":"15319"},{"id":"15503","value":"350 EXC-F 2012 (EU)","parent_id":"14746"},{"id":"14955","value":"350 EXC-F 2013 (EU)","parent_id":"14748"},{"id":"14904","value":"350 EXC-F 2014 (EU)","parent_id":"14758"},{"id":"14909","value":"350 EXC-F 2015 (EU)","parent_id":"14773"},{"id":"14886","value":"350 EXC-F 2016 (EU)","parent_id":"14775"}
11712,{"id":"14969","value":"350 EXC-F 2017 (EU)","parent_id":"14729"},{"id":"14974","value":"350 EXC-F 2018 (EU)","parent_id":"14738"},{"id":"14978","value":"350 EXC-F 2019 (EU)","parent_id":"14740"},{"id":"15339","value":"350 EXC-F 2020 (EU)","parent_id":"14863"},{"id":"15328","value":"350 EXC-F 2021 (EU)","parent_id":"15038"},{"id":"15330","value":"350 EXC-F 2022 (EU)","parent_id":"15040"},{"id":"32425","value":"350 EXC-F 2023 (EU)","parent_id":"17270"},{"id":"32446","value":"350 EXC-F 2024 (EU)","parent_id":"32421"},{"id":"36532","value":"350 EXC-F 2025 (EU)","parent_id":"33058"},{"id":"41439","value":"350 EXC-F 2026 (EU)","parent_id":"41435"},{"id":"41444","value":"350 EXC-F 6DAYS 2026 (EU)","parent_id":"41435"},{"id":"36534","value":"350 EXC-F CHAMPION EDITION 2025","parent_id":"33058"},{"id":"40781","value":"350 EXC-F CHAMPION EDITION 2025 (EU)","parent_id":"33058"},{"id":"14892","value":"350 EXC-F FACTORY EDITION 2015 (EU)","parent_id":"14773"},{"id":"17258","value":"350 EXC-F FACTORY EDITION 2022 (EU)","parent_id":"15040"},{"id":"15014","value":"350 EXC-F SIX DAYS 2012 (EU)","parent_id":"14746"},{"id":"14956","value":"350 EXC-F SIX DAYS 2013 (EU)","parent_id":"14748"},{"id":"14905","value":"350 EXC-F SIX DAYS 2014 (EU)","parent_id":"14758"},{"id":"14910","value":"350 EXC-F SIX DAYS 2015 (EU)","parent_id":"14773"},{"id":"14887","value":"350 EXC-F SIX DAYS 2016 (EU)","parent_id":"14775"}
11712,{"id":"14970","value":"350 EXC-F SIX DAYS 2017 (EU)","parent_id":"14729"},{"id":"14975","value":"350 EXC-F SIX DAYS 2018 (EU)","parent_id":"14738"},{"id":"14979","value":"350 EXC-F SIX DAYS 2019 (EU)","parent_id":"14740"},{"id":"15340","value":"350 EXC-F SIX DAYS 2020 (EU)","parent_id":"14863"},{"id":"15329","value":"350 EXC-F SIX DAYS 2021 (EU)","parent_id":"15038"},{"id":"15331","value":"350 EXC-F SIX DAYS 2022 (EU)","parent_id":"15040"},{"id":"17290","value":"350 EXC-F SIX DAYS 2023","parent_id":"17270"},{"id":"17291","value":"350 EXC-F SIX DAYS 2023 (EU)","parent_id":"17270"},{"id":"32460","value":"350 EXC-F SIX DAYS 2024 (EU)","parent_id":"32421"},{"id":"36538","value":"350 EXC-F SIX DAYS 2025 (EU)","parent_id":"33058"},{"id":"41472","value":"350 EXC-F SIX DAYS CKD 2023","parent_id":"17270"},{"id":"15333","value":"350 EXC-F WESS 2021 (EU)","parent_id":"15038"},{"id":"33296","value":"350 SIX-DAYS (EU)","parent_id":"15319"},{"id":"15542","value":"350 SX-F 2011 (EU)","parent_id":"14769"},{"id":"15589","value":"350 SX-F 2012 (EU)","parent_id":"14746"},{"id":"15924","value":"350 SX-F 2013 (EU)","parent_id":"14748"},{"id":"15740","value":"350 SX-F 2014 (EU)","parent_id":"14758"},{"id":"15768","value":"350 SX-F 2015 (EU)","parent_id":"14773"},{"id":"15795","value":"350 SX-F 2016 (EU)","parent_id":"14775"}
11712,{"id":"15834","value":"350 SX-F 2017 (EU)","parent_id":"14729"},{"id":"15874","value":"350 SX-F 2018 (EU)","parent_id":"14738"},{"id":"15910","value":"350 SX-F 2019 (EU)","parent_id":"14740"},{"id":"15729","value":"350 SX-F 2020 (EU)","parent_id":"14863"},{"id":"15759","value":"350 SX-F 2021 (EU)","parent_id":"15038"},{"id":"15790","value":"350 SX-F 2022 (EU)","parent_id":"15040"},{"id":"32475","value":"350 SX-F 2023 (EU)","parent_id":"17270"},{"id":"32486","value":"350 SX-F 2024 (EU)","parent_id":"32421"},{"id":"33078","value":"350 SX-F 2025 (EU)","parent_id":"33058"},{"id":"41478","value":"350 SX-F 2026 (EU)","parent_id":"41435"},{"id":"45848","value":"350 SX-F 2027","parent_id":"45841"},{"id":"15506","value":"350 SX-F CAIROLI REPLICA 11 (EU)","parent_id":"14769"},{"id":"15558","value":"350 SX-F CAIROLI REPLICA 12 (EU)","parent_id":"14746"},{"id":"33086","value":"350 XC-F 2025","parent_id":"33058"},{"id":"33334","value":"360 EGS M\/\u00d6 175KW (EU)","parent_id":"14935"},{"id":"33196","value":"360 EGS M\/O 175KW (FR)","parent_id":"14826"}
11712,{"id":"15153","value":"360 EGS M\/U00D6 175KW (EU)","parent_id":"14935"},{"id":"14839","value":"360 EGS M\/U00D6 175KW (FR)","parent_id":"14826"},{"id":"33193","value":"360 EXC M\/O (EU)","parent_id":"14826"},{"id":"16528","value":"360 EXC M\/U00D6 (EU)","parent_id":"14935"},{"id":"33198","value":"360 SIX-DAYS M\/O (EU)","parent_id":"14826"},{"id":"14833","value":"360 SIX-DAYS M\/U00D6 (EU)","parent_id":"14826"},{"id":"33195","value":"360 SX M\/O (EU)","parent_id":"14826"},{"id":"16063","value":"360 SX M\/U00D6 (EU)","parent_id":"14935"},{"id":"40742","value":"380 EGS 8KW '99 (EU)","parent_id":"15048"},{"id":"15126","value":"380 EGS 8KW (EU)","parent_id":"14940"},{"id":"15133","value":"380 EGS 8KW 99 (EU)","parent_id":"15048"},{"id":"40743","value":"380 EXC '99 (EU)","parent_id":"15048"},{"id":"15140","value":"380 EXC (EU)","parent_id":"14940"},{"id":"16355","value":"380 EXC 2000 (EU)","parent_id":"15051"},{"id":"15716","value":"380 EXC 2001 (EU)","parent_id":"14841"},{"id":"15144","value":"380 EXC 99 (EU)","parent_id":"15048"},{"id":"40767","value":"380 SX '98 (EU)","parent_id":"14940"},{"id":"40746","value":"380 SX '99 (EU)","parent_id":"15048"},{"id":"16342","value":"380 SX 2000 (EU)","parent_id":"15051"},{"id":"16325","value":"380 SX 2001 (EU)","parent_id":"14841"}
11712,{"id":"16333","value":"380 SX 2002 (EU)","parent_id":"15208"},{"id":"15110","value":"380 SX 98 (EU)","parent_id":"14940"},{"id":"15118","value":"380 SX 99 (EU)","parent_id":"15048"},{"id":"17204","value":"390 ADVENTURE BLACK - B.D. 2022","parent_id":"15040"},{"id":"17191","value":"390 ADVENTURE BLACK - B.D. 2022 (EU)","parent_id":"15040"},{"id":"30361","value":"390 ADVENTURE BLACK - B.D. 2023","parent_id":"17270"},{"id":"30364","value":"390 ADVENTURE BLACK - B.D. 2023 (EU)","parent_id":"17270"},{"id":"33107","value":"390 ADVENTURE BLACK - B.D. 2024 (EU)","parent_id":"32421"},{"id":"32498","value":"390 ADVENTURE BLACK - NHD - B.D. 2023","parent_id":"17270"},{"id":"36483","value":"390 ADVENTURE BLACK - NHD - B.D. 2023 (EU)","parent_id":"17270"},{"id":"33114","value":"390 ADVENTURE BLACK - NHD - B.D. 2024 (EU)","parent_id":"32421"},{"id":"17205","value":"390 ADVENTURE BLACK 2022 (EU)","parent_id":"15040"},{"id":"30359","value":"390 ADVENTURE BLACK 2023","parent_id":"17270"},{"id":"30362","value":"390 ADVENTURE BLACK 2023 (EU)","parent_id":"17270"},{"id":"33112","value":"390 ADVENTURE BLACK 2024 (EU)","parent_id":"32421"}
11712,{"id":"16823","value":"390 ADVENTURE ORANGE - B.D. 2020 (EU)","parent_id":"14863"},{"id":"16826","value":"390 ADVENTURE ORANGE - B.D. 2021 (EU)","parent_id":"15038"},{"id":"17193","value":"390 ADVENTURE ORANGE - B.D. 2022","parent_id":"15040"},{"id":"17197","value":"390 ADVENTURE ORANGE - B.D. 2022 (EU)","parent_id":"15040"},{"id":"30350","value":"390 ADVENTURE ORANGE - B.D. 2023","parent_id":"17270"},{"id":"33102","value":"390 ADVENTURE ORANGE - B.D. 2023 (EU)","parent_id":"17270"},{"id":"16837","value":"390 ADVENTURE ORANGE - B.D. EU5 KR 2020 (EU)","parent_id":"14863"},{"id":"33269","value":"390 ADVENTURE ORANGE - B.D.\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 2020 (EU)","parent_id":"14863"},{"id":"41537","value":"390 ADVENTURE ORANGE - CKD 2020","parent_id":"14863"},{"id":"32433","value":"390 ADVENTURE ORANGE - NHD - B.D. 2023","parent_id":"17270"},{"id":"36485","value":"390 ADVENTURE ORANGE - NHD - B.D. 2023 (EU)","parent_id":"17270"},{"id":"16822","value":"390 ADVENTURE ORANGE 2020 (EU)","parent_id":"14863"},{"id":"16825","value":"390 ADVENTURE ORANGE 2021 (EU)","parent_id":"15038"},{"id":"17198","value":"390 ADVENTURE ORANGE 2022 (EU)","parent_id":"15040"},{"id":"30363","value":"390 ADVENTURE ORANGE 2023","parent_id":"17270"},{"id":"30351","value":"390 ADVENTURE ORANGE 2023 (EU)","parent_id":"17270"},{"id":"41554","value":"390 ADVENTURE R - B.D. 2025 (EU\/GB)","parent_id":"33058"},{"id":"45877","value":"390 ADVENTURE R - B.D. 2026","parent_id":"41435"},{"id":"41557","value":"390 ADVENTURE R - B.D. 2026 (EU\/GB)","parent_id":"41435"},{"id":"41555","value":"390 ADVENTURE R - NHD - B.D. 2025 (EU)","parent_id":"33058"},{"id":"41553","value":"390 ADVENTURE R 2025 (EU)","parent_id":"33058"},{"id":"41556","value":"390 ADVENTURE R 2026 (EU)","parent_id":"41435"},{"id":"33110","value":"390 ADVENTURE SPOKE W ORANGE - B.D.2024 (EU)","parent_id":"32421"},{"id":"30356","value":"390 ADVENTURE SPOKE W ORANGE 2023","parent_id":"17270"},{"id":"33103","value":"390 ADVENTURE SPOKE W ORANGE 2023 (EU)","parent_id":"17270"},{"id":"33111","value":"390 ADVENTURE SPOKE W ORANGE 2024 (EU)","parent_id":"32421"},{"id":"30352","value":"390 ADVENTURE SPOKE W ORANGE B.D. 2023","parent_id":"17270"},{"id":"33113","value":"390 ADVENTURE SPOKE W ORANGE B.D. 2023 (EU)","parent_id":"17270"},{"id":"33108","value":"390 ADVENTURE SPOKE W ORANGE-NHD-B.D.24 (EU)","parent_id":"32421"},{"id":"33104","value":"390 ADVENTURE SPOKE WORANGE NHD B.D. 23","parent_id":"17270"},{"id":"36484","value":"390 ADVENTURE SPOKE WORANGE NHD B.D. 23 (EU)","parent_id":"17270"},{"id":"16824","value":"390 ADVENTURE WHITE - B.D. 2020 (EU)","parent_id":"14863"},{"id":"15307","value":"390 ADVENTURE WHITE - B.D. 2021 (EU)","parent_id":"15038"},{"id":"33106","value":"390 ADVENTURE WHITE - B.D. 2024 (EU)","parent_id":"32421"},{"id":"33270","value":"390 ADVENTURE WHITE - B.D.\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 2020 (EU)","parent_id":"14863"},{"id":"33109","value":"390 ADVENTURE WHITE - NHD - B.D. 2024 (EU)","parent_id":"32421"}
11712,{"id":"15301","value":"390 ADVENTURE WHITE 2020 (EU)","parent_id":"14863"},{"id":"15304","value":"390 ADVENTURE WHITE 2021 (EU)","parent_id":"15038"},{"id":"33105","value":"390 ADVENTURE WHITE 2024 (EU)","parent_id":"32421"},{"id":"41539","value":"390 ADVENTURE X ORANGE - B.D. 2025 (EU\/GB)","parent_id":"33058"},{"id":"41545","value":"390 ADVENTURE X ORANGE - B.D. 2026 (EU\/GB)","parent_id":"41435"},{"id":"41540","value":"390 ADVENTURE X ORANGE -NHD- B.D. 2025 (EU)","parent_id":"33058"},{"id":"41538","value":"390 ADVENTURE X ORANGE 2025 (EU)","parent_id":"33058"},{"id":"41544","value":"390 ADVENTURE X ORANGE 2026 (EU)","parent_id":"41435"},{"id":"45875","value":"390 ADVENTURE X ORANGE-B.D. 2026","parent_id":"41435"},{"id":"41542","value":"390 ADVENTURE X WHITE - B.D. 2025 (EU\/GB)","parent_id":"33058"},{"id":"41547","value":"390 ADVENTURE X WHITE - B.D. 2026 (EU\/GB)","parent_id":"41435"},{"id":"41543","value":"390 ADVENTURE X WHITE - NHD - B.D. 2025 (EU)","parent_id":"33058"},{"id":"41541","value":"390 ADVENTURE X WHITE 2025 (EU)","parent_id":"33058"},{"id":"41546","value":"390 ADVENTURE X WHITE 2026 (EU)","parent_id":"41435"},{"id":"45876","value":"390 ADVENTURE X WHITE-B.D. 2026","parent_id":"41435"},{"id":"16756","value":"390 DUKE BL. ABS 2015 (EU)","parent_id":"14773"},{"id":"16762","value":"390 DUKE BL. ABS 2016 (EU)","parent_id":"14775"}
11712,{"id":"16757","value":"390 DUKE BL. ABS B.D. 15 (EU)","parent_id":"14773"},{"id":"16763","value":"390 DUKE BL. ABS B.D. 16 (EU)","parent_id":"14775"},{"id":"30332","value":"390 DUKE BLACK - B.D. 2023 (EU)","parent_id":"17270"},{"id":"45874","value":"390 DUKE BLACK - B.D. 2026 (EU\/GB)","parent_id":"41435"},{"id":"30373","value":"390 DUKE BLACK 2023 (EU)","parent_id":"17270"},{"id":"45873","value":"390 DUKE BLACK 2026 (EU)","parent_id":"41435"},{"id":"16759","value":"390 DUKE BLACK ABS 2014 (EU)","parent_id":"14758"},{"id":"16761","value":"390 DUKE BLACK ABS BAJ.DIR 14 (EU)","parent_id":"14758"},{"id":"30328","value":"390 DUKE BLACK W\/O DRL - B.D. 2023","parent_id":"17270"},{"id":"36471","value":"390 DUKE BLACK W\/O DRL - B.D. 2023 (EU)","parent_id":"17270"},{"id":"30374","value":"390 DUKE BLACK W\/O DRL 2023","parent_id":"17270"},{"id":"36480","value":"390 DUKE BLACK W\/O DRL 2023 (EU)","parent_id":"17270"},{"id":"36542","value":"390 DUKE BLUE - B.D. 2024","parent_id":"32421"},{"id":"33180","value":"390 DUKE BLUE - B.D. 2024 (EU)","parent_id":"32421"},{"id":"45851","value":"390 DUKE BLUE - B.D. 2026 (EU\/GB)","parent_id":"41435"},{"id":"33174","value":"390 DUKE BLUE - NHD - B.D. 2024 (EU)","parent_id":"32421"},{"id":"40816","value":"390 DUKE BLUE - NHD - B.D. 2025 (EU)","parent_id":"33058"},{"id":"32508","value":"390 DUKE BLUE 2024","parent_id":"32421"},{"id":"33173","value":"390 DUKE BLUE 2024 (EU)","parent_id":"32421"},{"id":"40815","value":"390 DUKE BLUE 2025 (EU)","parent_id":"33058"},{"id":"45850","value":"390 DUKE BLUE 2026 (EU)","parent_id":"41435"},{"id":"33232","value":"390 DUKE COLOR 1 ABS CKD 2013 (EU)","parent_id":"14748"},{"id":"30329","value":"390 DUKE GREY - B.D. 2023 (EU)","parent_id":"17270"},{"id":"30376","value":"390 DUKE GREY 2023 (EU)","parent_id":"17270"},{"id":"30326","value":"390 DUKE GREY W\/O DRL - B.D. 2023","parent_id":"17270"},{"id":"36470","value":"390 DUKE GREY W\/O DRL - B.D. 2023 (EU)","parent_id":"17270"},{"id":"30375","value":"390 DUKE GREY W\/O DRL 2023","parent_id":"17270"},{"id":"36481","value":"390 DUKE GREY W\/O DRL 2023 (EU)","parent_id":"17270"},{"id":"16788","value":"390 DUKE ORANGE - B.D. 2018 (EU)","parent_id":"14738"},{"id":"16791","value":"390 DUKE ORANGE - B.D. 2019 (EU)","parent_id":"14740"},{"id":"16794","value":"390 DUKE ORANGE - B.D. 2020 (EU)","parent_id":"14863"},{"id":"36543","value":"390 DUKE ORANGE - B.D. 2024","parent_id":"32421"},{"id":"33178","value":"390 DUKE ORANGE - B.D. 2024 (EU)","parent_id":"32421"},{"id":"33175","value":"390 DUKE ORANGE - NHD - B.D. 2024 (EU)","parent_id":"32421"},{"id":"40818","value":"390 DUKE ORANGE - NHD - B.D. 2025 (EU)","parent_id":"33058"},{"id":"16189","value":"390 DUKE ORANGE 2017 (EU)","parent_id":"14729"},{"id":"16169","value":"390 DUKE ORANGE 2018 (EU)","parent_id":"14738"},{"id":"16203","value":"390 DUKE ORANGE 2019 (EU)","parent_id":"14740"},{"id":"16201","value":"390 DUKE ORANGE 2020 (EU)","parent_id":"14863"},{"id":"32507","value":"390 DUKE ORANGE 2024","parent_id":"32421"},{"id":"33176","value":"390 DUKE ORANGE 2024 (EU)","parent_id":"32421"},{"id":"40817","value":"390 DUKE ORANGE 2025 (EU)","parent_id":"33058"},{"id":"16771","value":"390 DUKE ORANGE B.D. 17 (EU)","parent_id":"14729"},{"id":"16170","value":"390 DUKE SILVER - B.D. 2021 (EU)","parent_id":"15038"},{"id":"17256","value":"390 DUKE SILVER - B.D. 2022","parent_id":"15040"},{"id":"17182","value":"390 DUKE SILVER - B.D. 2022 (EU)","parent_id":"15040"},{"id":"16197","value":"390 DUKE SILVER 2021 (EU)","parent_id":"15038"},{"id":"17186","value":"390 DUKE SILVER 2022","parent_id":"15040"},{"id":"17254","value":"390 DUKE SILVER 2022 (EU)","parent_id":"15040"},{"id":"16790","value":"390 DUKE WHITE - B.D. 2018 (EU)","parent_id":"14738"},{"id":"16793","value":"390 DUKE WHITE - B.D. 2019 (EU)","parent_id":"14740"},{"id":"16796","value":"390 DUKE WHITE - B.D. 2020 (EU)","parent_id":"14863"},{"id":"16798","value":"390 DUKE WHITE - B.D. 2021 (EU)","parent_id":"15038"},{"id":"17255","value":"390 DUKE WHITE - B.D. 2022","parent_id":"15040"},{"id":"17181","value":"390 DUKE WHITE - B.D. 2022 (EU)","parent_id":"15040"}
11712,{"id":"16772","value":"390 DUKE WHITE 2017 (EU)","parent_id":"14729"},{"id":"16789","value":"390 DUKE WHITE 2018 (EU)","parent_id":"14738"},{"id":"16792","value":"390 DUKE WHITE 2019 (EU)","parent_id":"14740"},{"id":"16795","value":"390 DUKE WHITE 2020 (EU)","parent_id":"14863"},{"id":"16797","value":"390 DUKE WHITE 2021 (EU)","parent_id":"15038"},{"id":"17185","value":"390 DUKE WHITE 2022","parent_id":"15040"},{"id":"17253","value":"390 DUKE WHITE 2022 (EU)","parent_id":"15040"},{"id":"16228","value":"390 DUKE WHITE ABS 2013 (EU)","parent_id":"14748"},{"id":"16760","value":"390 DUKE WHITE ABS 2014 (EU)","parent_id":"14758"},{"id":"16263","value":"390 DUKE WHITE ABS 2015 (EU)","parent_id":"14773"},{"id":"16278","value":"390 DUKE WHITE ABS 2016 (EU)","parent_id":"14775"},{"id":"16758","value":"390 DUKE WHITE ABS B.D. 15 (EU)","parent_id":"14773"},{"id":"16764","value":"390 DUKE WHITE ABS B.D. 16 (EU)","parent_id":"14775"},{"id":"16230","value":"390 DUKE WHITE ABS BAJ.DIR.13 (EU)","parent_id":"14748"},{"id":"16223","value":"390 DUKE WHITE ABS BAJ.DIR.14 (EU)","parent_id":"14758"},{"id":"16773","value":"390 DUKE WHITE B.D. 17 (EU)","parent_id":"14729"},{"id":"41549","value":"390 ENDURO R  ORANGE - B.D. 2025 (EU\/GB)","parent_id":"33058"},{"id":"41548","value":"390 ENDURO R  ORANGE 2025 (EU)","parent_id":"33058"},{"id":"41552","value":"390 ENDURO R - B.D. 2026","parent_id":"41435"},{"id":"41551","value":"390 ENDURO R - B.D. 2026 (EU\/GB)","parent_id":"41435"},{"id":"41550","value":"390 ENDURO R 2026 (EU)","parent_id":"41435"},{"id":"41507","value":"390 SMC R - B.D. 2025","parent_id":"33058"},{"id":"45852","value":"390 SMC R - B.D. 2026","parent_id":"41435"},{"id":"41510","value":"390 SMC R - B.D. 2026 (EU\/GB)","parent_id":"41435"},{"id":"41508","value":"390 SMC R - NHD - B.D. 2025 (EU)","parent_id":"33058"},{"id":"41506","value":"390 SMC R 2025 (EU)","parent_id":"33058"},{"id":"41509","value":"390 SMC R 2026 (EU)","parent_id":"41435"},{"id":"15961","value":"400 DUKE\/ 20KW (EU)","parent_id":"14913"},{"id":"15387","value":"400 EXC 2009 (EU)","parent_id":"14736"}
11712,{"id":"15582","value":"400 EXC 2010 (EU)","parent_id":"14733"},{"id":"15384","value":"400 EXC 2011 (EU)","parent_id":"14769"},{"id":"15349","value":"400 EXC FACTORY 2005 (EU)","parent_id":"14946"},{"id":"15377","value":"400 EXC FACTORY EDIT. 2011 (EU)","parent_id":"14769"},{"id":"14853","value":"400 EXC FACTORY RACING (EU)","parent_id":"14846"},{"id":"16352","value":"400 EXC RACING 2000 (EU)","parent_id":"15051"},{"id":"16058","value":"400 EXC RACING 2001 (EU)","parent_id":"14841"},{"id":"15960","value":"400 EXC RACING 2002 (EU)","parent_id":"15208"},{"id":"14814","value":"400 EXC RACING 2004 (EU)","parent_id":"14812"},{"id":"15699","value":"400 EXC RACING 2005 (EU)","parent_id":"14946"},{"id":"15702","value":"400 EXC RACING 2006 (EU)","parent_id":"15071"},{"id":"14855","value":"400 EXC RACING 2007 (EU)","parent_id":"14846"},{"id":"16055","value":"400 EXC RACING SIX-DAYS 2001 (EU)","parent_id":"14841"},{"id":"15957","value":"400 EXC RACING SIX-DAYS 2002 (EU)","parent_id":"15208"},{"id":"15948","value":"400 EXC RACING SIX-DAYS 2003 (EU)","parent_id":"14920"}
11712,{"id":"15353","value":"400 EXC WP (EU)","parent_id":"14826"},{"id":"41469","value":"400 LC 4 '98 (EU)","parent_id":"14940"},{"id":"15145","value":"400 LC 4 98 (EU)","parent_id":"14940"},{"id":"15974","value":"400 LC 4 99 (EU)","parent_id":"15048"},{"id":"15969","value":"400 LC4 R (EU)","parent_id":"15048"},{"id":"15988","value":"400 LC4-E 2000 (EU)","parent_id":"15051"},{"id":"15977","value":"400 LC4-E 2001 (EU)","parent_id":"14841"},{"id":"33308","value":"400 LC4-E CH BRONZEGR\u00dcN MIL (EU)","parent_id":"15048"},{"id":"33306","value":"400 LC4-E D BRONZEGR\u00dcN MIL (EU)","parent_id":"15051"},{"id":"33289","value":"400 LC4-E D MIL BRONZEGR.01 (EU)","parent_id":"14841"},{"id":"33290","value":"400 LC4-E EU MIL BRONZEGR.01 (EU)","parent_id":"14841"},{"id":"33251","value":"400 LC4-E PL MIL BRONZEGR.02 (EU)","parent_id":"15208"},{"id":"33256","value":"400 LC4-E SF BRONZEGR\u00dcN MIL (EU)","parent_id":"15048"},{"id":"33309","value":"400 LC4-E SF SCHWARZ MIL (EU)","parent_id":"15048"},{"id":"16510","value":"400 LS-E\/ MIL 04 (EU)","parent_id":"14812"},{"id":"16508","value":"400 LS-E\/ MIL 2005 (EU)","parent_id":"14946"}
11712,{"id":"15135","value":"400 LSE 11LT BLAU (EU)","parent_id":"14935"},{"id":"33337","value":"400 LSE 31KW 11LT BLAU (EU)","parent_id":"14935"},{"id":"16353","value":"400 SC 2000 (EU)","parent_id":"15051"},{"id":"33259","value":"400 SUP-COMP (EU)","parent_id":"14940"},{"id":"33358","value":"400 SUP-COMP 20KW (EU)","parent_id":"14940"},{"id":"16407","value":"400 SUP-COMP WP 14KW (FR)","parent_id":"14826"},{"id":"16408","value":"400 SUP-COMP WP 18KW (EU)","parent_id":"14826"},{"id":"33055","value":"400 SUPER-COMP WP (EU)","parent_id":"14826"},{"id":"33338","value":"400 SUPER-COMP WP 14KW (FR)","parent_id":"14935"},{"id":"33339","value":"400 SUPER-COMP WP 20KW (EU)","parent_id":"14935"},{"id":"15364","value":"400 SUPER-COMP WP\/ 14KW (FR)","parent_id":"14913"},{"id":"16450","value":"400 SX RACING 2000 (EU)","parent_id":"15051"},{"id":"16054","value":"400 SX RACING 2001 (EU)","parent_id":"14841"},{"id":"15956","value":"400 SX RACING 2002 (EU)","parent_id":"15208"},{"id":"32511","value":"400 SX-C (EU)","parent_id":"14940"},{"id":"33166","value":"400 SX-C 20KW (EU)","parent_id":"14940"}
11712,{"id":"15116","value":"400 SXC WP (EU)","parent_id":"14935"},{"id":"16397","value":"440 E-XC WP (EU)","parent_id":"14913"},{"id":"40731","value":"440 SX '94 (EU)","parent_id":"15319"},{"id":"16406","value":"440 SX 94 (EU)","parent_id":"15319"},{"id":"15389","value":"450 EXC 2009 (EU)","parent_id":"14736"},{"id":"15626","value":"450 EXC 2010 (EU)","parent_id":"14733"},{"id":"15376","value":"450 EXC 2011 (EU)","parent_id":"14769"},{"id":"15431","value":"450 EXC 2012 (EU)","parent_id":"14746"},{"id":"15808","value":"450 EXC 2013 (EU)","parent_id":"14748"},{"id":"15850","value":"450 EXC 2014 (EU)","parent_id":"14758"},{"id":"15890","value":"450 EXC 2015 (EU)","parent_id":"14773"},{"id":"15928","value":"450 EXC 2016 (EU)","parent_id":"14775"},{"id":"15385","value":"450 EXC CHAMPION EDIT. 2010 (EU)","parent_id":"14733"},{"id":"15350","value":"450 EXC FACTORY 2005 (EU)","parent_id":"14946"},{"id":"15382","value":"450 EXC FACTORY EDIT. 2011 (EU)","parent_id":"14769"},{"id":"15752","value":"450 EXC FACTORY EDITION 2015 (EU)","parent_id":"14773"},{"id":"14861","value":"450 EXC FACTORY RACING (EU)","parent_id":"14846"}
11712,{"id":"15943","value":"450 EXC RACING 2003 (EU)","parent_id":"14920"},{"id":"14819","value":"450 EXC RACING 2004 (EU)","parent_id":"14812"},{"id":"15706","value":"450 EXC RACING 2005 (EU)","parent_id":"14946"},{"id":"15708","value":"450 EXC RACING 2006 (EU)","parent_id":"15071"},{"id":"14850","value":"450 EXC RACING 2007 (EU)","parent_id":"14846"},{"id":"33248","value":"450 EXC RACING SIX-DAYS 2003 (EU)","parent_id":"14920"},{"id":"14817","value":"450 EXC RACING SIX-DAYS 2004 (EU)","parent_id":"14812"},{"id":"15704","value":"450 EXC RACING SIX-DAYS 2005 (EU)","parent_id":"14946"},{"id":"15707","value":"450 EXC RACING SIX-DAYS 2006 (EU)","parent_id":"15071"},{"id":"15612","value":"450 EXC RACING SIX-DAYS 2007 (EU)","parent_id":"14846"},{"id":"15660","value":"450 EXC SIX DAYS 2009 (EU)","parent_id":"14736"},{"id":"15416","value":"450 EXC SIX DAYS 2010 (EU)","parent_id":"14733"},{"id":"15380","value":"450 EXC SIX DAYS 2011 (EU)","parent_id":"14769"},{"id":"15015","value":"450 EXC SIX DAYS 2012 (EU)","parent_id":"14746"},{"id":"15018","value":"450 EXC SIX DAYS 2013 (EU)","parent_id":"14748"},{"id":"15917","value":"450 EXC SIX DAYS 2014 (EU)","parent_id":"14758"},{"id":"15709","value":"450 EXC SIX DAYS 2015 (EU)","parent_id":"14773"},{"id":"15771","value":"450 EXC SIX DAYS 2016 (EU)","parent_id":"14775"}
11712,{"id":"14967","value":"450 EXC-F 2017 (EU)","parent_id":"14729"},{"id":"14973","value":"450 EXC-F 2018 (EU)","parent_id":"14738"},{"id":"14977","value":"450 EXC-F 2019 (EU)","parent_id":"14740"},{"id":"15346","value":"450 EXC-F 2020 (EU)","parent_id":"14863"},{"id":"15348","value":"450 EXC-F 2021 (EU)","parent_id":"15038"},{"id":"15689","value":"450 EXC-F 2022 (EU)","parent_id":"15040"},{"id":"17294","value":"450 EXC-F 2023 (EU)","parent_id":"17270"},{"id":"32454","value":"450 EXC-F 2024 (EU)","parent_id":"32421"},{"id":"36541","value":"450 EXC-F 2025 (EU)","parent_id":"33058"},{"id":"41440","value":"450 EXC-F 2026 (EU)","parent_id":"41435"},{"id":"41445","value":"450 EXC-F 6DAYS 2026 (EU)","parent_id":"41435"},{"id":"36531","value":"450 EXC-F CHAMPION EDITION 2025","parent_id":"33058"},{"id":"41473","value":"450 EXC-F CHAMPION EDITION 2025 (EU)","parent_id":"33058"},{"id":"14972","value":"450 EXC-F SIX DAYS 2017 (EU)","parent_id":"14729"},{"id":"14976","value":"450 EXC-F SIX DAYS 2018 (EU)","parent_id":"14738"},{"id":"14981","value":"450 EXC-F SIX DAYS 2019 (EU)","parent_id":"14740"},{"id":"15347","value":"450 EXC-F SIX DAYS 2020 (EU)","parent_id":"14863"},{"id":"15341","value":"450 EXC-F SIX DAYS 2021 (EU)","parent_id":"15038"},{"id":"15691","value":"450 EXC-F SIX DAYS 2022 (EU)","parent_id":"15040"},{"id":"17289","value":"450 EXC-F SIX DAYS 2023 (EU)","parent_id":"17270"},{"id":"32463","value":"450 EXC-F SIX DAYS 2024 (EU)","parent_id":"32421"},{"id":"36491","value":"450 EXC-F SIX DAYS 2025 (EU)","parent_id":"33058"},{"id":"15493","value":"450 EXC-R 2008 (EU)","parent_id":"14985"},{"id":"15490","value":"450 EXC-R SIX-DAYS 08 (EU)","parent_id":"14985"},{"id":"41434","value":"450 RALLY FACTORY REPLICA","parent_id":"14769"},{"id":"33131","value":"450 RALLY FACTORY REPLICA (EU)","parent_id":"14746"},{"id":"15887","value":"450 RALLY FACTORY REPLICA 2013 (EU)","parent_id":"14748"},{"id":"15802","value":"450 RALLY FACTORY REPLICA 2014 (EU)","parent_id":"14758"},{"id":"15900","value":"450 RALLY FACTORY REPLICA 2015 (EU)","parent_id":"14773"},{"id":"15845","value":"450 RALLY FACTORY REPLICA 2016 (EU)","parent_id":"14775"}
11712,{"id":"15923","value":"450 RALLY FACTORY REPLICA 2017 (EU)","parent_id":"14729"},{"id":"15744","value":"450 RALLY FACTORY REPLICA 2018 (EU)","parent_id":"14738"},{"id":"15761","value":"450 RALLY FACTORY REPLICA 2019","parent_id":"14740"},{"id":"15882","value":"450 RALLY FACTORY REPLICA 2020","parent_id":"14863"},{"id":"15794","value":"450 RALLY FACTORY REPLICA 2021 (EU)","parent_id":"15038"},{"id":"16622","value":"450 RALLY FACTORY REPLICA 2022 (EU)","parent_id":"15040"},{"id":"35984","value":"450 RALLY REPLICA 2025","parent_id":"33058"},{"id":"41480","value":"450 RALLY REPLICA `SANDERS EDITION` 2026","parent_id":"41435"},{"id":"16506","value":"450 RALLYE FACTORY REPL. 2004 (EU)","parent_id":"14812"},{"id":"16507","value":"450 RALLYE FACTORY REPL. 2005 (EU)","parent_id":"14946"},{"id":"16427","value":"450 SMR 2004 (EU)","parent_id":"14812"},{"id":"16436","value":"450 SMR 2005 (EU)","parent_id":"14946"},{"id":"16419","value":"450 SMR 2006 (EU)","parent_id":"15071"},{"id":"15579","value":"450 SMR 2007 (EU)","parent_id":"14846"}
11712,{"id":"15625","value":"450 SMR 2008 (EU)","parent_id":"14985"},{"id":"15668","value":"450 SMR 2009 (EU)","parent_id":"14736"},{"id":"15414","value":"450 SMR 2010 (EU)","parent_id":"14733"},{"id":"33247","value":"450 SMR 2011 (EU)","parent_id":"14769"},{"id":"15460","value":"450 SMR 2012 (EU)","parent_id":"14746"},{"id":"15825","value":"450 SMR 2013 (EU)","parent_id":"14748"},{"id":"15862","value":"450 SMR 2014 (EU)","parent_id":"14758"},{"id":"15694","value":"450 SMR 2021 (EU)","parent_id":"15038"},{"id":"17257","value":"450 SMR 2022 (EU)","parent_id":"15040"},{"id":"17298","value":"450 SMR 2023 (EU)","parent_id":"17270"},{"id":"32480","value":"450 SMR 2024 (EU)","parent_id":"32421"},{"id":"36519","value":"450 SMR 2025 (EU)","parent_id":"33058"},{"id":"41482","value":"450 SMR 2026 (EU)","parent_id":"41435"},{"id":"16321","value":"450 SMS (EU)","parent_id":"14812"},{"id":"16415","value":"450 SX 2006 (EU)","parent_id":"15071"},{"id":"16324","value":"450 SX ATV 2009 (EU)","parent_id":"14736"},{"id":"14735","value":"450 SX ATV 2010 (EU)","parent_id":"14733"},{"id":"33286","value":"450 SX ATV 2011 (EU)","parent_id":"14769"},{"id":"15947","value":"450 SX RACING 2003 (EU)","parent_id":"14920"}
11712,{"id":"14821","value":"450 SX RACING 2004 (EU)","parent_id":"14812"},{"id":"16440","value":"450 SX RACING 2005 (EU)","parent_id":"14946"},{"id":"16441","value":"450 SX STEVE RAMON 2005 (EU)","parent_id":"14946"},{"id":"15657","value":"450 SX-F 2007 (EU)","parent_id":"14846"},{"id":"15406","value":"450 SX-F 2008 (EU)","parent_id":"14985"},{"id":"16319","value":"450 SX-F 2009 (EU)","parent_id":"14736"},{"id":"16320","value":"450 SX-F 2010 (EU)","parent_id":"14733"},{"id":"15545","value":"450 SX-F 2011 (EU)","parent_id":"14769"},{"id":"15595","value":"450 SX-F 2012 (EU)","parent_id":"14746"},{"id":"15926","value":"450 SX-F 2013 (EU)","parent_id":"14748"},{"id":"15741","value":"450 SX-F 2014 (EU)","parent_id":"14758"},{"id":"15773","value":"450 SX-F 2015 (EU)","parent_id":"14773"},{"id":"15807","value":"450 SX-F 2016 (EU)","parent_id":"14775"},{"id":"15843","value":"450 SX-F 2017 (EU)","parent_id":"14729"},{"id":"15879","value":"450 SX-F 2018 (EU)","parent_id":"14738"},{"id":"15914","value":"450 SX-F 2019 (EU)","parent_id":"14740"},{"id":"15688","value":"450 SX-F 2020 (EU)","parent_id":"14863"},{"id":"15690","value":"450 SX-F 2021 (EU)","parent_id":"15038"},{"id":"15692","value":"450 SX-F 2022 (EU)","parent_id":"15040"},{"id":"32468","value":"450 SX-F 2023 (EU)","parent_id":"17270"},{"id":"32487","value":"450 SX-F 2024 (EU)","parent_id":"32421"},{"id":"33065","value":"450 SX-F 2025 (EU)","parent_id":"33058"},{"id":"41489","value":"450 SX-F 2026 (EU)","parent_id":"41435"},{"id":"45859","value":"450 SX-F 2027","parent_id":"45841"}
11712,{"id":"15693","value":"450 SX-F CAIROLI 2020 (EU)","parent_id":"14863"},{"id":"15616","value":"450 SX-F FACT.REPL.NAGL (EU)","parent_id":"14733"},{"id":"15871","value":"450 SX-F FACTORY EDITION 2013 (EU)","parent_id":"14748"},{"id":"15937","value":"450 SX-F HERLINGS REPLICA 2019 (EU)","parent_id":"14740"},{"id":"33241","value":"450 SX-F PRESERIES 2006 (EU)","parent_id":"15071"},{"id":"16414","value":"450 SXS 2006 (EU)","parent_id":"15071"},{"id":"15944","value":"450 SXS RACING 2003 (EU)","parent_id":"14920"},{"id":"14820","value":"450 SXS RACING 2004 (EU)","parent_id":"14812"},{"id":"16438","value":"450 SXS RACING 2005 (EU)","parent_id":"14946"},{"id":"15588","value":"450 SXS-F 2007 (EU)","parent_id":"14846"},{"id":"15636","value":"450 SXS-F 2008 (EU)","parent_id":"14985"},{"id":"15516","value":"450 XC 2007 (EU)","parent_id":"14846"},{"id":"16481","value":"450 XC ATV 2008 (EU)","parent_id":"14985"},{"id":"16476","value":"450 XC ATV 2009 (EU)","parent_id":"14736"},{"id":"16477","value":"450 XC ATV 2010","parent_id":"14733"},{"id":"16511","value":"450 XC ATV 2010 (EU)","parent_id":"14733"},{"id":"33287","value":"450 XC ATV 2011","parent_id":"14769"},{"id":"14823","value":"450 XC CROSS COUNTRY 2004 (EU)","parent_id":"14812"},{"id":"33064","value":"450 XC-F 2025","parent_id":"33058"},{"id":"41490","value":"50 JUNIOR ADVENTURE 2002 (EU US)","parent_id":"15208"},{"id":"16492","value":"50 JUNIOR ADVENTURE 2002 (EU\/US)","parent_id":"15208"},{"id":"15998","value":"50 JUNIOR ADVENTURE 2003 (EU)","parent_id":"14920"},{"id":"33133","value":"50 MINI ADVENTURE (EU)","parent_id":"14935"},{"id":"16021","value":"50 MINI ADVENTURE 2000 (EU)","parent_id":"15051"},{"id":"16022","value":"50 MINI ADVENTURE 2001 (EU)","parent_id":"14841"},{"id":"41491","value":"50 MINI ADVENTURE 2002 (EU US)","parent_id":"15208"},{"id":"16491","value":"50 MINI ADVENTURE 2002 (EU\/US)","parent_id":"15208"},{"id":"15999","value":"50 MINI ADVENTURE 2003 (EU)","parent_id":"14920"}
11712,{"id":"16001","value":"50 MINI ADVENTURE 2004 (EU)","parent_id":"14812"},{"id":"16497","value":"50 MINI ADVENTURE 2005 (EU)","parent_id":"14946"},{"id":"16006","value":"50 MINI ADVENTURE 2006 (EU)","parent_id":"15071"},{"id":"16008","value":"50 MINI ADVENTURE 2007 (EU)","parent_id":"14846"},{"id":"16024","value":"50 MINI ADVENTURE 2008 (EU)","parent_id":"14985"},{"id":"16020","value":"50 MINI ADVENTURE 99 (EU)","parent_id":"15048"},{"id":"16493","value":"50 MINI ADVENTURE GS 2002 (EU)","parent_id":"15208"},{"id":"41492","value":"50 SENIOR ADVENTURE 2002 (EU US)","parent_id":"15208"},{"id":"16496","value":"50 SENIOR ADVENTURE 2002 (EU\/US)","parent_id":"15208"},{"id":"16003","value":"50 SENIOR ADVENTURE 2003 (EU)","parent_id":"14920"},{"id":"16005","value":"50 SENIOR ADVENTURE 2004 (EU)","parent_id":"14812"},{"id":"16478","value":"50 SENIOR ADVENTURE 2005 (EU)","parent_id":"14946"},{"id":"15991","value":"50 SENIOR ADVENTURE 2006 (EU)","parent_id":"15071"},{"id":"15993","value":"50 SENIOR ADVENTURE 2007 (EU)","parent_id":"14846"}
11712,{"id":"15994","value":"50 SUPERMOTO 2006 (EU)","parent_id":"15071"},{"id":"15995","value":"50 SUPERMOTO 2007 (EU)","parent_id":"14846"},{"id":"16010","value":"50 SX (EU)","parent_id":"14985"},{"id":"16004","value":"50 SX 2006 (EU)","parent_id":"15071"},{"id":"16007","value":"50 SX 2007 (EU)","parent_id":"14846"},{"id":"16009","value":"50 SX 2008 (EU)","parent_id":"14985"},{"id":"16464","value":"50 SX 2009 (EU)","parent_id":"14736"},{"id":"16465","value":"50 SX 2010 (EU)","parent_id":"14733"},{"id":"16466","value":"50 SX 2011 (EU)","parent_id":"14769"},{"id":"16409","value":"50 SX 2012 (EU)","parent_id":"14746"},{"id":"16361","value":"50 SX 2013 (EU)","parent_id":"14748"},{"id":"16362","value":"50 SX 2014 (EU)","parent_id":"14758"},{"id":"16363","value":"50 SX 2015 (EU)","parent_id":"14773"},{"id":"16011","value":"50 SX 2016 (EU)","parent_id":"14775"},{"id":"16365","value":"50 SX 2017 (EU)","parent_id":"14729"},{"id":"16367","value":"50 SX 2018 (EU)","parent_id":"14738"},{"id":"16369","value":"50 SX 2019 (EU)","parent_id":"14740"},{"id":"15842","value":"50 SX 2020 (EU)","parent_id":"14863"},{"id":"15869","value":"50 SX 2021 (EU)","parent_id":"15038"},{"id":"15901","value":"50 SX 2022 (EU)","parent_id":"15040"},{"id":"32478","value":"50 SX 2023 (EU)","parent_id":"17270"},{"id":"33121","value":"50 SX 2024","parent_id":"32421"},{"id":"33122","value":"50 SX 2025","parent_id":"33058"},{"id":"41485","value":"50 SX 2026","parent_id":"41435"},{"id":"45856","value":"50 SX 2027","parent_id":"45841"},{"id":"36553","value":"50 SX FACTORY EDITION 2025","parent_id":"33058"},{"id":"41486","value":"50 SX FACTORY EDITION 2026","parent_id":"41435"},{"id":"16017","value":"50 SX JUNIOR 2000 (EU)","parent_id":"15051"},{"id":"16012","value":"50 SX JUNIOR 2001 (EU)","parent_id":"14841"}
11712,{"id":"15992","value":"50 SX JUNIOR 2006 (EU)","parent_id":"15071"},{"id":"36524","value":"50 SX JUNIOR 2009 (AU\/US)","parent_id":"14736"},{"id":"16446","value":"50 SX MINI 2009 (EU)","parent_id":"14736"},{"id":"16447","value":"50 SX MINI 2010 (EU)","parent_id":"14733"},{"id":"16451","value":"50 SX MINI 2011 (EU)","parent_id":"14769"},{"id":"16448","value":"50 SX MINI 2012 (EU)","parent_id":"14746"},{"id":"16428","value":"50 SX MINI 2013 (EU)","parent_id":"14748"},{"id":"16410","value":"50 SX MINI 2014 (EU)","parent_id":"14758"},{"id":"16370","value":"50 SX MINI 2015 (EU)","parent_id":"14773"},{"id":"16025","value":"50 SX MINI 2016 (EU)","parent_id":"14775"},{"id":"16364","value":"50 SX MINI 2017 (EU)","parent_id":"14729"},{"id":"16366","value":"50 SX MINI 2018 (EU)","parent_id":"14738"},{"id":"16368","value":"50 SX MINI 2019 (EU)","parent_id":"14740"},{"id":"15828","value":"50 SX MINI 2020 (EU)","parent_id":"14863"},{"id":"15859","value":"50 SX MINI 2021 (EU)","parent_id":"15038"},{"id":"15894","value":"50 SX MINI 2022 (EU)","parent_id":"15040"},{"id":"17297","value":"50 SX MINI 2023","parent_id":"17270"},{"id":"16456","value":"50 SX PRO JUNIOR (EU)","parent_id":"14940"}
11712,{"id":"16489","value":"50 SX PRO JUNIOR LC 2002 (EU)","parent_id":"15208"},{"id":"16490","value":"50 SX PRO JUNIOR LC 2003 (EU)","parent_id":"14920"},{"id":"15996","value":"50 SX PRO JUNIOR LC 2004 (EU)","parent_id":"14812"},{"id":"15997","value":"50 SX PRO JUNIOR LC 2005 (EU)","parent_id":"14946"},{"id":"16455","value":"50 SX PRO SENIOR (EU)","parent_id":"14940"},{"id":"16512","value":"50 SX PRO SENIOR LC 2001 (EU)","parent_id":"14841"},{"id":"41493","value":"50 SX PRO SENIOR LC 2002 (EU US)","parent_id":"15208"},{"id":"16494","value":"50 SX PRO SENIOR LC 2002 (EU\/US)","parent_id":"15208"},{"id":"16495","value":"50 SX PRO SENIOR LC 2003 (EU)","parent_id":"14920"},{"id":"16002","value":"50 SX PRO SENIOR LC 2004 (EU)","parent_id":"14812"},{"id":"16668","value":"50 SX PRO SENIOR LC 2005 (EU)","parent_id":"14946"},{"id":"16015","value":"50 SX SENIOR 2000 (EU)","parent_id":"15051"},{"id":"16016","value":"50 SX SENIOR 2001 (EU)","parent_id":"14841"},{"id":"16023","value":"50 SXR PRO JUNIOR (EU)","parent_id":"14935"},{"id":"16669","value":"50 SXR PRO SENIOR (EU)","parent_id":"14935"},{"id":"15420","value":"500 EXC 2012 (EU)","parent_id":"14746"},{"id":"15797","value":"500 EXC 2013 (EU)","parent_id":"14748"},{"id":"15837","value":"500 EXC 2014 (EU)","parent_id":"14758"},{"id":"15880","value":"500 EXC 2015 (EU)","parent_id":"14773"},{"id":"15920","value":"500 EXC 2016 (EU)","parent_id":"14775"}
11712,{"id":"15011","value":"500 EXC SIX DAYS 2012 (EU)","parent_id":"14746"},{"id":"15012","value":"500 EXC SIX DAYS 2013 (EU)","parent_id":"14748"},{"id":"15818","value":"500 EXC SIX DAYS 2014 (EU)","parent_id":"14758"},{"id":"15710","value":"500 EXC SIX DAYS 2015 (EU)","parent_id":"14773"},{"id":"15896","value":"500 EXC SIX DAYS 2016 (EU)","parent_id":"14775"},{"id":"14963","value":"500 EXC-F 2017 (EU)","parent_id":"14729"},{"id":"14966","value":"500 EXC-F 2018 (EU)","parent_id":"14738"},{"id":"14971","value":"500 EXC-F 2019 (EU)","parent_id":"14740"},{"id":"15343","value":"500 EXC-F 2020 (EU)","parent_id":"14863"},{"id":"15345","value":"500 EXC-F 2021 (EU)","parent_id":"15038"},{"id":"15696","value":"500 EXC-F 2022 (EU)","parent_id":"15040"},{"id":"17279","value":"500 EXC-F 2023 (EU)","parent_id":"17270"},{"id":"32426","value":"500 EXC-F 2024 (EU)","parent_id":"32421"},{"id":"36530","value":"500 EXC-F 2025 (EU)","parent_id":"33058"},{"id":"41442","value":"500 EXC-F 2026 (EU)","parent_id":"41435"},{"id":"41447","value":"500 EXC-F 6DAYS 2026 (EU)","parent_id":"41435"},{"id":"36529","value":"500 EXC-F CHAMPION EDITION 2025","parent_id":"33058"},{"id":"41474","value":"500 EXC-F CHAMPION EDITION 2025 (EU)","parent_id":"33058"},{"id":"14984","value":"500 EXC-F SIX DAYS 2017 (EU)","parent_id":"14729"},{"id":"14964","value":"500 EXC-F SIX DAYS 2018 (EU)","parent_id":"14738"},{"id":"14968","value":"500 EXC-F SIX DAYS 2019 (EU)","parent_id":"14740"},{"id":"15342","value":"500 EXC-F SIX DAYS 2020 (EU)","parent_id":"14863"},{"id":"15344","value":"500 EXC-F SIX DAYS 2021 (EU)","parent_id":"15038"},{"id":"15695","value":"500 EXC-F SIX DAYS 2022 (EU)","parent_id":"15040"},{"id":"17280","value":"500 EXC-F SIX DAYS 2023 (EU)","parent_id":"17270"},{"id":"32427","value":"500 EXC-F SIX DAYS 2024","parent_id":"32421"},{"id":"32428","value":"500 EXC-F SIX DAYS 2024 (EU)","parent_id":"32421"},{"id":"36527","value":"500 EXC-F SIX DAYS 2025 (EU)","parent_id":"33058"},{"id":"14737","value":"505 SX ATV 2009 (EU)","parent_id":"14736"}
11712,{"id":"14734","value":"505 SX ATV 2010 (EU)","parent_id":"14733"},{"id":"33288","value":"505 SX ATV 2011 (EU)","parent_id":"14769"},{"id":"16483","value":"505 SX ATV 2012 (EU)","parent_id":"14746"},{"id":"15627","value":"505 SX-F (EU)","parent_id":"14985"},{"id":"16065","value":"505 SX-F PRESERIES 2007 (EU)","parent_id":"14846"},{"id":"15580","value":"505 XC-F 2009 (EU)","parent_id":"14736"},{"id":"33227","value":"505 XC-F 2010","parent_id":"14733"},{"id":"16357","value":"520 EXC RACING 2000 (EU)","parent_id":"15051"},{"id":"16536","value":"520 EXC RACING 2001 (EU)","parent_id":"14841"},{"id":"15958","value":"520 EXC RACING 2002 (EU)","parent_id":"15208"},{"id":"16057","value":"520 EXC RACING SIX.DAYS 2001 (EU)","parent_id":"14841"},{"id":"15959","value":"520 EXC RACING SIX.DAYS 2002 (EU)","parent_id":"15208"},{"id":"40888","value":"520 EXC-E '99 (EU)","parent_id":"15048"},{"id":"33310","value":"520 EXC-E 99 (EU)","parent_id":"15048"},{"id":"16449","value":"520 SX RACING 2000 (EU)","parent_id":"15051"},{"id":"16056","value":"520 SX RACING 2001 (EU)","parent_id":"14841"}
11712,{"id":"16381","value":"520 SX RACING 2002 (EU)","parent_id":"15208"},{"id":"15351","value":"525 EXC FACTORY 2005 (EU)","parent_id":"14946"},{"id":"14859","value":"525 EXC FACTORY RACING (EU)","parent_id":"14846"},{"id":"15941","value":"525 EXC RACING 2003 (EU)","parent_id":"14920"},{"id":"14815","value":"525 EXC RACING 2004 (EU)","parent_id":"14812"},{"id":"15703","value":"525 EXC RACING 2005 (EU)","parent_id":"14946"},{"id":"15705","value":"525 EXC RACING 2006 (EU)","parent_id":"15071"},{"id":"14857","value":"525 EXC RACING 2007 (EU)","parent_id":"14846"},{"id":"15700","value":"525 EXC RACING SIX-DAYS 2006 (EU)","parent_id":"15071"},{"id":"15488","value":"525 EXC RACING SIX-DAYS 2007 (EU)","parent_id":"14846"},{"id":"15949","value":"525 EXC RACING SIX.DAYS 2003 (EU)","parent_id":"14920"},{"id":"14825","value":"525 EXC RACING SIX.DAYS 2004 (EU)","parent_id":"14812"},{"id":"15697","value":"525 EXC RACING SIX.DAYS 2005 (EU)","parent_id":"14946"},{"id":"15951","value":"525 MXC DESERT RACING 2003 (EU)","parent_id":"14920"}
11712,{"id":"14813","value":"525 MXC DESERT RACING 2004 (EU)","parent_id":"14812"},{"id":"15698","value":"525 MXC DESERT RACING 2005 (EU)","parent_id":"14946"},{"id":"16426","value":"525 SMR 2004 (EU)","parent_id":"14812"},{"id":"16435","value":"525 SMR 2005 (EU)","parent_id":"14946"},{"id":"16417","value":"525 SX 2006 (EU)","parent_id":"15071"},{"id":"15950","value":"525 SX RACING 2003 (EU)","parent_id":"14920"},{"id":"14824","value":"525 SX RACING 2004 (EU)","parent_id":"14812"},{"id":"16443","value":"525 SX RACING 2005 (EU)","parent_id":"14946"},{"id":"14818","value":"525 SX SUPERMOTO 2004 (EU)","parent_id":"14812"},{"id":"16480","value":"525 XC ATV 2008 (EU)","parent_id":"14985"},{"id":"16475","value":"525 XC ATV 2009 (EU)","parent_id":"14736"},{"id":"16432","value":"525 XC ATV 2010 (EU)","parent_id":"14733"},{"id":"16433","value":"525 XC ATV 2011 (EU)","parent_id":"14769"},{"id":"14747","value":"525 XC ATV 2012 (EU)","parent_id":"14746"},{"id":"15701","value":"525 XC DESERT RACING 2006 (EU)","parent_id":"15071"},{"id":"14854","value":"525 XC DESERT RACING 2007 (EU)","parent_id":"14846"}
11712,{"id":"15386","value":"530 EXC 2009 (EU)","parent_id":"14736"},{"id":"15452","value":"530 EXC 2010 (EU)","parent_id":"14733"},{"id":"15381","value":"530 EXC 2011 (EU)","parent_id":"14769"},{"id":"15388","value":"530 EXC CHAMPION EDIT. 2010 (EU)","parent_id":"14733"},{"id":"15383","value":"530 EXC FACTORY EDIT. 2011 (EU)","parent_id":"14769"},{"id":"15658","value":"530 EXC SIX DAYS 2009 (EU)","parent_id":"14736"},{"id":"15415","value":"530 EXC SIX.DAYS 2010 (EU)","parent_id":"14733"},{"id":"15379","value":"530 EXC SIX.DAYS 2011 (EU)","parent_id":"14769"},{"id":"15629","value":"530 EXC-R 2008 (EU)","parent_id":"14985"},{"id":"15523","value":"530 EXC-R SIX-DAYS 2008 (EU)","parent_id":"14985"},{"id":"32512","value":"540 SXC (EU)","parent_id":"14940"},{"id":"15372","value":"540 SXC 20KW (EU)","parent_id":"15048"},{"id":"15370","value":"540 SXC 20KW 98 (EU)","parent_id":"14940"},{"id":"16420","value":"540 SXS 2006 (EU)","parent_id":"15071"},{"id":"33307","value":"540 SXS RACING 2000 (EU)","parent_id":"15051"},{"id":"16059","value":"540 SXS RACING 2001 (EU)","parent_id":"14841"}
11712,{"id":"15955","value":"540 SXS RACING 2002 (EU)","parent_id":"15208"},{"id":"15942","value":"540 SXS RACING 2003 (EU)","parent_id":"14920"},{"id":"14816","value":"540 SXS RACING 2004 (EU)","parent_id":"14812"},{"id":"16437","value":"540 SXS RACING 2005 (EU)","parent_id":"14946"},{"id":"16418","value":"560 SMR 2006 (EU)","parent_id":"15071"},{"id":"15571","value":"560 SMR 2007 (EU)","parent_id":"14846"},{"id":"16032","value":"60 SX (EU)","parent_id":"14940"},{"id":"16027","value":"60 SX 2000 (EU)","parent_id":"15051"},{"id":"40885","value":"600 4T EXC USA '94 (EU)","parent_id":"15319"},{"id":"33297","value":"600 4T EXC USA 94 (EU)","parent_id":"15319"},{"id":"40886","value":"620 4T SIX DAYS WP AUSTRAL '96 (EU)","parent_id":"14826"},{"id":"33292","value":"620 4T SIX DAYS WP AUSTRAL 96 (EU)","parent_id":"14826"},{"id":"15130","value":"620 COMPETITION LIMITED 20KW (EU)","parent_id":"14935"},{"id":"40785","value":"620 DUKE 37KW '94 (EU)","parent_id":"15319"},{"id":"15356","value":"620 DUKE 37KW (EU)","parent_id":"14826"}
11712,{"id":"15966","value":"620 DUKE 37KW 94 (EU)","parent_id":"15319"},{"id":"15965","value":"620 DUKE-E 37KW (EU)","parent_id":"14935"},{"id":"40784","value":"620 E-XC 20KW\/20LT '94 (EU)","parent_id":"15319"},{"id":"15324","value":"620 E-XC 20KW\/20LT 94 (EU)","parent_id":"15319"},{"id":"15362","value":"620 E-XC DAKAR 20KW\/20LT (EU)","parent_id":"14913"},{"id":"15151","value":"620 EGS 37KW 11LT ORANGE (EU)","parent_id":"14935"},{"id":"15148","value":"620 EGS 37KW 20LT BLAU (EU)","parent_id":"14935"},{"id":"15105","value":"620 EGS 37KW 20LT ROT (EU)","parent_id":"14935"},{"id":"15355","value":"620 EGS WP (EU)","parent_id":"14826"},{"id":"40783","value":"620 EGS WP 37KW 20LT '94 (EU)","parent_id":"15319"},{"id":"15322","value":"620 EGS WP 37KW 20LT 94 (EU)","parent_id":"15319"},{"id":"15359","value":"620 EGS WP 37KW 20LT ROT (EU)","parent_id":"14826"},{"id":"40757","value":"620 EGS WP 37KW 20LT VIOL '95 (EU)","parent_id":"14913"},{"id":"15354","value":"620 EGS WP 37KW 20LT VIOL (EU)","parent_id":"14826"},{"id":"15365","value":"620 EGS WP 37KW 20LT VIOL 95 (EU)","parent_id":"14913"},{"id":"15963","value":"620 EGS-E 11LT ORANGE (EU)","parent_id":"14935"},{"id":"15964","value":"620 EGS-E 11LT ORANGE\/LOW (EU)","parent_id":"14935"},{"id":"15124","value":"620 EGS-E 35KW 11LT BLAU (EU)","parent_id":"14935"},{"id":"15137","value":"620 EGS-E 37KW 11LT ORANGE (EU)","parent_id":"14935"},{"id":"16534","value":"620 EGS-E 37KW 20LT BLAU (EU)","parent_id":"14935"},{"id":"15111","value":"620 EGS-E 37KW 20LT ROT (EU)","parent_id":"14935"},{"id":"15123","value":"620 EGS-E ADVENTURE (EU)","parent_id":"14935"},{"id":"15134","value":"620 ENDURO LIMITED (EU)","parent_id":"14935"},{"id":"40762","value":"620 LC-4 '98 COMPETITION (EU)","parent_id":"14940"}
11712,{"id":"15114","value":"620 LC-4 98 COMPETITION (EU)","parent_id":"14940"},{"id":"15373","value":"620 LC-4 COMPETITION (EU)","parent_id":"15048"},{"id":"15371","value":"620 LC-4 SUPER-MOTO 99 (EU)","parent_id":"15048"},{"id":"40763","value":"620 LC4 RALLYE '97 (EU)","parent_id":"14935"},{"id":"15136","value":"620 LC4 RALLYE 97 (EU)","parent_id":"14935"},{"id":"15149","value":"620 LSE 11LT BLAU (EU)","parent_id":"14935"},{"id":"15962","value":"620 LSE 37KW 11LT BLAU (EU)","parent_id":"14935"},{"id":"16125","value":"620 SC 2000 (EU)","parent_id":"15051"},{"id":"16127","value":"620 SC 2001 (EU)","parent_id":"14841"},{"id":"16128","value":"620 SC SUPER-MOTO 2000 (EU)","parent_id":"15051"},{"id":"16129","value":"620 SC SUPER-MOTO 2001 (EU)","parent_id":"14841"},{"id":"15358","value":"620 SIX-DAYS WP 37KW 11LT (EU)","parent_id":"14826"},{"id":"15147","value":"620 SUP-COMP (EU)","parent_id":"14940"},{"id":"33359","value":"620 SUP-COMP 20KW (EU)","parent_id":"14940"},{"id":"15120","value":"620 SUP-COMP WP (EU)","parent_id":"14935"},{"id":"15357","value":"620 SUP-COMP WP 20KW (EU)","parent_id":"14826"}
11712,{"id":"15360","value":"620 SUPER-COMP 4T (EU)","parent_id":"14826"},{"id":"33341","value":"620 SUPER-COMP WP 19KW (FR)","parent_id":"14935"},{"id":"15327","value":"620 SUPER-COMP WP\/ 19KW (EU)","parent_id":"15319"},{"id":"15363","value":"620 SUPER-COMP WP\/ 19KW (FR)","parent_id":"14913"},{"id":"40768","value":"620 SUPER-MOTO COMP. 20 KW '98 (EU)","parent_id":"14940"},{"id":"15104","value":"620 SUPER-MOTO COMP. 20 KW 98 (EU)","parent_id":"14940"},{"id":"40786","value":"620 SX '99 (EU)","parent_id":"15048"},{"id":"15129","value":"620 SX (EU)","parent_id":"14940"},{"id":"15374","value":"620 SX 99 (EU)","parent_id":"15048"},{"id":"33293","value":"620 SX WP (EU)","parent_id":"14826"},{"id":"15119","value":"620 SXC WP (EU)","parent_id":"14935"},{"id":"15224","value":"625 SC 2002 (EU)","parent_id":"15208"},{"id":"15231","value":"625 SC SUPER-MOTO 2002 (EU)","parent_id":"15208"},{"id":"15245","value":"625 SMC 2004 (EU)","parent_id":"14812"},{"id":"15167","value":"625 SMC 2005 (EU)","parent_id":"14946"},{"id":"15180","value":"625 SMC 2006 (EU)","parent_id":"15071"},{"id":"15233","value":"625 SXC 2003 (EU)","parent_id":"14920"}
11712,{"id":"15241","value":"625 SXC 2004 (EU)","parent_id":"14812"},{"id":"15163","value":"625 SXC 2005 (EU)","parent_id":"14946"},{"id":"15177","value":"625 SXC 2006 (EU)","parent_id":"15071"},{"id":"15191","value":"625 SXC 2007 (EU)","parent_id":"14846"},{"id":"15154","value":"640 ADVENTURE 2005 (EU)","parent_id":"14946"},{"id":"15176","value":"640 ADVENTURE 2007 (EU)","parent_id":"14846"},{"id":"16124","value":"640 ADVENTURE-R (EU)","parent_id":"15048"},{"id":"16118","value":"640 ADVENTURE-R 2000 (EU)","parent_id":"15051"},{"id":"16126","value":"640 ADVENTURE-R 2001 (EU)","parent_id":"14841"},{"id":"15232","value":"640 ADVENTURE-R 2002 (EU)","parent_id":"15208"},{"id":"15214","value":"640 ADVENTURE-R 2004 (EU)","parent_id":"14812"},{"id":"15113","value":"640 ADVENTURE-R D (EU)","parent_id":"14940"},{"id":"16645","value":"640 DUKE II 2000 (EU)","parent_id":"15051"},{"id":"15215","value":"640 DUKE II BLACK 2003 (EU)","parent_id":"14920"},{"id":"15228","value":"640 DUKE II BLACK 2004 (EU)","parent_id":"14812"},{"id":"15156","value":"640 DUKE II BLACK 2005 (EU)","parent_id":"14946"}
11712,{"id":"16656","value":"640 DUKE II COL 2 LAST 2006 (EU)","parent_id":"15071"},{"id":"16647","value":"640 DUKE II DUKE ROT 2001 (EU)","parent_id":"14841"},{"id":"33249","value":"640 DUKE II FARBE 3 2003 (EU)","parent_id":"14920"},{"id":"16123","value":"640 DUKE II LIME 2000 (EU)","parent_id":"15051"},{"id":"16121","value":"640 DUKE II LIME 2001 (EU)","parent_id":"14841"},{"id":"15166","value":"640 DUKE II LIMITED ED 2006 (EU)","parent_id":"15071"},{"id":"15234","value":"640 DUKE II ORANGE 2002 (EU)","parent_id":"15208"},{"id":"16664","value":"640 DUKE II ORANGE 2003 (EU)","parent_id":"14920"},{"id":"16708","value":"640 DUKE II RED 2005 (EU)","parent_id":"14946"},{"id":"16648","value":"640 DUKE II SCHWARZ 2002 (EU)","parent_id":"15208"},{"id":"16646","value":"640 DUKE II SCHWARZ-MET. 2000 (EU)","parent_id":"15051"},{"id":"16649","value":"640 DUKE II WEISS 2002 (EU)","parent_id":"15208"},{"id":"16655","value":"640 DUKE II YELLOW 2004 (EU)","parent_id":"14812"},{"id":"16117","value":"640 DUKE IILIME (EU)","parent_id":"15048"},{"id":"16540","value":"640 DUKE IITITAN (EU)","parent_id":"15048"},{"id":"15987","value":"640 DUKE-E (EU)","parent_id":"14940"},{"id":"41468","value":"640 LC 4 '98 (EU)","parent_id":"14940"}
11712,{"id":"15968","value":"640 LC 4 (EU)","parent_id":"15048"},{"id":"15112","value":"640 LC 4 98 (EU)","parent_id":"14940"},{"id":"15972","value":"640 LC-4 SUPER-MOTO (EU)","parent_id":"15048"},{"id":"40764","value":"640 LC4 '98 (EU)","parent_id":"14940"},{"id":"40788","value":"640 LC4 '99 (EU)","parent_id":"15048"},{"id":"15973","value":"640 LC4 - SILBER (EU)","parent_id":"15048"},{"id":"15970","value":"640 LC4 - SILBER\/185LT (EU)","parent_id":"15048"},{"id":"40787","value":"640 LC4 -SIX DAYS '99 (EU)","parent_id":"15048"},{"id":"15967","value":"640 LC4 -SIX DAYS 99 (EU)","parent_id":"15048"},{"id":"16535","value":"640 LC4 98 (EU)","parent_id":"14940"},{"id":"16539","value":"640 LC4 99 (EU)","parent_id":"15048"},{"id":"16470","value":"640 LC4 ADVENTURE 2003 (EU)","parent_id":"14920"},{"id":"15155","value":"640 LC4 ADVENTURE 2006 (EU)","parent_id":"15071"},{"id":"15243","value":"640 LC4 ENDURO BLACK 12L 03 (EU)","parent_id":"14920"},{"id":"15217","value":"640 LC4 ENDURO ORANGE 12L 2003 (EU)","parent_id":"14920"},{"id":"15211","value":"640 LC4 ENDURO ORANGE 2004 (EU)","parent_id":"14812"},{"id":"15178","value":"640 LC4 ENDURO ORANGE 2005 (EU)","parent_id":"14946"}
11712,{"id":"15186","value":"640 LC4 ENDURO ORANGE 2006 (EU)","parent_id":"15071"},{"id":"16651","value":"640 LC4 SUPERMOTO BLACK 05 (EU)","parent_id":"14946"},{"id":"16659","value":"640 LC4 SUPERMOTO BLACK 06 (EU)","parent_id":"15071"},{"id":"15213","value":"640 LC4 SUPERMOTO BLACK 2003 (EU)","parent_id":"14920"},{"id":"16657","value":"640 LC4 SUPERMOTO BLACK 2004 (EU)","parent_id":"14812"},{"id":"16652","value":"640 LC4 SUPERMOTO BLUE 05 (EU)","parent_id":"14946"},{"id":"16660","value":"640 LC4 SUPERMOTO BLUE 06 (EU)","parent_id":"15071"},{"id":"15157","value":"640 LC4 SUPERMOTO ORANGE 05 (EU)","parent_id":"14946"},{"id":"15168","value":"640 LC4 SUPERMOTO ORANGE 06 (EU)","parent_id":"15071"},{"id":"16665","value":"640 LC4 SUPERMOTO ORANGE 2003 (EU)","parent_id":"14920"},{"id":"15244","value":"640 LC4 SUPERMOTO ORANGE 2004 (EU)","parent_id":"14812"},{"id":"15227","value":"640 LC4 SUPERMOTO PRESTIGE 03 (EU)","parent_id":"14920"},{"id":"16658","value":"640 LC4 SUPERMOTO PRESTIGE 04 (EU)","parent_id":"14812"},{"id":"16653","value":"640 LC4 SUPERMOTO PRESTIGE 05 (EU)","parent_id":"14946"}
11712,{"id":"16663","value":"640 LC4 SUPERMOTO PRESTIGE 06 (EU)","parent_id":"15071"},{"id":"16654","value":"640 LC4 SUPERMOTO WHITE 05 (EU)","parent_id":"14946"},{"id":"15984","value":"640 LC4-E 2000 (EU)","parent_id":"15051"},{"id":"15975","value":"640 LC4-E 2001 (EU)","parent_id":"14841"},{"id":"33319","value":"640 LC4-E 25KW BLAU MIL (EU)","parent_id":"14940"},{"id":"33312","value":"640 LC4-E 25KW D BRONCEGR MIL (EU)","parent_id":"14940"},{"id":"33313","value":"640 LC4-E 25KW ROT MIL (EU)","parent_id":"14940"},{"id":"33311","value":"640 LC4-E CH BRONZEGR\u00dcN MIL (EU)","parent_id":"15048"},{"id":"15230","value":"640 LC4-E ORANGE 18L 2002 (EU)","parent_id":"15208"},{"id":"15239","value":"640 LC4-E ROT 2002 (EU)","parent_id":"15208"},{"id":"15982","value":"640 LC4-E S.MOTO PRESTIGE 2000 (EU)","parent_id":"15051"},{"id":"15983","value":"640 LC4-E SILBER 2000 (EU)","parent_id":"15051"},{"id":"15979","value":"640 LC4-E SILBER 2001 (EU)","parent_id":"14841"},{"id":"15985","value":"640 LC4-E SILBER\/185LT 2000 (EU)","parent_id":"15051"},{"id":"15978","value":"640 LC4-E SILBER\/185LT 2001 (EU)","parent_id":"14841"}
11712,{"id":"15981","value":"640 LC4-E SIX DAYS 2000 (EU)","parent_id":"15051"},{"id":"15976","value":"640 LC4-E SIX DAYS 2001 (EU)","parent_id":"14841"},{"id":"15225","value":"640 LC4-E SIX DAYS 2002 (EU)","parent_id":"15208"},{"id":"15235","value":"640 LC4-E STAHLBLAU 2002 (EU)","parent_id":"15208"},{"id":"15986","value":"640 LC4-E SUPER-MOTO 2000 (EU)","parent_id":"15051"},{"id":"15980","value":"640 LC4-E SUPER-MOTO 2001 (EU)","parent_id":"14841"},{"id":"15226","value":"640 LC4-E SUPER-MOTO ROT 2002 (EU)","parent_id":"15208"},{"id":"15237","value":"640 LC4-E SUPER-MOTO STAHLB.02 (EU)","parent_id":"15208"},{"id":"33144","value":"65 SX (EU)","parent_id":"14940"},{"id":"16030","value":"65 SX 2000 (EU)","parent_id":"15051"},{"id":"16031","value":"65 SX 2001 (EU)","parent_id":"14841"},{"id":"16033","value":"65 SX 2002 (EU)","parent_id":"15208"},{"id":"16463","value":"65 SX 2003 (EU)","parent_id":"14920"},{"id":"16467","value":"65 SX 2004 (EU)","parent_id":"14812"},{"id":"16479","value":"65 SX 2005 (EU)","parent_id":"14946"}
11712,{"id":"16468","value":"65 SX 2006 (EU)","parent_id":"15071"},{"id":"16469","value":"65 SX 2007 (EU)","parent_id":"14846"},{"id":"16517","value":"65 SX 2008 (EU)","parent_id":"14985"},{"id":"16036","value":"65 SX 2009 (EU)","parent_id":"14736"},{"id":"16034","value":"65 SX 2010 (EU)","parent_id":"14733"},{"id":"16371","value":"65 SX 2011 (EU)","parent_id":"14769"},{"id":"16373","value":"65 SX 2012 (EU)","parent_id":"14746"},{"id":"16374","value":"65 SX 2013 (EU)","parent_id":"14748"},{"id":"16375","value":"65 SX 2014 (EU)","parent_id":"14758"},{"id":"16376","value":"65 SX 2015 (EU)","parent_id":"14773"},{"id":"16377","value":"65 SX 2016 (EU)","parent_id":"14775"},{"id":"16378","value":"65 SX 2017 (EU)","parent_id":"14729"},{"id":"16037","value":"65 SX 2018 (EU)","parent_id":"14738"},{"id":"16372","value":"65 SX 2019 (EU)","parent_id":"14740"},{"id":"15777","value":"65 SX 2020 (EU)","parent_id":"14863"},{"id":"15805","value":"65 SX 2021 (EU)","parent_id":"15038"},{"id":"15833","value":"65 SX 2022 (EU)","parent_id":"15040"},{"id":"32457","value":"65 SX 2023 (EU)","parent_id":"17270"},{"id":"32471","value":"65 SX 2024","parent_id":"32421"},{"id":"33172","value":"65 SX 2025","parent_id":"33058"},{"id":"41487","value":"65 SX 2026 (EU)","parent_id":"41435"},{"id":"45857","value":"65 SX 2027","parent_id":"45841"}
11712,{"id":"16035","value":"65 XC 2009 (EU)","parent_id":"14736"},{"id":"33258","value":"65 XC 2010","parent_id":"14733"},{"id":"15681","value":"660 RALLY FACTORY REPLICA 2007 (EU)","parent_id":"14846"},{"id":"16500","value":"660 RALLYE 2002 (EU)","parent_id":"15208"},{"id":"16444","value":"660 RALLYE COSTUMER 2004 (EU)","parent_id":"14812"},{"id":"16360","value":"660 RALLYE FACTORY REPL. 2003 (EU)","parent_id":"14920"},{"id":"16445","value":"660 RALLYE FACTORY REPL. 2004 (EU)","parent_id":"14812"},{"id":"16421","value":"660 RALLYE FACTORY REPL. 2005 (EU)","parent_id":"14946"},{"id":"15990","value":"660 RALLYE FACTORY REPL. 2006 (EU)","parent_id":"15071"},{"id":"15210","value":"660 SM FACTORY REPLICA 2002 (EU)","parent_id":"15208"},{"id":"15216","value":"660 SMC 2003 (EU)","parent_id":"14920"},{"id":"15229","value":"660 SMC 2004 (EU)","parent_id":"14812"},{"id":"15192","value":"660 SMC 2005 (EU)","parent_id":"14946"},{"id":"15159","value":"660 SMC 2006 (EU)","parent_id":"15071"},{"id":"15164","value":"660 SMS (EU)","parent_id":"14812"},{"id":"15222","value":"660 SUPERMOTO FACTORY REPL. 03 (EU)","parent_id":"14920"}
11712,{"id":"15454","value":"690 DUKE BLACK 2009 (EU)","parent_id":"14736"},{"id":"15483","value":"690 DUKE BLACK 2010 (EU)","parent_id":"14733"},{"id":"15453","value":"690 DUKE BLACK 2011 (EU)","parent_id":"14769"},{"id":"16571","value":"690 DUKE BLACK 2012 (EU)","parent_id":"14746"},{"id":"15786","value":"690 DUKE BLACK ABS 2013 (EU)","parent_id":"14748"},{"id":"16628","value":"690 DUKE BLACK ABS 2014 (EU)","parent_id":"14758"},{"id":"16712","value":"690 DUKE BLACK ABS 2015 (EU)","parent_id":"14773"},{"id":"33236","value":"690 DUKE BLACK CKD 2012 (EU)","parent_id":"14746"},{"id":"16566","value":"690 DUKE ORANGE 2008 (EU)","parent_id":"14985"},{"id":"16568","value":"690 DUKE ORANGE 2009 (EU)","parent_id":"14736"},{"id":"16532","value":"690 DUKE ORANGE 2010 (EU)","parent_id":"14733"},{"id":"16630","value":"690 DUKE ORANGE 2017 (EU)","parent_id":"14729"},{"id":"15747","value":"690 DUKE ORANGE 2018 (EU)","parent_id":"14738"},{"id":"15783","value":"690 DUKE ORANGE 2019 (EU)","parent_id":"14740"},{"id":"16629","value":"690 DUKE ORANGE ABS 2016 (EU)","parent_id":"14775"}
11712,{"id":"15553","value":"690 DUKE R 2010 (EU)","parent_id":"14733"},{"id":"15661","value":"690 DUKE R 2011 (EU)","parent_id":"14769"},{"id":"16314","value":"690 DUKE R 2012 (EU)","parent_id":"14746"},{"id":"15732","value":"690 DUKE R 2017 (EU)","parent_id":"14729"},{"id":"15780","value":"690 DUKE R ABS 2013 (EU)","parent_id":"14748"},{"id":"15821","value":"690 DUKE R ABS 2014 (EU)","parent_id":"14758"},{"id":"15863","value":"690 DUKE R ABS 2015 (EU)","parent_id":"14773"},{"id":"15905","value":"690 DUKE R ABS 2016 (EU)","parent_id":"14775"},{"id":"33242","value":"690 DUKE TRACK 2013 (EU)","parent_id":"14748"},{"id":"15643","value":"690 DUKE WHITE 2008 (EU)","parent_id":"14985"},{"id":"16570","value":"690 DUKE WHITE 2009 (EU)","parent_id":"14736"},{"id":"16130","value":"690 DUKE WHITE 2010 (EU)","parent_id":"14733"},{"id":"15614","value":"690 DUKE WHITE 2012 (EU)","parent_id":"14746"},{"id":"15931","value":"690 DUKE WHITE 2017 (EU)","parent_id":"14729"},{"id":"15829","value":"690 DUKE WHITE ABS 2013 (EU)","parent_id":"14748"},{"id":"15909","value":"690 DUKE WHITE ABS 2014 (EU)","parent_id":"14758"},{"id":"16135","value":"690 DUKE WHITE ABS 2015 (EU)","parent_id":"14773"},{"id":"15847","value":"690 DUKE WHITE ABS 2016 (EU)","parent_id":"14775"},{"id":"33316","value":"690 DUKE WHITE CKD 2012 (EU)","parent_id":"14746"},{"id":"15417","value":"690 DUKE WHITE CUP 2012 (EU)","parent_id":"14746"},{"id":"15484","value":"690 ENDURO 08 (EU)","parent_id":"14985"},{"id":"15600","value":"690 ENDURO 09 (EU)","parent_id":"14736"}
11712,{"id":"15409","value":"690 ENDURO 2010 (EU)","parent_id":"14733"},{"id":"15521","value":"690 ENDURO R 09 (EU)","parent_id":"14736"},{"id":"45879","value":"690 ENDURO R 2 2026","parent_id":"41435"},{"id":"15634","value":"690 ENDURO R 2010 (EU)","parent_id":"14733"},{"id":"15442","value":"690 ENDURO R 2011 (EU)","parent_id":"14769"},{"id":"15549","value":"690 ENDURO R 2012 (EU)","parent_id":"14746"},{"id":"15903","value":"690 ENDURO R 2013 (EU)","parent_id":"14748"},{"id":"15844","value":"690 ENDURO R 2017 (EU)","parent_id":"14729"},{"id":"15889","value":"690 ENDURO R 2018 (EU)","parent_id":"14738"},{"id":"16323","value":"690 ENDURO R 2019 (EU)","parent_id":"14740"},{"id":"16322","value":"690 ENDURO R 2020 (EU)","parent_id":"14863"},{"id":"16394","value":"690 ENDURO R 2021 (EU)","parent_id":"15038"},{"id":"17265","value":"690 ENDURO R 2022 (EU)","parent_id":"15040"},{"id":"30388","value":"690 ENDURO R 2023 (EU)","parent_id":"17270"},{"id":"33075","value":"690 ENDURO R 2024 (EU)","parent_id":"32421"},{"id":"41559","value":"690 ENDURO R 2026 (EU)","parent_id":"41435"},{"id":"15731","value":"690 ENDURO R ABS 2014 (EU)","parent_id":"14758"},{"id":"15764","value":"690 ENDURO R ABS 2015 (EU)","parent_id":"14773"},{"id":"15800","value":"690 ENDURO R ABS 2016 (EU)","parent_id":"14775"}
11712,{"id":"15577","value":"690 RALLY FACTORY REPLICA (EU)","parent_id":"14733"},{"id":"15408","value":"690 RALLY FACTORY REPLICA 2007 (EU)","parent_id":"14846"},{"id":"15463","value":"690 RALLY FACTORY REPLICA 2008 (EU)","parent_id":"14985"},{"id":"15522","value":"690 RALLY FACTORY REPLICA 2009 (EU)","parent_id":"14736"},{"id":"15455","value":"690 SMC 09 (EU)","parent_id":"14736"},{"id":"15644","value":"690 SMC 2008 (EU)","parent_id":"14985"},{"id":"15564","value":"690 SMC 2010 (EU)","parent_id":"14733"},{"id":"15674","value":"690 SMC 2011 (EU)","parent_id":"14769"},{"id":"45878","value":"690 SMC R 2 2026","parent_id":"41435"},{"id":"15476","value":"690 SMC R 2012 (EU)","parent_id":"14746"},{"id":"15856","value":"690 SMC R 2013 (EU)","parent_id":"14748"},{"id":"15784","value":"690 SMC R 2017 (EU)","parent_id":"14729"},{"id":"16457","value":"690 SMC R 2019 (EU)","parent_id":"14740"},{"id":"16452","value":"690 SMC R 2020 (EU)","parent_id":"14863"},{"id":"16453","value":"690 SMC R 2021 (EU)","parent_id":"15038"},{"id":"17266","value":"690 SMC R 2022 (EU)","parent_id":"15040"},{"id":"30389","value":"690 SMC R 2023 (EU)","parent_id":"17270"},{"id":"33074","value":"690 SMC R 2024 (EU)","parent_id":"32421"},{"id":"41558","value":"690 SMC R 2026 (EU)","parent_id":"41435"},{"id":"15895","value":"690 SMC R ABS 2014 (EU)","parent_id":"14758"},{"id":"16313","value":"690 SMC R ABS 2015 (EU)","parent_id":"14773"},{"id":"15749","value":"690 SMC R ABS 2016 (EU)","parent_id":"14775"}
11712,{"id":"16604","value":"690 SUPERMOTO BLACK 2007 (EU)","parent_id":"14846"},{"id":"15456","value":"690 SUPERMOTO BLACK 2008 (EU)","parent_id":"14985"},{"id":"40883","value":"690 SUPERMOTO BLACK 2009 (EU)","parent_id":"14736"},{"id":"33318","value":"690 SUPERMOTO COLOR 1 2010 (EU)","parent_id":"14733"},{"id":"15624","value":"690 SUPERMOTO LIM.ED 2009 (EU)","parent_id":"14736"},{"id":"15535","value":"690 SUPERMOTO ORANGE 2007 (EU)","parent_id":"14846"},{"id":"15566","value":"690 SUPERMOTO ORANGE 2008 (EU)","parent_id":"14985"},{"id":"15645","value":"690 SUPERMOTO PRESTIGE 2007 (EU)","parent_id":"14846"},{"id":"15435","value":"690 SUPERMOTO R 2008 (EU)","parent_id":"14985"},{"id":"33262","value":"690 SUPERMOTO R 2010 (EU)","parent_id":"14733"},{"id":"33067","value":"790 ADVENTURE BLACK - D.D 2024 (EU)","parent_id":"32421"},{"id":"32506","value":"790 ADVENTURE BLACK 2023 (EU)","parent_id":"17270"},{"id":"33066","value":"790 ADVENTURE BLACK 2024 (EU)","parent_id":"32421"},{"id":"36556","value":"790 ADVENTURE ORANGE - D.D. 2025","parent_id":"33058"},{"id":"40802","value":"790 ADVENTURE ORANGE - D.D. 2025 (EU)","parent_id":"33058"},{"id":"41528","value":"790 ADVENTURE ORANGE - D.D. 2026 (EU)","parent_id":"41435"},{"id":"41527","value":"790 ADVENTURE ORANGE - D.D. 2026 (EU\/GB)","parent_id":"41435"},{"id":"15256","value":"790 ADVENTURE ORANGE 2019 (EU)","parent_id":"14740"},{"id":"15254","value":"790 ADVENTURE ORANGE 2020 (EU)","parent_id":"14863"},{"id":"36557","value":"790 ADVENTURE ORANGE 2025","parent_id":"33058"},{"id":"41525","value":"790 ADVENTURE ORANGE 2025 (EU)","parent_id":"33058"},{"id":"41526","value":"790 ADVENTURE ORANGE 2026 (EU)","parent_id":"41435"},{"id":"15274","value":"790 ADVENTURE R 2019 (EU)","parent_id":"14740"},{"id":"15259","value":"790 ADVENTURE R 2020 (EU)","parent_id":"14863"},{"id":"36473","value":"790 ADVENTURE R 2025","parent_id":"33058"},{"id":"15266","value":"790 ADVENTURE R RALLY 2020 (EU)","parent_id":"14863"},{"id":"40804","value":"790 ADVENTURE WHITE - CKD 2025","parent_id":"33058"},{"id":"36554","value":"790 ADVENTURE WHITE - D.D 2025","parent_id":"33058"},{"id":"40805","value":"790 ADVENTURE WHITE - D.D 2025 (EU)","parent_id":"33058"},{"id":"41531","value":"790 ADVENTURE WHITE - D.D 2026 (EU)","parent_id":"41435"},{"id":"41530","value":"790 ADVENTURE WHITE - D.D 2026 (EU\/GB)","parent_id":"41435"},{"id":"33068","value":"790 ADVENTURE WHITE - D.D. 2024 (EU)","parent_id":"32421"}
11712,{"id":"16726","value":"790 ADVENTURE WHITE 2019 (EU)","parent_id":"14740"},{"id":"16727","value":"790 ADVENTURE WHITE 2020 (EU)","parent_id":"14863"},{"id":"32503","value":"790 ADVENTURE WHITE 2023 (EU)","parent_id":"17270"},{"id":"33069","value":"790 ADVENTURE WHITE 2024 (EU)","parent_id":"32421"},{"id":"36555","value":"790 ADVENTURE WHITE 2025","parent_id":"33058"},{"id":"40803","value":"790 ADVENTURE WHITE 2025 (EU)","parent_id":"33058"},{"id":"41529","value":"790 ADVENTURE WHITE 2026 (EU)","parent_id":"41435"},{"id":"32504","value":"790 ADVENTUREBLACK 2023","parent_id":"17270"},{"id":"32505","value":"790 ADVENTUREBLACK-DIRECT DELIVERY 2023","parent_id":"17270"},{"id":"36525","value":"790 ADVENTUREBLACK-DIRECT DELIVERY 2023 (EU)","parent_id":"17270"},{"id":"32502","value":"790 ADVENTUREWHITE-DIRECT DELIVERY 2023","parent_id":"17270"},{"id":"36526","value":"790 ADVENTUREWHITE-DIRECT DELIVERY 2023 (EU)","parent_id":"17270"},{"id":"41518","value":"790 DUKE BLACK - D.D. 2025","parent_id":"33058"},{"id":"40800","value":"790 DUKE BLACK - D.D. 2025 (EU)","parent_id":"33058"},{"id":"41521","value":"790 DUKE BLACK - D.D. 2026 (EU)","parent_id":"41435"},{"id":"15264","value":"790 DUKE BLACK 2018 (EU)","parent_id":"14738"},{"id":"15273","value":"790 DUKE BLACK 2019 (EU)","parent_id":"14740"},{"id":"15261","value":"790 DUKE BLACK 2020 (EU)","parent_id":"14863"},{"id":"33090","value":"790 DUKE GREY - D.D. 2024 (EU)","parent_id":"32421"},{"id":"30324","value":"790 DUKE GREY - DIRECT DELIVERY 2023 (EU)","parent_id":"17270"},{"id":"30323","value":"790 DUKE GREY 2022","parent_id":"15040"},{"id":"17207","value":"790 DUKE GREY 2022 (EU)","parent_id":"15040"},{"id":"30325","value":"790 DUKE GREY 2023 (EU)","parent_id":"17270"},{"id":"15278","value":"790 DUKE L 2018 (EU)","parent_id":"14738"},{"id":"15260","value":"790 DUKE L BLACK 2019 (EU)","parent_id":"14740"},{"id":"16724","value":"790 DUKE L BLACK 2020 (EU)","parent_id":"14863"},{"id":"40798","value":"790 DUKE L BLACK 2025 (EU)","parent_id":"33058"},{"id":"41519","value":"790 DUKE L BLACK 2026 (EU)","parent_id":"41435"},{"id":"32501","value":"790 DUKE L GREY - DIRECT DELIVERY 2023","parent_id":"17270"},{"id":"17208","value":"790 DUKE L GREY 2022 (EU)","parent_id":"15040"},{"id":"30318","value":"790 DUKE L GREY 2023 (EU)","parent_id":"17270"},{"id":"33089","value":"790 DUKE L GREY 2024 (EU)","parent_id":"32421"},{"id":"32500","value":"790 DUKE L ORANGE - DIRECT DELIVERY2023","parent_id":"17270"},{"id":"16721","value":"790 DUKE L ORANGE 2019 (EU)","parent_id":"14740"},{"id":"15272","value":"790 DUKE L ORANGE 2020 (EU)","parent_id":"14863"},{"id":"17209","value":"790 DUKE L ORANGE 2022 (EU)","parent_id":"15040"},{"id":"30319","value":"790 DUKE L ORANGE 2023 (EU)","parent_id":"17270"},{"id":"33087","value":"790 DUKE L ORANGE 2024 (EU)","parent_id":"32421"},{"id":"40799","value":"790 DUKE L ORANGE 2025 (EU)","parent_id":"33058"},{"id":"41520","value":"790 DUKE L ORANGE 2026 (EU)","parent_id":"41435"},{"id":"33088","value":"790 DUKE ORANGE - D.D. 2024 (EU)","parent_id":"32421"},{"id":"41522","value":"790 DUKE ORANGE - D.D. 2026 (EU)","parent_id":"41435"},{"id":"41517","value":"790 DUKE ORANGE - DIRECT DELIVERY 2022 (EU)","parent_id":"15040"},{"id":"30321","value":"790 DUKE ORANGE - DIRECT DELIVERY 2023 (EU)","parent_id":"17270"},{"id":"15268","value":"790 DUKE ORANGE 2018 (EU)","parent_id":"14738"},{"id":"16722","value":"790 DUKE ORANGE 2019 (EU)","parent_id":"14740"},{"id":"15270","value":"790 DUKE ORANGE 2020 (EU)","parent_id":"14863"},{"id":"30320","value":"790 DUKE ORANGE 2022","parent_id":"15040"},{"id":"17211","value":"790 DUKE ORANGE 2022 (EU)","parent_id":"15040"},{"id":"30322","value":"790 DUKE ORANGE 2023 (EU)","parent_id":"17270"},{"id":"16379","value":"85 SX 17\/14 2005 (EU)","parent_id":"14946"}
11712,{"id":"16040","value":"85 SX 17\/14 2006 (EU)","parent_id":"15071"},{"id":"15426","value":"85 SX 17\/14 2007 (EU)","parent_id":"14846"},{"id":"15500","value":"85 SX 17\/14 2008 (EU)","parent_id":"14985"},{"id":"15581","value":"85 SX 17\/14 2009 (EU)","parent_id":"14736"},{"id":"15655","value":"85 SX 17\/14 2010 (EU)","parent_id":"14733"},{"id":"15437","value":"85 SX 17\/14 2011 (EU)","parent_id":"14769"},{"id":"15511","value":"85 SX 17\/14 2012 (EU)","parent_id":"14746"},{"id":"15897","value":"85 SX 17\/14 2013 (EU)","parent_id":"14748"},{"id":"15922","value":"85 SX 17\/14 2014 (EU)","parent_id":"14758"},{"id":"15733","value":"85 SX 17\/14 2015 (EU)","parent_id":"14773"},{"id":"15757","value":"85 SX 17\/14 2016 (EU)","parent_id":"14775"},{"id":"15782","value":"85 SX 17\/14 2017 (EU)","parent_id":"14729"},{"id":"15814","value":"85 SX 17\/14 2018 (EU)","parent_id":"14738"},{"id":"15841","value":"85 SX 17\/14 2019 (EU)","parent_id":"14740"},{"id":"15870","value":"85 SX 17\/14 2020 (EU)","parent_id":"14863"},{"id":"15902","value":"85 SX 17\/14 2021 (EU)","parent_id":"15038"},{"id":"15932","value":"85 SX 17\/14 2022 (EU)","parent_id":"15040"},{"id":"32469","value":"85 SX 17\/14 2023 (EU)","parent_id":"17270"},{"id":"32485","value":"85 SX 17\/14 2024 (EU)","parent_id":"32421"},{"id":"36479","value":"85 SX 17\/14 2025","parent_id":"33058"},{"id":"41476","value":"85 SX 17\/14 2026","parent_id":"41435"},{"id":"45843","value":"85 SX 17\/14 2026 (EU)","parent_id":"41435"},{"id":"45844","value":"85 SX 17\/14 2027","parent_id":"45841"}
11712,{"id":"16666","value":"85 SX 19\/16 2005 (EU)","parent_id":"14946"},{"id":"16667","value":"85 SX 19\/16 2006 (EU)","parent_id":"15071"},{"id":"16541","value":"85 SX 19\/16 2007 (EU)","parent_id":"14846"},{"id":"16542","value":"85 SX 19\/16 2008 (EU)","parent_id":"14985"},{"id":"16543","value":"85 SX 19\/16 2009 (EU)","parent_id":"14736"},{"id":"16544","value":"85 SX 19\/16 2010 (EU)","parent_id":"14733"},{"id":"16545","value":"85 SX 19\/16 2011 (EU)","parent_id":"14769"},{"id":"16546","value":"85 SX 19\/16 2012 (EU)","parent_id":"14746"},{"id":"15738","value":"85 SX 19\/16 2013 (EU)","parent_id":"14748"},{"id":"15763","value":"85 SX 19\/16 2014 (EU)","parent_id":"14758"},{"id":"15788","value":"85 SX 19\/16 2015 (EU)","parent_id":"14773"},{"id":"15819","value":"85 SX 19\/16 2016 (EU)","parent_id":"14775"},{"id":"15853","value":"85 SX 19\/16 2017 (EU)","parent_id":"14729"},{"id":"15877","value":"85 SX 19\/16 2018 (EU)","parent_id":"14738"},{"id":"15906","value":"85 SX 19\/16 2019 (EU)","parent_id":"14740"},{"id":"15933","value":"85 SX 19\/16 2020 (EU)","parent_id":"14863"},{"id":"15746","value":"85 SX 19\/16 2021 (EU)","parent_id":"15038"},{"id":"15769","value":"85 SX 19\/16 2022 (EU)","parent_id":"15040"},{"id":"32477","value":"85 SX 19\/16 2023 (EU)","parent_id":"17270"},{"id":"32445","value":"85 SX 19\/16 2024 (EU)","parent_id":"32421"},{"id":"36478","value":"85 SX 19\/16 2025","parent_id":"33058"},{"id":"41477","value":"85 SX 19\/16 2026","parent_id":"41435"},{"id":"45845","value":"85 SX 19\/16 2026 (EU)","parent_id":"41435"},{"id":"45846","value":"85 SX 19\/16 2027","parent_id":"45841"}
11712,{"id":"16487","value":"85 SX 2003 (EU)","parent_id":"14920"},{"id":"16488","value":"85 SX 2004 (EU)","parent_id":"14812"},{"id":"15590","value":"85 SXS 17\/14 2012 (EU)","parent_id":"14746"},{"id":"16731","value":"890 ADVENTURE BLACK 2021 (EU)","parent_id":"15038"},{"id":"17213","value":"890 ADVENTURE BLACK 2022 (EU)","parent_id":"15040"},{"id":"30344","value":"890 ADVENTURE BLACK 2023 (EU)","parent_id":"17270"},{"id":"33073","value":"890 ADVENTURE BLACK 2024 (EU)","parent_id":"32421"},{"id":"16732","value":"890 ADVENTURE L BLACK 2021 (EU)","parent_id":"15038"},{"id":"17214","value":"890 ADVENTURE L BLACK 2022 (EU)","parent_id":"15040"},{"id":"15286","value":"890 ADVENTURE L ORANGE 2021 (EU)","parent_id":"15038"},{"id":"17215","value":"890 ADVENTURE L ORANGE 2022 (EU)","parent_id":"15040"},{"id":"15288","value":"890 ADVENTURE ORANGE 2021 (EU)","parent_id":"15038"},{"id":"17216","value":"890 ADVENTURE ORANGE 2022 (EU)","parent_id":"15040"},{"id":"30345","value":"890 ADVENTURE ORANGE 2023 (EU)","parent_id":"17270"},{"id":"33071","value":"890 ADVENTURE ORANGE 2024 (EU)","parent_id":"32421"}
11712,{"id":"16343","value":"890 ADVENTURE R 2021 (EU)","parent_id":"15038"},{"id":"17212","value":"890 ADVENTURE R 2022 (EU)","parent_id":"15040"},{"id":"30346","value":"890 ADVENTURE R 2023 (EU)","parent_id":"17270"},{"id":"33070","value":"890 ADVENTURE R 2024 (EU)","parent_id":"32421"},{"id":"36472","value":"890 ADVENTURE R 2025","parent_id":"33058"},{"id":"40801","value":"890 ADVENTURE R 2025 (EU)","parent_id":"33058"},{"id":"41524","value":"890 ADVENTURE R 2026 (EU)","parent_id":"41435"},{"id":"16344","value":"890 ADVENTURE R RALLY 2021 (EU)","parent_id":"15038"},{"id":"33132","value":"890 ADVENTURE R RALLY 2024 (EU)","parent_id":"32421"},{"id":"45865","value":"890 ADVENTURE R RALLY 2026 (EU)","parent_id":"41435"},{"id":"16729","value":"890 DUKE BLACK 2021 (EU)","parent_id":"15038"},{"id":"17239","value":"890 DUKE BLACK 2022 (EU)","parent_id":"15040"},{"id":"30348","value":"890 DUKE GP BLACK 2023 (EU)","parent_id":"17270"},{"id":"17274","value":"890 DUKE GP ORANGE 2022 (EU)","parent_id":"15040"},{"id":"30349","value":"890 DUKE GP ORANGE 2023 (EU)","parent_id":"17270"},{"id":"16730","value":"890 DUKE L BLACK 2021 (EU)","parent_id":"15038"},{"id":"16137","value":"890 DUKE L ORANGE 2021 (EU)","parent_id":"15038"},{"id":"16139","value":"890 DUKE ORANGE 2021 (EU)","parent_id":"15038"},{"id":"17243","value":"890 DUKE ORANGE 2022 (EU)","parent_id":"15040"},{"id":"15271","value":"890 DUKE R 2020 (EU)","parent_id":"14863"},{"id":"16388","value":"890 DUKE R 2021 (EU)","parent_id":"15038"},{"id":"30347","value":"890 DUKE R 2022","parent_id":"15040"},{"id":"33120","value":"890 DUKE R 2022 (EU)","parent_id":"15040"},{"id":"30343","value":"890 DUKE R 2023 (EU)","parent_id":"17270"},{"id":"16728","value":"890 DUKE R EU5 KR 202 (EU)","parent_id":"14863"},{"id":"32499","value":"890 SMT 2023 (EU)","parent_id":"17270"},{"id":"33072","value":"890 SMT 2024 (EU)","parent_id":"32421"},{"id":"45864","value":"890 SMT 2026 (EU)","parent_id":"41435"},{"id":"16704","value":"950 ADVENTURE BLACK 2005 (EU)","parent_id":"14946"}
11712,{"id":"16700","value":"950 ADVENTURE BLACK LOW 2004 (EU)","parent_id":"14812"},{"id":"14947","value":"950 ADVENTURE ORANGE 2005 (EU)","parent_id":"14946"},{"id":"16698","value":"950 ADVENTURE ORANGE LOW 2003 (EU)","parent_id":"14920"},{"id":"16702","value":"950 ADVENTURE ORANGE LOW 2004 (EU)","parent_id":"14812"},{"id":"14952","value":"950 ADVENTURE S 2005 (EU)","parent_id":"14946"},{"id":"14931","value":"950 ADVENTURE S BLUE HIGH 2004 (EU)","parent_id":"14812"},{"id":"14923","value":"950 ADVENTURE S ORANGE 2003 (EU)","parent_id":"14920"},{"id":"14921","value":"950 ADVENTURE SILVER 2003 (EU)","parent_id":"14920"},{"id":"14927","value":"950 ADVENTURE SILVER LOW 2004 (EU)","parent_id":"14812"},{"id":"15685","value":"950 SUPER ENDURO ERZBERG 08 (EU)","parent_id":"14985"},{"id":"15671","value":"950 SUPER ENDURO R 2008 (EU)","parent_id":"14985"},{"id":"15079","value":"950 SUPERENDURO R 06 (EU)","parent_id":"15071"},{"id":"15089","value":"950 SUPERENDURO R 2007 (EU)","parent_id":"14846"},{"id":"16831","value":"950 SUPERMOTO BLACK 2005 (EU)","parent_id":"14946"}
11712,{"id":"16697","value":"950 SUPERMOTO BLACK 2006 (EU)","parent_id":"15071"},{"id":"15088","value":"950 SUPERMOTO BLACK 2007 (EU)","parent_id":"14846"},{"id":"33235","value":"950 SUPERMOTO COLOR 3 2006 (EU)","parent_id":"15071"},{"id":"15096","value":"950 SUPERMOTO ORANGE 07 (EU)","parent_id":"14846"},{"id":"15087","value":"950 SUPERMOTO ORANGE 2005 (EU)","parent_id":"14946"},{"id":"36504","value":"950 SUPERMOTO ORANGE 2005 (GB\/AU)","parent_id":"14946"},{"id":"15078","value":"950 SUPERMOTO ORANGE 2006 (EU)","parent_id":"15071"},{"id":"15082","value":"950 SUPERMOTO R 2007 (EU)","parent_id":"14846"},{"id":"15569","value":"950 SUPERMOTO R 2008 (EU)","parent_id":"14985"},{"id":"16718","value":"990 ADV. LIM. EDIT. OR ABS 11 (EU)","parent_id":"14769"},{"id":"16719","value":"990 ADV. LIM.EDIT. WH. ABS 11 (EU)","parent_id":"14769"},{"id":"16720","value":"990 ADV. R LIM.EDIT. 2011 (EU)","parent_id":"14769"},{"id":"16607","value":"990 ADVENTURE BLACK ABS 07 (EU)","parent_id":"14846"},{"id":"16695","value":"990 ADVENTURE BLACK ABS 2006 (EU)","parent_id":"15071"},{"id":"16609","value":"990 ADVENTURE BLACK ABS 2008 (EU)","parent_id":"14985"},{"id":"16620","value":"990 ADVENTURE BLUE ABS 12 (EU)","parent_id":"14746"},{"id":"16621","value":"990 ADVENTURE BLUE ABS 12 (FR)","parent_id":"14746"},{"id":"33238","value":"990 ADVENTURE COL. 1 ABS 12 (EU)","parent_id":"14746"},{"id":"16616","value":"990 ADVENTURE DAKAR EDITION 11 (EU)","parent_id":"14769"},{"id":"15035","value":"990 ADVENTURE DAKAR EDITION 11 (FR)","parent_id":"14769"},{"id":"33250","value":"990 ADVENTURE ESCORT 2011 (EU)","parent_id":"14769"},{"id":"16613","value":"990 ADVENTURE LIM. EDIT. 2010 (EU)","parent_id":"14733"},{"id":"14958","value":"990 ADVENTURE ORANGE ABS 07 (EU)","parent_id":"14846"}
11712,{"id":"15025","value":"990 ADVENTURE ORANGE ABS 09 (EU)","parent_id":"14736"},{"id":"15026","value":"990 ADVENTURE ORANGE ABS 10 (EU)","parent_id":"14733"},{"id":"15030","value":"990 ADVENTURE ORANGE ABS 11 (EU)","parent_id":"14769"},{"id":"15090","value":"990 ADVENTURE ORANGE ABS 2006 (EU)","parent_id":"15071"},{"id":"14987","value":"990 ADVENTURE ORANGE ABS 2008 (EU)","parent_id":"14985"},{"id":"15054","value":"990 ADVENTURE R 2009 (EU)","parent_id":"14736"},{"id":"15055","value":"990 ADVENTURE R 2009 (FR)","parent_id":"14736"},{"id":"15067","value":"990 ADVENTURE R 2010 (EU)","parent_id":"14733"},{"id":"15068","value":"990 ADVENTURE R 2010 (FR)","parent_id":"14733"},{"id":"15576","value":"990 ADVENTURE R 2011 (EU)","parent_id":"14769"},{"id":"15633","value":"990 ADVENTURE R 2011 (FR)","parent_id":"14769"},{"id":"15544","value":"990 ADVENTURE R 2012 (EU)","parent_id":"14746"},{"id":"15072","value":"990 ADVENTURE S 2006 (EU)","parent_id":"15071"},{"id":"15083","value":"990 ADVENTURE S 2007 (EU)","parent_id":"14846"}
11712,{"id":"14990","value":"990 ADVENTURE S 2008 (EU)","parent_id":"14985"},{"id":"16611","value":"990 ADVENTURE WHITE ABS 09 (EU)","parent_id":"14736"},{"id":"16614","value":"990 ADVENTURE WHITE ABS 10 (EU)","parent_id":"14733"},{"id":"16618","value":"990 ADVENTURE WHITE ABS 11 (EU)","parent_id":"14769"},{"id":"15044","value":"990 ADVENTURE WHITE ABS 12 (EU)","parent_id":"14746"},{"id":"15045","value":"990 ADVENTURE WHITE ABS 12 (FR)","parent_id":"14746"},{"id":"41523","value":"990 DUKE 2026 (EU)","parent_id":"41435"},{"id":"33186","value":"990 DUKE BLACK 2024 (EU)","parent_id":"32421"},{"id":"33187","value":"990 DUKE ORANGE 2024 (EU)","parent_id":"32421"},{"id":"41532","value":"990 DUKE R 2026 (EU)","parent_id":"41435"},{"id":"36474","value":"990 DUKE R WHITE 2025 (EU)","parent_id":"33058"},{"id":"41533","value":"990 RC R BLACK 2026 (EU)","parent_id":"41435"},{"id":"41534","value":"990 RC R ORANGE 2026 (EU)","parent_id":"41435"},{"id":"45866","value":"990 RC R TRACK 2026","parent_id":"41435"},{"id":"16707","value":"990 SM-T LIM.EDIT.OR. ABS 2011 (EU)","parent_id":"14769"},{"id":"16547","value":"990 SUPER DUKE ANTHRAZIT 07 (EU)","parent_id":"14846"}
11712,{"id":"16548","value":"990 SUPER DUKE ANTHRAZIT 07 (FR)","parent_id":"14846"},{"id":"16550","value":"990 SUPER DUKE BLACK 2007 (EU)","parent_id":"14846"},{"id":"16551","value":"990 SUPER DUKE BLACK 2007 (FR)","parent_id":"14846"},{"id":"16553","value":"990 SUPER DUKE BLACK 2008 (EU)","parent_id":"14985"},{"id":"16554","value":"990 SUPER DUKE BLACK 2008 (FR)","parent_id":"14985"},{"id":"16562","value":"990 SUPER DUKE BLACK 2009 (EU)","parent_id":"14736"},{"id":"16563","value":"990 SUPER DUKE BLACK 2009 (FR)","parent_id":"14736"},{"id":"15584","value":"990 SUPER DUKE BLACK 2011 (EU)","parent_id":"14769"},{"id":"15639","value":"990 SUPER DUKE BLACK 2011 (FR)","parent_id":"14769"},{"id":"15392","value":"990 SUPER DUKE BLACK 2012 (FR)","parent_id":"14746"},{"id":"15608","value":"990 SUPER DUKE OLIVE-ME. 2010 (EU)","parent_id":"14733"},{"id":"16564","value":"990 SUPER DUKE OLIVE-ME. 2010 (FR)","parent_id":"14733"},{"id":"15599","value":"990 SUPER DUKE ORANGE 2007 (EU)","parent_id":"14846"},{"id":"15653","value":"990 SUPER DUKE ORANGE 2007 (FR)","parent_id":"14846"}
11712,{"id":"15630","value":"990 SUPER DUKE ORANGE 2008 (EU)","parent_id":"14985"},{"id":"15682","value":"990 SUPER DUKE ORANGE 2008 (FR)","parent_id":"14985"},{"id":"15390","value":"990 SUPER DUKE ORANGE 2009 (EU)","parent_id":"14736"},{"id":"15445","value":"990 SUPER DUKE ORANGE 2009 (FR)","parent_id":"14736"},{"id":"15494","value":"990 SUPER DUKE ORANGE 2010 (EU)","parent_id":"14733"},{"id":"15418","value":"990 SUPER DUKE ORANGE 2010 (FR)","parent_id":"14733"},{"id":"16096","value":"990 SUPER DUKE R 2007 (EU)","parent_id":"14846"},{"id":"16100","value":"990 SUPER DUKE R 2007 (FR)","parent_id":"14846"},{"id":"16111","value":"990 SUPER DUKE R 2008 (EU)","parent_id":"14985"},{"id":"16112","value":"990 SUPER DUKE R 2008 (FR)","parent_id":"14985"},{"id":"16108","value":"990 SUPER DUKE R 2009 (EU)","parent_id":"14736"},{"id":"16109","value":"990 SUPER DUKE R 2009 (FR)","parent_id":"14736"},{"id":"16105","value":"990 SUPER DUKE R 2010 (EU)","parent_id":"14733"},{"id":"16106","value":"990 SUPER DUKE R 2010 (FR)","parent_id":"14733"},{"id":"16115","value":"990 SUPER DUKE R 2011 (EU)","parent_id":"14769"},{"id":"16113","value":"990 SUPER DUKE R 2011 (FR)","parent_id":"14769"},{"id":"15395","value":"990 SUPER DUKE R 2012 (EU)","parent_id":"14746"},{"id":"15501","value":"990 SUPER DUKE R 2012 (FR)","parent_id":"14746"},{"id":"15907","value":"990 SUPER DUKE R 2013 (EU)","parent_id":"14748"},{"id":"15730","value":"990 SUPER DUKE R 2013 (FR)","parent_id":"14748"},{"id":"16556","value":"990 SUPER DUKE WHITE 2008 (EU)","parent_id":"14985"},{"id":"16557","value":"990 SUPER DUKE WHITE 2008 (FR)","parent_id":"14985"},{"id":"16559","value":"990 SUPER DUKE WHITE 2009 (EU)","parent_id":"14736"}
11712,{"id":"16560","value":"990 SUPER DUKE WHITE 2009 (FR)","parent_id":"14736"},{"id":"33264","value":"990 SUPER DUKE WHITE 2010 (FR)","parent_id":"14733"},{"id":"16686","value":"990 SUPERDUKE BLACK 2005 (EU)","parent_id":"14946"},{"id":"16685","value":"990 SUPERDUKE BLACK 2005 (FR)","parent_id":"14946"},{"id":"16689","value":"990 SUPERDUKE BLACK 2006 (EU)","parent_id":"15071"},{"id":"16688","value":"990 SUPERDUKE BLACK 2006 (FR)","parent_id":"15071"},{"id":"16091","value":"990 SUPERDUKE ORANGE 2005 (EU)","parent_id":"14946"},{"id":"16094","value":"990 SUPERDUKE ORANGE 2005 (FR)","parent_id":"14946"},{"id":"16095","value":"990 SUPERDUKE ORANGE 2006 (EU)","parent_id":"15071"},{"id":"16098","value":"990 SUPERDUKE ORANGE 2006 (FR)","parent_id":"15071"},{"id":"16087","value":"990 SUPERDUKE SCHW\/ANTH 04 (EU)","parent_id":"14812"},{"id":"16693","value":"990 SUPERDUKE SCHW\/OR 04 (EU)","parent_id":"14812"},{"id":"16690","value":"990 SUPERDUKE TITANIUM 2006 (EU)","parent_id":"15071"},{"id":"16691","value":"990 SUPERDUKE TITANIUM 2006 (FR)","parent_id":"15071"},{"id":"16595","value":"990 SUPERM. T BLACK ABS 2011 (EU)","parent_id":"14769"},{"id":"15473","value":"990 SUPERM. T BLACK ABS 2011 (FR)","parent_id":"14769"},{"id":"16600","value":"990 SUPERM. T BLACK ABS 2012 (EU)","parent_id":"14746"},{"id":"16601","value":"990 SUPERM. T BLACK ABS 2012 (FR)","parent_id":"14746"},{"id":"16597","value":"990 SUPERM. T ORANGE ABS 2011 (EU)","parent_id":"14769"},{"id":"16598","value":"990 SUPERM. T ORANGE ABS 2011 (FR)","parent_id":"14769"},{"id":"15491","value":"990 SUPERM. T ORANGE ABS 2012 (EU)","parent_id":"14746"},{"id":"16602","value":"990 SUPERM. T ORANGE ABS 2012 (FR)","parent_id":"14746"},{"id":"15459","value":"990 SUPERM. T WHITE ABS 2011 (EU)","parent_id":"14769"},{"id":"15515","value":"990 SUPERM. T WHITE ABS 2011 (FR)","parent_id":"14769"},{"id":"15666","value":"990 SUPERM. T WHITE ABS 2012 (EU)","parent_id":"14746"},{"id":"15424","value":"990 SUPERM. T WHITE ABS 2012 (FR)","parent_id":"14746"},{"id":"16588","value":"990 SUPERMOTO BLACK 2008 (EU)","parent_id":"14985"},{"id":"16589","value":"990 SUPERMOTO BLACK 2008 (FR)","parent_id":"14985"},{"id":"15391","value":"990 SUPERMOTO BLACK 2009 (EU)","parent_id":"14736"}
11712,{"id":"16706","value":"990 SUPERMOTO BLACK 2009 (FR)","parent_id":"14736"},{"id":"15548","value":"990 SUPERMOTO ORANGE 2008 (EU)","parent_id":"14985"},{"id":"15605","value":"990 SUPERMOTO ORANGE 2008 (FR)","parent_id":"14985"},{"id":"15527","value":"990 SUPERMOTO ORANGE 2009 (EU)","parent_id":"14736"},{"id":"15583","value":"990 SUPERMOTO ORANGE 2009 (FR)","parent_id":"14736"},{"id":"33266","value":"990 SUPERMOTO ORANGE 2010 (FR)","parent_id":"14733"},{"id":"15394","value":"990 SUPERMOTO R 2009 (EU)","parent_id":"14736"},{"id":"15450","value":"990 SUPERMOTO R 2009 (FR)","parent_id":"14736"},{"id":"15562","value":"990 SUPERMOTO R 2010 (EU)","parent_id":"14733"},{"id":"15619","value":"990 SUPERMOTO R 2010 (FR)","parent_id":"14733"},{"id":"15430","value":"990 SUPERMOTO R 2011 (EU)","parent_id":"14769"},{"id":"15481","value":"990 SUPERMOTO R 2011 (FR)","parent_id":"14769"},{"id":"15597","value":"990 SUPERMOTO R 2012 (EU)","parent_id":"14746"},{"id":"15652","value":"990 SUPERMOTO R 2012 (FR)","parent_id":"14746"},{"id":"15756","value":"990 SUPERMOTO R ABS 2013 (EU)","parent_id":"14748"},{"id":"15791","value":"990 SUPERMOTO R ABS 2013 (FR)","parent_id":"14748"},{"id":"33272","value":"990 SUPERMOTO R ABS 2014 (EU)","parent_id":"14758"},{"id":"33273","value":"990 SUPERMOTO R ABS 2014 (FR)","parent_id":"14758"},{"id":"15809","value":"990 SUPERMOTO T BLACK ABS 2013 (EU)","parent_id":"14748"},{"id":"15858","value":"990 SUPERMOTO T BLACK ABS 2013 (FR)","parent_id":"14748"},{"id":"15585","value":"990 SUPERMOTO T LIM. EDIT. 10 (EU)","parent_id":"14733"},{"id":"15520","value":"990 SUPERMOTO T ORANGE 09 (EU)","parent_id":"14736"}
11712,{"id":"15632","value":"990 SUPERMOTO T ORANGE 2009 (FR)","parent_id":"14736"},{"id":"15611","value":"990 SUPERMOTO T ORANGE 2010 (EU)","parent_id":"14733"},{"id":"15664","value":"990 SUPERMOTO T ORANGE 2010 (FR)","parent_id":"14733"},{"id":"16591","value":"990 SUPERMOTO T SILVER 2009 (EU)","parent_id":"14736"},{"id":"16592","value":"990 SUPERMOTO T SILVER 2009 (FR)","parent_id":"14736"},{"id":"16593","value":"990 SUPERMOTO T SILVER 2010 (EU)","parent_id":"14733"},{"id":"15531","value":"990 SUPERMOTO T SILVER 2010 (FR)","parent_id":"14733"},{"id":"17217","value":"BRABUS 1300 R BLACK 2022","parent_id":"15040"},{"id":"33098","value":"BRABUS 1300 R BLACK 2022 (EU)","parent_id":"15040"},{"id":"33094","value":"BRABUS 1300 R BLACK 2023 (EU)","parent_id":"17270"},{"id":"33095","value":"BRABUS 1300 R BLACK GOLD 2023 (EU)","parent_id":"17270"},{"id":"33357","value":"BRABUS 1300 R BLACK\u00a02023 (EU)","parent_id":"17270"},{"id":"33097","value":"BRABUS 1300 R GREY 2023 (EU)","parent_id":"17270"},{"id":"17218","value":"BRABUS 1300 R RED 2022","parent_id":"15040"},{"id":"33093","value":"BRABUS 1300 R RED 2022 (EU)","parent_id":"15040"},{"id":"33096","value":"BRABUS 1300 R WHITE GOLD 2023 (EU)","parent_id":"17270"},{"id":"15839","value":"FREERIDE 250 F 2018 (EU)","parent_id":"14738"},{"id":"15881","value":"FREERIDE 250 F 2019 (EU)","parent_id":"14740"},{"id":"15918","value":"FREERIDE 250 F 2020 (EU)","parent_id":"14863"},{"id":"15930","value":"FREERIDE 250 R 2014 (EU)","parent_id":"14758"},{"id":"15742","value":"FREERIDE 250 R 2015 (EU)","parent_id":"14773"},{"id":"15772","value":"FREERIDE 250 R 2016 (EU)","parent_id":"14775"}
11712,{"id":"15804","value":"FREERIDE 250 R 2017 (EU)","parent_id":"14729"},{"id":"15679","value":"FREERIDE 350 2012 (EU)","parent_id":"14746"},{"id":"15774","value":"FREERIDE 350 2013 (EU)","parent_id":"14748"},{"id":"15812","value":"FREERIDE 350 2014 (EU)","parent_id":"14758"},{"id":"15852","value":"FREERIDE 350 2015 (EU)","parent_id":"14773"},{"id":"15893","value":"FREERIDE 350 2016 (EU)","parent_id":"14775"},{"id":"15925","value":"FREERIDE 350 2017 (EU)","parent_id":"14729"},{"id":"40782","value":"FREERIDE E 660W 2025 (EU)","parent_id":"33058"},{"id":"45847","value":"FREERIDE E 660W 2027 (EU)","parent_id":"45841"},{"id":"33244","value":"FREERIDE E-EXC 2012","parent_id":"14746"},{"id":"33239","value":"FREERIDE E-EXC 2013","parent_id":"14748"},{"id":"33274","value":"FREERIDE E-EXC 2014","parent_id":"14758"},{"id":"15888","value":"FREERIDE E-SM 2015 (EU)","parent_id":"14773"},{"id":"15908","value":"FREERIDE E-SM 2016 (EU)","parent_id":"14775"},{"id":"33245","value":"FREERIDE E-SX 2012 (EU)","parent_id":"14746"},{"id":"33240","value":"FREERIDE E-SX 2013 (EU)","parent_id":"14748"},{"id":"15737","value":"FREERIDE E-SX 2014 (EU)","parent_id":"14758"},{"id":"15758","value":"FREERIDE E-SX 2015 (EU)","parent_id":"14773"},{"id":"15778","value":"FREERIDE E-SX 2016 (EU)","parent_id":"14775"}
11712,{"id":"15798","value":"FREERIDE E-XC 2015 (EU)","parent_id":"14773"},{"id":"15824","value":"FREERIDE E-XC 2016 (EU)","parent_id":"14775"},{"id":"15855","value":"FREERIDE E-XC 2017 (EU)","parent_id":"14729"},{"id":"15872","value":"FREERIDE E-XC 2018 (EU)","parent_id":"14738"},{"id":"15915","value":"FREERIDE E-XC 2019 (EU)","parent_id":"14740"},{"id":"15936","value":"FREERIDE E-XC 2020 (EU)","parent_id":"14863"},{"id":"15745","value":"FREERIDE E-XC 2021 (EU)","parent_id":"15038"},{"id":"15762","value":"FREERIDE E-XC 2022 (EU)","parent_id":"15040"},{"id":"30335","value":"FREERIDE E-XC 2023","parent_id":"17270"},{"id":"33200","value":"FREERIDE E-XC 2023 (EU)","parent_id":"17270"},{"id":"15898","value":"FREERIDE E-XC NG 2018 (EU)","parent_id":"14738"},{"id":"17273","value":"KTM 450 RALLY REPLICA 2023","parent_id":"17270"},{"id":"32422","value":"KTM 450 RALLY REPLICA 2024","parent_id":"32421"},{"id":"36482","value":"KTM 450 RALLY REPLICA 2025","parent_id":"33058"},{"id":"41481","value":"KTM 450 RALLY REPLICA 2026","parent_id":"41435"},{"id":"45853","value":"KTM 450 RALLY REPLICA 2027","parent_id":"45841"},{"id":"33299","value":"KTM 85 SX-GR WP (EU)","parent_id":"33298"},{"id":"32432","value":"KTMR2R 1290 SUPER DUKE RR 2023","parent_id":"17270"},{"id":"33222","value":"RC 125 \/ ABS 2014 (EU)","parent_id":"14758"},{"id":"17224","value":"RC 125 BLACK - B.D. 2022","parent_id":"15040"},{"id":"33123","value":"RC 125 BLACK - NHD - B.D. 2024 (EU)","parent_id":"32421"}
11712,{"id":"16289","value":"RC 125 BLACK \/ ABS 2014 (EU)","parent_id":"14758"},{"id":"16285","value":"RC 125 BLACK \/ ABS 2015 (EU)","parent_id":"14773"},{"id":"17219","value":"RC 125 BLACK 2022 (EU)","parent_id":"15040"},{"id":"33128","value":"RC 125 BLACK 2024 (EU)","parent_id":"32421"},{"id":"16746","value":"RC 125 BLACK ABS B.D. 2014 (EU)","parent_id":"14758"},{"id":"16742","value":"RC 125 BLACK ABS B.D. 2015 (EU)","parent_id":"14773"},{"id":"33127","value":"RC 125 BLUE - NHD - B.D. 2024 (EU)","parent_id":"32421"},{"id":"33126","value":"RC 125 BLUE 2024 (EU)","parent_id":"32421"},{"id":"30316","value":"RC 125 GP ORANGE - B.D. 2023 (EU)","parent_id":"17270"},{"id":"30317","value":"RC 125 GP ORANGE 2023 (EU)","parent_id":"17270"},{"id":"16389","value":"RC 125 GREY 2020 (EU)","parent_id":"14863"},{"id":"16799","value":"RC 125 ORANGE - B.D. 2018 (EU)","parent_id":"14738"},{"id":"16800","value":"RC 125 ORANGE - B.D. 2019 (EU)","parent_id":"14740"},{"id":"16390","value":"RC 125 ORANGE 2017 (EU)","parent_id":"14729"},{"id":"16296","value":"RC 125 ORANGE 2018 (EU)","parent_id":"14738"},{"id":"16292","value":"RC 125 ORANGE 2019 (EU)","parent_id":"14740"},{"id":"16774","value":"RC 125 ORANGE B.D. 2017 (EU)","parent_id":"14729"},{"id":"17221","value":"RC 125 WHITE - B.D. 2022","parent_id":"15040"},{"id":"30314","value":"RC 125 WHITE - B.D. 2023 (EU)","parent_id":"17270"},{"id":"16287","value":"RC 125 WHITE \/ ABS 2016 (EU)","parent_id":"14775"}
11712,{"id":"17222","value":"RC 125 WHITE 2022 (EU)","parent_id":"15040"},{"id":"30315","value":"RC 125 WHITE 2023 (EU)","parent_id":"17270"},{"id":"16765","value":"RC 125 WHITE ABS B.D. 2016 (EU)","parent_id":"14775"},{"id":"33275","value":"RC 200 ABS 2014 (EU)","parent_id":"14758"},{"id":"16748","value":"RC 200 BAJ.DIR. 2014 (EU)","parent_id":"14758"},{"id":"16238","value":"RC 200 BL. W\/O ABS B.D. 15 (EU)","parent_id":"14773"},{"id":"33045","value":"RC 200 BLACK - B.D. 2024 (EU)","parent_id":"32421"},{"id":"17223","value":"RC 200 BLACK ABS - B.D. 2022 (EU)","parent_id":"15040"},{"id":"16236","value":"RC 200 BLACK ABS B.D. 14 (EU)","parent_id":"14758"},{"id":"16392","value":"RC 200 BLACK W\/O ABS - B.D. 2020 (EU)","parent_id":"14863"},{"id":"36520","value":"RC 200 BLACK W\/O ABS - B.D. 2021 (EU)","parent_id":"15038"},{"id":"33044","value":"RC 200 BLUE - B.D. 2024 (EU)","parent_id":"32421"},{"id":"30339","value":"RC 200 GP ORANGE - B.D. 2023 (EU)","parent_id":"17270"},{"id":"30341","value":"RC 200 GP ORANGE - CKD 2023 (EU)","parent_id":"17270"},{"id":"30336","value":"RC 200 GP ORANGE - IKD 2023 (EU)","parent_id":"17270"},{"id":"30337","value":"RC 200 GP ORANGE 2023","parent_id":"17270"},{"id":"30338","value":"RC 200 SILVER - B.D. 2023 (EU)","parent_id":"17270"},{"id":"30340","value":"RC 200 SILVER - CKD 2023 (EU)","parent_id":"17270"},{"id":"30342","value":"RC 200 SILVER 2023","parent_id":"17270"},{"id":"17220","value":"RC 200 SILVER ABS - B.D. 2022 (EU)","parent_id":"15040"},{"id":"16293","value":"RC 200 WHITE W\/O ABS - B.D. 2018 (EU)","parent_id":"14738"},{"id":"16295","value":"RC 200 WHITE W\/O ABS - B.D. 2019 (EU)","parent_id":"14740"},{"id":"16224","value":"RC 200 WHITE W\/O ABS B.D. 16 (EU)","parent_id":"14775"}
11712,{"id":"16299","value":"RC 200 WHITE W\/O ABS B.D. 17 (EU)","parent_id":"14729"},{"id":"16303","value":"RC 250 ORANGE B.D. 17 (EU)","parent_id":"14729"},{"id":"16501","value":"RC 250 R 2013 (EU)","parent_id":"14748"},{"id":"16502","value":"RC 250 R 2014 (EU)","parent_id":"14758"},{"id":"16830","value":"RC 250 R ROOKIES 2013 (EU)","parent_id":"14748"},{"id":"16297","value":"RC 250 WHITE ABS B.D. 15 (EU)","parent_id":"14773"},{"id":"16300","value":"RC 250 WHITE ABS B.D. 16 (EU)","parent_id":"14775"},{"id":"33223","value":"RC 390 \/ ABS 2014 (EU)","parent_id":"14758"},{"id":"33224","value":"RC 390 \/ ABS BAJAJ DIREKT 2014 (EU)","parent_id":"14758"},{"id":"16828","value":"RC 390 ADAC CUP \/ ABS 2014 (EU)","parent_id":"14758"},{"id":"16302","value":"RC 390 ADAC CUP 2015 (EU)","parent_id":"14773"},{"id":"16304","value":"RC 390 ADAC CUP 2016 (EU)","parent_id":"14775"},{"id":"16817","value":"RC 390 BLACK - B.D. 2018 (EU)","parent_id":"14738"},{"id":"16818","value":"RC 390 BLACK - B.D. 2019 (EU)","parent_id":"14740"},{"id":"16308","value":"RC 390 BLACK 2017 (EU)","parent_id":"14729"},{"id":"16284","value":"RC 390 BLACK 2018 (EU)","parent_id":"14738"},{"id":"16281","value":"RC 390 BLACK 2019 (EU)","parent_id":"14740"},{"id":"16816","value":"RC 390 BLACK B.D. 17 (EU)","parent_id":"14729"},{"id":"17226","value":"RC 390 BLUE - B.D. 2022","parent_id":"15040"},{"id":"17228","value":"RC 390 BLUE - B.D. 2022 (EU)","parent_id":"15040"},{"id":"30387","value":"RC 390 BLUE - B.D. 2023 (EU)","parent_id":"17270"},{"id":"33053","value":"RC 390 BLUE - B.D. 2024 (EU)","parent_id":"32421"},{"id":"33051","value":"RC 390 BLUE - NHD - B.D. 2023","parent_id":"17270"},{"id":"36500","value":"RC 390 BLUE - NHD - B.D. 2023 (EU)","parent_id":"17270"},{"id":"33052","value":"RC 390 BLUE - NHD - B.D. 2024 (EU)","parent_id":"32421"}
11712,{"id":"17229","value":"RC 390 BLUE 2022 (EU)","parent_id":"15040"},{"id":"30383","value":"RC 390 BLUE 2023 (EU)","parent_id":"17270"},{"id":"33050","value":"RC 390 BLUE 2024 (EU)","parent_id":"32421"},{"id":"30386","value":"RC 390 GP ORANGE - B.D. 2023 (EU)","parent_id":"17270"},{"id":"33049","value":"RC 390 GP ORANGE - NHD - B.D. 2023","parent_id":"17270"},{"id":"36501","value":"RC 390 GP ORANGE - NHD - B.D. 2023 (EU)","parent_id":"17270"},{"id":"30382","value":"RC 390 GP ORANGE 2023 (EU)","parent_id":"17270"},{"id":"17230","value":"RC 390 ORANGE - B.D. 2022","parent_id":"15040"},{"id":"17225","value":"RC 390 ORANGE - B.D. 2022 (EU)","parent_id":"15040"},{"id":"33047","value":"RC 390 ORANGE - B.D. 2024 (EU)","parent_id":"32421"},{"id":"33046","value":"RC 390 ORANGE - NHD - B.D. 2024 (EU)","parent_id":"32421"},{"id":"17227","value":"RC 390 ORANGE 2022 (EU)","parent_id":"15040"},{"id":"33048","value":"RC 390 ORANGE 2024 (EU)","parent_id":"32421"},{"id":"16283","value":"RC 390 R BLACK 2018 (EU)","parent_id":"14738"},{"id":"16820","value":"RC 390 WHITE - B.D. 2020 (EU)","parent_id":"14863"},{"id":"16821","value":"RC 390 WHITE - B.D. 2021 (EU)","parent_id":"15038"},{"id":"16305","value":"RC 390 WHITE \/ ABS 2014 (EU)","parent_id":"14758"},{"id":"16307","value":"RC 390 WHITE \/ ABS 2015 (EU)","parent_id":"14773"},{"id":"16267","value":"RC 390 WHITE \/ ABS 2016 (EU)","parent_id":"14775"}
11712,{"id":"15309","value":"RC 390 WHITE 2020 (EU)","parent_id":"14863"},{"id":"16827","value":"RC 390 WHITE ABS B.D. 14 (EU)","parent_id":"14758"},{"id":"16829","value":"RC 390 WHITE ABS B.D. 15 (EU)","parent_id":"14773"},{"id":"16301","value":"RC 390 WHITE ABS B.D. 16 (EU)","parent_id":"14775"},{"id":"17240","value":"RC 8C 2022 (EU)","parent_id":"15040"},{"id":"30391","value":"RC 8C 2023","parent_id":"17270"},{"id":"33151","value":"RC 8C 2024","parent_id":"32421"},{"id":"15867","value":"RC4 R 2020","parent_id":"14863"},{"id":"17267","value":"RC4 R 2022","parent_id":"15040"},{"id":"32424","value":"RC4 R 2023","parent_id":"17270"},{"id":"33215","value":"SX-E 2 2024 (EU)","parent_id":"32421"},{"id":"32443","value":"SX-E 3 2023 (EU)","parent_id":"17270"},{"id":"32455","value":"SX-E 3 2024 (EU)","parent_id":"32421"},{"id":"36537","value":"SX-E 3 2025","parent_id":"33058"},{"id":"15916","value":"SX-E 5 2020 (EU)","parent_id":"14863"},{"id":"15935","value":"SX-E 5 2021 (EU)","parent_id":"15038"},{"id":"15739","value":"SX-E 5 2022 (EU)","parent_id":"15040"},{"id":"32444","value":"SX-E 5 2023 (EU)","parent_id":"17270"},{"id":"32462","value":"SX-E 5 2024 (EU)","parent_id":"32421"},{"id":"36540","value":"SX-E 5 2025","parent_id":"33058"},{"id":"41484","value":"SX-E 5 2026","parent_id":"41435"},{"id":"45855","value":"SX-E 5 2027","parent_id":"45841"}];
11713    // Make Magento form key available for CSRF protection
11714    window.FORM_KEY = '';
11715</script>
11715
11716
11717<style>
11718    /* Pre-Alpine skeleton variant selection (category pages). The inline script
11719       below tags the root from the `selected_model` cookie so the correct
11720       placeholder (selected-model card vs search form) paints on the first
11721       frame — matching the real content height, no layout shift. The root
11722       class persists, so it keeps selecting the variant after Alpine boots
11723       while x-show="!ready" hides the skeleton once the model is resolved. */
11724    [data-pf-root] .pf-skel-card { display: none; }
11725    [data-pf-root].pf-has-model .pf-skel-card { display: block; }
11726    [data-pf-root].pf-has-model .pf-skel-form { display: none; }
11727</style>
11728<div x-data="PartFinder()"
11729    x-init="init()"
11730    data-pf-root
11731    class="w-full h-full">
11732    
11732<script>
11733        /* Sync, before Alpine: reflect the selected-model cookie on the root so
11734           the matching skeleton variant is shown immediately. */
11735        (function () {
11736            var s = document.currentScript;
11737            if (!s || !s.parentElement) { return; }
11738            var hasModel = /(?:^|;\s*)selected_model=[^;]/.test(document.cookie);
11739            s.parentElement.classList.add(hasModel ? 'pf-has-model' : 'pf-no-model');
11740        })();
11741    </script>
11741
11742    <!-- Mobile Layout (Always present, hidden on desktop) -->
11743    <div class="lg:hidden">
11744        <section class="mx-auto ">
11745    <!-- Skeleton for mobile -->
11746            
11747<div x-show="!ready" class=" md:px-6">
11748    <div class="animate-pulse bg-white rounded-xl shadow-lg border border-gray-100 overflow-hidden">
11749        
11750        <!-- Header Title -->
11751        <div class="text-center pt-5 pb-3 px-4 mb-2">
11752            <div class="h-6 w-3/4 bg-gray-200 rounded mx-auto"></div>
11753        </div>
11754
11755    <!-- Tabs -->
11756    <div class="flex flex-row gap-8 mb-6 border-b border-gray-200 pb-3 px-2">
11757        <div class="flex-1 gap-2 cursor-default">
11758            <div class="h-8 w-full bg-gray-300 rounded"></div>
11759        </div>
11760        <div class="flex-1 h-8 w-full bg-gray-200 rounded"></div>
11761        <div class="flex-1 h-8 w-full bg-gray-200 rounded"></div>
11762    </div>
11763
11764        <!-- Content Area -->
11765        <div class="px-4 pt-3 mb-6">
11766            <!-- Quick Search Label -->
11767            <div class="h-6 w-32 bg-gray-200 rounded mb-3 pt-2"></div>
11768            
11769            <!-- Quick Search Input -->
11770            <div class="w-full h-12 bg-gray-50 border border-gray-200 rounded-lg flex items-center px-4 mb-4">
11771                <div class="h-3 w-1/2 bg-gray-100 rounded"></div>
11772            </div>
11773            
11774            <!-- Link -->
11775            <div class="flex justify-center mt-4 gap-2">
11776                 <div class="h-6 w-32 bg-gray-200 rounded"></div>
11777                 <div class="h-4 w-4 bg-gray-200 rounded-full"></div>
11778            </div>
11779        </div>
11780    </div>
11781</div>    
11782    <div x-show="ready"
11783        x-cloak
11784        x-transition:enter="transition ease-out duration-300"
11785        x-transition:enter-start="opacity-0 scale-95"
11786        x-transition:enter-end="opacity-100 scale-100"
11787        class="">
11788
11789        <!-- Search Form -->
11790        <form
11791            x-show="!selectedModel"
11792            action="https://www.esprit-ktm.com/pieces-detachees-origines-ktm.html"
11793            method="GET"
11794            @submit="handleSubmit($event)">
11795
11796            <div class="bg-white rounded-xl shadow-lg overflow-visible">
11797
11798                <!-- "Your vehicles" garage strip: tinted top row of THIS card -->
11799                <div x-show="$store.main.isUserLoggedIn && garageVehicles.length > 0"
11800    x-cloak
11801    class="border-b border-gray-100 px-4 py-2"
11802    style="border-top-left-radius:.75rem;border-top-right-radius:.75rem;">
11803    <!-- Header line: label + manage link -->
11804    <div class="flex items-center justify-between gap-3">
11805        <span class="shrink-0 text-xs font-bold uppercase tracking-widest text-primary-600">
11806            Vos véhicules        </span>
11807        <a href="https://www.esprit-ktm.com/partfinder/garage/index/"
11808            class="shrink-0 whitespace-nowrap text-xs font-medium text-gray-400 transition-colors hover:text-primary-600 hover:underline">
11809            Gérer mon garage        </a>
11810    </div>
11811
11812    <!-- Pills: scroll horizontally so the strip never grows tall -->
11813    <div class="mt-2 flex items-center gap-2 overflow-x-auto">
11814        <template x-for="vehicle in garageVehicles" :key="vehicle.ham_model_id">
11815    <button type="button"
11816        @click="selectedGarageVehicle = String(vehicle.ham_model_id); handleGarageVehicleSelection()"
11817        class="group inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border border-gray-200 bg-white px-3 py-1 text-sm font-semibold text-gray-800 transition-colors hover:border-primary-400 hover:text-primary-700">
11818                <span x-text="garageVehicleName(vehicle)"></span>
11819        <span class="font-normal text-gray-400" x-text="vehicle.ham_model_year"></span>
11820    </button>
11821</template>
11822    </div>
11823</div>
11824
11825                <div class="p-4">
11826
11827                <!-- Header -->
11828                <div class="text-center pt-1 pb-5">
11829                    <h2 class="text-lg font-bold text-black">
11830                        Sélectionnez votre modèle <span class="text-primary-500 font-bold">KTM</span>                    </h2>
11831                    <!-- <p class="mt-1 text-sm text-gray-500">
11832                        Accédez aux vues éclatées et accessoires compatibles                    </p> -->
11833                </div>
11834
11835                <div class="border-t border-gray-100 pt-5 mx-5">
11836                    <!-- Top slot: exact identifier (plate / VIN) with toggle -->
11837                    <div x-show="isPlateSearchEnabled || isVinSearchEnabled">
11838
11839    <!-- Label (swaps with the mode) -->
11840    <label class="block text-sm font-bold text-gray-900 mb-2">
11841        <span x-show="slotMode === 'plate'">Saisie du numéro d&#039;immatriculation</span>
11842        <span x-show="slotMode === 'vin'">Saisie du numéro de série</span>
11843    </label>
11844
11845    <div class="flex items-stretch gap-2">
11846
11847        <!-- EU band (plate mode only) -->
11848        <div x-show="slotMode === 'plate'"
11849            class="w-9 shrink-0 flex flex-col items-center justify-center rounded-l-lg bg-[#003399] py-2 text-white">
11850            <svg viewBox="0 0 100 100" class="w-5 h-5" aria-hidden="true">
11851                <circle cx="50" cy="16" r="6" fill="#FFCC00" /><circle cx="67" cy="20.6" r="6" fill="#FFCC00" /><circle cx="79.4" cy="33" r="6" fill="#FFCC00" /><circle cx="84" cy="50" r="6" fill="#FFCC00" /><circle cx="79.4" cy="67" r="6" fill="#FFCC00" /><circle cx="67" cy="79.4" r="6" fill="#FFCC00" /><circle cx="50" cy="84" r="6" fill="#FFCC00" /><circle cx="33" cy="79.4" r="6" fill="#FFCC00" /><circle cx="20.6" cy="67" r="6" fill="#FFCC00" /><circle cx="16" cy="50" r="6" fill="#FFCC00" /><circle cx="20.6" cy="33" r="6" fill="#FFCC00" /><circle cx="33" cy="20.6" r="6" fill="#FFCC00" />            </svg>
11852            <span class="mt-0.5 text-xs font-bold leading-none">F</span>
11853        </div>
11854
11855        <!-- Plate input -->
11856        <input x-show="slotMode === 'plate'"
11857            type="text"
11858            x-model="plateValue"
11859            @input="onPlateInput()"
11860            @keydown.enter.prevent="submitSlot($event)"
11861            placeholder="AB-123-CD"
11862            maxlength="9"
11863            :disabled="isSubmitting"
11864            aria-label="Saisie&#x20;du&#x20;num&#xE9;ro&#x20;d&#x27;immatriculation"
11865            class="h-12 min-w-0 flex-1 rounded-r-lg border border-gray-300 px-3 text-base font-medium uppercase tracking-wide focus:outline-none focus:ring-2 focus:ring-primary-600 focus:border-primary-600 placeholder:font-normal placeholder:tracking-normal placeholder:text-gray-400" />
11866
11867        <!-- VIN input -->
11868        <input x-show="slotMode === 'vin'"
11869            type="text"
11870            x-model="vinValue"
11871            @input="onVinInput()"
11872            @keydown.enter.prevent="submitSlot($event)"
11873            placeholder="Entrez&#x20;votre&#x20;VIN&#x20;&#x28;17&#x20;caract&#xE8;res&#x29;"
11874            maxlength="17"
11875            :disabled="isSubmitting"
11876            aria-label="Saisie&#x20;du&#x20;num&#xE9;ro&#x20;de&#x20;s&#xE9;rie"
11877            class="h-12 min-w-0 flex-1 rounded-lg border border-gray-300 px-3 text-base font-medium tracking-wide focus:outline-none focus:ring-2 focus:ring-primary-600 focus:border-primary-600 placeholder:font-normal placeholder:tracking-normal placeholder:text-gray-400" />
11878
11879        <!-- Submit -->
11880        <button type="button"
11881            @click="submitSlot($event)"
11882            :disabled="isSubmitting || (slotMode === 'plate' ? !plateValue : !vinValue)"
11883            :class="(isSubmitting || (slotMode === 'plate' ? !plateValue : !vinValue))
11884                ? 'bg-gray-200 text-gray-400 cursor-not-allowed'
11885                : 'bg-primary-600 text-white hover:bg-primary-700'"
11886            class="h-12 w-12 shrink-0 rounded-md flex items-center justify-center transition-colors"
11887            aria-label="Recherche">
11888            <span x-show="!isSubmitting" class="flex"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="h-5 w-5 stroke-current stroke-2 fill-none" width="24" height="24" role="img">
11889  <path stroke-linecap="round" stroke-linejoin="round" d="M13 7l5 5m0 0l-5 5m5-5H6"/>
11890<title>arrow-sm-right</title></svg>
11891</span>
11892            <svg x-show="isSubmitting" x-cloak class="h-5 w-5 animate-spin" fill="none" stroke="currentColor" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10" stroke="currentColor" stroke-width="2" fill="none" opacity="0.25"></circle><path d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z" fill="currentColor"></path></svg>
11893        </button>
11894    </div>
11895
11896    <!-- Inline error — prominent so a failed lookup is unmistakable -->
11897    <div x-show="slotError" x-cloak role="alert" aria-live="assertive"
11898        class="mt-3 flex items-start gap-2 rounded-lg border-2 border-red-500 bg-red-50 p-3 text-red-700">
11899        <span class="text-sm font-semibold leading-snug" x-text="slotError"></span>
11900    </div>
11901
11902    <!-- Toggle link (only when both modes are available) -->
11903    <button type="button"
11904        x-show="isPlateSearchEnabled && isVinSearchEnabled"
11905        @click="toggleSlotMode()"
11906        class="mt-2.5 inline-flex text-sm font-semibold text-primary-600 hover:text-primary-700 hover:underline">
11907        <span x-show="slotMode === 'plate'">Je n&#039;ai qu&#039;un numéro de série</span>
11908        <span x-show="slotMode === 'vin'">Revenir à l&#039;immatriculation</span>
11909    </button>
11910</div>
11911
11912                    <!-- Quick search + cascade with "See more options" disclosure -->
11913                    
11914<!-- Quick search shown by default when there is NO plate/VIN slot -->
11915<template x-if="!(isPlateSearchEnabled || isVinSearchEnabled)">
11916    <div class="mt-1">
11917        <p class="text-sm font-bold text-gray-900 mb-2">Aller directement au modèle</p>
11918
11919<div class="relative"
11920    x-data="HyvaModelSearchIntegrated()"
11921    x-init="init(window.partFinderSearchModels || [])"
11922    @search-query-updated.window="searchQuery = $event.detail">
11923
11924    <span class="pointer-events-none absolute left-3.5 top-1/2 -translate-y-1/2 text-gray-400">
11925        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-5 h-5 stroke-2 fill-none" width="24" height="24" role="img">
11926  <path stroke-linecap="round" stroke-linejoin="round" d="M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"/>
11927<title>search</title></svg>
11928    </span>
11929
11930    <input
11931        x-ref="searchInput"
11932        x-model="searchQuery"
11933        @input="filterModels(); $dispatch('search-query-updated', searchQuery)"
11934        @keydown="handleKeydown($event)"
11935        @focus="filterModels()"
11936        type="text"
11937        placeholder="&#x28;ex&#x3A;&#x20;EXC,&#x20;RC,&#x20;Duke&#x29;..."
11938        class="w-full h-12 pl-11 pr-4 bg-white border border-gray-300 rounded-lg text-base focus:outline-none focus:ring-2 focus:ring-primary-600 focus:border-primary-600 transition-all"
11939        autocomplete="off"
11940        role="combobox"
11941        :aria-expanded="isOpen"
11942        aria-autocomplete="list" />
11943
11944    <div
11945    x-show="isOpen"
11946    x-transition
11947    id="model-suggestions-tabs"
11948    role="listbox"
11949    class="absolute z-50 w-full mt-2 bg-white border-2 border-gray-200 rounded-lg shadow-2xl max-h-96 overflow-y-auto"
11950    x-ref="suggestionsList"
11951    style="display: none;"
11952    x-cloak>
11953
11954    <div class="sticky top-0 bg-white border-b border-gray-200 px-4 py-2 z-10">
11955        <div class="flex items-center justify-between">
11956            <span class="text-xs font-semibold text-gray-600 uppercase tracking-wide">
11957                Suggestions            </span>
11958            <span class="text-xs text-gray-500">
11959                <span x-text="suggestions.length"></span>
11960                <span x-show="totalResults > suggestions.length"> sur <span x-text="totalResults"></span></span>
11961                <span x-show="suggestions.length <= 1">résultat</span>
11962                <span x-show="suggestions.length > 1">résultats</span>
11963            </span>
11964        </div>
11965    </div>
11966
11967    <div class="divide-y divide-gray-100">
11968        <template x-for="(suggestion, index) in suggestions" :key="suggestion.value">
11969            <button
11970                type="button"
11971                @click="selectModel(suggestion)"
11972                @mouseenter="selectedIndex = index"
11973                :class="selectedIndex === index ? 'bg-gray-50' : 'hover:bg-gray-50'"
11974                class="w-full px-4 py-3 text-left transition-colors duration-150 flex items-center gap-3 group">
11975                <div
11976                    class="flex-shrink-0 w-1 h-8 rounded-full transition-all duration-200"
11977                    :class="selectedIndex === index ? 'bg-gray-500' : 'bg-transparent'">
11978                </div>
11979
11980                <div class="flex-1">
11981                    <span
11982                        class="text-base font-medium"
11983                        :class="selectedIndex === index ? 'text-gray-900' : 'text-gray-700'"
11984                        x-html="highlightMatch(suggestion)">
11985                    </span>
11986                </div>
11987            </button>
11988        </template>
11989    </div>
11990
11991    <div
11992        x-show="suggestions.length === 0 && searchQuery.length > 0"
11993        class="px-4 py-8 text-center">
11994        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-12 h-12 mx-auto 
11994stroke-gray-300 stroke-2 fill-none mb-3" width="24" height="24" role="img">
11995  <path stroke-linecap="round" stroke-linejoin="round" d="M9.172 16.172a4 4 0 015.656 0M9 10h.01M15 10h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"/>
11996<title>emoji-sad</title></svg>
11997        <p class="text-gray-500 font-medium">
11998            Aucun modèle trouvé        </p>
11999        <p class="text-sm text-gray-400 mt-1">
12000            Essayez un autre terme de recherche        </p>
12001    </div>
12002
12003    <div x-show="hasMore" class="border-t border-gray-200 px-4 py-3 text-center">
12004        <button
12005            type="button"
12006            @click="showMore()"
12007            :disabled="isLoadingMore"
12008            aria-label="Afficher&#x20;plus&#x20;de&#x20;r&#xE9;sultats&#x20;de&#x20;recherche"
12009            :class="isLoadingMore ? 'opacity-50 cursor-not-allowed' : ''"
12010            class="text-sm xl:text-base text-primary-600 hover:text-primary-700 font-medium transition-colors">
12011            Voir plus de résultats        </button>
12012    </div>
12013</div>
12014</div>
12015    </div>
12016</template>
12017
12018<!-- See more / fewer options toggle (full-width outlined button) -->
12019<button type="button"
12020    @click="isMobileCollapsed = !isMobileCollapsed"
12021    class="mt-4 flex w-full items-center justify-center gap-1.5 rounded-md border border-gray-200 py-2.5 text-sm font-semibold text-gray-600 hover:bg-gray-50 transition-colors">
12022    <span x-show="isMobileCollapsed">Voir plus d&#039;options</span>
12023    <span x-show="!isMobileCollapsed">Voir moins</span>
12024    <span :class="isMobileCollapsed ? '' : 'rotate-180'" class="transition-transform duration-200">
12025        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-4 h-4 stroke-current stroke-2 fill-none" width="24" height="24" role="img">
12026  <path stroke-linecap="round" stroke-linejoin="round" d="M19 9l-7 7-7-7"/>
12027<title>chevron-down</title></svg>
12028    </span>
12029</button>
12030
12031<!-- Collapsible content -->
12032<div x-show="!isMobileCollapsed" x-collapse class="mt-4">
12033
12034    <!-- Slot present: quick search lives inside the collapsible, above the cascade -->
12035    <template x-if="isPlateSearchEnabled || isVinSearchEnabled">
12036        <div>
12037            <p class="text-sm font-bold text-gray-900 mb-2">Aller directement au modèle</p>
12038
12039<div class="relative"
12040    x-data="HyvaModelSearchIntegrated()"
12041    x-init="init(window.partFinderSearchModels || [])"
12042    @search-query-updated.window="searchQuery = $event.detail">
12043
12044    <span class="pointer-events-none absolute left-3.5 top-1/2 -translate-y-1/2 text-gray-400">
12045        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-5 h-5 stroke-2 fill-none" width="24" height="24" role="img">
12046  <path stroke-linecap="round" stroke-linejoin="round" d="M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"/>
12047<title>search</title></svg>
12048    </span>
12049
12050    <input
12051        x-ref="searchInput"
12052        x-model="searchQuery"
12053        @input="filterModels(); $dispatch('search-query-updated', searchQuery)"
12054        @keydown="handleKeydown($event)"
12055        @focus="filterModels()"
12056        type="text"
12057        placeholder="&#x28;ex&#x3A;&#x20;EXC,&#x20;RC,&#x20;Duke&#x29;..."
12058        class="w-full h-12 pl-11 pr-4 bg-white border border-gray-300 rounded-lg text-base focus:outline-none focus:ring-2 focus:ring-primary-600 focus:border-primary-600 transition-all"
12059        autocomplete="off"
12060        role="combobox"
12061        :aria-expanded="isOpen"
12062        aria-autocomplete="list" />
12063
12064    <div
12065    x-show="isOpen"
12066    x-transition
12067    id="model-suggestions-tabs"
12068    role="listbox"
12069    class="absolute z-50 w-full mt-2 bg-white border-2 border-gray-200 rounded-lg shadow-2xl max-h-96 overflow-y-auto"
12070    x-ref="suggestionsList"
12071    style="display: none;"
12072    x-cloak>
12073
12074    <div class="sticky top-0 bg-white border-b border-gray-200 px-4 py-2 z-10">
12075        <div class="flex items-center justify-between">
12076            <span class="text-xs font-semibold text-gray-600 uppercase tracking-wide">
12077                Suggestions            </span>
12078            <span class="text-xs text-gray-500">
12079                <span x-text="suggestions.length"></span>
12080                <span x-show="totalResults > suggestions.length"> sur <span x-text="totalResults"></span></span>
12081                <span x-show="suggestions.length <= 1">résultat</span>
12082                <span x-show="suggestions.length > 1">résultats</span>
12083            </span>
12084        </div>
12085    </div>
12086
12087    <div class="divide-y divide-gray-100">
12088        <template x-for="(suggestion, index) in suggestions" :key="suggestion.value">
12089            <button
12090                type="button"
12091                @click="selectModel(suggestion)"
12092                @mouseenter="selectedIndex = index"
12093                :class="selectedIndex === index ? 'bg-gray-50' : 'hover:bg-gray-50'"
12094                class="w-full px-4 py-3 text-left transition-colors duration-150 flex items-center gap-3 group">
12095                <div
12096                    class="flex-shrink-0 w-1 h-8 rounded-full transition-all duration-200"
12097                    :class="selectedIndex === index ? 'bg-gray-500' : 'bg-transparent'">
12098                </div>
12099
12100                <div class="flex-1">
12101                    <span
12102                        class="text-base font-medium"
12103                        :class="selectedIndex === index ? 'text-gray-900' : 'text-gray-700'"
12104                        x-html="highlightMatch(suggestion)">
12105                    </span>
12106                </div>
12107            </button>
12108        </template>
12109    </div>
12110
12111    <div
12112        x-show="suggestions.length === 0 && searchQuery.length > 0"
12113        class="px-4 py-8 text-center">
12114        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-12 h-12 mx-auto stroke-gray-300 stroke-2 fill-none mb-3" width="24" height="24" role="img">
12115  <path stroke-linecap="round" stroke-linejoin="round" d="M9.172 16.172a4 4 0 015.656 0M9 10h.01M15 10h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"/>
12116<title>emoji-sad</title></svg>
12117        <p class="text-gray-500 font-medium">
12118            Aucun modèle trouvé        </p>
12119        <p class="text-sm text-gray-400 mt-1">
12120            Essayez un autre terme de recherche        </p>
12121    </div>
12122
12123    <div x-show="hasMore" class="border-t border-gray-200 px-4 py-3 text-center">
12124        <button
12125            type="button"
12126            @click="showMore()"
12127            :disabled="isLoadingMore"
12128            aria-label="Afficher&#x20;plus&#x20;de&#x20;r&#xE9;sultats&#x20;de&#x20;recherche"
12129            :class="isLoadingMore ? 'opacity-50 cursor-not-allowed' : ''"
12130            class="text-sm xl:text-base text-primary-600 hover:text-primary-700 font-medium transition-colors">
12131            Voir plus de résultats        </button>
12132    </div>
12133</div>
12134</div>
12135            <div class="flex items-center my-4">
12136                <div class="flex-1 border-t border-gray-200"></div>
12137            </div>
12138        </div>
12139    </template>
12140
12141    <!-- Cascade selectors (stacked, numbered) -->
12142    <div class="flex flex-col gap-3">
12143        <template x-for="(finderOption, index) in finderOptions" :key="finderOption.id">
12144            <div class="relative">
12145                <span class="pointer-events-none absolute left-3 top-1/2 -translate-y-1/2 flex h-6 w-6 items-center justify-center rounded-full bg-gray-100 text-xs font-bold text-gray-500"
12146                    x-text="index + 1"></span>
12147
12148                <select
12149                    x-model="finderOption.selectedValue"
12150                    @change="finderOption.handleChange()"
12151                    :disabled="finderOption.isDisabled || isSubmitting || finderOption.isLoading"
12152                    class="w-full h-12 bg-white bg-none border border-gray-300 rounded-lg text-gray-700 text-base pl-12 pr-10 appearance-none cursor-pointer focus:outline-none focus:ring-2 focus:ring-primary-600 focus:border-primary-600 transition-all"
12153                    :class="(finderOption.isDisabled || isSubmitting) ? 'opacity-60 cursor-not-allowed bg-gray-50' : ''">
12154                    <option value="" x-text="finderOption.label"></option>
12155                    <template x-for="value in finderOption.values || []" :key="value.id">
12156                        <option :value="value.id" x-text="value.text"></option>
12157                    </template>
12158                </select>
12159
12160                <svg class="pointer-events-none absolute right-3 top-1/2 -translate-y-1/2 h-5 w-5 text-gray-400"
12161                    viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"
12162                    stroke-linecap="round" stroke-linejoin="round" aria-hidden="true">
12163                    <path d="m6 9 6 6 6-6" />
12164                </svg>
12165            </div>
12166        </template>
12167    </div>
12168
12169    <!-- Submit -->
12170    <button
12171        type="submit"
12172        :disabled="isSubmitting || !finderOptions[finderOptions.length - 1]?.selectedValue"
12173        :class="(isSubmitting || !finderOptions[finderOptions.length - 1]?.selectedValue)
12174            ? 'bg-gray-200 text-gray-400 cursor-not-allowed'
12175            : 'bg-primary-600 text-white hover:bg-primary-700'"
12176        class="mt-5 h-12 w-full rounded-md transition-colors flex items-center justify-center"
12177        aria-label="Recherche">
12178        <span x-show="!isSubmitting" class="flex"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="h-5 w-5 stroke-current stroke-2 fill-none" width="24" height="24" role="img">
12179  <path stroke-linecap="round" stroke-linejoin="round" d="M13 7l5 5m0 0l-5 5m5-5H6"/>
12180<title>arrow-sm-right</title></svg>
12181</span>
12182        <svg x-show="isSubmitting" x-cloak class="h-5 w-5 animate-spin" fill="none" stroke="currentColor" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10" stroke="currentColor" stroke-width="2" fill="none" opacity="0.25"></circle><path d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z" fill="currentColor"></path></svg>
12183    </button>
12184</div>
12185                </div>
12186                </div>
12187            </div>
12188        </form>
12189
12190        <!-- Selected Model Card -->
12191        <div x-show="selectedModel" class="w-full mx-auto"
12192    x-data="Accordion(false, 300)">
12193    <div class="content-wrapper mx-auto bg-white text-black border-gray-200 rounded-lg px-4" style="box-shadow: 0px 0px 7px 1px rgba(0 0 0 / 0.25); min-width: 270px;">
12194        <div class="max-w-7xl mx-auto">
12195            <div>
12196                <div class="flex flex-col items-center justify-center gap-3 md:flex-row md:items-center md:justify-between w-full">
12197                    <div class="flex flex-col items-center pt-1 gap-2 md:flex-row md:items-center md:gap-4 w-full">
12198                        <div class="text-center md:text-left w-full">
12199                            <span>Votre véhicule : </span>
12200                            <span class="font-bold text-lg" x-text="normalizeVehicleName(selectedModel)"></span>
12201                        </div>
12202                    </div>
12203                </div>
12204
12205                <!-- Reset Button -->
12206                <div>
12207                    <button
12208                        type="button"
12209                        @click="resetPartFinder()"
12210                        :disabled="isSubmitting"
12211                        class="w-full bg-white border border-primary-500 text-primary-500 hover:bg-primary-500 hover:text-white transition-all duration-200 my-2 px-3 py-2.5 rounded flex items-center justify-center gap-2 text-base">
12212                        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-4 h-4 stroke-current stroke-2 fill-none" width="24" height="24" role="img">
12213  <path stroke-linecap="round" stroke-linejoin="round" d="M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"/>
12214<title>refresh</title></svg>
12215                        <span>Réinitialiser</span>
12216                    </button>
12217                </div>
12218
12219                <div :class="isPiecesOrigine ? 'p-2' : ''">
12220
12221                </div>
12222
12223                <div x-show="!isPiecesOrigine">
12224                    <hr class="my-1 border-t-2 border-gray-200" />
12225
12226                    <div class="w-full">
12227                        <!-- Accordion Toggle Button -->
12228                        <div class="flex justify-center">
12229                            <button
12230                                type="button"
12231                                x-ref="AccordionButton"
12232                                :aria-expanded="isExpanded"
12233                                aria-label="Toggle categories"
12234                                class="w-full text-gray-500 hover:bg-gray-50 transition-all duration-200 rounded flex items-center justify-center mb-2 mt-1 gap-2 h-10 bg-transparent border-none cursor-pointer">
12235                                <template x-if="isExpanded">
12236                                    <span class="flex items-center">
12237                                        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="mr-2 w-4 h-4 transition-transform duration-300 stroke-gray-500 stroke-2 fill-none" width="24" height="24" role="img">
12238  <path stroke-linecap="round" stroke-linejoin="round" d="M5 15l7-7 7 7"/>
12239<title>chevron-up</title></svg>
12240                                        <span>Masquer les catégories</span>
12241                                    </span>
12242                                </template>
12243                                <template x-if="!isExpanded">
12244                                    <span class="flex items-center">
12245                                        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="mr-2 w-4 h-4 transition-transform duration-300 stroke-gray-500 stroke-2 fill-none" width="24" height="24" role="img">
12246  <path stroke-linecap="round" stroke-linejoin="round" d="M19 9l-7 7-7-7"/>
12247<title>chevron-down</title></svg>
12248                                        <span>Afficher les catégories</span>
12249                                    </span>
12250                                </template>
12251                            </button>
12252                        </div>
12253
12254                        <!-- Accordion Content: Categories List -->
12255                        <div x-cloak x-ref="AccordionPanel" role="region"
12256                             style="overflow: hidden"
12257                             x-init="$watch('isExpanded', value => {
12258                                 if (value) {
12259                                     // Wait for animation (300ms) then allow overflow
12260                                     setTimeout(() => { $el.style.overflow = 'visible' }, 300)
12261                                 } else {
12262                                     // Immediately hide overflow when closing used for animation
12263                                     $el.style.overflow = 'hidden'
12264                                 }
12265                             })">
12266                            <!-- Mobile version + Homepage Desktop - collapsible -->
12267                            <div class="w-full">
12268                                <div class="flex flex-col gap-2 pb-2 w-full">
12269                                    <!-- Categories List -->
12270                                            <a
12271        href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle.html"
12272        class="category-card relative overflow-hidden rounded-lg border-2 border-zinc-400 bg-white cursor-pointer group p-3 md:hover:shadow-lg md:hover:border-gray-500 transition-all duration-200 block transform hover:scale-[1.02]"
12273        style="will-change: transform;">
12274        <div class="flex items-center gap-3 w-full">
12275            <div class="flex h-16 w-16 shrink-0 items-center justify-center">
12276                <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="24" height="24" x="0" y="0" viewBox="0 0 64 64" style="enable-background:new 0 0 512 512" xml:space="preserve" class="h-12 w-12 stroke-primary-500" role="img"><g><path d="M51 44h-2V22a1 1 0 0 0 1-1v-4a1 1 0 0 0-1-1V2h-2v14h-6V2h-2v14a1 1 0 0 0-1 1v3.61a11.985 11.985 0 0 0-12 0V17a1 1 0 0 0-1-1V2h-2v14h-6V2h-2v14a1 1 0 0 0-1 1v4a1 1 0 0 0 1 1v22h-2a2.006 2.006 0 0 0-2 2v2a2.006 2.006 0 0 0 2 2h2.42A5.014 5.014 0 0 0 20 53h3v9h2v-1.59l2-2 1.29 1.3 1.42-1.42-1.3-1.29 1.3-1.29-1.42-1.42-3.29 3.3v-6.18l2-2 1.29 1.3 1.42-1.42-.29-.29-1.01-1 1.3-1.29-1.42-1.42-3.29 3.3v-6.18l2-2 1.29 1.3 1.42-1.42-1.3-1.29 1.3-1.29-1.42-1.42-3.29 3.3v-6.18L26.41 32h1.18l.7.71L29 32h2v30h2V32h2l.71.71.7-.71h1.18L39 33.41v6.18l-3.29-3.3-1.42 1.42 1.3 1.29-1.3 1.29 1.42 1.42 1.29-1.3 2 2v6.18l-3.29-3.3-1.42 1.42 1.3 1.29-1.01 1-.29.29 1.42 1.42 1.29-1.3 2 2v6.18l-3.29-3.3-1.42 1.42 1.3 1.29-1.3 1.29 1.42 1.42 1.29-1.3 2 2V62h2v-9h3a5.014 5.014 0 0 0 4.58-3H51a2.006 2.006 0 0 0 2-2v-2a2.006 2.006 0 0 0-2-2Zm-36 4h-2v-2h2Zm1-28v-2h8v2Zm7 31h-3a3.009 3.009 0 0 1-3-3V22h6v1.08A11.891 11.891 0 0 0 20 31v1h3Zm-.95-21a10.074 10.074 0 0 1 .95-3.36 9.851 9.851 0 0 1 2-2.78 10 10 0 0 1 14 0 9.851 9.851 0 0 1 2 2.78 10.074 10.074 0 0 1 .95 3.36ZM47 48a3.009 3.009 0 0 1-3 3h-3V32h3v-1a11.891 11.891 0 0 0-3-7.92V22h6Zm1-28h-8v-2h8Zm3 28h-2v-2h2Z" fill="#000000" opacity="1" data-original="#000000" class=""/></g></svg>
12277            </div>
12278            <div class="h-16 w-px bg-gray-200"></div>
12279
12280            <div class="flex-1 text-left">
12281                <h3 class="font-bold text-xl text-gray-900">Partie cycle</h3>
12282                <p class="mt-0.5 text-sm text-gray-600 line-clamp-2">Châssis, suspensions et roues</p>
12283                <div class="mt-2 inline-flex items-center hover:underline text-primary-500 font-bold transition-all duration-300 group-hover:scale-105 group-hover:drop-shadow-sm">
12284                     Voir la catégorie                     <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="ml-1 h-4 w-4 transition-transform group-hover:translate-x-1 stroke-current stroke-2 fill-none" width="16" height="16" role="img">
12285  <path stroke-linecap="round" stroke-linejoin="round" d="M9 5l7 7-7 7"/>
12286<title>chevron-right</title></svg>
12287                </div>
12288            </div>
12289        </div>
12290    </a>
12291        <a
12292        href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-moteur.html"
12293        class="category-card relative overflow-hidden rounded-lg border-2 border-zinc-400 bg-white cursor-pointer group p-3 md:hover:shadow-lg md:hover:border-gray-500 transition-all duration-200 block transform hover:scale-[1.02]"
12294        style="will-change: transform;">
12295        <div class="flex items-center gap-3 w-full">
12296            <div class="flex h-16 w-16 shrink-0 items-center justify-center">
12297                <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="24" height="24" x="0" y="0" viewBox="0 0 511.993 511" style="enable-background:new 0 0 512 512" xml:space="preserve" class="h-12 w-12 stroke-primary-500" role="img"><g><path d="M164.902 123.121c-11.664-11.66-30.574-11.656-42.234.008s-11.66 30.57 0 42.234c11.66 11.664 30.57 11.664 42.234.008 11.653-11.68 11.649-30.586-.007-42.258zm-12.074 30.164a12.796 12.796 0 0 1-13.95 2.778 12.796 12.796 0 0 1-7.901-11.825 12.797 12.797 0 0 1 21.851-9.05c4.996 4.996 4.996 13.101 0 18.097zM376.512 415.352a38.09 38.09 0 0 0 27.11-11.227c12.991-12.96 15.015-33.293 4.835-48.559-10.184-15.265-29.73-21.207-46.687-14.195-16.954 7.012-26.594 25.027-23.016 43.024 3.574 17.996 19.367 30.96 37.715 30.957zm-15.094-53.47c8.332-8.331 21.84-8.331 30.172 0 8.332 8.333 8.332 21.845 0 30.177-8.45 8.039-21.723 8.039-30.172 0a21.335 21.335 0 0 1 0-30.176zm0 0" fill="#000000" opacity="1" data-original="#000000" class=""/><path d="M416.492 5.496c-3.203-3.2-7.543-5-12.07-5s-8.871 1.8-12.07 5L374.25 23.563l-24.133 24.132-84.476 84.48a25.586 25.586 0 0 0-7.5 18.102 25.588 25.588 0 0 0 7.5 18.106l3.113 3.097a25.605 25.605 0 0 0 21.879 7.16.316.316 0 0 1 .12 0l.759-.085h.136l-16.554 16.554c-5.301 5.297-11.844 11.45-19.098 18.004-7.594
12297-6.828-14.164-12.996-19.148-17.972l-16.52-16.586c.29 0 .586.05.852.093a.627.627 0 0 1 .12 0 25.541 25.541 0 0 0 21.88-7.152l3.12-3.113c9.997-9.996 9.997-26.203 0-36.2l-84.476-84.48-24.082-24.14-18.101-18.067c-6.754-6.45-17.387-6.45-24.141 0L4.996 95.95c-6.66 6.668-6.66 17.469 0 24.133l18.102 18.11L131.707 246.82a25.6 25.6 0 0 0 36.207 0l3.106-3.113a25.463 25.463 0 0 0 7.187-20.66c0-.086.05-.152.05-.238-.007-.418-.038-.836-.093-1.246 0-.258-.043-.489-.078-.735l16.574 16.527c4.317 4.32 9.3 9.567 14.422 15.184-33.102 25.836-68.27 49.254-88.75 53.598a69.583 69.583 0 0 0-13.992 4.691l-3.637-3.633a17.062 17.062 0 0 0-24.14 0l-12.008 12.032c-3.2 3.199-5 7.543-5 12.07s1.8 8.867 5 12.07l3.218 3.207a71.953 71.953 0 0 0 5.317 70.606 75.922 75.922 0 0 0 20.18 20.207 71.492 71.492 0 0 0 70.675 5.351l3.192 3.2a17.066 17.066 0 0 0 24.14 0l12.024-12.067c6.66-6.664 6.66-17.469 0-24.133l-3.637-3.644a69.48 69.48 0 0 0 4.676-13.95c4.133-19.37 25.406-51.996 49.605-83.542 28.442 37.043 46.078 66.558 49.723 83.488a69.246 69.246 0 0 0 4.676 13.996l-3.64 3.644a17.062 17.062 0 0 0 0 24.141l12.062 12.067c3.203 3.203 7.543 5 12.074 5 4.527 0 8.867-1.797 12.07-5l3.192-3.192a71.534 71.534 0 0 0 70.636-5.332 75.078 75.078 0 0 0 11.094-9.156 73.263 73.263 0 0 0 9.07-11.028 71.959 71.959 0 0 0 5.344-70.648l3.215-3.215a17.063 17.063 0 0 0 0-24.14l-12.055-12.067c-6.668-6.664-17.469-6.664-24.133 0l-3.644 3.645a65.01 65.01 0 0 0-13.969-4.66c-17.808-3.797-49.203-22.887-88.746-53.692 5.211-5.676 10.078-10.777 14.41-15.113l16.555-16.555c-.043.317-.05.59-.094.93-.05.437-.074.883-.074 1.324 0 .074.043.145.043.219a25.44 25.44 0 0 0 7.191 20.48l3.106 3.117a25.602 25.602 0 0 0 36.207 0l108.64-108.648 18.098-18.105c6.664-6.664 6.664-17.47 0-24.133zm54.305 126.723-12.074 12.066-90.504-90.558 12.066-12.067 45.227 45.227zM86.457 86.992l45.227-45.226 12.066 12.066-90.48 90.41-12.075-12.066zm21.11-69.394 12.074 12.074-90.454 90.453-12.125-12.09zm51.39 214.03-3.11 3.118a8.526 8.526 0 0 1-12.074 0L65.336 156.31l90.504-90.516 78.45 78.45a8.54 8.54 0 0 1 0 12.066l-3.126 3.105a8.71 8.71 0 0 1-7.441 2.32c-.18 0-.348 0-.528-.043-1.554-.195-3.125-.382-5.265-.46h-.332c-1.16 0-2.313 0-3.473.085h-2.043a54.49 54.49 0 0 0-11.996 2.22c-.402.12-.734.16-1.145.288l-.18.07c-.109.043-.21.06-.312.102-1.332.453-2.613 1.016-3.91 1.57-.367.153-.785.29-1.133.442l-.156.07-.852.402c-.941.415-1.855.887-2.73 1.422l-1.957 1.121c-.23.145-.469.262-.7.407l-.288.164c-1.23.851-2.559 1.707-3.696 2.558l-.222.2c-.555.418-1.09.851-1.63 1.277a46.127 46.127 0 0 0-4.128 3.68 48.071 48.071 0 0 0-3.688 4.136 59.768 59.768 0 0 0-1.261 1.606l-.2.238c-.73.957-1.507 2.09-2.43 3.492-.179.281-.382.555-.562.852l-1.008 1.785c-.332.527-.511 1.004-.793 1.535a53.843 53.843 0 0 0-3.355 7.68c-.059.129-.086.265-.137.39-.05.13 0 .188-.074.274l-.121.308c-.152.512-.246 1.06-.39 1.579a53.385 53.385 0 0 0-1.298 5.574c-.18.953-.308 1.816-.386 2.558a64.013 64.013 0 0 0-.34 3.567v.094a26.737 26.737 0 0 0-.129 3.875v2.046c.059 1.434.23 2.868.426 4.415v.066c0 .238 0 .476.05.719a8.68 8.68 0 0 1-2.394 7.53zm47.785-6.39-25.215-25.136a37.966 37.966 0 0 1 4.094-6.649c.137-.18.281-.324.387-.476.101-.157.398-.489.578-.72l.086-.109c.758-.906 1.527-1.808 2.371-2.664.844-.851 1.707-1.586 2.621-2.336.344-.214.664-.464.957-.746.238-.16.441-.347.664-.527a37.899 37.899 0 0 1 6.067-3.738c.101 0 .18-.094.289-.145l25.148 25.215c4.875 4.875 11.094 10.777 18.348 17.297a898.276 898.276 0 0 1-20.684 17.332c-5.566-6.125-11.008-11.867-15.726-16.59zm181.52 97.621a49.72 49.72 0 0 1 14.996 5.618c.25.12.508.226.773.316.172.074.336.145.504.203a7.508 7.508 0 0 0 5.871 0c.172-.058.332-.129.504-.203a8.268 8.268 0 0 0 2.652-1.785l7.786-7.781 12.066 12.066-7.543 7.543c-.156.16-.207.367-.351.527a8.63 8.63 0 0 0-.958 1.442 6.253 6.253 0 0 0-.98 3.004 7.878 7.878 0 0 0-.102 1.632c.055.516.153 1.028.297 1.528.133.57.328 1.125.582 1.652.094.2.094.41.203.598a55.673 55.673 0 0 1-1.816 58.508 54.086 54.086 0 0 1-4.617 5.843c-.074.086-.188.13-.266.223a24.232 24.232 0 0 1-1.996 2.25l-.125.148-.172.153a30.24 30.24 0 0 1-2.246 1.996c-.094.07-.125.172-.219.246a54.85 54.85 0 0 1-5.882 4.652 55.681 55.681 0 0 1-58.461 1.785c-.188-.113-.403-.113-.598-.207a7.688 7.688 0 0 0-1.644-.578 8.023 8.023 0 0 0-1.547-.3 8.443 8.443 0 0 0-1.602.093 7.927 7.927 0 0 0-1.598.317 11.64 11.64 0 0 0-2.867 1.629c-.164.144-.375.195-.527.351l-7.547 7.543-12.066-12.066 7.843-7.844c.121-.125.164-.297.282-.426a7.736 7.736 0 0 0 1.074-1.62c.23-.388.43-.794.598-1.212a8.806 8.806 0 0 0 .359-1.828 5.84 5.84 0 0 0-.238-3.105 7.681 7.681 0 0 0-.489-1.485c-.082-.187-.082-.39-.187-.57a52.013 52.013 0 0 1-5.64-15.149c-5.376-25.128-32.29-63.914-55.524-93.867a891.809 891.809 0 0 1 24.668-29.457c31.043 24.297 70.93 52.113 96.75 57.617zm-82.977-97.586c-5.265 5.258-12.7 13.192-21.223 22.75-.078.094-.187.13-.265.23-.074.102-.05.122-.094.18-34.133 38.399-86.297 103.739-94.062 140.196a51.968 51.968 0 0 1-5.649 15.094c-.094.172-.086.351-.172.52a8.441 8.441 0 0 0-.547 1.706 6.11 6.11 0 0 0-.168 3.149c.055.535.16 1.066.317 1.578.433 1.02.988 1.976 1.652 2.86.13.136.172.323.309.46l7.851 7.844-12.074 12.031-7.535-7.543c-.164-.156-.367-.207-.531-.351a11.643 11.643 0 0 0-2.875-1.637 8.832 8.832 0 0 0-1.563-.3 8.196 8.196 0 0 0-1.636-.103 8.37 8.37 0 0 0-1.52.301c-.59.125-1.164.32-1.707.578-.195.094-.41.094-.598.207a55.653 55.653 0 0 1-58.496-1.812 54.768 54.768 0 0 1-5.836-4.606c-.093-.078-.136-.195-.238-.28a26.74 26.74 0 0 1-4.531-4.532c-.078-.094-.188-.129-.266-.223a52.476 52.476 0 0 1-4.648-5.898c-11.621-17.57-12.309-40.203-1.785-58.453.109-.196.109-.407.214-.606a8.75 8.75 0 0 0 .563-1.62 9.501 9.501 0 0 0-.102-4.763 7.396 7.396 0 0 0-.675-1.406 8.145 8.145 0 0 0-.965-1.469c-.145-.16-.196-.367-.348-.52l-7.543-7.542 12.074-12.066 7.832 7.84a8.377 8.377 0 0 0 2.5 1.656c.227.109.461.207.7.289.902.343 1.859.527 2.824.547a8.613 8.613 0 0 0 2.824-.547c.234-.078.46-.176.684-.282.222-.101.46-.144.683-.273a52.464 52.464 0 0 1 15.145-5.664c26.265-5.59 67.601-34.29 103.015-62.68.094-.074.207-.101.301-.176.094-.078.066-.113.11-.156 12.8-10.308 24.816-20.48 35.054-29.558 10.461-9.278 19.168-1
122977.399 24.746-23.04l25.285-25.199a37.654 37.654 0 0 1 7.004 4.352c.266.23.54.476.856.7l.12.093c.903.762 1.798 1.52 2.653 2.363.852.848 1.614 1.758 2.371 2.664l.07.086c.22.297.454.582.708.852l.136.195-.203-.195c.125.187.332.418.52.648a29.124 29.124 0 0 1 1.926 2.738 35.374 35.374 0 0 1 1.793 3.297c.043.094.093.18.144.282zm62.934 9.48a8.533 8.533 0 0 1-12.074 0l-3.106-3.112a8.678 8.678 0 0 1-2.312-7.45c0-.18 0-.367.039-.554.199-1.547.386-3.11.46-5.242v-.317c.044-1.441 0-2.875-.101-4.266v-.972a54.183 54.183 0 0 0-2.313-12.594c-.085-.3-.117-.539-.21-.855l-.051-.125c-.547-1.649-1.215-3.254-1.914-4.84-.086-.188-.153-.41-.23-.59v-.074c-.153-.325-.29-.66-.442-.985a23.57 23.57 0 0 0-1.41-2.695l-1.051-1.809c-.168-.289-.324-.59-.5-.855l-.137-.238c-.855-1.235-1.707-2.559-2.613-3.703l-.18-.211c-.418-.555-.851-1.094-1.277-1.633a50.048 50.048 0 0 0-3.688-4.137 58.006 58.006 0 0 0-5.453-4.719l-.094-.078c-.144-.117-.289-.246-.433-.36-.524-.398-1.094-.85-1.707-1.234-.617-.386-1.094-.753-1.649-1.109-.351-.23-.632-.43-1.03-.684l-1.708-.949a55.214 55.214 0 0 0-3.133-1.62c-.297-.138-.64-.356-.922-.477-.144-.059-.316-.11-.46-.18a51.338 51.338 0 0 0-4.829-1.895c-.308-.109-.554-.23-.855-.34l-.262-.07a55.73 55.73 0 0 0-7.554-1.75c-.434-.074-.852-.125-1.22-.176-1.425-.199-2.859-.343-4.265-.43a32.472 32.472 0 0 0-2.68-.124h-3.277c-1.469.066-2.937.23-4.394.426h-.13c-.214 0-.425 0-.648.043a8.738 8.738 0 0 1-7.449-2.32l-3.105-3.11a8.532 8.532 0 0 1 0-12.067l78.445-78.445 90.36 90.48zm114.644-114.651L392.41 29.648l12.074-12.078 90.446 90.465zm0 0" fill="#000000" opacity="1" data-original="#000000" class=""/><path d="M347.098 123.113c-11.664 11.664-11.66 30.575.004 42.235 11.66 11.664 30.57 11.664 42.234 0 11.664-11.66 11.664-30.57.004-42.235-11.68-11.64-30.574-11.636-42.25.008zm30.164 30.18c-4.996 5-13.102 4.996-18.098-.004-4.996-4.996-4.996-13.098 0-18.098 4.996-5 13.102-5 18.098-.004a12.796 12.796 0 0 1 0 18.106zM108.371 349.816c-14.996 14.996-14.996 39.313 0 54.309s39.309 14.996 54.305 0c14.996-14.996 14.996-39.313 0-54.309a38.141 38.141 0 0 0-27.153-11.351 38.134 38.134 0 0 0-27.152 11.351zm42.238 42.243c-8.449 8.039-21.722 8.039-30.172 0-8.332-8.332-8.328-21.84 0-30.168 8.333-8.332 21.84-8.332 30.168 0 8.333 8.328 8.333 21.836.004 30.168zm0 0" fill="#000000" opacity="1" data-original="#000000" class=""/></g></svg>
12298            </div>
12299            <div class="h-16 w-px bg-gray-200"></div>
12300
12301            <div class="flex-1 text-left">
12302                <h3 class="font-bold text-xl text-gray-900">Partie moteur</h3>
12303                <p class="mt-0.5 text-sm text-gray-600 line-clamp-2">Pièces moteur et transmission</p>
12304                <div class="mt-2 inline-flex items-center hover:underline text-primary-500 font-bold transition-all duration-300 group-hover:scale-105 group-hover:drop-shadow-sm">
12305                     Voir la catégorie                     <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="ml-1 h-4 w-4 transition-transform group-hover:translate-x-1 stroke-current stroke-2 fill-none" width="16" height="16" role="img">
12306  <path stroke-linecap="round" stroke-linejoin="round" d="M9 5l7 7-7 7"/>
12307<title>chevron-right</title></svg>
12308                </div>
12309            </div>
12310        </div>
12311    </a>
12312        <a
12313        href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires.html"
12314        class="category-card relative overflow-hidden rounded-lg border-2 border-zinc-400 bg-white cursor-pointer group p-3 md:hover:shadow-lg md:hover:border-gray-500 transition-all duration-200 block transform hover:scale-[1.02]"
12315        style="will-change: transform;">
12316        <div class="flex items-center gap-3 w-full">
12317            <div class="flex h-16 w-16 shrink-0 items-center justify-center">
12318                <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="24" height="24" x="0" y="0" viewBox="0 0 682.667 682.667" style="enable-background:new 0 0 512 512" xml:space="preserve" class="h-12 w-12 stroke-primary-500" role="img"><g><defs><clipPath id="a" clipPathUnits="userSpaceOnUse"><path d="M0 512h512V0H0Z" fill="#000000" opacity="1" data-original="#000000"/></clipPath></defs><g clip-path="url(#a)" transform="matrix(1.33333 0 0 -1.33333 0 682.667)"><path d="M0 0v0c6.227 6.227 6.227 16.324 0 22.551l-150.34 150.34c-6.227 6.227-16.324 6.227-22.551 0-6.227-6.228-6.227-16.324 0-22.551L-22.551 0C-16.324-6.228-6.228-6.228 0 0Z" style="stroke-width:15;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1" transform="translate(460.98 326.939)" fill="none" stroke="#000000" stroke-width="15" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" stroke-dasharray="none" stroke-opacity="" data-original="#000000" class=""/><path d="M0 0v0c6.228 6.228 6.228 16.324 0 22.551l-150.339 150.34c-6.228 6.227-16.324 6.227-22.552 0-6.227-6.227-6.227-16.324 0-22.551L-22.551 0C-16.324-6.227-6.227-6.227 0 0Z" style="stroke-width:15;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1" transform="translate(254.263 120.222)" fill="none" stroke="#000000" stroke-width="15" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" stroke-dasharray="none" stroke-opacity="" data-original="#000000" class=""/><path d="m0 0 15.894 15.894-150.338 150.339-184.165-184.165 150.338-150.339L-21.188-21.188" style="stroke-width:15;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1" transform="translate(422.532 311.044)" fill="none" stroke="#000000" stroke-width="15" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" stroke-dasharray="none" stroke-opacity="" data-original="#000000" class=""/><path d="m0 0-28.972-28.972L-57.944 0l28.972 28.972Z" style="stroke-width:15;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1" transform="translate(471.943 396.471)" fill="none" stroke="#000000" stroke-width="15" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" stroke-dasharray="none" stroke-opacity="" data-original="#000000" class=""/><path d="m0 0-28.972-28.972L-57.944 0l28.972 28.972Z" style="stroke-width:15;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1" transform="translate(422.143 446.271)" fill="none" stroke="#000000" stroke-width="15" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" stroke-dasharray="none" stroke-opacity="" data-original="#000000" class=""/><path d="m0 0 20.719 20.719-42.617 42.608c-18.991 18.99-18.991 49.889 0 68.88l34.905 34.895 35.314-35.314-34.016-34.026 42.617-42.607c18.981-18.991 18.981-49.89 0-68.871L-9.151-79.79l-35.325 35.325 23.337 23.337" style="stroke-width:15;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1" transform="translate(84.533 87.29)" fill="none" stroke="#000000" stroke-width="15" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" stroke-dasharray="none" stroke-opacity="" data-original="#000000" class=""/></g></g></svg>
12319            </div>
12320            <div class="h-16 w-px bg-gray-200"></div>
12321
12322            <div class="flex-1 text-left">
12323                <h3 class="font-bold text-xl text-gray-900">Accessoires</h3>
12324                <p class="mt-0.5 text-sm text-gray-600 line-clamp-2">Équipements et pièces diverses</p>
12325                <div class="mt-2 inline-flex items-center hover:underline text-primary-500 font-bold transition-all duration-300 group-hover:scale-105 group-hover:drop-shadow-sm">
12326                     Voir la catégorie                     <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="ml-1 h-4 w-4 transition-transform group-hover:translate-x-1 stroke-current stroke-2 fill-none" width="16" height="16" role="img">
12327  <path stroke-linecap="round" stroke-linejoin="round" d="M9 5l7 7-7 7"/>
12328<title>chevron-right</title></svg>
12329                </div>
12330            </div>
12331        </div>
12332    </a>
12333
12334
12335                                </div>
12336                            </div>
12337                        </div>
12338                    </div>
12339                </div>
12340            </div>
12341        </div>
12342    </div>
12343</div>
12344
12345        <!-- Categories Grid for Pièces Origine page (outside selector) -->
12346        <template x-if="isPiecesOrigine && selectedModel">
12347            <div class="w-full mt-4">
12348        <!-- 3 categories - Modern card layout in 3 columns -->
12349    <div class="grid grid-cols-1 md:grid-cols-3 gap-2">
12350                            <a href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle.html"
12351            class="group bg-white rounded-lg border-2 border-zinc-400 p-6 md:hover:shadow-lg md:hover:border-gray-500 transition-all duration-200 block transform hover:scale-[1.02]">
12352            <div class="flex items-center gap-3 w-full">
12353                <div class="flex h-16 w-16 shrink-0 items-center justify-center">
12354                    <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="24" height="24" x="0" y="0" viewBox="0 0 64 64" style="enable-background:new 0 0 512 512" xml:space="preserve" class="h-12 w-12 stroke-primary-500" role="img"><g><path d="M51 44h-2V22a1 1 0 0 0 1-1v-4a1 1 0 0 0-1-1V2h-2v14h-6V2h-2v14a1 1 0 0 0-1 1v3.61a11.985 11.985 0 0 0-12 0V17a1 1 0 0 0-1-1V2h-2v14h-6V2h-2v14a1 1 0 0 0-1 1v4a1 1 0 0 0 1 1v22h-2a2.006 2.006 0 0 0-2 2v2a2.006 2.006 0 0 0 2 2h2.42A5.014 5.014 0 0 0 20 53h3v9h2v-1.59l2-2 1.29 1.3 1.42-1.42-1.3-1.29 1.3-1.29-1.42-1.42-3.29 3.3v-6.18l2-2 1.29 1.3 1.42-1.42-.29-.29-1.01-1 1.3-1.29-1.42-1.42-3.29 3.3v-6.18l2-2 1.29 1.3 1.42-1.42-1.3-1.29 1.3-1.29-1.42-1.42-3.29 3.3v-6.18L26.41 32h1.18l.7.71L29 32h2v30h2V32h2l.71.71.7-.71h1.18L39 33.41v6.18l-3.29-3.3-1.42 1.42 1.3 1.29-1.3 1.29 1.42 1.42 1.29-1.3 2 2v6.18l-3.29-3.3-1.42 1.42 1.3 1.29-1.01 1-.29.29 1.42 1.42 1.29-1.3 2 2v6.18l-3.29-3.3-1.42 1.42 1.3 1.29-1.3 1.29 1.42 1.42 1.29-1.3 2 2V62h2v-9h3a5.014 5.014 0 0 0 4.58-3H51a2.006 2.006 0 0 0 2-2v-2a2.006 2.006 0 0 0-2-2Zm-36 4h-2v-2h2Zm1-28v-2h8v2Zm7 31h-3a3.009 3.009 0 0 1-3-3V22h6v1.08A11.891 11.891 0 0 0 20 31v1h3Zm-.95-21a10.074 10.074 0 0 1 .95-3.36 9.851 9.851 0 0 1 2-2.78 10 10 0 0 1 14 0 9.851 9.851 0 0 1 2 2.78 10.074 10.074 0 0 1 .95 3.36ZM47 48a3.009 3.009 0 0 1-3 3h-3V32h3v-1a11.891 11.891 0 0 0-3-7.92V22h6Zm1-28h-8v-2h8Zm3 28h-2v-2h2Z" fill="#000000" opacity="1" data-original="#000000" class=""/></g></svg>
12355                </div>
12356                <div class="h-16 w-px bg-gray-200"></div>
12357
12358                <div class="flex-1 text-left">
12359                    <h4 class="font-bold text-xl text-gray-900">
12360                        Partie cycle                    </h4>
12361                    <p class="text-sm text-gray-600 line-clamp-2">Châssis, suspensions et roues</p>
12362                    <div class="mt-2 inline-flex items-center hover:underline text-primary-500 font-bold transition-all duration-300 group-hover:scale-105 group-hover:drop-shadow-sm">
12363                        Voir la catégorie                        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="ml-1 h-4 w-4 transition-transform group-hover:translate-x-1 stroke-current stroke-2 fill-none" width="16" height="16" role="img">
12364  <path stroke-linecap="round" stroke-linejoin="round" d="M9 5l7 7-7 7"/>
12365<title>chevron-right</title></svg>
12366                    </div>
12367                </div>
12368            </div>
12369        </a>
12370                            <a href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-moteur.html"
12371            class="group bg-white rounded-lg border-2 border-zinc-400 p-6 md:hover:shadow-lg md:hover:border-gray-500 transition-all duration-200 block transform hover:scale-[1.02]">
12372            <div class="flex items-center gap-3 w-full">
12373                <div class="flex h-16 w-16 shrink-0 items-center justify-center">
12374                    <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="24" height="24" x="0" y="0" viewBox="0 0 511.993 511" style="enable-background:new 0 0 512 512" xml:space="preserve" class="h-12 w-12 stroke-primary-500" role="img"><g><path d="M164.902 123.121c-11.664-11.66-30.574-11.656-42.234.008s-11.66 30.57 0 42.234c11.66 11.664 30.57 11.664 42.234.008 11.653-11.68 11.649-30.586-.007-42.258zm-12.074 30.164a12.796 12.796 0 0 1-13.95 2.778 12.796 12.796 0 0 1-7.901-11.825 12.797 12.797 0 0 1 21.851-9.05c4.996 4.996 4.996 13.101 0 18.097zM376.512 415.352a38.09 38.09 0 0 0 27.11-11.227c12.991-12.96 15.015-33.293 4.835-48.559-10.184-15.265-29.73-21.207-46.687-14.195-16.954 7.012-26.594 25.027-23.016 43.024 3.574 17.996 19.367 30.96 37.715 30.957zm-15.094-53.47c8.332-8.331 21.84-8.331 30.172 0 8.332 8.333 8.332 21.845 0 30.177-8.45 8.039-21.723 8.039-30.172 0a21.335 21.335 0 0 1 0-30.176zm0 0" fill="#000000" opacity="1" data-original="#000000" class=""/><path d="M416.492 5.496c-3.203-3.2-7.543-5-12.07-5s-8.871 1.8-12.07 5L374.25 23.563l-24.133 24.132-84.476 84.48a25.586 25.586 0 0 0-7.5 18.102 25.588 25.588 0 0 0 7.5 18.106l3.113 3.097a25.605 25.605 0 0 0 21.879 7.16.316.316 0 0 1 .12 0l.759-.085h.136l-16.554 16.554c-5.301 5.297-11.844 11.45-19.098 18.004-7.594
12374-6.828-14.164-12.996-19.148-17.972l-16.52-16.586c.29 0 .586.05.852.093a.627.627 0 0 1 .12 0 25.541 25.541 0 0 0 21.88-7.152l3.12-3.113c9.997-9.996 9.997-26.203 0-36.2l-84.476-84.48-24.082-24.14-18.101-18.067c-6.754-6.45-17.387-6.45-24.141 0L4.996 95.95c-6.66 6.668-6.66 17.469 0 24.133l18.102 18.11L131.707 246.82a25.6 25.6 0 0 0 36.207 0l3.106-3.113a25.463 25.463 0 0 0 7.187-20.66c0-.086.05-.152.05-.238-.007-.418-.038-.836-.093-1.246 0-.258-.043-.489-.078-.735l16.574 16.527c4.317 4.32 9.3 9.567 14.422 15.184-33.102 25.836-68.27 49.254-88.75 53.598a69.583 69.583 0 0 0-13.992 4.691l-3.637-3.633a17.062 17.062 0 0 0-24.14 0l-12.008 12.032c-3.2 3.199-5 7.543-5 12.07s1.8 8.867 5 12.07l3.218 3.207a71.953 71.953 0 0 0 5.317 70.606 75.922 75.922 0 0 0 20.18 20.207 71.492 71.492 0 0 0 70.675 5.351l3.192 3.2a17.066 17.066 0 0 0 24.14 0l12.024-12.067c6.66-6.664 6.66-17.469 0-24.133l-3.637-3.644a69.48 69.48 0 0 0 4.676-13.95c4.133-19.37 25.406-51.996 49.605-83.542 28.442 37.043 46.078 66.558 49.723 83.488a69.246 69.246 0 0 0 4.676 13.996l-3.64 3.644a17.062 17.062 0 0 0 0 24.141l12.062 12.067c3.203 3.203 7.543 5 12.074 5 4.527 0 8.867-1.797 12.07-5l3.192-3.192a71.534 71.534 0 0 0 70.636-5.332 75.078 75.078 0 0 0 11.094-9.156 73.263 73.263 0 0 0 9.07-11.028 71.959 71.959 0 0 0 5.344-70.648l3.215-3.215a17.063 17.063 0 0 0 0-24.14l-12.055-12.067c-6.668-6.664-17.469-6.664-24.133 0l-3.644 3.645a65.01 65.01 0 0 0-13.969-4.66c-17.808-3.797-49.203-22.887-88.746-53.692 5.211-5.676 10.078-10.777 14.41-15.113l16.555-16.555c-.043.317-.05.59-.094.93-.05.437-.074.883-.074 1.324 0 .074.043.145.043.219a25.44 25.44 0 0 0 7.191 20.48l3.106 3.117a25.602 25.602 0 0 0 36.207 0l108.64-108.648 18.098-18.105c6.664-6.664 6.664-17.47 0-24.133zm54.305 126.723-12.074 12.066-90.504-90.558 12.066-12.067 45.227 45.227zM86.457 86.992l45.227-45.226 12.066 12.066-90.48 90.41-12.075-12.066zm21.11-69.394 12.074 12.074-90.454 90.453-12.125-12.09zm51.39 214.03-3.11 3.118a8.526 8.526 0 0 1-12.074 0L65.336 156.31l90.504-90.516 78.45 78.45a8.54 8.54 0 0 1 0 12.066l-3.126 3.105a8.71 8.71 0 0 1-7.441 2.32c-.18 0-.348 0-.528-.043-1.554-.195-3.125-.382-5.265-.46h-.332c-1.16 0-2.313 0-3.473.085h-2.043a54.49 54.49 0 0 0-11.996 2.22c-.402.12-.734.16-1.145.288l-.18.07c-.109.043-.21.06-.312.102-1.332.453-2.613 1.016-3.91 1.57-.367.153-.785.29-1.133.442l-.156.07-.852.402c-.941.415-1.855.887-2.73 1.422l-1.957 1.121c-.23.145-.469.262-.7.407l-.288.164c-1.23.851-2.559 1.707-3.696 2.558l-.222.2c-.555.418-1.09.851-1.63 1.277a46.127 46.127 0 0 0-4.128 3.68 48.071 48.071 0 0 0-3.688 4.136 59.768 59.768 0 0 0-1.261 1.606l-.2.238c-.73.957-1.507 2.09-2.43 3.492-.179.281-.382.555-.562.852l-1.008 1.785c-.332.527-.511 1.004-.793 1.535a53.843 53.843 0 0 0-3.355 7.68c-.059.129-.086.265-.137.39-.05.13 0 .188-.074.274l-.121.308c-.152.512-.246 1.06-.39 1.579a53.385 53.385 0 0 0-1.298 5.574c-.18.953-.308 1.816-.386 2.558a64.013 64.013 0 0 0-.34 3.567v.094a26.737 26.737 0 0 0-.129 3.875v2.046c.059 1.434.23 2.868.426 4.415v.066c0 .238 0 .476.05.719a8.68 8.68 0 0 1-2.394 7.53zm47.785-6.39-25.215-25.136a37.966 37.966 0 0 1 4.094-6.649c.137-.18.281-.324.387-.476.101-.157.398-.489.578-.72l.086-.109c.758-.906 1.527-1.808 2.371-2.664.844-.851 1.707-1.586 2.621-2.336.344-.214.664-.464.957-.746.238-.16.441-.347.664-.527a37.899 37.899 0 0 1 6.067-3.738c.101 0 .18-.094.289-.145l25.148 25.215c4.875 4.875 11.094 10.777 18.348 17.297a898.276 898.276 0 0 1-20.684 17.332c-5.566-6.125-11.008-11.867-15.726-16.59zm181.52 97.621a49.72 49.72 0 0 1 14.996 5.618c.25.12.508.226.773.316.172.074.336.145.504.203a7.508 7.508 0 0 0 5.871 0c.172-.058.332-.129.504-.203a8.268 8.268 0 0 0 2.652-1.785l7.786-7.781 12.066 12.066-7.543 7.543c-.156.16-.207.367-.351.527a8.63 8.63 0 0 0-.958 1.442 6.253 6.253 0 0 0-.98 3.004 7.878 7.878 0 0 0-.102 1.632c.055.516.153 1.028.297 1.528.133.57.328 1.125.582 1.652.094.2.094.41.203.598a55.673 55.673 0 0 1-1.816 58.508 54.086 54.086 0 0 1-4.617 5.843c-.074.086-.188.13-.266.223a24.232 24.232 0 0 1-1.996 2.25l-.125.148-.172.153a30.24 30.24 0 0 1-2.246 1.996c-.094.07-.125.172-.219.246a54.85 54.85 0 0 1-5.882 4.652 55.681 55.681 0 0 1-58.461 1.785c-.188-.113-.403-.113-.598-.207a7.688 7.688 0 0 0-1.644-.578 8.023 8.023 0 0 0-1.547-.3 8.443 8.443 0 0 0-1.602.093 7.927 7.927 0 0 0-1.598.317 11.64 11.64 0 0 0-2.867 1.629c-.164.144-.375.195-.527.351l-7.547 7.543-12.066-12.066 7.843-7.844c.121-.125.164-.297.282-.426a7.736 7.736 0 0 0 1.074-1.62c.23-.388.43-.794.598-1.212a8.806 8.806 0 0 0 .359-1.828 5.84 5.84 0 0 0-.238-3.105 7.681 7.681 0 0 0-.489-1.485c-.082-.187-.082-.39-.187-.57a52.013 52.013 0 0 1-5.64-15.149c-5.376-25.128-32.29-63.914-55.524-93.867a891.809 891.809 0 0 1 24.668-29.457c31.043 24.297 70.93 52.113 96.75 57.617zm-82.977-97.586c-5.265 5.258-12.7 13.192-21.223 22.75-.078.094-.187.13-.265.23-.074.102-.05.122-.094.18-34.133 38.399-86.297 103.739-94.062 140.196a51.968 51.968 0 0 1-5.649 15.094c-.094.172-.086.351-.172.52a8.441 8.441 0 0 0-.547 1.706 6.11 6.11 0 0 0-.168 3.149c.055.535.16 1.066.317 1.578.433 1.02.988 1.976 1.652 2.86.13.136.172.323.309.46l7.851 7.844-12.074 12.031-7.535-7.543c-.164-.156-.367-.207-.531-.351a11.643 11.643 0 0 0-2.875-1.637 8.832 8.832 0 0 0-1.563-.3 8.196 8.196 0 0 0-1.636-.103 8.37 8.37 0 0 0-1.52.301c-.59.125-1.164.32-1.707.578-.195.094-.41.094-.598.207a55.653 55.653 0 0 1-58.496-1.812 54.768 54.768 0 0 1-5.836-4.606c-.093-.078-.136-.195-.238-.28a26.74 26.74 0 0 1-4.531-4.532c-.078-.094-.188-.129-.266-.223a52.476 52.476 0 0 1-4.648-5.898c-11.621-17.57-12.309-40.203-1.785-58.453.109-.196.109-.407.214-.606a8.75 8.75 0 0 0 .563-1.62 9.501 9.501 0 0 0-.102-4.763 7.396 7.396 0 0 0-.675-1.406 8.145 8.145 0 0 0-.965-1.469c-.145-.16-.196-.367-.348-.52l-7.543-7.542 12.074-12.066 7.832 7.84a8.377 8.377 0 0 0 2.5 1.656c.227.109.461.207.7.289.902.343 1.859.527 2.824.547a8.613 8.613 0 0 0 2.824-.547c.234-.078.46-.176.684-.282.222-.101.46-.144.683-.273a52.464 52.464 0 0 1 15.145-5.664c26.265-5.59 67.601-34.29 103.015-62.68.094-.074.207-.101.301-.176.094-.078.066-.113.11-.156 12.8-10.308 24.816-20.48 35.054-29.558 10.461-9.278 19.168-1
123747.399 24.746-23.04l25.285-25.199a37.654 37.654 0 0 1 7.004 4.352c.266.23.54.476.856.7l.12.093c.903.762 1.798 1.52 2.653 2.363.852.848 1.614 1.758 2.371 2.664l.07.086c.22.297.454.582.708.852l.136.195-.203-.195c.125.187.332.418.52.648a29.124 29.124 0 0 1 1.926 2.738 35.374 35.374 0 0 1 1.793 3.297c.043.094.093.18.144.282zm62.934 9.48a8.533 8.533 0 0 1-12.074 0l-3.106-3.112a8.678 8.678 0 0 1-2.312-7.45c0-.18 0-.367.039-.554.199-1.547.386-3.11.46-5.242v-.317c.044-1.441 0-2.875-.101-4.266v-.972a54.183 54.183 0 0 0-2.313-12.594c-.085-.3-.117-.539-.21-.855l-.051-.125c-.547-1.649-1.215-3.254-1.914-4.84-.086-.188-.153-.41-.23-.59v-.074c-.153-.325-.29-.66-.442-.985a23.57 23.57 0 0 0-1.41-2.695l-1.051-1.809c-.168-.289-.324-.59-.5-.855l-.137-.238c-.855-1.235-1.707-2.559-2.613-3.703l-.18-.211c-.418-.555-.851-1.094-1.277-1.633a50.048 50.048 0 0 0-3.688-4.137 58.006 58.006 0 0 0-5.453-4.719l-.094-.078c-.144-.117-.289-.246-.433-.36-.524-.398-1.094-.85-1.707-1.234-.617-.386-1.094-.753-1.649-1.109-.351-.23-.632-.43-1.03-.684l-1.708-.949a55.214 55.214 0 0 0-3.133-1.62c-.297-.138-.64-.356-.922-.477-.144-.059-.316-.11-.46-.18a51.338 51.338 0 0 0-4.829-1.895c-.308-.109-.554-.23-.855-.34l-.262-.07a55.73 55.73 0 0 0-7.554-1.75c-.434-.074-.852-.125-1.22-.176-1.425-.199-2.859-.343-4.265-.43a32.472 32.472 0 0 0-2.68-.124h-3.277c-1.469.066-2.937.23-4.394.426h-.13c-.214 0-.425 0-.648.043a8.738 8.738 0 0 1-7.449-2.32l-3.105-3.11a8.532 8.532 0 0 1 0-12.067l78.445-78.445 90.36 90.48zm114.644-114.651L392.41 29.648l12.074-12.078 90.446 90.465zm0 0" fill="#000000" opacity="1" data-original="#000000" class=""/><path d="M347.098 123.113c-11.664 11.664-11.66 30.575.004 42.235 11.66 11.664 30.57 11.664 42.234 0 11.664-11.66 11.664-30.57.004-42.235-11.68-11.64-30.574-11.636-42.25.008zm30.164 30.18c-4.996 5-13.102 4.996-18.098-.004-4.996-4.996-4.996-13.098 0-18.098 4.996-5 13.102-5 18.098-.004a12.796 12.796 0 0 1 0 18.106zM108.371 349.816c-14.996 14.996-14.996 39.313 0 54.309s39.309 14.996 54.305 0c14.996-14.996 14.996-39.313 0-54.309a38.141 38.141 0 0 0-27.153-11.351 38.134 38.134 0 0 0-27.152 11.351zm42.238 42.243c-8.449 8.039-21.722 8.039-30.172 0-8.332-8.332-8.328-21.84 0-30.168 8.333-8.332 21.84-8.332 30.168 0 8.333 8.328 8.333 21.836.004 30.168zm0 0" fill="#000000" opacity="1" data-original="#000000" class=""/></g></svg>
12375                </div>
12376                <div class="h-16 w-px bg-gray-200"></div>
12377
12378                <div class="flex-1 text-left">
12379                    <h4 class="font-bold text-xl text-gray-900">
12380                        Partie moteur                    </h4>
12381                    <p class="text-sm text-gray-600 line-clamp-2">Pièces moteur et transmission</p>
12382                    <div class="mt-2 inline-flex items-center hover:underline text-primary-500 font-bold transition-all duration-300 group-hover:scale-105 group-hover:drop-shadow-sm">
12383                        Voir la catégorie                        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="ml-1 h-4 w-4 transition-transform group-hover:translate-x-1 stroke-current stroke-2 fill-none" width="16" height="16" role="img">
12384  <path stroke-linecap="round" stroke-linejoin="round" d="M9 5l7 7-7 7"/>
12385<title>chevron-right</title></svg>
12386                    </div>
12387                </div>
12388            </div>
12389        </a>
12390                            <a href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires.html"
12391            class="group bg-white rounded-lg border-2 border-zinc-400 p-6 md:hover:shadow-lg md:hover:border-gray-500 transition-all duration-200 block transform hover:scale-[1.02]">
12392            <div class="flex items-center gap-3 w-full">
12393                <div class="flex h-16 w-16 shrink-0 items-center justify-center">
12394                    <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="24" height="24" x="0" y="0" viewBox="0 0 682.667 682.667" style="enable-background:new 0 0 512 512" xml:space="preserve" class="h-12 w-12 stroke-primary-500" role="img"><g><defs><clipPath id="a_2" clipPathUnits="userSpaceOnUse"><path d="M0 512h512V0H0Z" fill="#000000" opacity="1" data-original="#000000"/></clipPath></defs><g clip-path="url(#a_2)" transform="matrix(1.33333 0 0 -1.33333 0 682.667)"><path d="M0 0v0c6.227 6.227 6.227 16.324 0 22.551l-150.34 150.34c-6.227 6.227-16.324 6.227-22.551 0-6.227-6.228-6.227-16.324 0-22.551L-22.551 0C-16.324-6.228-6.228-6.228 0 0Z" style="stroke-width:15;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1" transform="translate(460.98 326.939)" fill="none" stroke="#000000" stroke-width="15" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" stroke-dasharray="none" stroke-opacity="" data-original="#000000" class=""/><path d="M0 0v0c6.228 6.228 6.228 16.324 0 22.551l-150.339 150.34c-6.228 6.227-16.324 6.227-22.552 0-6.227-6.227-6.227-16.324 0-22.551L-22.551 0C-16.324-6.227-6.227-6.227 0 0Z" style="stroke-width:15;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1" transform="translate(254.263 120.222)" fill="none" stroke="#000000" stroke-width="15" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" stroke-dasharray="none" stroke-opacity="" data-original="#000000" class=""/><path d="m0 0 15.894 15.894-150.338 150.339-184.165-184.165 150.338-150.339L-21.188-21.188" style="stroke-width:15;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1" transform="translate(422.532 311.044)" fill="none" stroke="#000000" stroke-width="15" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" stroke-dasharray="none" stroke-opacity="" data-original="#000000" class=""/><path d="m0 0-28.972-28.972L-57.944 0l28.972 28.972Z" style="stroke-width:15;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1" transform="translate(471.943 396.471)" fill="none" stroke="#000000" stroke-width="15" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" stroke-dasharray="none" stroke-opacity="" data-original="#000000" class=""/><path d="m0 0-28.972-28.972L-57.944 0l28.972 28.972Z" style="stroke-width:15;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1" transform="translate(422.143 446.271)" fill="none" stroke="#000000" stroke-width="15" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" stroke-dasharray="none" stroke-opacity="" data-original="#000000" class=""/><path d="m0 0 20.719 20.719-42.617 42.608c-18.991 18.99-18.991 49.889 0 68.88l34.905 34.895 35.314-35.314-34.016-34.026 42.617-42.607c18.981-18.991 18.981-49.89 0-68.871L-9.151-79.79l-35.325 35.325 23.337 23.337" style="stroke-width:15;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1" transform="translate(84.533 87.29)" fill="none" stroke="#000000" stroke-width="15" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" stroke-dasharray="none" stroke-opacity="" data-original="#000000" class=""/></g></g></svg>
12395                </div>
12396                <div class="h-16 w-px bg-gray-200"></div>
12397
12398                <div class="flex-1 text-left">
12399                    <h4 class="font-bold text-xl text-gray-900">
12400                        Accessoires                    </h4>
12401                    <p class="text-sm text-gray-600 line-clamp-2">Équipements et pièces diverses</p>
12402                    <div class="mt-2 inline-flex items-center hover:underline text-primary-500 font-bold transition-all duration-300 group-hover:scale-105 group-hover:drop-shadow-sm">
12403                        Voir la catégorie                        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="ml-1 h-4 w-4 transition-transform group-hover:translate-x-1 stroke-current stroke-2 fill-none" width="16" height="16" role="img">
12404  <path stroke-linecap="round" stroke-linejoin="round" d="M9 5l7 7-7 7"/>
12405<title>chevron-right</title></svg>
12406                    </div>
12407                </div>
12408            </div>
12409        </a>
12410            </div>
12411    </div>
12412        </template>
12413    </div>
12414</section>
12415    </div>
12416
12417    <!-- Desktop Layouts -->
12418    <!-- Width is rendered statically (homepage state is known server-side): the
12419         old Alpine :class binding only applied `content-wrapper mx-auto` after
12420         boot, so the block flashed full-width then shrank. -->
12421    <div class="hidden lg:block h-full">
12422                    <section class="mx-auto h-full">
12423    <!-- Skeleton shown until Alpine is ready -->
12424    <div x-show="!ready" class="bg-white rounded-lg py-4 mb-4 animate-pulse px-4">
12425
12426    <!-- Header Title -->
12427    <div class="w-2/3 h-6 bg-gray-200 rounded mx-auto mb-6 mt-2"></div>
12428
12429    <!-- Tabs -->
12430    <div class="flex flex-row gap-8 mb-6 border-b border-gray-200 pb-3 px-2">
12431        <div class="flex-1 gap-2 cursor-default">
12432            <div class="h-8 w-full bg-gray-300 rounded"></div>
12433        </div>
12434        <div class="flex-1 h-8 w-full bg-gray-200 rounded"></div>
12435        <div class="flex-1 h-8 w-full bg-gray-200 rounded"></div>
12436    </div>
12437
12438    <!-- Quick Search Section -->
12439    <div class="bg-gray-50 rounded-lg p-4 my-4 mt-8">
12440        <div class="h-4 w-32 bg-gray-200 rounded mb-7"></div> <!-- Label -->
12441
12442        <!-- Input with Search Icon -->
12443        <div class="w-full h-12 bg-white border border-gray-200 rounded-lg flex items-center px-4 justify-between">
12444             <div class="h-3 w-1/3 bg-gray-100 rounded"></div>
12445        </div>
12446    </div>
12447
12448    <!-- OR Separator -->
12449    <div class="flex items-center gap-4 my-5 px-4 max-w-sm mx-auto">
12450        <div class="h-px bg-gray-200 flex-1"></div>
12451        <div class="h-6 w-8 bg-gray-200 rounded"></div>
12452        <div class="h-px bg-gray-200 flex-1"></div>
12453    </div>
12454
12455    <!-- Categories Section -->
12456    <div class="bg-gray-50 rounded-lg p-4 m-4">
12457        <div class="h-4 w-24 bg-gray-200 rounded mb-4"></div> <!-- Label -->
12458        <div class="flex gap-4">
12459            <!-- Dropdown 1 -->
12460            <div class="flex-1 h-12 bg-white border border-gray-200 rounded-lg flex justify-between items-center px-3">
12461                <div class="h-3 w-16 bg-gray-100 rounded"></div>
12462                <div class="h-2 w-3 bg-gray-200 rounded"></div> <!-- Chevron -->
12463            </div>
12464            <!-- Dropdown 2 -->
12465            <div class="flex-1 h-12 bg-white border border-gray-200 rounded-lg flex justify-between items-center px-3">
12466                 <div class="h-3 w-16 bg-gray-100 rounded"></div>
12467                 <div class="h-2 w-3 bg-gray-200 rounded"></div> <!-- Chevron -->
12468            </div>
12469        </div>
12470    </div>
12471
12472    <!-- Submit Button (Centered, Gray) -->
12473    <div class="flex justify-center mt-6 mb-2">
12474        <div class="w-56 h-10 bg-gray-200 rounded-lg flex items-center justify-center gap-2">
12475            <div class="h-2 w-48 bg-gray-400 rounded"></div>
12476        </div>
12477    </div>
12478</div>
12479
12480    <div x-show="ready"
12481        x-cloak
12482        class="h-full"
12483        x-transition:enter="transition ease-out duration-300"
12484        x-transition:enter-start="opacity-0 scale-95"
12485        x-transition:enter-end="opacity-100 scale-100">
12486
12487        <!-- h-full : when the CMS hero gives the column a fixed
12488             height (banner-left / partfinder-right grid), the form centers
12489             vertically instead of leaving a hole below; in free-flow heroes
12490             (overlap layout) h-full resolves to auto and this is a no-op. -->
12491        <div class="mx-auto bg-white rounded-lg flex flex-col h-full"
12492            x-show="!selectedModel"
12493            :class="{ 'mb-6': isPiecesOrigine }">
12494
12495            <!-- Vertical Part Finder form -->
12496            <form
12497                class="flex flex-col"
12498                action="https://www.esprit-ktm.com/pieces-detachees-origines-ktm.html"
12499                method="GET"
12500                @submit="handleSubmit($event)">
12501
12502                <div class="w-full flex flex-col bg-white rounded-xl overflow-visible">
12503
12504                    <!-- "Your vehicles" garage strip: tinted top row of THIS card -->
12505                    <div x-show="$store.main.isUserLoggedIn && garageVehicles.length > 0"
12506    x-cloak
12507    class="flex items-center gap-3 border-b border-gray-100 px-6 xl:px-8 py-2"
12508    style="border-top-left-radius:.75rem;border-top-right-radius:.75rem;">    <span class="shrink-0 text-xs font-bold uppercase tracking-widest text-primary-600">
12509    Vos véhicules</span>
12510
12511<!-- Pills: scroll horizontally on overflow so the strip never grows tall -->
12512<div class="flex min-w-0 flex-1 items-center gap-2 overflow-x-auto">
12513    <template x-for="vehicle in garageVehicles" :key="vehicle.ham_model_id">
12514    <button type="button"
12515        @click="selectedGarageVehicle = String(vehicle.ham_model_id); handleGarageVehicleSelection()"
12516        class="group inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border border-gray-200 bg-white px-3 py-1 text-sm font-semibold text-gray-800 transition-colors hover:border-primary-400 hover:text-primary-700">
12517                    <span class="text-gray-400 transition-colors group-hover:text-primary-500"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="24" height="24" x="0" y="0" viewBox="0 0 512 512" style="enable-background:new 0 0 512 512" xml:space="preserve" class="w-4 h-4" role="img"><g><path d="m306.765 268.325-34.112 40.241a8.25 8.25 0 0 0 .958 11.631 8.22 8.22 0 0 0 5.332 1.958c2.342 0 4.667-.99 6.3-2.916l34.112-40.241a8.25 8.25 0 0 0-.958-11.631 8.253 8.253 0 0 0-11.632.958z" fill="#000000" opacity="1" data-original="#000000" class=""/><path d="M511.903 337.698c-.023-.429-.056-.854-.089-1.281l-.069-.925a45.77 45.77 0 0 0-.119-1.497 64.894 64.894 0 0 0-.256-2.142l-.074-.591a35.097 35.097 0 0 0-.114-.876 75.63 75.63 0 0 0-.489-2.874l-.022-.123a19.924 19.924 0 0 0-.103-.57 77.997 77.997 0 0 0-1.686-6.867c-5.429-18.405-17.526-33.972-34.06-43.834a74.489 74.489 0 0 0-3.33-1.871l-.611-.314a74.937 74.937 0 0 0-2.814-1.391c-.206-.096-.41-.189-.617-.281l-.307-.139a73.62 73.62 0 0 0-3.502-1.476l-.243-.095a77.297 77.297 0 0 0-3.771-1.35 74.777 74.777 0 0 0-2.401-.741 63.028 63.028 0 0 0-3.8-1.002l-.12-.027a61.474 61.474 0 0 0-1.384-.319 72.708 72.708 0 0 0-2.412-.468l-.374-.069c-.381-.069-.76-.14-1.136-.2a75.772 75.772 0 0 0-2.301-.321l-.612-.078c-.363-.05-.727-.097-1.082-.134-.9-.096-1.81-.162-2.764-.23l-.364-.029c-.297-.024-.592-.048-.918-.067a73.976 73.976 0 0 0-8.17.002c-.296.016-.59.04-.885.065l-.413.032c-.91.065-1.819.131-2.709.226-.365.039-.728.086-1.09.134l-.572.075c-.785.1-1.566.201-2.326.324-.396.064-.788.134-1.177.207l-.342.063c-.81.145-1.621.297-2.44.473-.5.109-.995.227-1.459.339-.805.189-1.609.386-2.408.603-.309.085-.61.172-.911.259l-6.605-10.67c12.417-4.416 24.332-6.281 33.576-6.991.14-.011.281-.024.42-.043 16.434-2.112 26.538-12.359 26.372-26.745a8.42 8.42 0 0 0-.054-.841 165.998 165.998 0 0 0-.898-6.746 8.053 8.053 0 0 0-.129-.651c-.377-1.574-.498-2.51-.533-3.019a8.812 8.812 0 0 0-.117-.928c-14.151-76.771-76.744-114.588-79.403-116.16a8.252 8.252 0 0 0-9.868 1.104c-21.727 20.519-30.655 35.25-28.094 46.356 1.019 4.416 3.703 7.407 6.404 9.104 10.525 13.016 14.137 24.354 10.736 33.716a23.089 23.089 0 0 1-.923 2.147l-10.861-17.546a8.254 8.254 0 0 0-8.278-3.813c.467-1.879.717-3.844.717-5.865 0-13.442-10.936-24.378-24.378-24.378s-24.378 10.936-24.378 24.378c0 2.416.359 4.749 1.017 6.954-20.715-6.863-39.924-7.109-57.366-.677-29.214 10.769-44.798 37.207-50.949 50.289-19.264-6.892-23.641-13.199-24.611-15.513-13.243-31.589-41.467-38.532-99.638-42.143-27.61-1.997-38.041 8.779-41.808 15.372-6.073 10.625 1.149 21.039 7.484 25.446.206.142.417.276.634.398l82.958 47.163a8.255 8.255 0 0 0 11.254-3.095 8.252 8.252 0 0 0-3.095-11.254l-82.421-46.859c-1.341-1.126-2.548-2.829-2.568-3.426 0 0 .015-.06.087-.186 3.091-5.408 12.922-8.059 26.373-7.093 58.79 3.649 76.373 10.241 85.521 32.056 5.369 12.803 23.216 22.889 54.364 30.655-9.752 8.436-17.452 17.804-23.026 28.017l-33.81-19.224c-3.963-2.257-9-.869-11.254 3.095a8.253 8.253 0 0 0 3.095 11.254l35.427 20.143a85.15 85.15 0 0 0-.886 2.955 90.455 90.455 0 0 0-1.078 2.433l-34.097 13.285a76.098 76.098 0 0 0-25.329-24.656l-.123-.072a76.331 76.331 0 0 0-3.207-1.799l-.616-.318a80.264 80.264 0 0 0-2.806-1.387c-.206-.097-.413-.189-.62-.282l-.306-.138a73.62 73.62 0 0 0-3.611-1.519l-.133-.052a78.456 78.456 0 0 0-3.763-1.349 77.048 77.048 0 0 0-2.408-.744 77.595 77.595 0 0 0-1.418-.403 71.01 71.01 0 0 0-2.374-.595c-.494-.118-.989-.237-1.508-.348a69.077 69.077 0 0 0-2.416-.469l-.373-.069c-.383-.07-.764-.141-1.137-.2a74.048 74.048 0 0 0-2.341-.326l-.569-.074a37.722 37.722 0 0 0-1.085-.134 79.404 79.404 0 0 0-2.761-.23l-.363-.029c-.298-.024-.595-.048-.922-.067a73.399 73.399 0 0 0-8.165.002c-.3.016-.599.04-.89
125176.065l-.404.032a77.01 77.01 0 0 0-2.705.226c-.37.039-.736.086-1.1.135l-.569.074c-.785.1-1.566.201-2.333.325-.383.062-.763.131-1.143.201l-.37.068a75.71 75.71 0 0 0-2.44.473c-.5.11-.995.227-1.459.339-.805.189-1.609.386-2.408.603-.473.129-.943.264-1.399.397a74.205 74.205 0 0 0-3.71 1.184c-.834.292-1.658.596-2.488.918l-.124.047a70.005 70.005 0 0 0-3.646 1.534l-.27.121c-.207.092-.415.185-.62.282-.946.442-1.878.907-2.814 1.391l-.613.315a77.384 77.384 0 0 0-3.324 1.87C20.647 285.973 8.549 301.542 3.12 319.95l-.023.076a77.31 77.31 0 0 0-.909 3.369l-.069.3a74.783 74.783 0 0 0-.68 3.094c-.043.215-.08.434-.118.651l-.009.059c-.18.956-.349 1.912-.486 2.856-.044.297-.081.596-.117.895l-.054.427a62.432 62.432 0 0 0-.278 2.31c-.045.459-.078.921-.111 1.384l-.076 1.034c-.034.43-.068.859-.091 1.306A73.411 73.411 0 0 0 0 341.515c0 5.16.522 10.318 1.547 15.33 5.018 24.534 21.815 45.018 44.935 54.797 9.392 3.97 19.36 5.984 29.627 5.984s20.235-2.013 29.629-5.984c21.218-8.975 37.105-26.971 43.449-48.815l17.253 1.692c.932 7.383 1.968 12.135 2.119 12.813a8.253 8.253 0 0 0 8.053 6.447h154.054a8.252 8.252 0 0 0 8.253-8.253c0-12.373.971-24.038 2.883-34.671a8.254 8.254 0 0 0-16.246-2.922c-1.651 9.178-2.657 19.017-3.005 29.341H183.516a182.005 182.005 0 0 1-1.41-11.895c-.052-.603-.103-1.208-.15-1.831-.029-.382-.055-.776-.081-1.165a178.666 178.666 0 0 1-.29-5.224c-.01-.229-.021-.451-.03-.682a178.984 178.984 0 0 1-.089-3.188c-.003-.183-.004-.369-.008-.551-.014-.938-.022-1.885-.021-2.843l.002-.671c.005-1.091.02-2.192.047-3.307l.001-.084c.064-2.481.187-5.018.382-7.588v-.007c.782-10.317 2.721-21.204 6.627-31.403.022-.057.032-.117.053-.175a81.287 81.287 0 0 1 2.222-5.189c1.476-3.145 3.154-6.198 5.086-9.109 9.685-14.582 24.432-23.745 43.834-27.233 45.723-8.221 93.095-19.102 120.76-38.046.088-.06.175-.121.263-.183a87.668 87.668 0 0 0 2.857-2.048 81.956 81.956 0 0 0 2.189-1.706c.258-.207.516-.414.768-.623a69.908 69.908 0 0 0 1.887-1.612c.301-.266.591-.535.884-.802.403-.37.798-.742 1.186-1.117.198-.191.413-.38.606-.571.025-.025.043-.055.068-.08 5.135-5.105 8.973-10.713 11.22-16.899 5.661-15.586.745-32.808-14.614-51.189a8.305 8.305 0 0 0-1.906-1.674c.332-2.18 2.698-9.533 18.577-25.376 14.59 10.447 55.73 44.371 66.347 101.068.132 1.45.404 3.051.826 4.868.251 1.628.483 3.378.711 5.328-.009 2.438-.582 8.246-11.777 9.752-29.389 2.298-81.994 14.778-105.941 72.35a8.253 8.253 0 0 0 4.45 10.79 8.252 8.252 0 0 0 10.79-4.45c5.679-13.653 13.286-24.344 21.854-32.731l6.949 11.227c-7.241 8.269-12.638 18.02-15.745 28.547-.028.097-.035.118-.056.197a73.467 73.467 0 0 0-.875 3.253l-.065.279a72.421 72.421 0 0 0-.684 3.112c-.037.186-.07.375-.103.565l-.03.166a77.267 77.267 0 0 0-.482 2.835c-.044.297-.08.596-.116.896l-.055.436a69.474 69.474 0 0 0-.281 2.33c-.046.478-.08.957-.113 1.439l-.064.845c-.039.475-.075.951-.098 1.41a76.831 76.831 0 0 0 1.449 19.132c5.021 24.533 21.818 45.018 44.936 54.796 9.391 3.97 19.359 5.984 29.628 5.984 10.268 0 20.235-2.013 29.626-5.984 23.118-9.776 39.915-30.261 44.937-54.794a76.549 76.549 0 0 0 1.449-19.151zM99.31 396.438c-7.348 3.105-15.153 4.681-23.201 4.681s-15.852-1.576-23.198-4.68c-18.109-7.66-31.264-23.697-35.193-42.904a59.95 59.95 0 0 1-1.138-14.989c.014-.276.036-.549.059-.822l.09-1.217c.02-.292.039-.581.07-.901.056-.588.135-1.169.212-1.748l.078-.628c.019-.146.034-.292.06-.463.108-.742.24-1.474.393-2.295l.08-.464c.164-.831.349-1.651.545-2.47l.055-.243c.216-.875.45-1.74.703-2.598l.011-.037.01-.032c4.246-14.397 13.71-26.579 26.645-34.307l.109-.065.001.001a60.51 60.51 0 0 1 2.536-1.424l.463-.238a65.77 65.77 0 0 1 2.227-1.103l.711-.32a59.185 59.185 0 0 1 2.083-.895c.237-.098.475-.19.714-.283l.12-.047a60.047 60.047 0 0 1 2.96-1.061 58.353 58.353 0 0 1 1.906-.586c.363-.108.726-.212 1.087-.31a58.44 58.44 0 0 1 1.887-.471c.386-.092.771-.186 1.139-.265a56.574 56.574 0 0 1 1.877-.362l.443-.08c.252-.047.505-.095.767-.136.595-.096 1.195-.171 1.798-.248l.675-.088c.208-.028.417-.057.643-.08.711-.076 1.427-.125 2.109-.174l.643-.049c.141-.012.282-.024.397-.031a58.753 58.753 0 0 1 6.406-.002c.142.009.283.022.424.033l.609.047c.716.051 1.435.1 2.159.177.21.023.419.052.627.079l.674.088c.602.076 1.203.152 1.811.25.252.04.501.087.749.133l.452.083c.625.113 1.251.228 1.851.357.39.084.775.177 1.193.276.621.146 1.241.298 1.852.463.365.099.728.205 1.108.316a58.54 58.54 0 0 1 2.897.923c.658.229 1.307.47 1.944.715l.13.051c.24.094.479.186.764.303a56.48 56.48 0 0 1 1.997.858l.748.337c.752.352 1.491.722 2.219 1.098l.468.24a59.36 59.36 0 0 1 2.541 1.426l.001-.001c.036.023.074.044.111.066a59.642 59.642 0 0 1 17.994 16.592l-13.743 5.354a45.302 45.302 0 0 0-5.372-5.402 41.819 41.819 0 0 0-1.348-1.097l-.205-.16a45.19 45.19 0 0 0-1.39-1.038c-.009-.007-.112-.079-.12-.086l-.12-.085a46.5 46.5 0 0 0-1.399-.953l-.102-.066-.157-.101a48.473 48.473 0 0 0-1.583-.974c-.019-.012-.036-.023-.056-.033a45.692 45.692 0 0 0-6.625-3.185c-.151-.062-.3-.12-.408-.16a44.166 44.166 0 0 0-1.261-.443l-.789-.265a50.461 50.461 0 0 0-1.059-.317 32.094 32.094 0 0 0-.928-.264c-.368-.101-.737-.191-1.112-.283a47.341 47.341 0 0 0-1.045-.242 40.397 40.397 0 0 0-2.197-.419l-.183-.03a40.174 40.174 0 0 0-.754-.119c-.414-.059-.829-.11-1.27-.162l-.188-.022a22.345 22.345 0 0 0-.725-.08 51.786 51.786 0 0 0-1.427-.109l-.745-.05a47.843 47.843 0 0 0-4.465.003l-.694.046c-.474.031-.947.065-1.44.111-.237.023-.47.05-.702.078l-.211.024c-.418.05-.834.1-1.259.161-.248.035-.494.076-.742.117l-.206.033a42.205 42.205 0 0 0-2.181.418 47.402 47.402 0 0 0-3.045.778c-.364.107-.73.212-1.152.346l-.705.239-.123.042c-.388.132-.777.266-1.117.392-.152.056-.302.114-.464.18a45.665 45.665 0 0 0-6.613 3.18l-.051.029a49.39 49.39 0 0 0-1.61.992l-.136.088-.102.066c-.474.31-.939.627-1.476 1.008l4.815 6.702-4.979-6.586a45.19 45.19 0 0 0-1.39 1.038h.001l-.163.125a45.45 45.45 0 0 0-1.391 1.131c-7.425 6.304-12.541 14.622-14.793 24.045a44.471 44.471 0 0 0-.52 2.479l-.017.087a47.192 47.192 0 0 0-.372 2.477l-.045.35c-.078.69-.139 1.385-.191 2.139-.013.163-.025.327-.034.476a44.177 44.177 0 0 0-.02 4.929c1.226 24.179 21.165 43.119 45.391 43.119 18.271 0 34.51-10.896 41.643-27.22l6.278.615 8.374.822c-5.493 15.765-17.443 28.638-33.087 35.256zM77.959 355.58a8.274 8.274 0 0 0 2.025.46l19.913 1.952c-5.29 7.631-14.081 12.466-23.786 12.466-15.429 0-28.126-12.057-28.907-27.449a28.333 28.333 0 0 1 .021-3.209l.023-.299c.031-.445.069-.889.121-1.338l.034-.261c.061-.482.13-.962.214-1.438h-.001l.008-.041.014-.074c.099-.54.209-1.077.331-1.591 1.436-5.998 4.696-11.293 9.427-15.311.284-.241.573-.475.893-.726l.121-.092c.284-.222.574-.438.788-.591l.221-.157c.293-.207.588-.409.889-.607l.157-.1c.296-.189.592-.376.895-.557l.199-.116a29.16 29.16 0 0 1 4.176-2.004l.248-.099c.245-.09.495-.175.749-.262l.503-.172c.252-.079.505-.153.794-.238.186-.055.373-.109.599-.169.21-.058.424-.109.637-.161.222-.054.443-.107.647-.151.22-.047.437-.094.664-.136.24-.046.479-.089.695-.125l.65-.105c.271-.
1251704.542-.07.793-.1l.552-.066c.318-.029.639-.052.951-.072l.458-.032a31.59 31.59 0 0 1 2.82-.003l.505.035c.321.021.643.043.938.069l.552.065c.274.032.546.064.804.101l.639.103a29.099 29.099 0 0 1 1.36.261c.223.048.445.101.667.155.212.052.427.102.674.169.188.051.374.106.596.171.253.074.507.147.699.207l.57.194c.249.085.497.169.724.254l.264.105a28.897 28.897 0 0 1 4.176 2.004l.2.116c.303.18.599.366.881.548l.169.11c.302.197.598.401.96.657l.07.049a26.01 26.01 0 0 1 1.014.761c.033.025.064.053.097.078l-11.104 4.327c-4.922 1.92-17.996 7.024-17.878 17.733.106 9.556 10.753 13.923 12.887 14.702zm87.093-7.784-41.968-4.114-10.173-.998-.018-.001-27.393-2.685a53.908 53.908 0 0 1 3.446-1.473l21.948-8.551.025-.009 28.804-11.223.014-.007 28.411-11.07c-3.059 14.196-3.572 28.332-3.096 40.131zm158.09-194.941c4.341 0 7.872 3.531 7.872 7.872 0 4.341-3.531 7.872-7.872 7.872s-7.872-3.531-7.872-7.872c0-4.341 3.531-7.872 7.872-7.872zm-115.646 69.301c5.737-11.363 18.642-31.611 40.74-39.705 19.926-7.3 43.497-3.385 70.095 11.628-12.946 1.91-33.47 5.814-55.16 13.398-14.846 5.19-27.996 11.36-39.367 18.416-6.054-1.226-11.468-2.477-16.308-3.737zm29.277 16.724c-1.323.238-2.622.506-3.911.788 35.139-21.526 80.779-28.492 95.652-30.266l2.799 4.521c-31.832 13.68-75.635 21.558-94.54 24.957zm109.384-32.341-6.325-10.215-.009-.017-3.462-5.591a99.296 99.296 0 0 1 8.634-5.244l9.572 15.462c-2.529 1.949-5.352 3.816-8.41 5.605zm47.063 57.858 16.008 25.865 11.895 19.22.01.013 16.751 27.062a5.058 5.
12517058 0 0 1-1.638 6.956 4.943 4.943 0 0 1-2.641.757 5.038 5.038 0 0 1-4.309-2.394L412.845 315.3l-.003-.008-16.808-27.155-.006-.008-11.449-18.497a98.668 98.668 0 0 1 8.641-5.235zm58.7 63.471-8.921-14.412c.13.032.267.067.43.112.184.048.364.101.581.165.253.074.507.147.699.207l.516.176c.273.092.544.184.779.272l.264.105a29.01 29.01 0 0 1 5.257 2.667l.163.105c.296.196.589.395.923.633l.114.078a32.307 32.307 0 0 1 1.881 1.465c4.735 4.02 7.994 9.315 9.429 15.321.121.506.227 1.018.321 1.534l.039.215c.08.459.147.922.206 1.386l.039.302c.052.439.087.884.119 1.328l.026.344c.031.544.051 1.089.051 1.64 0 .502-.014.998-.039 1.495-.779 15.39-13.475 27.447-28.905 27.447-15.429 0-28.126-12.057-28.907-27.449a29.37 29.37 0 0 1 .012-3.135c.011-.127.022-.253.029-.381.031-.431.066-.859.116-1.286l.015-.119.02-.154c.015-.116.036-.229.052-.344l8.034 12.978c3.961 6.394 10.818 10.211 18.342 10.211a21.5 21.5 0 0 0 11.333-3.231c10.105-6.256 13.237-19.568 6.982-29.675zm42.362 25.668c-3.93 19.206-17.087 35.244-35.194 42.902-7.345 3.106-15.15 4.681-23.197 4.681-8.048 0-15.854-1.575-23.198-4.68-18.108-7.66-31.265-23.697-35.195-42.901a60.25 60.25 0 0 1-1.134-15.026c.014-.292.04-.58.064-.87l.078-1.059c.023-.328.043-.654.073-.955.058-.592.138-1.176.215-1.762l.086-.685c.015-.13.029-.261.05-.396.112-.756.246-1.501.382-2.233l.102-.566c.16-.818.341-1.628.539-2.45l.06-.262a54.884 54.884 0 0 1 .743-2.739l.005-.018a59.428 59.428 0 0 1 9.085-18.249l8.241 13.312a45.002 45.002 0 0 0-4.955 14.076 50.772 50.772 0 0 0-.338 2.262l-.043.348a48.26 48.26 0 0 0-.199 2.194c-.013.155-.025.309-.034.479a46.167 46.167 0 0 0-.017 4.904c1.226 24.179 21.165 43.119 45.391 43.119 24.228 0 44.165-18.94 45.389-43.118a45.023 45.023 0 0 0-.017-4.915c-.01-.165-.023-.329-.043-.579a45.607 45.607 0 0 0-.18-1.997l-.062-.503a46.347 46.347 0 0 0-.376-2.465 46.63 46.63 0 0 0-.517-2.468c-2.254-9.429-7.369-17.748-14.797-24.056a41.31 41.31 0 0 0-1.609-1.3c-.439-.34-.886-.673-1.412-1.051l-.145-.101a46.529 46.529 0 0 0-1.399-.954l-.119-.077-.157-.101c-.472-.302-.949-.6-1.432-.887a10.304 10.304 0 0 0-.198-.114l-.009-.006a45.583 45.583 0 0 0-6.627-3.187c-.151-.062-.3-.12-.425-.165a42.637 42.637 0 0 0-1.247-.437l-.179-.062c-.182-.064-.363-.124-.607-.205a50.461 50.461 0 0 0-1.059-.317 36.663 36.663 0 0 0-2.039-.547 45.215 45.215 0 0 0-2.069-.452 43.611 43.611 0 0 0-1.166-.208l-.161-.025a34.31 34.31 0 0 0-2.055-.286l-.19-.023c-.23-.028-.462-.055-.723-.079-.47-.044-.944-.077-1.423-.109l-.75-.049a47.736 47.736 0 0 0-4.46.003l-.699.046c-.202.013-.406.026-.611.042l-8.131-13.136c.335-.065.672-.125 1.013-.187l.415-.076c.257-.047.516-.096.79-.14.595-.096 1.196-.171 1.798-.248l.68-.089c.207-.028.415-.057.635-.079.711-.076 1.427-.125 2.106-.174.218-.014.436-.032.653-.051.14-.012.279-.023.39-.03a59.853 59.853 0 0 1 6.41-.002c.141.009.279.022.418.032.217.019.434.036.614.048.716.051 1.434.1 2.155.177.211.023.423.052.632.079l.711.092c.589.075 1.179.149 1.769.244.254.041.507.088.759.135l.448.081a56.37 56.37 0 0 1 1.851.357c.351.076.698.16 1.046.242l.146.034a48.672 48.672 0 0 1 2.959.78c.633.185 1.263.377 1.881.579.341.112.679.227 1.009.341a70.98 70.98 0 0 1 1.934.712l.243.095a56.48 56.48 0 0 1 2.664 1.123l.754.34c.748.35 1.483.716 2.248 1.114l.434.221c.877.466 1.728.943 2.532 1.422v-.001c.047.029.1.059.153.089 12.855 7.691 22.273 19.782 26.574 34.164.019.069.037.139.058.208a55.733 55.733 0 0 1 .755 2.826c.196.819.381 1.638.545 2.47l.092.53c.138.741.273 1.479.385 2.247.022.149.039.297.056.445l.098.766c.07.543.143 1.085.198 1.635.032.325.054.654.075.983l.084 1.127c.022.27.044.538.057.793a59.759 59.759 0 0 1-1.133 15.008z" fill="#000000" opacity="1" data-original="#000000" class=""/></g></svg>
12518</span>
12519                <span x-text="garageVehicleName(vehicle)"></span>
12520        <span class="font-normal text-gray-400" x-text="vehicle.ham_model_year"></span>
12521    </button>
12522</template>
12523</div>
12524
12525<!-- Manage garage -->
12526<a href="https://www.esprit-ktm.com/partfinder/garage/index/"
12527    class="shrink-0 whitespace-nowrap text-sm font-medium text-gray-400 transition-colors hover:text-primary-600 hover:underline">
12528    Gérer mon garage</a>
12529</div>
12530
12531                    <div class="px-6 xl:px-8 py-8 xl:py-10">
12532
12533                    <!-- Header -->
12534                    <div class="text-center">
12535                        <h2 class="text-xl xl:text-2xl font-bold text-black">
12536                            Sélectionnez votre modèle <span class="text-primary-500 font-bold">KTM</span>                        </h2>
12537                        <p class="mt-1.5 text-base text-gray-500">
12538                            Accédez aux vues éclatées et accessoires compatibles                        </p>
12539                    </div>
12540
12541                    <!-- Centered separator (reads as a divider, not an underline) -->
12542                    <div class="mx-auto my-7 h-px w-20 bg-gray-200"></div>
12543
12544                    <div>
12545                        <!-- Top slot: exact identifier (plate / VIN) with toggle -->
12546                        <div x-show="isPlateSearchEnabled || isVinSearchEnabled">
12547
12548    <!-- Label (swaps with the mode) -->
12549    <p class="mb-2 text-xs font-bold uppercase tracking-widest text-primary-600">
12550        <span x-show="slotMode === 'plate'">J&#039;ai mon immatriculation</span>
12551        <span x-show="slotMode === 'vin'">Numéro de série (VIN)</span>
12552    </p>
12553
12554    <div class="flex items-stretch gap-2">
12555
12556        <!-- EU band (plate mode only) -->
12557        <div x-show="slotMode === 'plate'"
12558            class="w-10 shrink-0 flex flex-col items-center justify-center rounded-l-lg bg-[#003399] py-2 text-white">
12559            <svg viewBox="0 0 100 100" class="w-5 h-5" aria-hidden="true">
12560                <circle cx="50" cy="16" r="6" fill="#FFCC00" /><circle cx="67" cy="20.6" r="6" fill="#FFCC00" /><circle cx="79.4" cy="33" r="6" fill="#FFCC00" /><circle cx="84" cy="50" r="6" fill="#FFCC00" /><circle cx="79.4" cy="67" r="6" fill="#FFCC00" /><circle cx="67" cy="79.4" r="6" fill="#FFCC00" /><circle cx="50" cy="84" r="6" fill="#FFCC00" /><circle cx="33" cy="79.4" r="6" fill="#FFCC00" /><circle cx="20.6" cy="67" r="6" fill="#FFCC00" /><circle cx="16" cy="50" r="6" fill="#FFCC00" /><circle cx="20.6" cy="33" r="6" fill="#FFCC00" /><circle cx="33" cy="20.6" r="6" fill="#FFCC00" />            </svg>
12561            <span class="mt-0.5 text-[13px] font-bold leading-none">F</span>
12562        </div>
12563
12564        <!-- Plate input -->
12565        <input x-show="slotMode === 'plate'"
12566            type="text"
12567            x-model="plateValue"
12568            @input="onPlateInput()"
12569            @keydown.enter.prevent="submitSlot($event)"
12570            placeholder="AB-123-CD"
12571            maxlength="9"
12572            :disabled="isSubmitting"
12573            aria-label="Saisie&#x20;du&#x20;num&#xE9;ro&#x20;d&#x27;immatriculation"
12574            class="h-12 min-w-0 flex-1 rounded-r-lg border border-gray-300 px-4 text-base font-medium uppercase tracking-wide focus:outline-none focus:ring-2 focus:ring-primary-600 focus:border-primary-600 placeholder:font-normal placeholder:tracking-normal placeholder:text-gray-400" />
12575
12576        <!-- VIN input -->
12577        <input x-show="slotMode === 'vin'"
12578            type="text"
12579            x-model="vinValue"
12580            @input="onVinInput()"
12581            @keydown.enter.prevent="submitSlot($event)"
12582            placeholder="Entrez&#x20;votre&#x20;VIN&#x20;&#x28;17&#x20;caract&#xE8;res&#x29;"
12583            maxlength="17"
12584            :disabled="isSubmitting"
12585            aria-label="Saisie&#x20;du&#x20;num&#xE9;ro&#x20;de&#x20;s&#xE9;rie"
12586            class="h-12 min-w-0 flex-1 rounded-lg border border-gray-300 px-4 text-base font-medium tracking-wide focus:outline-none focus:ring-2 focus:ring-primary-600 focus:border-primary-600 placeholder:font-normal placeholder:tracking-normal placeholder:text-gray-400" />
12587
12588        <!-- Submit -->
12589        <button type="button"
12590            @click="submitSlot($event)"
12591            :disabled="isSubmitting || (slotMode === 'plate' ? !plateValue : !vinValue)"
12592            :class="(isSubmitting || (slotMode === 'plate' ? !plateValue : !vinValue))
12593                ? 'bg-gray-200 text-gray-400 cursor-not-allowed'
12594                : 'bg-primary-600 text-white hover:bg-primary-700'"
12595            class="h-12 w-12 shrink-0 rounded-md flex items-center justify-center transition-colors"
12596            aria-label="Recherche">
12597            <span x-show="!isSubmitting" class="flex"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="h-5 w-5 stroke-current stroke-2 fill-none" width="24" height="24" role="img">
12598  <path stroke-linecap="round" stroke-linejoin="round" d="M13 7l5 5m0 0l-5 5m5-5H6"/>
12599<title>arrow-sm-right</title></svg>
12600</span>
12601            <svg x-show="isSubmitting" x-cloak class="h-5 w-5 animate-spin" fill="none" stroke="currentColor" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10" stroke="currentColor" stroke-width="2" fill="none" opacity="0.25"></circle><path d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z" fill="currentColor"></path></svg>
12602        </button>
12603    </div>
12604
12605    <!-- Inline error — prominent so a failed lookup is unmistakable -->
12606    <div x-show="slotError" x-cloak role="alert" aria-live="assertive"
12607        class="mt-3 flex items-start gap-2 rounded-lg border-2 border-red-500 bg-red-50 p-3 text-red-700">
12608        <span class="text-sm font-semibold leading-snug" x-text="slotError"></span>
12609    </div>
12610
12611    <!-- Toggle link (only when both modes are available) -->
12612    <button type="button"
12613        x-show="isPlateSearchEnabled && isVinSearchEnabled"
12614        @click="toggleSlotMode()"
12615        class="mt-2.5 inline-flex text-base font-semibold text-primary-600 hover:text-primary-700 hover:underline">
12616        <span x-show="slotMode === 'plate'">J&#039;ai un numéro de série</span>
12617        <span x-show="slotMode === 'vin'">Revenir à l&#039;immatriculation</span>
12618    </button>
12619</div>
12620
12621                        <!-- "or" + model section (BO-selected layout: tabs / search first) -->
12622                        <div x-data="{ showCascade: false }">
12623    <!-- "or" separator (only below a slot) -->
12624    <div x-show="isPlateSearchEnabled || isVinSearchEnabled" class="my-5 flex items-center gap-4">
12625        <span class="h-px flex-1 bg-gray-200"></span>
12626        <span class="text-xs font-bold uppercase tracking-widest text-gray-400">ou</span>
12627        <span class="h-px flex-1 bg-gray-200"></span>
12628    </div>
12629
12630    <!-- Section heading: "by model" when a plate/VIN slot sits above, otherwise
12631         this is the standalone "Quick search" section. -->
12632    <p class="mb-2 text-xs font-bold uppercase tracking-widest text-primary-600">
12633        <span x-show="isPlateSearchEnabled || isVinSearchEnabled">Je cherche par modèle</span>
12634        <span x-show="!(isPlateSearchEnabled || isVinSearchEnabled)">Recherche rapide</span>
12635    </p>
12636
12637    <!-- Featured quick search (navigates on pick) -->
12638    <div class="relative"
12639    x-data="HyvaModelSearchIntegrated()"
12640    x-init="init(window.partFinderSearchModels || [])"
12641    @search-query-updated.window="searchQuery = $event.detail">
12642
12643    <span class="pointer-events-none absolute left-3.5 top-1/2 -translate-y-1/2 text-gray-400">
12644        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-5 h-5 stroke-2 fill-none" width="24" height="24" role="img">
12645  <path stroke-linecap="round" stroke-linejoin="round" d="M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"/>
12646<title>search</title></svg>
12647    </span>
12648
12649    <input
12650        x-ref="searchInput"
12651        x-model="searchQuery"
12652        @input="filterModels(); $dispatch('search-query-updated', searchQuery)"
12653        @keydown="handleKeydown($event)"
12654        @focus="filterModels()"
12655        type="text"
12656        placeholder="&#x28;ex&#x3A;&#x20;EXC,&#x20;RC,&#x20;Duke&#x29;..."
12657        class="w-full h-12 pl-11 pr-4 bg-white border border-gray-300 rounded-lg text-base focus:outline-none focus:ring-2 focus:ring-primary-600 focus:border-primary-600 transition-all"
12658        autocomplete="off"
12659        role="combobox"
12660        :aria-expanded="isOpen"
12661        aria-autocomplete="list" />
12662
12663    <div
12664    x-show="isOpen"
12665    x-transition
12666    id="model-suggestions-tabs"
12667    role="listbox"
12668    class="absolute z-50 w-full mt-2 bg-white border-2 border-gray-200 rounded-lg shadow-2xl max-h-96 overflow-y-auto"
12669    x-ref="suggestionsList"
12670    x-cloak>
12671
12672    <div class="sticky top-0 bg-white border-b border-gray-200 px-4 py-2 z-10">
12673        <div class="flex items-center justify-between">
12674            <span class="text-xs font-semibold text-gray-600 uppercase tracking-wide">
12675                Suggestions            </span>
12676            <span class="text-xs text-gray-500">
12677                <span x-text="suggestions.length"></span>
12678                <span x-show="totalResults > suggestions.length"> sur <span x-text="totalResults"></span></span>
12679                <span x-show="suggestions.length <= 1">résultat</span>
12680                <span x-show="suggestions.length > 1">résultats</span>
12681            </span>
12682        </div>
12683    </div>
12684
12685    <div class="divide-y divide-gray-100">
12686        <template x-for="(suggestion, index) in suggestions" :key="suggestion.value">
12687            <button
12688                type="button"
12689                @click="selectModel(suggestion)"
12690                @mouseenter="selectedIndex = index"
12691                :class="selectedIndex === index ? 'bg-gray-50' : 'hover:bg-gray-50'"
12692                class="w-full px-4 py-3 text-left transition-colors duration-150 flex items-center gap-3 group">
12693                <div
12694                    class="flex-shrink-0 w-1 h-8 rounded-full transition-all duration-200"
12695                    :class="selectedIndex === index ? 'bg-gray-500' : 'bg-transparent'">
12696                </div>
12697
12698                <div class="flex-1">
12699                    <span
12700                        class="text-sm xl:text-base font-medium"
12701                        :class="selectedIndex === index ? 'text-gray-900' : 'text-gray-700'"
12702                        x-html="highlightMatch(suggestion)">
12703                    </span>
12704                </div>
12705            </button>
12706        </template>
12707    </div>
12708
12709    <div
12710        x-show="suggestions.length === 0 && searchQuery.length > 0"
12711        class="px-4 py-8 text-center">
12712        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-12 h-12 mx-auto stroke-gray-300 stroke-2 fill-none mb-3" width="24" height="24" role="img">
12713  <path stroke-linecap="round" stroke-linejoin="round" d="M9.172 16.172a4 4 0 015.656 0M9 10h.01M15 10h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"/>
12714<title>emoji-sad</title></svg>
12715        <p class="text-gray-500 font-medium">
12716            Aucun modèle trouvé        </p>
12717        <p class="text-sm xl:text-base text-gray-400 mt-1">
12718            Essayez un autre terme de recherche        </p>
12719    </div>
12720
12721    <div x-show="hasMore" class="border-t border-gray-200 px-4 py-3 text-center">
12722        <button
12723            type="button"
12724            @click="showMore()"
12725            :disabled="isLoadingMore"
12726            aria-label="Afficher&#x20;plus&#x20;de&#x20;r&#xE9;sultats&#x20;de&#x20;recherche"
12727            :class="isLoadingMore ? 'opacity-50 cursor-not-allowed' : ''"
12728            class="text-sm xl:text-base text-primary-600 hover:text-primary-700 font-medium transition-colors">
12729            Voir plus de résultats        </button>
12730    </div>
12731
12732    <div x-show="suggestions.length > 0" class="sticky bottom-0 bg-gray-50 border-t border-gray-200 px-4 py-2">
12733        <div class="flex items-center justify-center gap-4 text-xs text-gray-500">
12734            <span class="flex items-center gap-1">
12735                <kbd class="px-1.5 py-0.5 bg-white border border-gray-300 rounded text-xs">↑↓</kbd>
12736                Naviguer            </span>
12737            <span class="flex items-center gap-1">
12738                <kbd class="px-1.5 py-0.5 bg-white border border-gray-300 rounded text-xs">Enter</kbd>
12739                Sélectionner            </span>
12740        </div>
12741    </div>
12742</div></div>
12743
12744    <!-- Fallback: reveal the numbered cascade selectors. Only shown when a slot
12745         (plate / VIN) sits above; without one the cascade is displayed directly
12746         below the quick search, so this toggle would be redundant. -->
12747    <button type="button"
12748        x-show="isPlateSearchEnabled || isVinSearchEnabled"
12749        @click="showCascade = !showCascade"
12750        :aria-expanded="showCascade"
12751        class="mt-2.5 inline-flex items-center gap-1.5 text-base font-semibold text-gray-500 transition-colors hover:text-primary-600">
12752        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-4 h-4 stroke-2 fill-none" width="24" height="24" role="img">
12753  <path stroke-linecap="round" stroke-linejoin="round" d="M21 21l-6-6m2-5a7 7 0 11-14 0 7 7 0 0114 0z"/>
12754<title>search</title></svg>
12755        Je ne trouve pas mon modèle    </button>
12756
12757    <!-- Cascade: revealed by the toggle above, or shown directly when there is no
12758         plate/VIN slot (so the user always gets quick search + selectors at once). -->
12759    <div x-show="showCascade || !(isPlateSearchEnabled || isVinSearchEnabled)"
12760        x-cloak
12761        x-transition:enter="transition ease-out duration-200"
12762        x-transition:enter-start="opacity-0 -translate-y-1"
12763        x-transition:enter-end="opacity-100 translate-y-0"
12764        class="mt-4">
12765
12766        <!-- Divider + heading for the "by criteria" section. Only in no-slot mode:
12767             there the two methods are shown at once and need a clear visual break;
12768             in slot mode the "I can't find my model" toggle already separates them. -->
12769        <template x-if="!(isPlateSearchEnabled || isVinSearchEnabled)">
12770            <div>
12771                <!-- "or" separator, matching the top slot separator and the horizontal layout -->
12772                <div class="mb-5 flex items-center gap-4">
12773                    <span class="h-px flex-1 bg-gray-200"></span>
12774                    <span class="text-xs font-bold uppercase tracking-widest text-gray-400">ou</span>
12775                    <span class="h-px flex-1 bg-gray-200"></span>
12776                </div>
12777                <p class="mb-2 text-xs font-bold uppercase tracking-widest text-primary-600">Par critères</p>
12778            </div>
12779        </template>
12780
12781        <div class="flex flex-col gap-4">
12782    <template x-for="(finderOption, index) in finderOptions" :key="finderOption.id">
12783        <div class="relative">
12784            <span class="pointer-events-none absolute left-3 top-1/2 -translate-y-1/2 flex h-7 w-7 items-center justify-center rounded-full bg-gray-100 text-sm font-bold text-gray-500"
12785                x-text="index + 1"></span>
12786
12787            <select
12788                x-model="finderOption.selectedValue"
12789                @change="finderOption.handleChange()"
12790                :disabled="finderOption.isDisabled || isSubmitting || finderOption.isLoading"
12791                class="w-full h-12 bg-white bg-none border border-gray-300 rounded-lg text-gray-700 text-base pl-12 pr-10 appearance-none cursor-pointer focus:outline-none focus:ring-2 focus:ring-primary-600 focus:border-primary-600 transition-all"
12792                :class="(finderOption.isDisabled || isSubmitting) ? 'opacity-60 cursor-not-allowed bg-gray-50' : ''">
12793                <option value="" x-text="finderOption.label"></option>
12794                <template x-for="value in finderOption.values || []" :key="value.id">
12795                    <option :value="value.id" x-text="value.text"></option>
12796                </template>
12797            </select>
12798
12799            <svg class="pointer-events-none absolute right-3 top-1/2 -translate-y-1/2 h-5 w-5 text-gray-400"
12800                viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"
12801                stroke-linecap="round" stroke-linejoin="round" aria-hidden="true">
12802                <path d="m6 9 6 6 6-6" />
12803            </svg>
12804        </div>
12805    </template>
12806</div>
12807
12808        <!-- Cascade submit (quick pick navigates directly) -->
12809        <button
12810            type="submit"
12811            :disabled="isSubmitting || !finderOptions[finderOptions.length - 1]?.selectedValue"
12812            :class="(isSubmitting || !finderOptions[finderOptions.length - 1]?.selectedValue)
12813                ? 'bg-gray-200 text-gray-400 cursor-not-allowed'
12814                : 'bg-primary-600 text-white hover:bg-primary-700'"
12815            class="mt-4 h-12 w-full rounded-md text-base font-bold uppercase tracking-wide transition-colors flex items-center justify-center">
12816            <span x-show="!isSubmitting">Choisir</span>
12817            <svg x-show="isSubmitting" x-cloak class="h-5 w-5 animate-spin" fill="none" stroke="currentColor" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10" stroke="currentColor" stroke-width="2" fill="none" opacity="0.25"></circle><path d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z" fill="currentColor"></path></svg>
12818        </button>
12819    </div>
12820</div>
12821                    </div>
12822                    </div>
12823                </div>
12824            </form>
12825        </div>
12826
12827        <!-- Selected Model Card -->
12828        <div x-show="selectedModel" class="w-full px-4 pt-6 pb-4 lg:px-3 lg:pt-3 lg:pb-3 2xl:px-4 2xl:pt-6 2xl:pb-4 h-full">
12829    <div class="bg-white text-black rounded-lg flex flex-col h-full">
12830        <div class="max-w-7xl mx-auto w-full h-full flex flex-col">
12831            <div class="flex flex-col gap-3 lg:gap-2 2xl:gap-3 h-full">
12832
12833                <!-- Vehicle Badge Header -->
12834                <div class="flex items-center gap-3 bg-gray-50 rounded-xl p-3 border border-gray-200">
12835                    <!-- Vehicle Icon -->
12836                    <span class="w-10 h-10 lg:w-8 lg:h-8 2xl:w-10 2xl:h-10 text-primary-500 flex items-center justify-center shrink-0 [&>svg]:w-full [&>svg]:h-full"
12837                          x-html="getVehicleIcon()"></span>
12838
12839                    <!-- Vehicle Name with Truncation -->
12840                    <div class="flex-1 min-w-0">
12841                        <span class="text-xs text-gray-500 block">Votre véhicule</span>
12842                        <div class="font-bold text-gray-900 truncate text-sm lg:text-base"
12843                             :title="normalizeVehicleName(selectedModel)"
12844                             x-text="normalizeVehicleName(selectedModel)"></div>
12845                    </div>
12846
12847                    <!-- Change Button (Pill Style) -->
12848                    <button
12849                        type="button"
12850                        @click="resetPartFinder()"
12851                        :disabled="isSubmitting"
12852                        class="shrink-0 bg-white text-primary-500 border border-primary-500 rounded-full px-4 py-2 text-xs lg:text-sm font-medium hover:bg-primary-500 hover:text-white transition-colors flex items-center gap-1">
12853                        <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-4 h-4 stroke-current stroke-2 fill-none" width="24" height="24" role="img">
12854  <path stroke-linecap="round" stroke-linejoin="round" d="M4 4v5h.582m15.356 2A8.001 8.001 0 004.582 9m0 0H9m11 11v-5h-.581m0 0a8.003 8.003 0 01-15.357-2m15.357 2H15"/>
12855<title>refresh</title></svg>
12856                        <span class="hidden lg:inline">Changer de modèle</span>
12857                    </button>
12858                </div>
12859
12860                <hr class="my-1 border-t border-gray-200" />
12861
12862                <!-- Categories List -->
12863                <div class="w-full flex-1 flex flex-col min-h-0" x-show="!$root.isPiecesOrigine">
12864                    <div class="flex flex-col gap-2 w-full h-full">
12865                                <a href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-cycle.html"
12866        class="group relative block w-full h-full">
12867        <!-- Visual Background Layer with individual shadow -->
12868        <div class="absolute inset-0 bg-white rounded-xl shadow-md border border-gray-100 transition-all duration-300 group-hover:border-primary-300 group-hover:shadow-lg group-hover:shadow-primary-100/50"></div>
12869
12870        <!-- Content (relative to sit on top, but no scale) -->
12871        <div class="relative flex items-center gap-3 w-full h-full p-6 lg:p-2 2xl:p-6">
12872            <div class="flex h-16 w-16 lg:h-12 lg:w-12 2xl:h-16 2xl:w-16 shrink-0 items-center justify-center">
12873                <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="24" height="24" x="0" y="0" viewBox="0 0 64 64" style="enable-background:new 0 0 512 512" xml:space="preserve" class="h-12 w-12 lg:h-8 lg:w-8 2xl:h-12 2xl:w-12 stroke-primary-500" role="img"><g><path d="M51 44h-2V22a1 1 0 0 0 1-1v-4a1 1 0 0 0-1-1V2h-2v14h-6V2h-2v14a1 1 0 0 0-1 1v3.61a11.985 11.985 0 0 0-12 0V17a1 1 0 0 0-1-1V2h-2v14h-6V2h-2v14a1 1 0 0 0-1 1v4a1 1 0 0 0 1 1v22h-2a2.006 2.006 0 0 0-2 2v2a2.006 2.006 0 0 0 2 2h2.42A5.014 5.014 0 0 0 20 53h3v9h2v-1.59l2-2 1.29 1.3 1.42-1.42-1.3-1.29 1.3-1.29-1.42-1.42-3.29 3.3v-6.18l2-2 1.29 1.3 1.42-1.42-.29-.29-1.01-1 1.3-1.29-1.42-1.42-3.29 3.3v-6.18l2-2 1.29 1.3 1.42-1.42-1.3-1.29 1.3-1.29-1.42-1.42-3.29 3.3v-6.18L26.41 32h1.18l.7.71L29 32h2v30h2V32h2l.71.71.7-.71h1.18L39 33.41v6.18l-3.29-3.3-1.42 1.42 1.3 1.29-1.3 1.29 1.42 1.42 1.29-1.3 2 2v6.18l-3.29-3.3-1.42 1.42 1.3 1.29-1.01 1-.29.29 1.42 1.42 1.29-1.3 2 2v6.18l-3.29-3.3-1.42 1.42 1.3 1.29-1.3 1.29 1.42 1.42 1.29-1.3 2 2V62h2v-9h3a5.014 5.014 0 0 0 4.58-3H51a2.006 2.006 0 0 0 2-2v-2a2.006 2.006 0 0 0-2-2Zm-36 4h-2v-2h2Zm1-28v-2h8v2Zm7 31h-3a3.009 3.009 0 0 1-3-3V22h6v1.08A11.891 11.891 0 0 0 20 31v1h3Zm-.95-21a10.074 10.074 0 0 1 .95-3.36 9.851 9.851 0 0 1 2-2.78 10 10 0 0 1 14 0 9.851 9.851 0 0 1 2 2.78 10.074 10.074 0 0 1 .95 3.36ZM47 48a3.009 3.009 0 0 1-3 3h-3V32h3v-1a11.891 11.891 0 0 0-3-7.92V22h6Zm1-28h-8v-2h8Zm3 28h-2v-2h2Z" fill="#000000" opacity="1" data-original="#000000" class=""/></g></svg>
12874            </div>
12875            <div class="h-16 w-px lg:h-12 2xl:h-16 bg-gray-200"></div>
12876
12877            <div class="flex-1 text-left min-w-0">
12878                <h4 class="font-bold text-xl lg:text-lg 2xl:text-xl text-zinc-700 truncate group-hover:text-black transition-colors">
12879                    Partie cycle                </h4>
12880                <p class="text-sm text-zinc-600 line-clamp-2 lg:line-clamp-1 2xl:line-clamp-2">Châssis, suspensions et roues</p>
12881                <div class="mt-2 inline-flex items-center text-primary-500 font-bold transition-all duration-300 group-hover:translate-x-1">
12882                    Voir la catégorie                    <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="ml-1 h-4 w-4 transition-transform stroke-current stroke-2 fill-none group-hover:translate-x-1" width="16" height="16" role="img">
12883  <path stroke-linecap="round" stroke-linejoin="round" d="M9 5l7 7-7 7"/>
12884<title>chevron-right</title></svg>
12885                </div>
12886            </div>
12887        </div>
12888    </a>
12889        <a href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/partie-moteur.html"
12890        class="group relative block w-full h-full">
12891        <!-- Visual Background Layer with individual shadow -->
12892        <div class="absolute inset-0 bg-white rounded-xl shadow-md border border-gray-100 transition-all duration-300 group-hover:border-primary-300 group-hover:shadow-lg group-hover:shadow-primary-100/50"></div>
12893
12894        <!-- Content (relative to sit on top, but no scale) -->
12895        <div class="relative flex items-center gap-3 w-full h-full p-6 lg:p-2 2xl:p-6">
12896            <div class="flex h-16 w-16 lg:h-12 lg:w-12 2xl:h-16 2xl:w-16 shrink-0 items-center justify-center">
12897                <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="24" height="24" x="0" y="0" viewBox="0 0 511.993 511" style="enable-background:new 0 0 512 512" xml:space="preserve" class="h-12 w-12 lg:h-8 lg:w-8 2xl:h-12 2xl:w-12 stroke-primary-500" role="img"><g><path d="M164.902 123.121c-11.664-11.66-30.574-11.656-42.234.008s-11.66 30.57 0 42.234c11.66 11.664 30.57 11.664 42.234.008 11.653-11.68 11.649-30.586-.007-42.258zm-12.074 30.164a12.796 12.796 0 0 1-13.95 2.778 12.796 12.796 0 0 1-7.901-11.825 12.797 12.797 0 0 1 21.851-9.05c4.996 4.996 4.996 13.101 0 18.097zM376.512 415.352a38.09 38.09 0 0 0 27.11-11.227c12.991-12.96 15.015-33.293 4.835-48.559-10.184-15.265-29.73-21.207-46.687-14.195-16.954 7.012-26.594 25.027-23.016 43.024 3.574 17.996 19.367 30.96 37.715 30.957zm-15.094-53.47c8.332-8.331 21.84-8.331 30.172 0 8.332 8.333 8.332 21.845 0 30.177-8.45 8.039-21.723 8.039-30.172 0a21.335 21.335 0 0 1 0-30.176zm0 0" fill="#000000" opacity="1" data-original="#000000" class=""/><path d="M416.492 5.496c-3.203-3.2-7.543-5-12.07-5s-8.871 1.8-12.07 5L374.25 23.563l-24.133 24.132-84.476 84.48a25.586 25.586 0 0 0-7.5 18.102 25.588 25.588 0 0 0 7.5 18.106l3.113 3.097a25.605 25.605 0 0 0 21.879 7.16.316.316 0 0 1 .12 0l.759-.085h.136l-16.554 16.554c-5.301 5.297-11.844 11.45-19.098 18.004-7.594
12897-6.828-14.164-12.996-19.148-17.972l-16.52-16.586c.29 0 .586.05.852.093a.627.627 0 0 1 .12 0 25.541 25.541 0 0 0 21.88-7.152l3.12-3.113c9.997-9.996 9.997-26.203 0-36.2l-84.476-84.48-24.082-24.14-18.101-18.067c-6.754-6.45-17.387-6.45-24.141 0L4.996 95.95c-6.66 6.668-6.66 17.469 0 24.133l18.102 18.11L131.707 246.82a25.6 25.6 0 0 0 36.207 0l3.106-3.113a25.463 25.463 0 0 0 7.187-20.66c0-.086.05-.152.05-.238-.007-.418-.038-.836-.093-1.246 0-.258-.043-.489-.078-.735l16.574 16.527c4.317 4.32 9.3 9.567 14.422 15.184-33.102 25.836-68.27 49.254-88.75 53.598a69.583 69.583 0 0 0-13.992 4.691l-3.637-3.633a17.062 17.062 0 0 0-24.14 0l-12.008 12.032c-3.2 3.199-5 7.543-5 12.07s1.8 8.867 5 12.07l3.218 3.207a71.953 71.953 0 0 0 5.317 70.606 75.922 75.922 0 0 0 20.18 20.207 71.492 71.492 0 0 0 70.675 5.351l3.192 3.2a17.066 17.066 0 0 0 24.14 0l12.024-12.067c6.66-6.664 6.66-17.469 0-24.133l-3.637-3.644a69.48 69.48 0 0 0 4.676-13.95c4.133-19.37 25.406-51.996 49.605-83.542 28.442 37.043 46.078 66.558 49.723 83.488a69.246 69.246 0 0 0 4.676 13.996l-3.64 3.644a17.062 17.062 0 0 0 0 24.141l12.062 12.067c3.203 3.203 7.543 5 12.074 5 4.527 0 8.867-1.797 12.07-5l3.192-3.192a71.534 71.534 0 0 0 70.636-5.332 75.078 75.078 0 0 0 11.094-9.156 73.263 73.263 0 0 0 9.07-11.028 71.959 71.959 0 0 0 5.344-70.648l3.215-3.215a17.063 17.063 0 0 0 0-24.14l-12.055-12.067c-6.668-6.664-17.469-6.664-24.133 0l-3.644 3.645a65.01 65.01 0 0 0-13.969-4.66c-17.808-3.797-49.203-22.887-88.746-53.692 5.211-5.676 10.078-10.777 14.41-15.113l16.555-16.555c-.043.317-.05.59-.094.93-.05.437-.074.883-.074 1.324 0 .074.043.145.043.219a25.44 25.44 0 0 0 7.191 20.48l3.106 3.117a25.602 25.602 0 0 0 36.207 0l108.64-108.648 18.098-18.105c6.664-6.664 6.664-17.47 0-24.133zm54.305 126.723-12.074 12.066-90.504-90.558 12.066-12.067 45.227 45.227zM86.457 86.992l45.227-45.226 12.066 12.066-90.48 90.41-12.075-12.066zm21.11-69.394 12.074 12.074-90.454 90.453-12.125-12.09zm51.39 214.03-3.11 3.118a8.526 8.526 0 0 1-12.074 0L65.336 156.31l90.504-90.516 78.45 78.45a8.54 8.54 0 0 1 0 12.066l-3.126 3.105a8.71 8.71 0 0 1-7.441 2.32c-.18 0-.348 0-.528-.043-1.554-.195-3.125-.382-5.265-.46h-.332c-1.16 0-2.313 0-3.473.085h-2.043a54.49 54.49 0 0 0-11.996 2.22c-.402.12-.734.16-1.145.288l-.18.07c-.109.043-.21.06-.312.102-1.332.453-2.613 1.016-3.91 1.57-.367.153-.785.29-1.133.442l-.156.07-.852.402c-.941.415-1.855.887-2.73 1.422l-1.957 1.121c-.23.145-.469.262-.7.407l-.288.164c-1.23.851-2.559 1.707-3.696 2.558l-.222.2c-.555.418-1.09.851-1.63 1.277a46.127 46.127 0 0 0-4.128 3.68 48.071 48.071 0 0 0-3.688 4.136 59.768 59.768 0 0 0-1.261 1.606l-.2.238c-.73.957-1.507 2.09-2.43 3.492-.179.281-.382.555-.562.852l-1.008 1.785c-.332.527-.511 1.004-.793 1.535a53.843 53.843 0 0 0-3.355 7.68c-.059.129-.086.265-.137.39-.05.13 0 .188-.074.274l-.121.308c-.152.512-.246 1.06-.39 1.579a53.385 53.385 0 0 0-1.298 5.574c-.18.953-.308 1.816-.386 2.558a64.013 64.013 0 0 0-.34 3.567v.094a26.737 26.737 0 0 0-.129 3.875v2.046c.059 1.434.23 2.868.426 4.415v.066c0 .238 0 .476.05.719a8.68 8.68 0 0 1-2.394 7.53zm47.785-6.39-25.215-25.136a37.966 37.966 0 0 1 4.094-6.649c.137-.18.281-.324.387-.476.101-.157.398-.489.578-.72l.086-.109c.758-.906 1.527-1.808 2.371-2.664.844-.851 1.707-1.586 2.621-2.336.344-.214.664-.464.957-.746.238-.16.441-.347.664-.527a37.899 37.899 0 0 1 6.067-3.738c.101 0 .18-.094.289-.145l25.148 25.215c4.875 4.875 11.094 10.777 18.348 17.297a898.276 898.276 0 0 1-20.684 17.332c-5.566-6.125-11.008-11.867-15.726-16.59zm181.52 97.621a49.72 49.72 0 0 1 14.996 5.618c.25.12.508.226.773.316.172.074.336.145.504.203a7.508 7.508 0 0 0 5.871 0c.172-.058.332-.129.504-.203a8.268 8.268 0 0 0 2.652-1.785l7.786-7.781 12.066 12.066-7.543 7.543c-.156.16-.207.367-.351.527a8.63 8.63 0 0 0-.958 1.442 6.253 6.253 0 0 0-.98 3.004 7.878 7.878 0 0 0-.102 1.632c.055.516.153 1.028.297 1.528.133.57.328 1.125.582 1.652.094.2.094.41.203.598a55.673 55.673 0 0 1-1.816 58.508 54.086 54.086 0 0 1-4.617 5.843c-.074.086-.188.13-.266.223a24.232 24.232 0 0 1-1.996 2.25l-.125.148-.172.153a30.24 30.24 0 0 1-2.246 1.996c-.094.07-.125.172-.219.246a54.85 54.85 0 0 1-5.882 4.652 55.681 55.681 0 0 1-58.461 1.785c-.188-.113-.403-.113-.598-.207a7.688 7.688 0 0 0-1.644-.578 8.023 8.023 0 0 0-1.547-.3 8.443 8.443 0 0 0-1.602.093 7.927 7.927 0 0 0-1.598.317 11.64 11.64 0 0 0-2.867 1.629c-.164.144-.375.195-.527.351l-7.547 7.543-12.066-12.066 7.843-7.844c.121-.125.164-.297.282-.426a7.736 7.736 0 0 0 1.074-1.62c.23-.388.43-.794.598-1.212a8.806 8.806 0 0 0 .359-1.828 5.84 5.84 0 0 0-.238-3.105 7.681 7.681 0 0 0-.489-1.485c-.082-.187-.082-.39-.187-.57a52.013 52.013 0 0 1-5.64-15.149c-5.376-25.128-32.29-63.914-55.524-93.867a891.809 891.809 0 0 1 24.668-29.457c31.043 24.297 70.93 52.113 96.75 57.617zm-82.977-97.586c-5.265 5.258-12.7 13.192-21.223 22.75-.078.094-.187.13-.265.23-.074.102-.05.122-.094.18-34.133 38.399-86.297 103.739-94.062 140.196a51.968 51.968 0 0 1-5.649 15.094c-.094.172-.086.351-.172.52a8.441 8.441 0 0 0-.547 1.706 6.11 6.11 0 0 0-.168 3.149c.055.535.16 1.066.317 1.578.433 1.02.988 1.976 1.652 2.86.13.136.172.323.309.46l7.851 7.844-12.074 12.031-7.535-7.543c-.164-.156-.367-.207-.531-.351a11.643 11.643 0 0 0-2.875-1.637 8.832 8.832 0 0 0-1.563-.3 8.196 8.196 0 0 0-1.636-.103 8.37 8.37 0 0 0-1.52.301c-.59.125-1.164.32-1.707.578-.195.094-.41.094-.598.207a55.653 55.653 0 0 1-58.496-1.812 54.768 54.768 0 0 1-5.836-4.606c-.093-.078-.136-.195-.238-.28a26.74 26.74 0 0 1-4.531-4.532c-.078-.094-.188-.129-.266-.223a52.476 52.476 0 0 1-4.648-5.898c-11.621-17.57-12.309-40.203-1.785-58.453.109-.196.109-.407.214-.606a8.75 8.75 0 0 0 .563-1.62 9.501 9.501 0 0 0-.102-4.763 7.396 7.396 0 0 0-.675-1.406 8.145 8.145 0 0 0-.965-1.469c-.145-.16-.196-.367-.348-.52l-7.543-7.542 12.074-12.066 7.832 7.84a8.377 8.377 0 0 0 2.5 1.656c.227.109.461.207.7.289.902.343 1.859.527 2.824.547a8.613 8.613 0 0 0 2.824-.547c.234-.078.46-.176.684-.282.222-.101.46-.144.683-.273a52.464 52.464 0 0 1 15.145-5.664c26.265-5.59 67.601-34.29 103.015-62.68.094-.074.207-.101.301-.176.094-.078.066-.113.11-.156 12.8-10.308 24.816-20.48 35.054-29.558 10.461-9.278 19.168-1
128977.399 24.746-23.04l25.285-25.199a37.654 37.654 0 0 1 7.004 4.352c.266.23.54.476.856.7l.12.093c.903.762 1.798 1.52 2.653 2.363.852.848 1.614 1.758 2.371 2.664l.07.086c.22.297.454.582.708.852l.136.195-.203-.195c.125.187.332.418.52.648a29.124 29.124 0 0 1 1.926 2.738 35.374 35.374 0 0 1 1.793 3.297c.043.094.093.18.144.282zm62.934 9.48a8.533 8.533 0 0 1-12.074 0l-3.106-3.112a8.678 8.678 0 0 1-2.312-7.45c0-.18 0-.367.039-.554.199-1.547.386-3.11.46-5.242v-.317c.044-1.441 0-2.875-.101-4.266v-.972a54.183 54.183 0 0 0-2.313-12.594c-.085-.3-.117-.539-.21-.855l-.051-.125c-.547-1.649-1.215-3.254-1.914-4.84-.086-.188-.153-.41-.23-.59v-.074c-.153-.325-.29-.66-.442-.985a23.57 23.57 0 0 0-1.41-2.695l-1.051-1.809c-.168-.289-.324-.59-.5-.855l-.137-.238c-.855-1.235-1.707-2.559-2.613-3.703l-.18-.211c-.418-.555-.851-1.094-1.277-1.633a50.048 50.048 0 0 0-3.688-4.137 58.006 58.006 0 0 0-5.453-4.719l-.094-.078c-.144-.117-.289-.246-.433-.36-.524-.398-1.094-.85-1.707-1.234-.617-.386-1.094-.753-1.649-1.109-.351-.23-.632-.43-1.03-.684l-1.708-.949a55.214 55.214 0 0 0-3.133-1.62c-.297-.138-.64-.356-.922-.477-.144-.059-.316-.11-.46-.18a51.338 51.338 0 0 0-4.829-1.895c-.308-.109-.554-.23-.855-.34l-.262-.07a55.73 55.73 0 0 0-7.554-1.75c-.434-.074-.852-.125-1.22-.176-1.425-.199-2.859-.343-4.265-.43a32.472 32.472 0 0 0-2.68-.124h-3.277c-1.469.066-2.937.23-4.394.426h-.13c-.214 0-.425 0-.648.043a8.738 8.738 0 0 1-7.449-2.32l-3.105-3.11a8.532 8.532 0 0 1 0-12.067l78.445-78.445 90.36 90.48zm114.644-114.651L392.41 29.648l12.074-12.078 90.446 90.465zm0 0" fill="#000000" opacity="1" data-original="#000000" class=""/><path d="M347.098 123.113c-11.664 11.664-11.66 30.575.004 42.235 11.66 11.664 30.57 11.664 42.234 0 11.664-11.66 11.664-30.57.004-42.235-11.68-11.64-30.574-11.636-42.25.008zm30.164 30.18c-4.996 5-13.102 4.996-18.098-.004-4.996-4.996-4.996-13.098 0-18.098 4.996-5 13.102-5 18.098-.004a12.796 12.796 0 0 1 0 18.106zM108.371 349.816c-14.996 14.996-14.996 39.313 0 54.309s39.309 14.996 54.305 0c14.996-14.996 14.996-39.313 0-54.309a38.141 38.141 0 0 0-27.153-11.351 38.134 38.134 0 0 0-27.152 11.351zm42.238 42.243c-8.449 8.039-21.722 8.039-30.172 0-8.332-8.332-8.328-21.84 0-30.168 8.333-8.332 21.84-8.332 30.168 0 8.333 8.328 8.333 21.836.004 30.168zm0 0" fill="#000000" opacity="1" data-original="#000000" class=""/></g></svg>
12898            </div>
12899            <div class="h-16 w-px lg:h-12 2xl:h-16 bg-gray-200"></div>
12900
12901            <div class="flex-1 text-left min-w-0">
12902                <h4 class="font-bold text-xl lg:text-lg 2xl:text-xl text-zinc-700 truncate group-hover:text-black transition-colors">
12903                    Partie moteur                </h4>
12904                <p class="text-sm text-zinc-600 line-clamp-2 lg:line-clamp-1 2xl:line-clamp-2">Pièces moteur et transmission</p>
12905                <div class="mt-2 inline-flex items-center text-primary-500 font-bold transition-all duration-300 group-hover:translate-x-1">
12906                    Voir la catégorie                    <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="ml-1 h-4 w-4 transition-transform stroke-current stroke-2 fill-none group-hover:translate-x-1" width="16" height="16" role="img">
12907  <path stroke-linecap="round" stroke-linejoin="round" d="M9 5l7 7-7 7"/>
12908<title>chevron-right</title></svg>
12909                </div>
12910            </div>
12911        </div>
12912    </a>
12913        <a href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires.html"
12914        class="group relative block w-full h-full">
12915        <!-- Visual Background Layer with individual shadow -->
12916        <div class="absolute inset-0 bg-white rounded-xl shadow-md border border-gray-100 transition-all duration-300 group-hover:border-primary-300 group-hover:shadow-lg group-hover:shadow-primary-100/50"></div>
12917
12918        <!-- Content (relative to sit on top, but no scale) -->
12919        <div class="relative flex items-center gap-3 w-full h-full p-6 lg:p-2 2xl:p-6">
12920            <div class="flex h-16 w-16 lg:h-12 lg:w-12 2xl:h-16 2xl:w-16 shrink-0 items-center justify-center">
12921                <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="24" height="24" x="0" y="0" viewBox="0 0 682.667 682.667" style="enable-background:new 0 0 512 512" xml:space="preserve" class="h-12 w-12 lg:h-8 lg:w-8 2xl:h-12 2xl:w-12 stroke-primary-500" role="img"><g><defs><clipPath id="a_3" clipPathUnits="userSpaceOnUse"><path d="M0 512h512V0H0Z" fill="#000000" opacity="1" data-original="#000000"/></clipPath></defs><g clip-path="url(#a_3)" transform="matrix(1.33333 0 0 -1.33333 0 682.667)"><path d="M0 0v0c6.227 6.227 6.227 16.324 0 22.551l-150.34 150.34c-6.227 6.227-16.324 6.227-22.551 0-6.227-6.228-6.227-16.324 0-22.551L-22.551 0C-16.324-6.228-6.228-6.228 0 0Z" style="stroke-width:15;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1" transform="translate(460.98 326.939)" fill="none" stroke="#000000" stroke-width="15" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" stroke-dasharray="none" stroke-opacity="" data-original="#000000" class=""/><path d="M0 0v0c6.228 6.228 6.228 16.324 0 22.551l-150.339 150.34c-6.228 6.227-16.324 6.227-22.552 0-6.227-6.227-6.227-16.324 0-22.551L-22.551 0C-16.324-6.227-6.227-6.227 0 0Z" style="stroke-width:15;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1" transform="translate(254.263 120.222)" fill="none" stroke="#000000" stroke-width="15" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" stroke-dasharray="none" stroke-opacity="" data-original="#000000" class=""/><path d="m0 0 15.894 15.894-150.338 150.339-184.165-184.165 150.338-150.339L-21.188-21.188" style="stroke-width:15;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1" transform="translate(422.532 311.044)" fill="none" stroke="#000000" stroke-width="15" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" stroke-dasharray="none" stroke-opacity="" data-original="#000000" class=""/><path d="m0 0-28.972-28.972L-57.944 0l28.972 28.972Z" style="stroke-width:15;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1" transform="translate(471.943 396.471)" fill="none" stroke="#000000" stroke-width="15" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" stroke-dasharray="none" stroke-opacity="" data-original="#000000" class=""/><path d="m0 0-28.972-28.972L-57.944 0l28.972 28.972Z" style="stroke-width:15;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1" transform="translate(422.143 446.271)" fill="none" stroke="#000000" stroke-width="15" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" stroke-dasharray="none" stroke-opacity="" data-original="#000000" class=""/><path d="m0 0 20.719 20.719-42.617 42.608c-18.991 18.99-18.991 49.889 0 68.88l34.905 34.895 35.314-35.314-34.016-34.026 42.617-42.607c18.981-18.991 18.981-49.89 0-68.871L-9.151-79.79l-35.325 35.325 23.337 23.337" style="stroke-width:15;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1" transform="translate(84.533 87.29)" fill="none" stroke="#000000" stroke-width="15" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" stroke-dasharray="none" stroke-opacity="" data-original="#000000" class=""/></g></g></svg>
12922            </div>
12923            <div class="h-16 w-px lg:h-12 2xl:h-16 bg-gray-200"></div>
12924
12925            <div class="flex-1 text-left min-w-0">
12926                <h4 class="font-bold text-xl lg:text-lg 2xl:text-xl text-zinc-700 truncate group-hover:text-black transition-colors">
12927                    Accessoires                </h4>
12928                <p class="text-sm text-zinc-600 line-clamp-2 lg:line-clamp-1 2xl:line-clamp-2">Équipements et pièces diverses</p>
12929                <div class="mt-2 inline-flex items-center text-primary-500 font-bold transition-all duration-300 group-hover:translate-x-1">
12930                    Voir la catégorie                    <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="ml-1 h-4 w-4 transition-transform stroke-current stroke-2 fill-none group-hover:translate-x-1" width="16" height="16" role="img">
12931  <path stroke-linecap="round" stroke-linejoin="round" d="M9 5l7 7-7 7"/>
12932<title>chevron-right</title></svg>
12933                </div>
12934            </div>
12935        </div>
12936    </a>
12937
12938                    </div>
12939                </div>
12940            </div>
12941        </div>
12942    </div>
12943</div>
12944    </div>
12945</section>
12946            </div>
12947</div>
12948
12949            </div>
12950        </div>
12951    </section>
12952</div>
12953
12954<!-- Espace entre les sections -->
12955<div class="cmsp182-h-4"></div>
12956
12957<div class="content-wrapper cmsp182-mx-auto">
12958
12959<section class="flex flex-col lg:flex-row items-center justify-center gap-4 font-bold text-white uppercase text-lg md:text-2xl">
12960    <div class="flex flex-row gap-4 max-w-7xl w-full">
12961                    <a href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm/accessoires.html" class="relative h-[131px] w-1/2 transition-scale duration-200 hover:scale-[1.02] rounded">
12962                <img src="https://media.esprit-ktm.com/unsafe/resize:fit:1600:131/plain/local://media/categories/espritktm/accessoires.jpg"
12963                    srcset="https&#x3A;&#x2F;&#x2F;media.esprit-ktm.com&#x2F;unsafe&#x2F;resize&#x3A;fit&#x3A;1600&#x3A;131&#x2F;plain&#x2F;local&#x3A;&#x2F;&#x2F;media&#x2F;categories&#x2F;espritktm&#x2F;accessoires.jpg&#x20;131w,&#x20;https&#x3A;&#x2F;&#x2F;media.esprit-ktm.com&#x2F;unsafe&#x2F;resize&#x3A;fit&#x3A;1600&#x3A;196&#x2F;plain&#x2F;local&#x3A;&#x2F;&#x2F;media&#x2F;categories&#x2F;espritktm&#x2F;accessoires.jpg&#x20;196w,&#x20;https&#x3A;&#x2F;&#x2F;media.esprit-ktm.com&#x2F;unsafe&#x2F;resize&#x3A;fit&#x3A;1600&#x3A;262&#x2F;plain&#x2F;local&#x3A;&#x2F;&#x2F;media&#x2F;categories&#x2F;espritktm&#x2F;accessoires.jpg&#x20;262w,&#x20;https&#x3A;&#x2F;&#x2F;media.esprit-ktm.com&#x2F;unsafe&#x2F;resize&#x3A;fit&#x3A;1600&#x3A;393&#x2F;plain&#x2F;local&#x3A;&#x2F;&#x2F;media&#x2F;categories&#x2F;espritktm&#x2F;accessoires.jpg&#x20;393w,&#x20;https&#x3A;&#x2F;&#x2F;media.esprit-ktm.com&#x2F;unsafe&#x2F;resize&#x3A;fit&#x3A;1600&#x3A;524&#x2F;plain&#x2F;local&#x3A;&#x2F;&#x2F;media&#x2F;categories&#x2F;espritktm&#x2F;accessoires.jpg&#x20;524w"
12964                    sizes="(max-width: 459px) 50vw, 25vw"
12965                    alt="Accessoires"
12966                    loading="lazy"
12967                    decoding="async"
12968                    fetchpriority="auto"
12969                    class="w-full h-full object-cover rounded">
12970                <p class="absolute right-2 bottom-4 text-right lg:text-center lg:w-full" style="text-shadow:0 0 4px #000;">
12971                    Accessoires                </p>
12972            </a>
12973                                <a href="https://www.esprit-ktm.com/vetements-ktm.html" class="relative h-[131px] w-1/2 transition-scale duration-200 hover:scale-[1.02] rounded">
12974                <img src="https://media.esprit-ktm.com/unsafe/resize:fit:1600:131/plain/local://media/categories/espritktm/vetements.jpg"
12975                    srcset="https&#x3A;&#x2F;&#x2F;media.esprit-ktm.com&#x2F;unsafe&#x2F;resize&#x3A;fit&#x3A;1600&#x3A;131&#x2F;plain&#x2F;local&#x3A;&#x2F;&#x2F;media&#x2F;categories&#x2F;espritktm&#x2F;vetements.jpg&#x20;131w,&#x20;https&#x3A;&#x2F;&#x2F;media.esprit-ktm.com&#x2F;unsafe&#x2F;resize&#x3A;fit&#x3A;1600&#x3A;196&#x2F;plain&#x2F;local&#x3A;&#x2F;&#x2F;media&#x2F;categories&#x2F;espritktm&#x2F;vetements.jpg&#x20;196w,&#x20;https&#x3A;&#x2F;&#x2F;media.esprit-ktm.com&#x2F;unsafe&#x2F;resize&#x3A;fit&#x3A;1600&#x3A;262&#x2F;plain&#x2F;local&#x3A;&#x2F;&#x2F;media&#x2F;categories&#x2F;espritktm&#x2F;vetements.jpg&#x20;262w,&#x20;https&#x3A;&#x2F;&#x2F;media.esprit-ktm.com&#x2F;unsafe&#x2F;resize&#x3A;fit&#x3A;1600&#x3A;393&#x2F;plain&#x2F;local&#x3A;&#x2F;&#x2F;media&#x2F;categories&#x2F;espritktm&#x2F;vetements.jpg&#x20;393w,&#x20;https&#x3A;&#x2F;&#x2F;media.esprit-ktm.com&#x2F;unsafe&#x2F;resize&#x3A;fit&#x3A;1600&#x3A;524&#x2F;plain&#x2F;local&#x3A;&#x2F;&#x2F;media&#x2F;categories&#x2F;espritktm&#x2F;vetements.jpg&#x20;524w"
12976                    sizes="(max-width: 459px) 50vw, 25vw"
12977                    alt="Vêtements"
12978                    loading="lazy"
12979                    decoding="async"
12980                    fetchpriority="auto"
12981                    class="w-full h-full object-cover rounded">
12982                <p class="absolute bottom-4 left-2 text-left lg:text-center lg:w-full" style="text-shadow:0 0 4px #000;">
12983                    Vêtements                </p>
12984            </a>
12985            </div><div class="flex flex-row gap-4 max-w-7xl w-full">                    <a href="https://www.esprit-ktm.com/equipements-pilote.html" class="relative h-[131px] w-1/2 transition-scale duration-200 hover:scale-[1.02] rounded">
12986                <img src="https://media.esprit-ktm.com/unsafe/resize:fit:1600:131/plain/local://media/categories/espritktm/equipements_pilote.jpg"
12987                    srcset="https&#x3A;&#x2F;&#x2F;media.esprit-ktm.com&#x2F;unsafe&#x2F;resize&#x3A;fit&#x3A;1600&#x3A;131&#x2F;plain&#x2F;local&#x3A;&#x2F;&#x2F;media&#x2F;categories&#x2F;espritktm&#x2F;equipements_pilote.jpg&#x20;131w,&#x20;https&#x3A;&#x2F;&#x2F;media.esprit-ktm.com&#x2F;unsafe&#x2F;resize&#x3A;fit&#x3A;1600&#x3A;196&#x2F;plain&#x2F;local&#x3A;&#x2F;&#x2F;media&#x2F;categories&#x2F;espritktm&#x2F;equipements_pilote.jpg&#x20;196w,&#x20;https&#x3A;&#x2F;&#x2F;media.esprit-ktm.com&#x2F;unsafe&#x2F;resize&#x3A;fit&#x3A;1600&#x3A;262&#x2F;plain&#x2F;local&#x3A;&#x2F;&#x2F;media&#x2F;categories&#x2F;espritktm&#x2F;equipements_pilote.jpg&#x20;262w,&#x20;https&#x3A;&#x2F;&#x2F;media.esprit-ktm.com&#x2F;unsafe&#x2F;resize&#x3A;fit&#x3A;1600&#x3A;393&#x2F;plain&#x2F;local&#x3A;&#x2F;&#x2F;media&#x2F;categories&#x2F;espritktm&#x2F;equipements_pilote.jpg&#x20;393w,&#x20;https&#x3A;&#x2F;&#x2F;media.esprit-ktm.com&#x2F;unsafe&#x2F;resize&#x3A;fit&#x3A;1600&#x3A;524&#x2F;plain&#x2F;local&#x3A;&#x2F;&#x2F;media&#x2F;categories&#x2F;espritktm&#x2F;equipements_pilote.jpg&#x20;524w"
12988                    sizes="(max-width: 459px) 50vw, 25vw"
12989                    alt="Equipements &lt;br class=&quot;md:hidden&quot; /&gt;pilote"
12990                    loading="lazy"
12991                    decoding="async"
12992                    fetchpriority="auto"
12993                    class="w-full h-full object-cover rounded">
12994                <p class="absolute right-2 bottom-4 text-right lg:text-center lg:w-full" style="text-shadow:0 0 4px #000;">
12995                    Equipements <br class="md:hidden" />pilote                </p>
12996            </a>
12997                                <a href="https://www.esprit-ktm.com/pieces-detachees-origines-ktm.html" class="relative h-[131px] w-1/2 transition-scale duration-200 hover:scale-[1.02] rounded">
12998                <img src="https://media.esprit-ktm.com/unsafe/resize:fit:1600:131/plain/local://media/categories/espritktm/pieces_d_origine.jpg"
12999                    srcset="https&#x3A;&#x2F;&#x2F;media.esprit-ktm.com&#x2F;unsafe&#x2F;resize&#x3A;fit&#x3A;1600&#x3A;131&#x2F;plain&#x2F;local&#x3A;&#x2F;&#x2F;media&#x2F;categories&#x2F;espritktm&#x2F;pieces_d_origine.jpg&#x20;131w,&#x20;https&#x3A;&#x2F;&#x2F;media.esprit-ktm.com&#x2F;unsafe&#x2F;resize&#x3A;fit&#x3A;1600&#x3A;196&#x2F;plain&#x2F;local&#x3A;&#x2F;&#x2F;media&#x2F;categories&#x2F;espritktm&#x2F;pieces_d_origine.jpg&#x20;196w,&#x20;https&#x3A;&#x2F;&#x2F;media.esprit-ktm.com&#x2F;unsafe&#x2F;resize&#x3A;fit&#x3A;1600&#x3A;262&#x2F;plain&#x2F;local&#x3A;&#x2F;&#x2F;media&#x2F;categories&#x2F;espritktm&#x2F;pieces_d_origine.jpg&#x20;262w,&#x20;https&#x3A;&#x2F;&#x2F;media.esprit-ktm.com&#x2F;unsafe&#x2F;resize&#x3A;fit&#x3A;1600&#x3A;393&#x2F;plain&#x2F;local&#x3A;&#x2F;&#x2F;media&#x2F;categories&#x2F;espritktm&#x2F;pieces_d_origine.jpg&#x20;393w,&#x20;https&#x3A;&#x2F;&#x2F;media.esprit-ktm.com&#x2F;unsafe&#x2F;resize&#x3A;fit&#x3A;1600&#x3A;524&#x2F;plain&#x2F;local&#x3A;&#x2F;&#x2F;media&#x2F;categories&#x2F;espritktm&#x2F;pieces_d_origine.jpg&#x20;524w"
13000                    sizes="(ma
13000x-width: 459px) 50vw, 25vw"
13001                    alt="Pièces &lt;br class=&quot;md:hidden&quot; /&gt;d&#039;origine"
13002                    loading="lazy"
13003                    decoding="async"
13004                    fetchpriority="auto"
13005                    class="w-full h-full object-cover rounded">
13006                <p class="absolute bottom-4 left-2 text-left lg:text-center lg:w-full" style="text-shadow:0 0 4px #000;">
13007                    Pièces <br class="md:hidden" />d&#039;origine                </p>
13008            </a>
13009                        </div>
13010</section>
13011
13012</div>
13013
13014<!-- Espace entre les sections -->
13015<div class="cmsp182-h-4"></div>
13016
13017<section class="content-wrapper cmsp182-mx-auto">
13018<!-- Section contact et avantages combinée -->
13019<section class="rounded-lg shadow-sm border border-zinc-200 overflow-hidden">
13020    <!-- Informations de contact - Fond blanc -->
13021    <div class="bg-white py-5">
13022        <div class="mx-auto max-w-screen-xl px-4 sm:px-6 lg:px-8">
13023            <div class="grid grid-cols-1 md:grid-cols-3 gap-6 text-center md:text-left">
13024                <div class="flex items-center justify-center gap-3">
13025                    <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-6 h-6 stroke-primary-600 fill-none stroke-2 flex-shrink-0" role="img">
13026  <path stroke-linecap="round" stroke-linejoin="round" d="M12 8v4l3 3m6-3a9 9 0 11-18 0 9 9 0 0118 0z"/>
13027</svg>
13028
13029                    <span class="font-semibold text-zinc-800 text-base">Du lundi au vendredi de 10H à 18H</span>
13030                </div>
13031
13032                <div class="flex items-center justify-center gap-3">
13033                    <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-6 h-6 stroke-primary-600 fill-none stroke-2 flex-shrink-0" role="img">
13034  <path stroke-linecap="round" stroke-linejoin="round" d="M3 5a2 2 0 012-2h3.28a1 1 0 01.948.684l1.498 4.493a1 1 0 01-.502 1.21l-2.257 1.13a11.042 11.042 0 005.516 5.516l1.13-2.257a1 1 0 011.21-.502l4.493 1.498a1 1 0 01.684.949V19a2 2 0 01-2 2h-1C9.716 21 3 14.284 3 6V5z"/>
13035</svg>
13036
13037                    <a href="tel:+33465030764" class="font-bold text-primary-600 text-base hover:text-primary-600 transition-colors duration-200">
13038                        +33 4 65 03 07 64
13039                    </a>
13040                </div>
13041
13042                <div class="flex items-center justify-center gap-3">
13043                    <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-6 h-6 stroke-primary-600 fill-none stroke-2 flex-shrink-0" role="img">
13044  <path stroke-linecap="round" stroke-linejoin="round" d="M3 8l7.89 5.26a2 2 0 002.22 0L21 8M5 19h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2z"/>
13045</svg>
13046
13047                    <a href="mailto:[email protected]" class="font-semibold text-primary-600 text-base hover:text-primary-600 transition-colors duration-200">
13048                        [email protected]
13049                    </a>
13050                </div>
13051            </div>
13052        </div>
13053    </div>
13054
13055    <!-- Bannière avec avantages - Fond rouge -->
13056    <div class="bg-primary-600 py-5">
13057        <div class="mx-auto max-w-screen-xl px-4 sm:px-6 lg:px-8">
13058            <div class="grid grid-cols-1 md:grid-cols-3 gap-6 text-white">
13059                <div class="flex items-center justify-center gap-3">
13060                    <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-6 h-6 stroke-white fill-none stroke-2 flex-shrink-0" role="img">
13061  <path stroke-linecap="round" stroke-linejoin="round" d="M9 12l2 2 4-4m5.618-4.016A11.955 11.955 0 0112 2.944a11.955 11.955 0 01-8.618 3.04A12.02 12.02 0 003 9c0 5.591 3.824 10.29 9 11.622 5.176-1.332 9-6.03 9-11.622 0-1.042-.133-2.052-.382-3.016z"/>
13062</svg>
13063
13064                    <p class="font-bold text-base tracking-wide">Paiement sécurisé</p>
13065                </div>
13066                <div class="flex items-center justify-center gap-3">
13067                    <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-6 h-6 stroke-white fill-none stroke-2 flex-shrink-0" role="img">
13068  <path d="M9 17a2 2 0 11-4 0 2 2 0 014 0zM19 17a2 2 0 11-4 0 2 2 0 014 0z"/>
13069  <path stroke-linecap="round" stroke-linejoin="round" d="M13 16V6a1 1 0 00-1-1H4a1 1 0 00-1 1v10a1 1 0 001 1h1m8-1a1 1 0 01-1 1H9m4-1V8a1 1 0 011-1h2.586a1 1 0 01.707.293l3.414 3.414a1 1 0 01.293.707V16a1 1 0 01-1 1h-1m-6-1a1 1 0 001 1h1M5 17a2 2 0 104 0m-4 0a2 2 0 114 0m6 0a2 2 0 104 0m-4 0a2 2 0 114 0"/>
13070</svg>
13071
13072                    <div class="flex flex-col text-left leading-snug">
13073                        <p class="font-bold text-base tracking-wide">Livraison gratuite</p>
13074                        <p class="text-sm font-medium opacity-95">à partir de 150€ (en France métropolitaine)</p>
13075                    </div>
13076                </div>
13077                <div class="flex items-center justify-center gap-3">
13078                    <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-6 h-6 stroke-white fill-none stroke-2 flex-shrink-0" role="img">
13079  <path stroke-linecap="round" stroke-linejoin="round" d="M9 12l2 2 4-4M7.835 4.697a3.42 3.42 0 001.946-.806 3.42 3.42 0 014.438 0 3.42 3.42 0 001.946.806 3.42 3.42 0 013.138 3.138 3.42 3.42 0 00.806 1.946 3.42 3.42 0 010 4.438 3.42 3.42 0 00-.806 1.946 3.42 3.42 0 01-3.138 3.138 3.42 3.42 0 00-1.946.806 3.42 3.42 0 01-4.438 0 3.42 3.42 0 00-1.946-.806 3.42 3.42 0 01-3.138-3.138 3.42 3.42 0 00-.806-1.946 3.42 3.42 0 010-4.438 3.42 3.42 0 00.806-1.946 3.42 3.42 0 013.138-3.138z"/>
13080</svg>
13081
13082                    <p class="font-bold text-base tracking-wide">15 ans d'expertise</p>
13083                </div>
13084            </div>
13085        </div>
13086    </div>
13087</section>
13088
13089</section>
13090
13091<!-- Espace entre les sections -->
13092<div class="cmsp182-h-4"></div>
13093
13094<div class="content-wrapper cmsp182-mx-auto">
13095
13096</div>
13097
13098<!-- Espace entre les sections -->
13099<div class="cmsp182-h-2"></div>
13100
13101<div class="content-wrapper cmsp182-mx-auto">
13102<div x-data="avisGarantisWidget('https\u003A\u002F\u002Fapi.guaranteed\u002Dreviews.com\u002Fpublic\u002Fv3\u002Freviews\u002Fd9a1204f7ef580fdf9d8dbb238927f99\u002Fsite', 'https\u003A\u002F\u002Fwww.societe\u002Ddes\u002Davis\u002Dgarantis.fr\u002Fesprit\u002Dktm\u002F', 'https\u003A\u002F\u002Fwww.societe\u002Ddes\u002Davis\u002Dgarantis.fr\u002Fcgu\u002F', &#x7B;&quot;no_comment&quot;&#x3A;&quot;Aucun&#x5C;&#x5C;u0020commentaire&quot;,&quot;on&quot;&#x3A;&quot;Activ&#x5C;&#x5C;u00E9&quot;,&quot;at&quot;&#x3A;&quot;&#x5C;&#x5C;u00E0&quot;,&quot;order_date&quot;&#x3A;&quot;Date&#x5C;&#x5C;u0020de&#x5C;&#x5C;u0020commande&quot;&#x7D;)"
13103    class="avis-garantis-widget font-sans">
13104
13105    <!-- Loading State -->
13106    <div x-show="loading" class="flex justify-center items-center py-12">
13107        <svg class="animate-spin w-8 h-8 text-blue-600" fill="none" viewBox="0 0 24 24">
13108            <circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle>
13109            <path class="opacity-75" fill="currentColor" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"></path>
13110        </svg>
13111    </div>
13112
13113    <!-- Error State -->
13114    <div x-show="error && !loading" class="text-center text-red-600 py-8">
13115        <p x-text="error"></p>
13116    </div>
13117
13118    <!-- Main Content Container -->
13119    <div x-show="!loading && !error" class="flex flex-col md:flex-row">
13120
13121        <!-- Official Badge Card (Fixed on Desktop, Scrollable on Mobile) -->
13122        <div class="hidden md:flex flex-shrink-0 w-[360px] h-48 bg-white rounded-2xl shadow-sm border border-gray-100 gap-5 mt-5 mr-5 flex-row items-center relative justify-center">
13123            <!-- Left: Logo -->
13124            <div class="flex-shrink-0 relative">
13125                <div class="w-28 h-28 flex items-center justify-center relative">
13126                    <img src="https://www.esprit-ktm.com/static/version1791195787/frontend/Ham/hyva/fr_FR/Ham_AvisGarantis/images/official_badge.svg"
13127                         alt="Société des Avis Garantis"
13128                         class="w-full h-full object-contain">
13129                </div>
13130            </div>
13131
13132            <!-- Right: Info -->
13133            <div class="flex flex-col items-start justify-center h-full">
13134                <!-- Rating -->
13135                <div class="flex items-baseline gap-1">
13136                    <span class="text-4xl font-bold text-gray-900" x-text="stats.averageRating"></span>
13137                    <span class="text-base text-gray-400 font-medium">/10</span>
13138                </div>
13139
13140                <!-- Stars -->
13141                <div class="flex gap-0.5 mb-1.5">
13142                    <template x-for="i in 5" :key="i">
13143                        <svg class="w-6 h-6 text-yellow-400 fill-current" viewBox="0 0 24 24">
13144                            <path d="M12 17.27L18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z"/>
13145                        </svg>
13146                    </template>
13147                </div>
13148
13149                <!-- Total Reviews Link -->
13150                <a :href="certificateUrl" target="_blank" class="text-blue-600 font-semibold text-sm hover:underline flex items-center gap-1 mb-1.5">
13151                    <span x-text="stats.totalReviews"></span> avis
13152                    <svg class="w-3 h-3" fill="none" stroke="currentColor" viewBox="0 0 24 24">
13153                        <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M14 5l7 7m0 0l-7 7m7-7H3"/>
13154                    </svg>
13155                </a>
13156
13157                <!-- Quality Control & Last Reviews -->
13158                <div class="flex flex-col justify-center gap-0.5 group/info cursor-help">
13159                    <div class="text-[11px] text-gray-400 flex items-center gap-1 relative">
13160                        Contrôle &amp; qualité                        <span class="flex items-center text-gray-400">
13161                            <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-3.5 h-3.5 stroke-gray-400 fill-none stroke-2" width="14" height="14" role="img">
13162  <path stroke-linecap="round" stroke-linejoin="round" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"/>
13163<title>information-circle</title></svg>
13164                        </span>
13165
13166                        <!-- Tooltip -->
13167                        <div class="absolute left-full top-1/2 -translate-y-1/2 ml-3 hidden group-hover/info:block z-[60] w-[400px]">
13168                            <div class="bg-white text-gray-700 text-xs p-4 rounded-lg shadow-xl border border-gray-100 relative">
13169                                <ul class="list-disc pl-4 space-y-1 mb-3">
13170                                    <li>Les avis affichés sont les derniers avis positifs.</li>
13171                                    <li>Les avis déposés sont soumis à un contrôle.</li>
13172                                    <li>Les avis déposés sont classés par ordre chronologique décroissant.</li>
13173                                    <li>Les avis ont été déposés sans aucune contrepartie.</li>
13174                                    <li>Tous les avis sont publiés et conservés pendant une durée correspondant à la période d&#039;exécution du contrat du commerçant.</li>
13175                                </ul>
13176                                <a :href="cguUrl" target="_blank" class="text-blue-500 hover:underline font-medium">En savoir plus</a>
13177                                <!-- Arrow -->
13178                                <div class="absolute right-full top-1/2 -translate-y-1/2 -mr-1 border-8 border-transparent border-r-white drop-shadow-sm"></div>
13179                            </div>
13180                        </div>
13181                    </div>
13182
13183                    <div class="text-[11px] text-gray-400 italic">
13184                        Nos derniers avis positifs                    </div>
13185                </div>
13186            </div>
13187        </div>
13188
13189        <!-- Reviews Scroll Area -->
13190        <div class="flex-grow relative min-w-0 w-full group/scroll fade-scroll-container"
13191             :class="{ 'show-fade-left': canScrollLeft, 'show-fade-right': canScrollRight }"
13192             @mouseenter="stopAutoScroll()"
13193             @mouseleave="startAutoScroll()">
13194            <div x-ref="scrollContainer"
13195                 class="flex-1 flex gap-6 overflow-x-auto scrollbar-hide snap-x snap-mandatory scroll-smooth p-5 items-center"
13196                 @mouseenter="stopAutoScroll()"
13197                 @mouseleave="startAutoScroll()"
13198                 @scroll.debounce.50ms="checkScroll()">
13199                <!-- Official Badge Card (Mobile Only) -->
13200                <div class="md:hidden flex-shrink-0 w-[280px] h-48 bg-white rounded-2xl shadow-sm border border-gray-100 p-5 flex flex-row items-center gap-5 relative snap-center">
13201                    <!-- Left: Logo -->
13202                    <div class="flex-shrink-0 relative">
13203                        <div class="w-20 h-20 flex items-center justify-center relative">
13204                            <img src="https://www.esprit-ktm.com/static/version1791195787/frontend/Ham/hyva/fr_FR/Ham_AvisGarantis/images/official_badge.svg"
13205                                 alt="Société des Avis Garantis"
13206                                 class="w-full h-full object-contain">
13207                        </div>
13208                    </div>
13209
13210                    <!-- Right: Info -->
13211                    <div class="flex flex-col items-start justify-center h-full">
13212                        <!-- Rating -->
13213                        <div class="flex items-baseline gap-1">
13214                            <span class="text-3xl font-bold text-gray-900" x-text="stats.averageRating"></span>
13215                            <span class="text-sm text-gray-400 font-medium">/10</span>
13216                        </div>
13217
13218                        <!-- Stars -->
13219                        <div class="flex gap-0.5 mb-1">
13220                            <template x-for="i in 5" :key="i">
13221                                <svg class="w-5 h-5 text-yellow-400 fill-current" viewBox="0 0 24 24">
13222                                    <path d="M12 17.27L18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z"/>
13223                                </svg>
13224                            </template>
13225                        </div>
13226
13227                        <!-- Total Reviews Link -->
13228                        <a :href="certificateUrl" target="_blank" class="text-blue-600 font-semibold text-xs hover:underline flex items-center gap-1 mb-1">
13229                            <span x-text="stats.totalReviews"></span> avis                            <svg class="w-3 h-3" fill="none" stroke="currentColor" viewBox="0 0 24 24">
13230                                <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M14 5l7 7m0 0l-7 7m7-7H3"/>
13231                            </svg>
13232                        </a>
13233
13234                        <!-- Quality Control & Last Reviews -->
13235                        <div class="flex flex-col justify-center gap-0.5">
13236                            <div class="text-[10px] text-gray-400">
13237                                Contrôle &amp; qualité                            </div>
13238                            <div class="text-[10px] text-gray-400 italic">
13239                                Nos derniers avis positifs                            </div>
13240                        </div>
13241                    </div>
13242                </div>
13243
13244
13245                <!-- Review Cards -->
13246                <template x-for="(review, index) in reviews" :key="review.id || index">
13247                    <div @click="goToCertificate()"
13248                         class="flex-shrink-0 w-[280px] h-48 bg-white rounded-2xl border border-gray-100 p-4 flex flex-col relative transform transition-transform duration-300 hover:scale-105 hover:z-10 cursor-pointer group/card snap-center"
13249                         style="box-shadow: 0px 0px 7px 1px rgba(0 0 0 / 0.25);">
13250
13251                        <!-- Header -->
13252                        <div class="flex justify-between items-start mb-3 relative z-20">
13253                            <!-- Medal Icon (Absolute Positioned) -->
13254                            <div class="absolute -top-7 -left-6 z-30 pointer-events-none">
13255                                <div class="w-12 h-12 flex items-center justify-center">
13256                                    <img src="https://www.esprit-ktm.com/static/version1791195787/frontend/Ham/hyva/fr_FR/Ham_AvisGarantis/images/small_cocarde.svg"
13257                                         alt="Medal"
13258                                         class="w-full h-full object-contain">
13259                                </div>
13260                            </div>
13261
13262                            <!-- Spacer for Medal -->
13263                            <div class="w-6"></div>
13264
13265                            <!-- Stars -->
13266                            <div class="flex gap-0.5 pt-1 pointer-events-none">
13267                                <template x-for="i in review.rating" :key="'star-' + i">
13268                                    <svg class="w-5 h-5 text-yellow-400 fill-current" viewBox="0 0 24 24">
13269                                        <path d="M12 17.27L18.18 21l-1.64-7.03L22 9.24l-7.19-.61L12 2 9.19 8.63 2 9.24l5.46 4.73L5.82 21z"/>
13270                                    </svg>
13271                                </template>
13272                            </div>
13273
13274                            <!-- Info Icon with Tooltip -->
13275                            <div class="relative group/tooltip z-50" @click.stop>
13276                                <span class="flex items-center text-blue-600 cursor-help hover:text-blue-700 transition-colors">
13277                                    <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-6 h-6 stroke-current fill-none stroke-2" width="24" height="24" role="img">
13278  <path stroke-linecap="round" stroke-linejoin="round" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"/>
13279<title>information-circle</title></svg>
13280                                </span>
13281                                <!-- Tooltip -->
13282                                <div class="absolute top-full right-0 mt-2 hidden group-hover/tooltip:block z-[70] w-max max-w-[200px]">
13283                                    <div class="bg-white text-gray-700 text-xs py-2 px-3 rounded-lg shadow-xl border border-gray-100 relative">
13284                                        <span x-text="formatDate(review.date)"></span>
13285                                        <!-- Arrow -->
13286                                        <div class="absolute bottom-full right-2 -mb-1 border-4 border-transparent border-b-white drop-shadow-sm"></div>
13287                                    </div>
13288                                </div>
13289                            </div>
13290                        </div>
13291
13292                        <!-- Review Content -->
13293                        <div class="mb-4 relative z-10 flex-grow overflow-y-auto scrollbar-thin scrollbar-thumb-gray-200 scrollbar-track-transparent pr-1">
13294                            <p class="text-gray-600 italic text-[12px] font-normal" x-text="review.comment || 'Aucun commentaire'"></p>
13295                        </div>
13296
13297                        <!-- Footer -->
13298                        <div class="flex items-center justify-between relative z-10 pt-3 border-t border-gray-50 pointer-events-none">
13299                            <div class="flex items-center gap-2">
13300                                <!-- Avatar -->
13301                                <div class="w-8 h-8 rounded-full flex items-center justify-center text-white font-bold text-xs shadow-sm"
13302                                     :class="getAvatarColor(review)">
13303                                    <span x-text="getInitials(review.author_name)"></span>
13304                                </div>
13305
13306                                <!-- User Info -->
13307                                <div class="flex flex-col">
13308                                    <span class="font-bold text-gray-900 text-xs" x-text="review.author_name"></span>
13309                                    <span class="text-[10px] text-gray-400" x-text="formatDate(review.date)"></span>
13310                                </div>
13311                            </div>
13312
13313                            <!-- Verified Badge -->
13314                            <div class="flex items-center gap-1">
13315                                <span class="flex items-center text-green-600">
13316                                    <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-5 h-5 stroke-green-600 fill-none stroke-2" width="24" height="24" role="img">
13317  <path stroke-linecap="round" stroke-linejoin="round" d="M9 12l2 2 4-4M7.835 4.697a3.42 3.42 0 001.946-.806 3.42 3.42 0 014.438 0 3.42 3.42 0 001.946.806 3.42 3.42 0 013.138 3.138 3.42 3.42 0 00.806 1.946 3.42 3.42 0 010 4.438 3.42 3.42 0 00-.806 1.946 3.42 3.42 0 01-3.138 3.138 3.42 3.42 0 00-1.946.806 3.42 3.42 0 01-4.438 0 3.42 3.42 0 00-1.946-.806 3.42 3.42 0 01-3.138-3.138 3.42 3.42 0 00-.806-1.946 3.42 3.42 0 010-4.438 3.42 3.42 0 00.806-1.946 3.42 3.42 0 013.138-3.138z"/>
13318<title>badge-check</title></svg>
13319                                </span>
13320                                <div class="flex flex-col leading-none">
13321                                    <span class="text-[9px] font-bold text-green-500 uppercase">Acheteur</span>
13322                                    <span class="text-[9px] font-bold text-green-500 uppercase">Authentifié</span>
13323                                </div>
13324                            </div>
13325                        </div>
13326                    </div>
13327                </template>
13328            </div>
13329
13330            <!-- Navigation Buttons (Visible on Hover of Scroll Area) -->
13331            <button @click="scrollLeft()"
13332                    x-show="canScrollLeft"
13333                    @mouseenter="stopAutoScroll()"
13334                    @mouseleave="startAutoScroll()"
13335                    class="absolute left-2 top-1/2 -translate-y-1/2 z-30
13336                               bg-white/90 hover:bg-white border border-gray-200
13337                               p-3 rounded-full shadow-lg hover:shadow-xl
13338                               transition-all duration-300 ease-in-out
13339                               hover:scale-110 focus:outline-none focus:ring-2 focus:ring-primary
13340                               text-gray-700 hover:text-primary">
13341                <span class="flex items-center text-primary-600">
13342                    <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-6 h-6 stroke-2 stroke-primary-500 text-white transform transition-transform duration-300" width="24" height="24" role="img">
13343  <path stroke-linecap="round" stroke-linejoin="round" d="M15 19l-7-7 7-7"/>
13344<title>chevron-left</title></svg>
13345                </span>
13346            </button>
13347            <button @click="scrollRight()"
13348                    x-show="canScrollRight"
13349                    @mouseenter="stopAutoScroll()"
13350                    @mouseleave="startAutoScroll()"
13351                    class="absolute right-2 top-1/2 -translate-y-1/2 z-30
13352                               bg-white/90 hover:bg-white border border-gray-200
13353                               p-3 rounded-full shadow-lg hover:shadow-xl
13354                               transition-all duration-300 ease-in-out
13355                               hover:scale-110 focus:outline-none focus:ring-2 focus:ring-primary
13356                               text-gray-700 hover:text-primary">
13357                <span class="flex items-center text-primary-600">
13358                    <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-6 h-6 stroke-2 stroke-primary-500 text-white transform transition-transform duration-300" width="24" height="24" role="img">
13359  <path stroke-linecap="round" stroke-linejoin="round" d="M9 5l7 7-7 7"/>
13360<title>chevron-right</title></svg>
13361                </span>
13362            </button>
13363        </div>
13364    </div>
13365</div>
13366
13367<script>
13368function avisGarantisWidget(apiUrl, certificateUrl, cguUrl) {
13369    return {
13370        // Local UI state
13371        canScrollLeft: false,
13372        canScrollRight: false,
13373        certificateUrl: certificateUrl,
13374        cguUrl: cguUrl,
13375        autoScrollInterval: null,
13376
13377        init() {
13378            // Trigger fetch via store
13379            Alpine.store('avisGarantis').fetch(apiUrl);
13380
13381            // Watch for store changes to update scroll buttons
13382            this.$watch('$store.avisGarantis.fetched', (value) => {
13383                if (value) {
13384                    this.$nextTick(() => {
13385                        this.checkScroll();
13386                        this.startAutoScroll();
13387                    });
13388                }
13389            });
13390        },
13391
13392        // Getters for store data to keep template clean
13393        get loading() { return Alpine.store('avisGarantis').loading; },
13394        get error() { return Alpine.store('avisGarantis').error; },
13395        get reviews() { return Alpine.store('avisGarantis').reviews; },
13396        get stats() { return Alpine.store('avisGarantis').stats; },
13397
13398        startAutoScroll() {
13399            // Only auto-scroll on desktop (md breakpoint is 768px)
13400            if (window.innerWidth < 768) return;
13401
13402            this.stopAutoScroll();
13403            this.autoScrollInterval = setInterval(() => {
13404                if (this.canScrollRight) {
13405                    this.scrollRight();
13406                }
13407            }, 5000); // Scroll every 5 seconds
13408        },
13409
13410        stopAutoScroll() {
13411            if (this.autoScrollInterval) {
13412                clearInterval(this.autoScrollInterval);
13413                this.autoScrollInterval = null;
13414            }
13415        },
13416
13417        goToCertificate() {
13418            if (this.certificateUrl) {
13419                window.open(this.certificateUrl, '_blank');
13420            }
13421        },
13422
13423        formatDate(dateString) {
13424            if (!dateString) return '';
13425            const date = new Date(dateString);
13426            const now = new Date();
13427            const diffTime = Math.abs(now - date);
13428            const diffDays = Math.ceil(diffTime / (1000 * 60 * 60 * 24));
13429
13430            // Format: "Le dd/mm/yyyy à HHhMM"
13431            const day = String(date.getDate()).padStart(2, '0');
13432            const month = String(date.getMonth() + 1).padStart(2, '0');
13433            const year = date.getFullYear();
13434            const hours = String(date.getHours()).padStart(2, '0');
13435            const minutes = String(date.getMinutes()).padStart(2, '0');
13436
13437            return `Le ${day}/${month}/${year} à ${hours}h${minutes}`;
13438        },
13439
13440        getInitials(name) {
13441            if (!name) return '';
13442            return name.split(' ').map(n => n[0]).join('').substring(0, 2).toUpperCase();
13443        },
13444
13445        getAvatarColor(review) {
13446            const name = review.author_name || '';
13447            let hash = 0;
13448            for (let i = 0; i < name.length; i++) {
13449                hash = name.charCodeAt(i) + ((hash << 5) - hash);
13450            }
13451
13452            const colors = [
13453                'bg-gradient-to-r from-cyan-400 to-blue-500',
13454                'bg-gradient-to-r from-orange-400 via-pink-500 to-purple-600',
13455                'bg-gradient-to-r from-yellow-400 to-orange-500',
13456                'bg-gradient-to-r from-purple-400 to-pink-400',
13457                'bg-gradient-to-r from-red-400 to-yellow-400',
13458                'bg-gradient-to-r from-pink-200 to-rose-300',
13459            ];
13460
13461            return colors[Math.abs(hash) % colors.length];
13462        },
13463
13464        scrollLeft() {
13465            const container = this.$refs.scrollContainer;
13466            if (!container) return;
13467            container.scrollBy({ left: -304, behavior: 'smooth' });
13468            setTimeout(() => this.checkScroll(), 300);
13469        },
13470
13471        scrollRight() {
13472            const container = this.$refs.scrollContainer;
13473            if (!container) return;
13474            container.scrollBy({ left: 304, behavior: 'smooth' });
13475            setTimeout(() => this.checkScroll(), 300);
13476        },
13477
13478        checkScroll() {
13479            const container = this.$refs.scrollContainer;
13480            if (!container) return;
13481            this.canScrollLeft = container.scrollLeft > 20;
13482            this.canScrollRight = container.scrollLeft < (container.scrollWidth - container.clientWidth - 20);
13483        }
13484    };
13485}
13486</script>
13486
13487
13488<style>
13489.scrollbar-hide::-webkit-scrollbar {
13490    display: none;
13491}
13492.scrollbar-hide {
13493    -ms-overflow-style: none;
13494    scrollbar-width: none;
13495}
13496.line-clamp-3 {
13497    display: -webkit-box;
13498    -webkit-line-clamp: 3;
13499    line-clamp: 3;
13500    -webkit-box-orient: vertical;
13501    overflow: hidden;
13502}
13503
13504/* Fade effect for scroll area edges */
13505.fade-scroll-container::before,
13506.fade-scroll-container::after {
13507    content: '';
13508    position: absolute;
13509    top: 50%;
13510    transform: translateY(-50%);
13511    height: 192px; /* Match card height (h-48 = 12rem = 192px) */
13512    width: 80px; /* Width of the fade effect */
13513    z-index: 20;
13514    pointer-events: none; /* Allow clicks to pass through */
13515    opacity: 0;
13516    transition: opacity 0.3s ease-in-out;
13517}
13518
13519/* Left fade */
13520.fade-scroll-container::before {
13521    left: 0;
13522    background: linear-gradient(to right, rgba(255, 255, 255, 0.95), transparent);
13523}
13524
13525/* Show left fade only when scrolled */
13526.fade-scroll-container.show-fade-left::before {
13527    opacity: 1;
13528}
13529
13530/* Right fade */
13531.fade-scroll-container::after {
13532    right: 0;
13533    background: linear-gradient(to left, rgba(255, 255, 255, 0.95), transparent);
13534}
13535
13536/* Show right fade only when can scroll right */
13537.fade-scroll-container.show-fade-right::after {
13538    opacity: 1;
13539}
13540</style>
13541
13542
13543</div>
13544
13545<div class="content-wrapper cmsp182-mx-auto">
13546
13547
13548    <section
13549        x-data="{
13550            currentIndex: 0,
13551            total: 0,
13552            visible: window.innerWidth < 768 ? 1 : 5,
13553            timer: null,
13554            track: null,
13555            interval: 3000,
13556
13557            init() {
13558                this.track = this.$refs.track;
13559                this.total = this.track.children.length;
13560
13561                this.updateVisible();
13562                window.addEventListener('resize', () => this.updateVisible());
13563
13564                if (this.total > this.visible) {
13565                    for (let i = 0; i < this.visible; i++) {
13566                        this.track.appendChild(this.track.children[i].cloneNode(true));
13567                    }
13568                }
13569
13570                if (this.total > this.visible) {
13571                    this.start();
13572                }
13573            },
13574
13575            updateVisible() {
13576                const newVisible = window.innerWidth < 768 ? 1 : 5;
13577                if (newVisible !== this.visible) {
13578                    this.visible = newVisible;
13579                    this.currentIndex = 0;
13580
13581                    while (this.track.children.length > this.total) {
13582                        this.track.removeChild(this.track.lastChild);
13583                    }
13584
13585                    if (this.total > this.visible) {
13586                        for (let i = 0; i < this.visible; i++) {
13587                            this.track.appendChild(this.track.children[i].cloneNode(true));
13588                        }
13589                        this.start();
13590                    } else {
13591                        this.stop();
13592                    }
13593                }
13594            },
13595
13596            start() {
13597                this.stop();
13598                this.timer = setInterval(() => this.next(), this.interval);
13599            },
13600
13601            stop() {
13602                if (this.timer) clearInterval(this.timer);
13603            },
13604
13605            next() {
13606                if (this.total <= this.visible) return;
13607
13608                this.currentIndex++;
13609
13610                if (this.currentIndex === this.total) {
13611                    setTimeout(() => {
13612                        this.track.style.transition = 'none';
13613                        this.currentIndex = 0;
13614                        requestAnimationFrame(() => {
13615                            this.track.style.transition = '';
13616                        });
13617                    }, 700);
13618                }
13619
13620                if (this.total > this.visible) {
13621                    this.start();
13622                }
13623            },
13624
13625            prev() {
13626                if (this.total <= this.visible) return;
13627
13628                if (this.currentIndex === 0) {
13629                    this.track.style.transition = 'none';
13630                    this.currentIndex = this.total - 1;
13631                    requestAnimationFrame(() => {
13632                        this.track.style.transition = '';
13633                        this.currentIndex--;
13634                    });
13635                } else {
13636                    this.currentIndex--;
13637                }
13638
13639                if (this.total > this.visible) {
13640                    this.start();
13641                }
13642            }
13643        }"
13644        class="relative overflow-hidden py-8 md:py-6 bg-white select-none border border-zinc-200 shadow-sm rounded-lg"
13645        aria-label="Our other websites"
13646        id="marquee-carousel">
13647
13648
13649        <div class="flex items-center bg-white px-12">
13650            <div aria-hidden="true" class="w-full border-t border-gray-300"></div>
13651            <div class="relative flex justify-center">
13652                <span class="whitespace-nowrap text-center bg-white px-3 text-sm md:text-2xl font-bold text-gray-900 uppercase">découvrez nos marques</span>
13653            </div>
13654            <div aria-hidden="true" class="w-full border-t border-gray-300"></div>
13655        </div>
13656    <div class="overflow-hidden relative pt-4">
13657        <div class="flex will-change-transform transition-transform duration-700 ease-out" x-ref="track"
13658            :style="`transform: translateX(-${currentIndex * (100/visible)}%)`">
13659                                                <a href="https://www.esprit-ktm.com/"
13660                class="flex-shrink-0 flex items-center justify-center py-2 px-4"
13661                style="height: 72px;"
13662                :style="`width: ${100/visible}%; min-width: ${100/visible}%;`"
13663                aria-label="Esprit KTM">
13664                <picture>
13665                    <!-- Version WebP depuis ton module -->
13666                    <source srcset="https://www.esprit-ktm.com/static/version1791195787/frontend/Ham/hyva/fr_FR/Ham_HyvaTheme/img/esprit_ktm.png" type="image/webp">
13667                    <!-- Fallback : logo du store -->
13668                    <img src="https://www.esprit-ktm.com/media/logo/stores/9/ESPRIT_KTM_6_.png"
13669                        alt="Esprit KTM"
13670                        loading="lazy"
13671                        fetchpriority="low"
13672                        decoding="async"
13673                        class="w-auto mx-auto transition-transform duration-300 hover:scale-105"
13674                        style="max-height: 72px; object-fit: contain; max-width: 100%;"
13675                        draggable="false">
13676                </picture>
13677            </a>
13678                                                            <a href="https://www.esprit-hva.com/"
13679                class="flex-shrink-0 flex items-center justify-center py-2 px-4"
13680                style="height: 72px;"
13681                :style="`width: ${100/visible}%; min-width: ${100/visible}%;`"
13682                aria-label="Esprit HVA">
13683                <picture>
13684                    <!-- Version WebP depuis ton module -->
13685                    <source srcset="https://www.esprit-ktm.com/static/version1791195787/frontend/Ham/hyva/fr_FR/Ham_HyvaTheme/img/esprit_hva.png" type="image/webp">
13686                    <!-- Fallback : logo du store -->
13687                    <img src="https://www.esprit-ktm.com/media/logo/stores/1/ESPRIT_HUSQVARNA.png"
13688                        alt="Esprit HVA"
13689                        loading="lazy"
13690                        fetchpriority="low"
13691                        decoding="async"
13692                        class="w-auto mx-auto transition-transform duration-300 hover:scale-105"
13693                        style="max-height: 72px; object-fit: contain; max-width: 100%;"
13694                        draggable="false">
13695                </picture>
13696            </a>
13697                                                            <a href="https://www.esprit-ducat.com/"
13698                class="flex-shrink-0 flex items-center justify-center py-2 px-4"
13699                style="height: 72px;"
13700                :style="`width: ${100/visible}%; min-width: ${100/visible}%;`"
13701                aria-label="Esprit DUCATI">
13702                <picture>
13703                    <!-- Version WebP depuis ton module -->
13704                    <source srcset="https://www.esprit-ktm.com/static/version1791195787/frontend/Ham/hyva/fr_FR/Ham_HyvaTheme/img/esprit_ducat.png" type="image/webp">
13705                    <!-- Fallback : logo du store -->
13706                    <img src="https://www.esprit-ktm.com/media/logo/stores/2/ESPRIT_DUCATI.png"
13707                        alt="Esprit DUCATI"
13708                        loading="lazy"
13709                        fetchpriority="low"
13710                        decoding="async"
13711                        class="w-auto mx-auto transition-transform duration-300 hover:scale-105"
13712                        style="max-height: 72px; object-fit: contain; max-width: 100%;"
13713                        draggable="false">
13714                </picture>
13715            </a>
13716                                                            <a href="https://www.esprit-moto-quad.com/"
13717                class="flex-shrink-0 flex items-center justify-center py-2 px-4"
13718                style="height: 72px;"
13719                :style="`width: ${100/visible}%; min-width: ${100/visible}%;`"
13720                aria-label="Esprit MOTOSHOP">
13721                <picture>
13722                    <!-- Version WebP depuis ton module -->
13723                    <source srcset="https://www.esprit-ktm.com/static/version1791195787/frontend/Ham/hyva/fr_FR/Ham_HyvaTheme/img/esprit_motoshop.png" t
13723ype="image/webp">
13724                    <!-- Fallback : logo du store -->
13725                    <img src="https://www.esprit-ktm.com/media/logo/stores/3/ESPRIT_MQ_NOIR_COMPLET_petit-logo_1.png"
13726                        alt="Esprit MOTOSHOP"
13727                        loading="lazy"
13728                        fetchpriority="low"
13729                        decoding="async"
13730                        class="w-auto mx-auto transition-transform duration-300 hover:scale-105"
13731                        style="max-height: 72px; object-fit: contain; max-width: 100%;"
13732                        draggable="false">
13733                </picture>
13734            </a>
13735                                                            <a href="https://www.esprit-canam.com/"
13736                class="flex-shrink-0 flex items-center justify-center py-2 px-4"
13737                style="height: 72px;"
13738                :style="`width: ${100/visible}%; min-width: ${100/visible}%;`"
13739                aria-label="Esprit CANAM">
13740                <picture>
13741                    <!-- Version WebP depuis ton module -->
13742                    <source srcset="https://www.esprit-ktm.com/static/version1791195787/frontend/Ham/hyva/fr_FR/Ham_HyvaTheme/img/esprit_canam.png" type="image/webp">
13743                    <!-- Fallback : logo du store -->
13744                    <img src="https://www.esprit-ktm.com/media/logo/stores/4/ESPRIT_CAN-AM.png"
13745                        alt="Esprit CANAM"
13746                        loading="lazy"
13747                        fetchpriority="low"
13748                        decoding="async"
13749                        class="w-auto mx-auto transition-transform duration-300 hover:scale-105"
13750                        style="max-height: 72px; object-fit: contain; max-width: 100%;"
13751                        draggable="false">
13752                </picture>
13753            </a>
13754                                                            <a href="https://www.esprit-kawasaki.com/"
13755                class="flex-shrink-0 flex items-center justify-center py-2 px-4"
13756                style="height: 72px;"
13757                :style="`width: ${100/visible}%; min-width: ${100/visible}%;`"
13758                aria-label="Esprit KAWASAKI">
13759                <picture>
13760                    <!-- Version WebP depuis ton module -->
13761                    <source srcset="https://www.esprit-ktm.com/static/version1791195787/frontend/Ham/hyva/fr_FR/Ham_HyvaTheme/img/esprit_kawasaki.png" type="image/webp">
13762                    <!-- Fallback : logo du store -->
13763                    <img src="https://www.esprit-ktm.com/media/logo/stores/5/ESPRIT_KAWASAKI.png"
13764                        alt="Esprit KAWASAKI"
13765                        loading="lazy"
13766                        fetchpriority="low"
13767                        decoding="async"
13768                        class="w-auto mx-auto transition-transform duration-300 hover:scale-105"
13769                        style="max-height: 72px; object-fit: contain; max-width: 100%;"
13770                        draggable="false">
13771                </picture>
13772            </a>
13773                                                            <a href="https://www.esprit-gasgas.com/"
13774                class="flex-shrink-0 flex items-center justify-center py-2 px-4"
13775                style="height: 72px;"
13776                :style="`width: ${100/visible}%; min-width: ${100/visible}%;`"
13777                aria-label="Esprit GASGAS">
13778                <picture>
13779                    <!-- Version WebP depuis ton module -->
13780                    <source srcset="https://www.esprit-ktm.com/static/version1791195787/frontend/Ham/hyva/fr_FR/Ham_HyvaTheme/img/esprit_gasgas.png" type="image/webp">
13781                    <!-- Fallback : logo du store -->
13782                    <img src="https://www.esprit-ktm.com/media/logo/stores/6/ESPRIT_GASGAS.png"
13783                        alt="Esprit GASGAS"
13784                        loading="lazy"
13785                        fetchpriority="low"
13786                        decoding="async"
13787                        class="w-auto mx-auto transition-transform duration-300 hover:scale-105"
13788                        style="max-height: 72px; object-fit: contain; max-width: 100%;"
13789                        draggable="false">
13790                </picture>
13791            </a>
13792                                                                        <a href="https://www.esprit-polaris.com/"
13793                class="flex-shrink-0 flex items-center justify-center py-2 px-4"
13794                style="height: 72px;"
13795                :style="`width: ${100/visible}%; min-width: ${100/visible}%;`"
13796                aria-label="Esprit POLARIS">
13797                <picture>
13798                    <!-- Version WebP depuis ton module -->
13799                    <source srcset="https://www.esprit-ktm.com/static/version1791195787/frontend/Ham/hyva/fr_FR/Ham_HyvaTheme/img/esprit_polaris.png" type="image/webp">
13800                    <!-- Fallback : logo du store -->
13801                    <img src="https://www.esprit-ktm.com/media/logo/stores/8/ESPRIT_POLARIS.png"
13802                        alt="Esprit POLARIS"
13803                        loading="lazy"
13804                        fetchpriority="low"
13805                        decoding="async"
13806                        class="w-auto mx-auto transition-transform duration-300 hover:scale-105"
13807                        style="max-height: 72px; object-fit: contain; max-width: 100%;"
13808                        draggable="false">
13809                </picture>
13810            </a>
13811                                                            <a href="https://www.esprit-suzuki.com/"
13812                class="flex-shrink-0 flex items-center justify-center py-2 px-4"
13813                style="height: 72px;"
13814                :style="`width: ${100/visible}%; min-width: ${100/visible}%;`"
13815                aria-label="Esprit SUZUKI">
13816                <picture>
13817                    <!-- Version WebP depuis ton module -->
13818                    <source srcset="https://www.esprit-ktm.com/static/version1791195787/frontend/Ham/hyva/fr_FR/Ham_HyvaTheme/img/esprit_suzuki.png" type="image/webp">
13819                    <!-- Fallback : logo du store -->
13820                    <img src="https://www.esprit-ktm.com/media/logo/stores/10/ESPRIT_SUZUKI.png"
13821                        alt="Esprit SUZUKI"
13822                        loading="lazy"
13823                        fetchpriority="low"
13824                        decoding="async"
13825                        class="w-auto mx-auto transition-transform duration-300 hover:scale-105"
13826                        style="max-height: 72px; object-fit: contain; max-width: 100%;"
13827                        draggable="false">
13828                </picture>
13829            </a>
13830                                                            <a href="https://www.esprit-beta.com/"
13831                class="flex-shrink-0 flex items-center justify-center py-2 px-4"
13832                style="height: 72px;"
13833                :style="`width: ${100/visible}%; min-width: ${100/visible}%;`"
13834                aria-label="Esprit BETA">
13835                <picture>
13836                    <!-- Version WebP depuis ton module -->
13837                    <source srcset="https://www.esprit-ktm.com/static/version1791195787/frontend/Ham/hyva/fr_FR/Ham_HyvaTheme/img/esprit_beta.png" type="image/webp">
13838                    <!-- Fallback : logo du store -->
13839                    <img src="https://www.esprit-ktm.com/media/logo/stores/11/ESPRIT_BETA.png"
13840                        alt="Esprit BETA"
13841                        loading="lazy"
13842                        fetchpriority="low"
13843                        decoding="async"
13844                        class="w-auto mx-auto transition-transform duration-300 hover:scale-105"
13845                        style="max-height: 72px; object-fit: contain; max-width: 100%;"
13846                        draggable="false">
13847                </picture>
13848            </a>
13849                                                            <a href="https://www.esprit-triumph.com/"
13850                class="flex-shrink-0 flex items-center justify-center py-2 px-4"
13851                style="height: 72px;"
13852                :style="`width: ${100/visible}%; min-width: ${100/visible}%;`"
13853                aria-label="Esprit TRIUMPH">
13854                <picture>
13855                    <!-- Version WebP depuis ton module -->
13856                    <source srcset="https://www.esprit-ktm.com/static/version1791195787/frontend/Ham/hyva/fr_FR/Ham_HyvaTheme/img/esprit_triumph.png" t
13856ype="image/webp">
13857                    <!-- Fallback : logo du store -->
13858                    <img src="https://www.esprit-ktm.com/media/logo/stores/13/ESPRIT_TRIUMPH.png"
13859                        alt="Esprit TRIUMPH"
13860                        loading="lazy"
13861                        fetchpriority="low"
13862                        decoding="async"
13863                        class="w-auto mx-auto transition-transform duration-300 hover:scale-105"
13864                        style="max-height: 72px; object-fit: contain; max-width: 100%;"
13865                        draggable="false">
13866                </picture>
13867            </a>
13868                                                            <a href="https://www.esprit-cfmoto.com/"
13869                class="flex-shrink-0 flex items-center justify-center py-2 px-4"
13870                style="height: 72px;"
13871                :style="`width: ${100/visible}%; min-width: ${100/visible}%;`"
13872                aria-label="Esprit CFMOTO">
13873                <picture>
13874                    <!-- Version WebP depuis ton module -->
13875                    <source srcset="https://www.esprit-ktm.com/static/version1791195787/frontend/Ham/hyva/fr_FR/Ham_HyvaTheme/img/esprit_cfmoto.png" type="image/webp">
13876                    <!-- Fallback : logo du store -->
13877                    <img src="https://www.esprit-ktm.com/media/logo/stores/14/ESPRIT_CFMOTO.png"
13878                        alt="Esprit CFMOTO"
13879                        loading="lazy"
13880                        fetchpriority="low"
13881                        decoding="async"
13882                        class="w-auto mx-auto transition-transform duration-300 hover:scale-105"
13883                        style="max-height: 72px; object-fit: contain; max-width: 100%;"
13884                        draggable="false">
13885                </picture>
13886            </a>
13887                                </div>
13888        <!-- Btn Actions -->
13889        <template x-if="total > visible">
13890            <button @click="prev(); $event.stopPropagation()"
13891                class="absolute left-2 top-1/2 -translate-y-1/2 z-10
13892                bg-white/90 hover:bg-white border border-gray-200
13893                p-3 rounded-full shadow-lg hover:shadow-xl
13894                transition-all duration-300 ease-in-out
13895                hover:scale-110 focus:outline-none focus:ring-2 focus:ring-primary
13896                text-gray-700 hover:text-primary">
13897            <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="h-6 w-6 stroke-2 stroke-primary-500 text-white transform transition-transform duration-300" width="24" height="24" role="img">
13898  <path stroke-linecap="round" stroke-linejoin="round" d="M15 19l-7-7 7-7"/>
13899<title>chevron-left</title></svg>
13900            </button>
13901        </template>
13902        <template x-if="total > visible">
13903            <button @click="next(); $event.stopPropagation()"
13904                class="absolute right-2 top-1/2 -translate-y-1/2 z-10
13905                bg-white/90 hover:bg-white border border-gray-200
13906                p-3 rounded-full shadow-lg hover:shadow-xl
13907                transition-all duration-300 ease-in-out
13908                hover:scale-110 focus:outline-none focus:ring-2 focus:ring-primary
13909                text-gray-700 hover:text-primary">
13910            <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="h-6 w-6 stroke-2 stroke-primary-500 text-white transform transition-transform duration-300" width="24" height="24" role="img">
13911  <path stroke-linecap="round" stroke-linejoin="round" d="M9 5l7 7-7 7"/>
13912<title>chevron-right</title></svg>
13913            </button>
13914        </template>
13915    </div>
13916</section>
13917
13918</div>
13919
13920<!-- Espace entre les sections -->
13921<div class="cmsp182-h-4"></div>
13922  </div>
13923</article> 
13923<script nonce="MTg0bWZqNjNrOGxpbGx3d3ZmN2N6NWs4cGIzM2h1MG0=">
13924    function hasWebP() {
13925        var elem = document.createElement('canvas');
13926
13927        if (!!(elem.getContext && elem.getContext('2d'))) {
13928            return elem.toDataURL('image/webp').indexOf('data:image/webp') === 0;
13929        }
13930        return false;
13931    }
13932
13933    if (hasWebP()) {
13934        document.body.classList.add("webp");
13935    } else {
13936        document.body.classList.add("no-webp");
13937    }</script>
13937<script type="application/ld+json">{"@context":"https://schema.org/","@type":"LocalBusiness","@id":"https://www.esprit-ktm.com/","name":"Esprit KTM FR","image":"https://www.esprit-ktm.com/media/logo/stores/9/logo-ktm.png","address":{"@type":"PostalAddress","streetAddress":"2 all\u00e9e du torrent","addressLocality":"Gap","postalCode":"05000","addressCountry":"FR"},"geo":{"@type":"GeoCoordinates","latitude":44.566946,"longitude":6.097143},"url":"https://www.esprit-ktm.com/","telephone":"+33465030764","priceRange":"\u20ac\u20ac","openingHoursSpecification":[{"@type":"OpeningHoursSpecification","dayOfWeek":["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"opens":"09:00","closes":"19:00"}]}</script>
13937<script type="application/ld+json">{"@context":"https://schema.org/","@type":"Organization","@id":"https://www.esprit-ktm.com/#organization","url":"https://www.esprit-ktm.com/","name":"Esprit KTM FR","logo":"https://www.esprit-ktm.com/media/logo/stores/9/logo-ktm.png","aggregateRating":{"@type":"AggregateRating","ratingValue":4.86,"reviewCount":6173,"bestRating":5}}</script>
13937</div></div></div>
13938<!-- end-preview-content -->
13939</div></main>
13940<!-- end-main-content -->
13941
13942    
13942<script async defer type="text/javascript" src="https://cdn.cartsguru.io/9019bd95-cf63-49a7-ab40-f45d07c0ae4f/c.js"></script>
13942
13943
13944    <div x-data="cartsguruTracker()" x-init="init()" style="display:none;">
13945        <span id="account-id" x-text="accountId"></span>
13946        <span id="tracker" x-text="cartBase64"></span>
13947        <span id="order" x-text="order"></span>
13948    </div>
13949
13950    
13951    
13951<script>    function cartsguruTracker() {
13952        return {
13953            accountId: '',
13954            cart: {},
13955            cartBase64: '',
13956            order: '',
13957
13958            init() {
13959                window.cgTrackParams = window.cgTrackParams || {};
13960
13961                window.addEventListener('private-content-loaded', (event) => {
13962                    this.receiveCustomerData(event.detail.data);
13963                });
13964            },
13965
13966            receiveCustomerData(data) {
13967                if (!data || !data['cartsguru-tracker']) return;
13968
13969                const tracker = data['cartsguru-tracker'];
13970
13971                this.accountId = tracker.accountId || '';
13972                this.order = tracker.order || '';
13973
13974                this.cartBase64 = tracker.cart || '';
13975
13976                try {
13977                    if (tracker.cart && typeof tracker.cart === 'string' && tracker.cart.length > 0) {
13978                        const decoded = JSON.parse(atob(tracker.cart));
13979                        this.cartItems = decoded.items || [];
13980                        this.isCartEmpty = this.cartItems.length === 0;
13981                        this.cart = decoded;
13982                    } else {
13983                        this.cartItems = [];
13984                        this.isCartEmpty = true;
13985                        this.cart = {};
13986                    }
13987                } catch (e) {
13988                    this.cartItems = [];
13989                    this.isCartEmpty = true;
13990                    this.cart = {};
13991                    console.error('Error decoding cart data for processing:', e, 'Original cart value:', tracker.cart);
13992                }
13993
13994                window.cgTrackParams.accountId = this.accountId;
13995                window.cgTrackParams.cart = JSON.stringify(this.cart);
13996                window.cgTrackParams.order = this.order;
13997            }
13998        }
13999    }</script>
vendor: 1 bytes, line 13999
13999
14000<script>
14001    document.addEventListener('alpine:init', () => {
14002        Alpine.store('avisGarantis', {
14003            loading: false,
14004            error: null,
14005            stats: {
14006                averageRating: '0.0',
14007                totalReviews: 0
14008            },
14009            reviews: [],
14010            fetched: false,
14011
14012            async fetch(apiUrl) {
14013                if (this.fetched || this.loading) return;
14014
14015                this.loading = true;
14016                try {
14017                    const response = await fetch(apiUrl);
14018                    if (!response.ok) throw new Error('Failed to fetch reviews');
14019
14020                    const data = await response.json();
14021
14022                    if (data.ratings) {
14023                        // Multiply average rating by 2 as requested
14024                        this.stats.averageRating = ((data.ratings.average || 0) * 2).toFixed(1);
14025                        this.stats.totalReviews = data.ratings.total || 0;
14026                    }
14027
14028                    // Process reviews for the main widget if needed
14029                    if (data.reviews) {
14030                        const allReviews = (data.reviews || []).map(review => ({
14031                            id: review.id,
14032                            rating: parseInt(review.r),
14033                            comment: review.txt,
14034                            date: review.date,
14035                            order_date: review.odate,
14036                            author_name: review.c,
14037                            verified: true
14038                        }));
14039
14040                        // Group and sort logic can be done here or in the component
14041                        // For now, just storing raw processed reviews might be enough,
14042                        // but let's do the filtering here to be efficient and share it.
14043
14044                        const reviewsByRating = { 5: [], 4: [], 3: [], 2: [], 1: [] };
14045                        allReviews.forEach(review => {
14046                            if (reviewsByRating[review.rating]) {
14047                                reviewsByRating[review.rating].push(review);
14048                            }
14049                        });
14050
14051                        Object.keys(reviewsByRating).forEach(rating => {
14052                            reviewsByRating[rating].sort((a, b) => new Date(b.date) - new Date(a.date));
14053                        });
14054
14055                        let filteredReviews = [];
14056                        for (let i = 5; i >= 1; i--) {
14057                            if (filteredReviews.length >= 15) break;
14058                            const needed = 15 - filteredReviews.length;
14059                            filteredReviews = filteredReviews.concat(reviewsByRating[i].slice(0, needed));
14060                        }
14061
14062                        this.reviews = filteredReviews;
14063                    }
14064
14065                    this.fetched = true;
14066                } catch (err) {
14067                    this.error = 'Unable to load reviews';
14068                    console.error('Avis Garantis API Error:', err);
14069                } finally {
14070                    this.loading = false;
14071                }
14072            }
14073        });
14074    });
14075</script>
14075
14076
14077<div x-data="{
14078        init() {
14079            Alpine.store('avisGarantis').fetch('https\u003A\u002F\u002Fapi.guaranteed\u002Dreviews.com\u002Fpublic\u002Fv3\u002Freviews\u002Fd9a1204f7ef580fdf9d8dbb238927f99\u002Fsite');
14080        }
14081     }"
14082     class="fixed hidden md:block z-[1000] font-sans"
14083     style="bottom: 4px; left: 6px;">
14084
14085    <a href="https://www.societe-des-avis-garantis.fr/esprit-ktm/" target="_blank"
14086       class="block w-[125px] relative hover:scale-105 transition-transform duration-200 origin-bottom-left">
14087
14088        <!-- Background Image -->
14089        <picture class="w-full h-auto block"><source type="image/webp" srcset="https://www.esprit-ktm.com/static/version1791195787/frontend/Ham/hyva/fr_FR/Ham_AvisGarantis/images/cocarde.webp"><img src="https://www.esprit-ktm.com/static/version1791195787/frontend/Ham/hyva/fr_FR/Ham_AvisGarantis/images/cocarde.png" alt="Avis Garantis" class="w-full h-auto block" loading="lazy"></picture>
14090
14091        <!-- Content Overlay -->
14092        <div class="absolute inset-0 flex flex-col items-center text-white pt-[53px]">
14093            <!-- Rating -->
14094            <div class="text-white font-bold text-[10.5px] leading-[10.5px]">
14095                <span class="text-[22px] font-bold tracking-[-1.5px]" x-text="$store.avisGarantis.stats.averageRating"></span>/10
14096            </div>
14097
14098            <!-- Reviews Count -->
14099            <div class="text-white text-[9px] letter-spacing-[0px] -mt-1">
14100                <span x-text="$store.avisGarantis.stats.totalReviews"></span> avis            </div>
14101        </div>
14102    </a>
14103</div>
14104<div data-mage-init='{"Mirasvit_Related\/js\/track245":{"callbackUrl":"https:\/\/www.esprit-ktm.com\/mstRelated\/analytics\/track\/","cookieName":"mst_related_session_id"}}'></div><!-- Inject satoshi custom js logic -->
14105<script type="module"
14106        src="https://www.esprit-ktm.com/static/version1791195787/frontend/Ham/hyva/fr_FR/assets/app.min.js"
14107        defer
14108        crossorigin
14109></script>
14109
14110<!-- Inject alpinejs using Hyvä's bundled version instead of CDN -->
14111<script type="module"
14112        src="https://www.esprit-ktm.com/static/version1791195787/frontend/Ham/hyva/fr_FR/Hyva_Theme/js/alpine3.min.js"
14113        defer
14114        crossorigin
14115></script>
vendor: 1 bytes, line 14115
14115
14116<script>
14117        if (typeof hyva === 'undefined' || (!hyva.getBrowserStorage || !hyva.getCookie || !hyva.setCookie)) {
14118        console.warn("Hyvä helpers are not loaded yet. Make sure they are included before this script");
14119    }
14120
14121    (function( hyva, undefined ) {
14122
14123        hyva.initFormKey = () => {
14124            if (typeof hyva.getFormKey !== 'function') return;
14125
14126            const formKey = hyva.getFormKey();
14127            if (!formKey) return;
14128
14129            document.querySelectorAll('input[name="form_key"]').forEach((input) => {
14130                input.value = formKey;
14131            });
14132        }
14133
14134        hyva.initMessages = () => {
14135            try {
14136                const messages = hyva.getCookie('mage-messages');
14137                window.mageMessages = messages ? JSON.parse(decodeURIComponent(messages).replace(/\+/g, ' ')) : [];
14138
14139                if (window.mageMessages.length && typeof window.dispatchMessages !== 'undefined') {
14140                    window.dispatchMessages(window.mageMessages);
14141                }
14142
14143                                // empty `mage-messages` cookie
14144                const skipSetDomain = true;
14145                hyva.setCookie('mage-messages','', -1, skipSetDomain);
14146
14147            } catch (error) {
14148                console.warn('Error parsing Cookie Messages:', error);
14149            }
14150        }
14151
14152        window.addEventListener('DOMContentLoaded', hyva.initFormKey);
14153
14154        window.addEventListener('pageshow', (event) => {
14155            if (event.persisted) {
14156                hyva.initFormKey();
14157            }
14158        });
14159
14160        hyva.alpineInitialized(hyva.initMessages)
14161    }( window.hyva = window.hyva || {} ));
14162    //# sourceURL=hyva-cookies.js
14163</script>
vendor: 1 bytes, line 14163
14163
14164<script>
14165    (() => {
14166        const private_content_key = 'mage-cache-storage';
14167        const private_content_expire_key = 'mage-cache-timeout';
14168        const private_content_version_key = 'private_content_version';
14169        const section_data_ids_key = 'section_data_ids';
14170        const mage_cache_session_id_key = 'mage-cache-sessid';
14171        const last_visited_store_key = 'last_visited_store';
14172
14173        const ttl = 3600;
14174
14175                if (typeof hyva === 'undefined' || (!hyva.getBrowserStorage || !hyva.getCookie || !hyva.setCookie)) {
14176            console.warn("Hyvä helpers are not loaded yet. Make sure they are included before this script");
14177        }
14178
14179        function loadSectionData () {
14180            const browserStorage = hyva.getBrowserStorage();
14181            if (!browserStorage) {
14182                typeof window.dispatchMessages !== "undefined" && window.dispatchMessages(
14183                    [{
14184                        type: "warning",
14185                        text: "Please enable LocalStorage in your browser."
14186                    }]
14187                );
14188                return;
14189            }
14190            try {
14191                let isInvalid = false;
14192
14193                                if (hyva.getCookie(last_visited_store_key) !== CURRENT_STORE_CODE) {
14194                    isInvalid = true;
14195                }
14196                hyva.setCookie(last_visited_store_key, CURRENT_STORE_CODE, false, false);
14197
14198                                if (!hyva.getCookie(mage_cache_session_id_key)) {
14199                    isInvalid = true;
14200                    browserStorage.removeItem(private_content_key);
14201                    const skipSetDomain = true;
14202                    const days = false;
14203                    hyva.setCookie(mage_cache_session_id_key, true, days, skipSetDomain)
14204                }
14205
14206                const cookieVersion = hyva.getCookie(private_content_version_key);
14207                const storageVersion = browserStorage.getItem(private_content_version_key);
14208
14209                if (cookieVersion && !storageVersion || cookieVersion !== storageVersion) {
14210                    isInvalid = true;
14211                }
14212
14213                const privateContentExpires = browserStorage.getItem(private_content_expire_key);
14214                if (privateContentExpires && new Date(privateContentExpires) < new Date()) {
14215                    browserStorage.removeItem(private_content_key);
14216                }
14217
14218                if (isInvalid && cookieVersion) {
14219                    fetchPrivateContent([]);
14220                } else if (cookieVersion && storageVersion && cookieVersion === storageVersion) {
14221                    const privateContent = JSON.parse(browserStorage.getItem(private_content_key));
14222                    if (
14223                        privateContent &&
14224                        privateContentExpires &&
14225                        privateContent.cart &&
14226                        privateContent.customer
14227                    ) {
14228                        dispatchPrivateContent(privateContent);
14229                    } else {
14230                        fetchPrivateContent([]);
14231                    }
14232                } else {
14233                    if (document.getElementById('default-section-data')) {
14234                        const privateContent = JSON.parse(document.getElementById('default-section-data').textContent.trim());
14235                        dispatchPrivateContent(privateContent);
14236                    } else {
14237                        dispatchPrivateContent({});
14238                    }
14239                }
14240
14241            } catch (error) {
14242                console.warn('Error retrieving Private Content:', error);
14243            }
14244        }
14245
14246        hyva.alpineInitialized(loadSectionData)
14247        window.addEventListener('reload-customer-section-data', loadSectionData);
14248
14249                window.processSectionDataBeforeDispatch = window.processSectionDataBeforeDispatch || (data => data);
14250
14251        function dispatchPrivateContent(data) {
14252
14253            const privateContentEvent = new CustomEvent("private-content-loaded", {
14254                detail: {
14255                    data: window.processSectionDataBeforeDispatch(data)
14256                }
14257            });
14258            window.dispatchEvent(privateContentEvent);
14259        }
14260
14261                function fetchPrivateContent(sections) {
14262            fetch(`${BASE_URL}customer/section/load/?sections=${encodeURIComponent(sections.join(','))}`, {
14263                method: 'GET',
14264                headers: {
14265                    'Content-Type': 'application/json',
14266                    'X-Requested-With': 'XMLHttpRequest'
14267                }
14268            })
14269                .then(response => response.ok && response.json())
14270                .then(
14271                    data => {
14272                        if (data) {
14273                            try {
14274                                const browserStorage = hyva.getBrowserStorage();
14275
14276                                // merge new data preserving non-invalidated sections
14277                                const oldSectionData = JSON.parse(browserStorage.getItem(private_content_key) || '{}') || {};
14278
14279                                                                if ((! data.cart || ! data.cart.cartId) && oldSectionData['checkout-data']) {
14280                                    delete oldSectionData['checkout-data'];
14281                                }
14282                                const newSectionData = Object.assign(oldSectionData, data);
14283
14284                                dispatchPrivateContent(newSectionData);
14285
14286                                // don't persist messages, they've been dispatched already
14287                                if (newSectionData.messages && newSectionData.messages.messages ) {
14288                                    newSectionData.messages.messages = [];
14289                                }
14290
14291                                browserStorage.setItem(private_content_key, JSON.stringify(newSectionData));
14292
14293                                const expiresAt = new Date(Date.now() + (ttl * 1000)).toISOString();
14294                                browserStorage.setItem(private_content_expire_key, expiresAt);
14295
14296                                const newCookieVersion = hyva.getCookie(private_content_version_key);
14297                                browserStorage.setItem(private_content_version_key, newCookieVersion);
14298
14299                                // We don't need the section_data_ids in Hyvä, but we store them for compatibility
14300                                // with Luma Fallback. Otherwise, not all sections are loaded in Luma Checkout
14301                                hyva.setCookie(
14302                                    section_data_ids_key,
14303                                    JSON.stringify(
14304                                        Object.keys(data).reduce((sectionDataIds, sectionKey) => {
14305                                            sectionDataIds[sectionKey] = data[sectionKey]['data_id'];
14306                                            return sectionDataIds;
14307                                        }, {})
14308                                    ),
14309                                    false,
14310                                    true
14311                                );
14312                            } catch (error) {
14313                                console.warn("Couldn't store privateContent", error);
14314                            }
14315                        }
14316                    }
14317                )
14318                .catch(error => {
14319                    console.warn("Couldn't fetch privateContent", error);
14320                });
14321        }
14322    })();
14323    //# sourceURL=hyva-private-content.js
14324</script>
vendor: 1 bytes, line 14324
14324
14325<script>
14326    (() => {
14327        document.addEventListener('submit', event => event.target.action = event.target.action.replace('%25uenc%25', hyva.getUenc()));
14328    })()
14329</script>
vendor: 1 bytes, line 14329
14329
14330<script>
14331    (events => {
14332        const dispatchUserInteractionEvent = () => {
14333            events.forEach(type => window.removeEventListener(type, dispatchUserInteractionEvent))
14334            window.dispatchEvent(new Event('init-external-scripts'))
14335        };
14336        events.forEach(type => window.addEventListener(type, dispatchUserInteractionEvent, {once: true, passive: true}))
14337    })(['touchstart', 'mousemove', 'wheel', 'scroll', 'keydown']);
14338    //# sourceURL=hyva-init-external-scripts.js
14339</script>
vendor: 1 bytes, line 14339
14339
14340<script>
14341    function initPriceBox()
14342    {
14343        return {
14344            updatePrice(priceData) {
14345                const root = this.$root;
14346
14347                const regularPriceLabel = root.querySelector('.normal-price .price-label');
14348                const finalPriceElement = root.querySelector('.normal-price [data-price-type=finalPrice].price-wrapper .price');
14349                const basePriceElement = root.querySelector('.normal-price [data-price-type=basePrice].price-wrapper .price');
14350
14351                const oldPriceWrapper = root.querySelector('.old-price');
14352                const oldPriceElement = oldPriceWrapper
14353                    && (oldPriceWrapper.querySelector('[data-price-type=oldPrice].price-wrapper .price')
14354                        || oldPriceWrapper.querySelector('.price'));
14355
14356                const hasOldPrice = priceData.oldPrice && typeof priceData.oldPrice.amount !== 'undefined';
14357                const hasDiscount = hasOldPrice && priceData.finalPrice.amount < priceData.oldPrice.amount;
14358
14359                // Toggle the "As low as" label depending on whether a discount applies.
14360                if (regularPriceLabel) {
14361                    regularPriceLabel.classList.toggle('hidden', hasDiscount);
14362                }
14363
14364                finalPriceElement && (finalPriceElement.innerText = hyva.formatPrice(priceData.finalPrice.amount));
14365                basePriceElement && (basePriceElement.innerText = hyva.formatPrice(priceData.basePrice.amount));
14366
14367                // Reveal and update the struck-through base price for the selected variant,
14368                // or hide it when the selected variant is not discounted.
14369                if (oldPriceWrapper) {
14370                    if (hasDiscount) {
14371                        oldPriceElement && (oldPriceElement.innerText = hyva.formatPrice(priceData.oldPrice.amount));
14372                        oldPriceWrapper.style.display = '';
14373                    } else {
14374                        oldPriceWrapper.style.display = 'none';
14375                    }
14376                }
14377            }
14378        }
14379    }
14380</script>
vendor: 1 bytes, line 14380
14380
14381<script>
14382    function initConfigurableOptions(productId, optionConfig) {
14383
14384        function findPathParam(key) {
14385                        const baseUrl = (BASE_URL.substring(0, 2) === '//' ? 'http:' : '') + BASE_URL;
14386            const baseUrlParts = (new URL(baseUrl)).pathname.replace(/\/$/, '').split('/');
14387            const pathParts = window.location.pathname.split('/').slice(baseUrlParts.length + 3);
14388            for (let i = 0; i < pathParts.length; i += 2) {
14389                if (pathParts[i] === key && pathParts.length > i) {
14390                    return pathParts[i + 1];
14391                }
14392            }
14393        }
14394
14395        return {
14396            optionConfig,
14397            productId,
14398            itemId: (new URLSearchParams(window.location.search)).get('id') || findPathParam('id'),
14399            allowedAttributeOptions: [],
14400            selectedValues: [],
14401            init() {
14402                this.findAllowedAttributeOptions();
14403                this.$nextTick(() => {
14404                    if (typeof this.optionConfig.defaultValues === 'object') {
14405                        for (const [attributeId, value] of Object.entries(this.optionConfig.defaultValues)) {
14406                            this.changeOption(attributeId, value + '');
14407                        }
14408                    }
14409                    this.preselectQuerystringItems();
14410                    this.preselectLocationHashItems();
14411                });
14412            },
14413            productIndex: 0,
14414            productIndexForPrice: 0,
14415            optionIsActive(attributeId, optionId) {
14416                                return !!this.getAllowedAttributeOptions(attributeId).find(
14417                    option => option.id === optionId
14418                )
14419            },
14420            optionIsEnabled(attributeId, optionId) {
14421                                for (const productId in this.optionConfig.index) {
14422                    if (this.optionConfig.index[productId][attributeId] === optionId) {
14423                        return true;
14424                    }
14425                }
14426                return false;
14427            },
14428            findSimpleIndex() {
14429                                this.productIndex = this.calculateSimpleIndexForPartialSelection(this.selectedValues);
14430                this.productIndexForPrice = this.findCheapestProductForPartialSelection(this.selectedValues);
14431            },
14432            calculateSimpleIndexForPartialSelection(selectedValues) {
14433                if (selectedValues.length === 0) return 0;
14434                return this.findProductIdsForPartialSelection(selectedValues)[0];
14435            },
14436            calculateSimpleIndexForFullSelection(selectedValues) {
14437                if (! this.isFullSelection(selectedValues)) return false;
14438
14439                const productIndexes = this.optionConfig.index;
14440                return Object.keys(productIndexes).find(productIndex => {
14441                    const productCandidateOptions = productIndexes[productIndex];
14442
14443                    for (const productOption in productCandidateOptions) {
14444                        if (
14445                            !selectedValues[productOption] ||
14446                            selectedValues[productOption] !== productCandidateOptions[productOption]
14447                        ) {
14448                            return false;
14449                        }
14450                    }
14451                    return productIndex;
14452                });
14453            },
14454            findAllowedAttributeOptions() {
14455                                this.allowedAttributeOptions = this.calculateAllowedAttributeOptions(this.selectedValues);
14456            },
14457            calculateAllowedAttributeOptions(selectedValues) {
14458                const allAttributes = this.optionConfig.attributes;
14459                const allAttributesSorted = Object.values(allAttributes).sort((a,b) => {
14460                    return a.position - b.position
14461                });
14462
14463                const newAllowedAttributeOptions = [];
14464
14465                allAttributesSorted.forEach(attribute => {
14466                    const selectionWithoutAttr = Object.assign({}, this.removeAttrFromSelection(selectedValues, attribute.id));
14467                    const availableIndexes = this.calculateAvailableProductIndexes(selectionWithoutAttr);
14468                    newAllowedAttributeOptions[attribute.id] = allAttributes[attribute.id].options.filter(option => {
14469                        return !!option.products.find(product => {
14470                            return availableIndexes.includes(product);
14471                        })
14472                    });
14473                });
14474                return newAllowedAttributeOptions;
14475            },
14476            calculateAvailableProductIndexes(selectedOptions) {
14477                if (Object.keys(selectedOptions).length === 0) {
14478                                        if (Object.values(this.optionConfig.salable || {}).length) {
14479                                                return [].concat.apply([], [].concat.apply([], Object.values(this.optionConfig.salable).map(Object.values))).filter((x, i, a) => a.indexOf(x) === i)
14480                    }
14481                                        return Object.keys(this.optionConfig.index);
14482                }
14483
14484                                const selectedIds = Object.keys(selectedOptions);
14485                if (Object.values(this.optionConfig.salable || {}).length) {
14486                                        const selectedOptionIndexes = selectedIds.map(attrId => {
14487                        const optionValue = selectedOptions[attrId];
14488                        return this.optionConfig.salable[attrId] && this.optionConfig.salable[attrId][optionValue] || []
14489                    })
14490                                        return selectedOptionIndexes.reduce((acc, optionIndexes) => {
14491                        return acc.filter(index => optionIndexes.includes(index));
14492                    });
14493                } else {
14494                                        const productIndexes = this.optionConfig.index;
14495                    return Object.keys(productIndexes).filter(index => {
14496                                                for (const attrId of selectedIds) {
14497                            if (productIndexes[index][attrId] !== `${selectedOptions[attrId]}`) return false
14498                        }
14499                        return true
14500                    });
14501                }
14502            },
14503            findAttributeByOptionId(optionId) {
14504                for (const attributeId in this.optionConfig.attributes) {
14505                    const attributeOptions = this.optionConfig.attributes[attributeId].options || [];
14506                    if (attributeOptions.find(option => option.id === optionId)) {
14507                        return attributeId;
14508                    }
14509                }
14510            },
14511            getAllowedAttributeOptions(attributeId) {
14512                return this.allowedAttributeOptions[attributeId] || []
14513            },
14514            getAllAttributeOptions(attributeId) {
14515                return (
14516                    this.optionConfig.attributes[attributeId] &&
14517                    this.optionConfig.attributes[attributeId].options
14518                ) || []
14519            },
14520            getProductIdsForOption(option) {
14521                const attributeId = this.findAttributeByOptionId(option.id);
14522                const allOptions = this.optionConfig.attributes[attributeId];
14523                const opt = (allOptions && allOptions.options || []).find(o => o.id === option.id);
14524                return opt && opt.products
14525                    ? opt.products
14526                    : [];
14527            },
14528            findProductIdsForPartialSelection(optionSelection) {
14529                const candidateProducts = Object.values(optionSelection).reduce((candidates, optionId) => {
14530                    const newCandidates = this.getProductIdsForOption({id: optionId});
14531                    return candidates === null
14532                        ? newCandidates
14533                        : candidates.filter(productId => newCandidates.includes(productId));
14534                }, null);
14535                return candidateProducts || [];
14536            },
14537            findCheapestProductForPartialSelection(optionSelection) {
14538                const candidateProducts = this.findProductIdsForPartialSelection(optionSelection);
14539                return candidateProducts.reduce((cheapest, simpleIdx) => {
14540                    // in the first iteration we start with simpleIdx as the currently cheapest product
14541                    if (! this.optionConfig.optionPrices[cheapest]) return simpleIdx;
14542                    const knownCheapestPrice = this.optionConfig.optionPrices[cheapest].finalPrice.amount;
14543                    return knownCheapestPrice > this.optionConfig.optionPrices[simpleIdx].finalPrice.amount
14544                        ? simpleIdx
14545                        : cheapest;
14546                }, 0)
14547            },
14548            findProductIdToUseForOptionPrice(option) {
14549                // try to find a product for a complete selection
14550                const attributeId = this.findAttributeByOptionId(option.id);
14551                const optionSelection = Object.assign({}, this.selectedValues, {[attributeId]: option.id});
14552                const matchingSimpleIndex = this.calculateSimpleIndexForFullSelection(optionSelection);
14553                // if there is no complete selection, use the cheapest product for the option
14554                return matchingSimpleIndex || this.findCheapestProductForPartialSelection(optionSelection);
14555            },
14556            getAttributeOptionLabel(option) {
14557                const optionProduct = this.findProductIdToUseForOptionPrice(option);
14558
14559                if ((! optionProduct) || (optionProduct === this.productIndexForPrice)) {
14560                    return option.label;
14561                }
14562
14563                const currentPrice = this.getOptionPriceAdjustmentBasePrice();
14564
14565                if (this.optionConfig.optionPrices[optionProduct]) {
14566                    const optionPrice = this.optionConfig.optionPrices[optionProduct].finalPrice.amount;
14567                    if (optionPrice !== currentPrice){
14568                        return option.label + ' ' + hyva.formatPrice(optionPrice - currentPrice, true);
14569                    }
14570                }
14571                return option.label;
14572            },
14573            getOptionPriceAdjustmentBasePrice() {
14574                if (this.optionConfig.optionPrices[this.productIndexForPrice]) {
14575                    return this.optionConfig.optionPrices[this.productIndexForPrice].finalPrice.amount
14576                }
14577                return this.optionConfig.prices.finalPrice.amount; // default price if no option selection
14578            },
14579            clearOptionIfActive(optionId, value) {
14580                if (this.selectedValues[optionId] === value) {
14581                    this.blurLabel()
14582                    this.changeOption(optionId, '')
14583                }
14584            },
14585            removeAttrFromSelection(selectedValues, attributeId) {
14586                                attributeId = parseInt(attributeId);
14587                return selectedValues.reduce((newSelection, val, attr) => {
14588                    if (attr !== attributeId) {
14589                        newSelection[attr] = val;
14590                    }
14591                    return newSelection;
14592                }, []);
14593            },
14594            changeOption(attributeId, value) {
14595                if (value === '') {
14596                    this.selectedValues = this.removeAttrFromSelection(this.selectedValues, attributeId)
14597                } else if (value && this.getAllowedAttributeOptions(attributeId).find(option => option.id === value)) {
14598                                        this.selectedValues[attributeId] = value;
14599                }
14600                this.findSimpleIndex();
14601                this.findAllowedAttributeOptions();
14602                this.updatePrices();
14603                this.updateGallery();
14604
14605                const candidates = this.findProductIdsForPartialSelection(this.selectedValues);
14606
14607                                window.dispatchEvent(
14608                    new CustomEvent(
14609                        'configurable-selection-changed',
14610                        {
14611                            detail: {
14612                                productId: this.productId,
14613                                optionId: attributeId,
14614                                value: value,
14615                                productIndex: this.productIndex,
14616                                selectedValues: this.selectedValues,
14617                                candidates: candidates,
14618                                skuCandidates: Object.values(candidates).map(id =>
14618 this.optionConfig.sku?.[id] ?? null).filter(Boolean),
14619                            }
14620                        }
14621                    )
14622                );
14623            },
14624            calculateIsMinimalPrice() {
14625                return ! this.isFullSelection(this.selectedValues);
14626            },
14627            isFullSelection(selectedValues) {
14628                return Object.values(selectedValues).length === Object.keys(this.optionConfig.attributes).length;
14629            },
14630            updatePrices() {
14631                const value = this.optionConfig.optionPrices[this.productIndexForPrice] || this.optionConfig.prices;
14632                window.dispatchEvent(
14633                    new CustomEvent(
14634                        "update-prices-" + this.productId,
14635                        {
14636                            detail: Object.assign(
14637                                value,
14638                                { isMinimalPrice: this.calculateIsMinimalPrice() }
14639                            )
14640                        }
14641                    )
14642                );
14643            },
14644            updateGallery () {
14645                if (this.productIndex) {
14646                    const images = this.optionConfig.images[this.productIndex];
14647                    images && window.dispatchEvent(new CustomEvent(
14648                        "update-gallery",
14649                        { detail: this.sortImagesByPosition(images) }
14650                    ));
14651                } else {
14652                    window.dispatchEvent(new Event("reset-gallery"));
14653                }
14654            },
14655            sortImagesByPosition(images) {
14656                return images.sort((x, y) => {
14657                    return x.position === y.position ? 0 : (parseInt(x.position) > parseInt(y.position) ? 1 : -1)
14658                });
14659            },
14660            onGetCartData(data) {
14661                            },
14662            preselectCartItems(data) {
14663                // pre-select options based on cart data for current (quote) itemId
14664                const cart = data && data.cart;
14665                if (cart && cart.items) {
14666                    const cartItem = cart.items.find((item) => {
14667                        return (
14668                            item.item_id === this.itemId
14669                            && item.product_id === this.productId
14670                        )
14671                    });
14672                    if (cartItem && cartItem.options && cartItem.options.length) {
14673                        cartItem.options.map(option => {
14674                            this.changeOption(option.option_id, option.option_value);
14675                        })
14676                    }
14677                }
14678            },
14679            preselectQuerystringItems() {
14680                // pre-select option like ?size=167
14681                const urlQueryParams = new URLSearchParams(window.location.search.replace('?',''));
14682                this.preselectItemsBasedOnLocation(attribute => urlQueryParams.get(attribute.code));
14683            },
14684            preselectLocationHashItems() {
14685                // pre-select option like #144=167
14686                const urlHashParams = new URLSearchParams(window.location.hash.replace('#',''));
14687                this.preselectItemsBasedOnLocation(attribute => urlHashParams.get(attribute.id));
14688            },
14689            preselectItemsBasedOnLocation(getLocationValue) {
14690                Object.values(this.optionConfig.attributes).map(attribute => {
14691                    const v = getLocationValue(attribute);
14692                    v && this.changeOption(attribute.id, v)
14693                });
14694            }
14695        }
14696    }
14697</script>
vendor: 1 bytes, line 14697
14697
14698<script>
14699    function initSwatchOptions(swatchConfig) {
14700        return {
14701            swatchConfig,
14702            getAttributeSwatchData(attributeId) {
14703                const swatchConfig = Object.assign({}, this.swatchConfig[attributeId]);
14704                swatchConfig['details'] = JSON.parse(swatchConfig['additional_data']);
14705
14706                return swatchConfig;
14707            },
14708            mapSwatchTypeNumberToTypeCode(typeNumber) {
14709                switch ("" + typeNumber) {
14710                    case "1":
14711                        return "color"
14712                    case "2":
14713                        return "image"
14714                    case "3":
14715                        return "empty"
14716                    case "0":
14717                    default:
14718                        return "text"
14719                }
14720            },
14721            getTypeOfFirstOption(attributeId) {
14722                for (const optionId in this.swatchConfig[attributeId]) {
14723                    const option = this.swatchConfig[attributeId][optionId];
14724                    if (typeof option.type !== 'undefined') {
14725                        return this.mapSwatchTypeNumberToTypeCode(option.type);
14726                    }
14727                }
14728            },
14729            getVisualSwatchType(attributeId, targetOptionId) {
14730                // If a type configuration is present for the given option id, use it
14731                const config = this.swatchConfig[attributeId];
14732                if (config[targetOptionId] && typeof config[targetOptionId].type !== 'undefined') {
14733                    return this.mapSwatchTypeNumberToTypeCode(config[targetOptionId].type);
14734                }
14735
14736                // Otherwise - if no config is present for the target option - use the type of the first option
14737                // with a type property from the attribute, thus assuming its the same type as the target option.
14738                // (This edge case condition can occur on single swatch products if some options are not salable)
14739                return this.getTypeOfFirstOption(attributeId);
14740            },
14741            getSwatchType(attributeId, optionId) {
14742                // Deserialize the attribute details the first time they are used
14743                if (this.swatchConfig[attributeId] && ! this.swatchConfig[attributeId].details) {
14744                    this.swatchConfig[attributeId] = this.getAttributeSwatchData(attributeId);
14745                }
14746                const type =  this.swatchConfig[attributeId] &&
14747                    this.swatchConfig[attributeId].details &&
14748                    this.swatchConfig[attributeId].details.swatch_input_type ||
14749                    "empty";
14750                return type === 'visual' ? this.getVisualSwatchType(attributeId, optionId) : type;
14751            },
14752            isTextSwatch(attributeId, optionId) {
14753                return this.getSwatchType(attributeId, optionId) === 'text';
14754            },
14755            isVisualSwatch(attributeId, optionId) {
14756                const type = this.getSwatchType(attributeId, optionId);
14757
14758                return ['image', 'color'].includes(type);
14759            },
14760            getSwatchBackgroundStyle(attributeId, optionId) {
14761                const config = this.getSwatchConfig(attributeId, optionId);
14762                const type = this.getSwatchType(attributeId, optionId);
14763
14764                if (type === "color") {
14765                        return 'background-color:' + config.value;
14766                } else if (type === "image") {
14767                        return "background: #fff url('" + config.value + "') no-repeat center";
14768                } else {
14769                    return '';
14770                }
14771            },
14772            getSwatchText(attributeId, optionId) {
14773                const config = this.getSwatchConfig(attributeId, optionId);
14774                return config.label || config.value || this.getOptionLabelFromOptionConfig(attributeId, optionId);
14775            },
14776            getOptionLabelFromOptionConfig(attributeId, optionId) {
14777                // Fallback if no value is present in swatchConfig data
14778                // Reference issue https://gitlab.hyva.io/hyva-themes/magento2-default-theme/-/issues/190
14779                const option = this.getAllAttributeOptions(attributeId).filter(option => option.id === optionId);
14780                return option && option[0] && option[0].label ||'';
14781            },
14782            getSwatchConfig(attributeId, optionId) {
14783                return this.swatchConfig[attributeId] && this.swatchConfig[attributeId][optionId]
14784                    ? this.swatchConfig[attributeId][optionId]
14785                    : false;
14786            },
14787            activeTooltipItem: false,
14788            tooltipPositionElement: false,
14789            isTooltipVisible() {
14790                return this.activeTooltipItem &&
14791                    this.getSwatchConfig(
14792                        this.activeTooltipItem.attribute,
14793                        this.activeTooltipItem.item
14794                    );
14795            },
14796            isFirstItemCol() {
14797                return this.activeTooltipItem.index === 0;
14798            },
14799            getTooltipImageStyle(attributeId, optionId) {
14800                const config = this.getSwatchConfig(attributeId, optionId);
14801                const type = this.getSwatchType(attributeId, optionId);
14802
14803                if (type === "color") {
14804                    return 'background-color:' + config.value + '; width: 110px; height: 90px;';
14805                } else if (type === "image") {
14806                    return "background: #ffffff url('" + config.thumb +
14807                        "') center center no-repeat; width: 110px; height: 90px;";
14808                } else {
14809                    return 'display:none';
14810                }
14811            },
14812            getTooltipPosition() {
14813                return this.tooltipPositionElement ?
14814                    `top: ${this.tooltipPositionElement.offsetTop}px;` +
14815                    `left: ${
14816                        this.tooltipPositionElement.offsetLeft - (
14817                            this.tooltipPositionElement.closest('.snap') &&
14818                            this.tooltipPositionElement.closest('.snap').scrollLeft ||
14819                            0
14820                        )
14821                    }px;` : ''
14822            },
14823            getTooltipLabel() {
14824                return this.getSwatchConfig(this.activeTooltipItem.attribute, this.activeTooltipItem.item).label
14825            },
14826            focusedLabel: false,
14827            focusLabel(optionId) {
14828                this.focusedLabel = optionId;
14829            },
14830            blurLabel() {
14831                this.focusedLabel = false;
14832            }
14833        }
14834    }
14835</script>
vendor: 1 bytes, line 14835
14835
14836<script>
14837    'use strict';
14838
14839    const grecaptchaV2LoadCallbacks = [];
14840
14841    function executeRecaptchaLoadCallbacks () {
14842        while (window.grecaptcha && grecaptchaV2LoadCallbacks.length > 0) {
14843            const callback = grecaptchaV2LoadCallbacks.pop();
14844            typeof callback === 'string' ? window[callback]() : callback();
14845        }
14846    }
14847
14848    (function() {
14849        const loadRecaptchaScript = (event) => {
14850
14851            if (window.grecaptcha || !event.target.form) {
14852                return;
14853            }
14854
14855            const url = 'https://www.google.com/recaptcha/api.js?onload=executeRecaptchaLoadCallbacks';
14856            const siteKey = '';
14857            const script = document.createElement('script');
14858            script.type = 'text/javascript';
14859            script.src = siteKey ? `${url}&render=${siteKey}` : `${url}&render=explicit`;
14860            script.async = true;
14861            document.head.appendChild(script);
14862
14863            script.addEventListener('load', () => {
14864                Array.from(document.querySelectorAll('button[data-recaptcha-btn]:disabled')).forEach(btn => btn.removeAttribute('disabled'));
14865            });
14866        }
14867
14868        window.forceLoadRecaptchaScript = (form) => {
14869            loadRecaptchaScript({target: {form: form || 'dummy'}});
14870            executeRecaptchaLoadCallbacks();
14871        };
14872
14873        document.body.addEventListener('input', loadRecaptchaScript, { once: true });
14874        document.body.addEventListener('focus', loadRecaptchaScript, { once: true });
14875
14876    }());
14877
14878</script>
14878
14879<style>
14880    .pf-grid-loading { position: relative; }
14881    .pf-grid-overlay {
14882        position: absolute;
14883        inset: 0;
14884        z-index: 40;
14885        display: flex;
14886        align-items: flex-start;
14887        justify-content: center;
14888        padding-top: 11vh;
14889        background: rgba(255, 255, 255, 0.72);
14890        backdrop-filter: blur(1px);
14891        animation: pf-grid-fade-in 0.15s ease-out;
14892    }
14893    .pf-grid-overlay__spinner {
14894        width: 44px;
14895        height: 44px;
14896        border: 4px solid rgba(0, 0, 0, 0.12);
14897        border-top-color: var(--color-primary-500, #e2231a);
14898        border-radius: 9999px;
14899        animation: pf-grid-spin 0.7s linear infinite;
14900    }
14901    @keyframes pf-grid-spin { to { transform: rotate(360deg); } }
14902    @keyframes pf-grid-fade-in { from { opacity: 0; } to { opacity: 1; } }
14903    @media (prefers-reduced-motion: reduce) {
14904        .pf-grid-overlay__spinner { animation-duration: 1.6s; }
14905        .pf-grid-overlay { animation: none; }
14906    }
14907</style>
14908<script>
14909    (function () {
14910        if (window.__pfGridSwapBound) {
14911            return;
14912        }
14913        window.__pfGridSwapBound = true;
14914
14915        var ENDPOINT = "https:\/\/www.esprit-ktm.com\/partfinder\/category\/grid\/";
14916        var GRID_ID = 'ProductGridContainer';
14917        var MAIN_ID = 'MainContent';
14918        var MARKER_SEL = '[data-pf-grid]';
14919        var SLIDER_SEL = '[data-pf-slider]';
14920
14921        function getFindpart() {
14922            var row = document.cookie
14923                .split('; ')
14924                .find(function (r) { return r.indexOf('current_findpart=') === 0; });
14925            return row ? decodeURIComponent(row.split('=')[1]) : '';
14926        }
14927
14928        // Current category id, read live from the marker inside #MainContent.
14929        // 0 when the page is not a partfinder-enabled category page.
14930        function getCategoryId() {
14931            var marker = document.querySelector(MARKER_SEL);
14932            if (!marker) {
14933                return 0;
14934            }
14935            var id = parseInt(marker.getAttribute('data-category-id') || '0', 10);
14936            return id > 0 ? id : 0;
14937        }
14938
14939        var inFlight = false;
14940        // Page currently displayed in the *filtered* grid. Reset to 1 every time
14941        // we swap in a freshly filtered page 1 (model changed / initial load).
14942        var pfCurrentPage = 1;
14943        // Node identity of the #ProductGridContainer we last filtered. Satoshi
14944        // replaces the whole #MainContent (a brand-new grid node) on navigation,
14945        // while our Alpine.morph patches the existing node in place — so a grid
14946        // node !== lastSwappedGrid means a fresh, unfiltered grid was just injected.
14947        var lastSwappedGrid = null;
14948
14949        function setLoading(on) {
14950            var el = document.getElementById(GRID_ID);
14951            if (!el) {
14952                return;
14953            }
14954            var overlay = el.querySelector(':scope > .pf-grid-overlay');
14955            if (on) {
14956                el.classList.add('pf-grid-loading');
14957                el.setAttribute('aria-busy', 'true');
14958                if (!overlay) {
14959                    overlay = document.createElement('div');
14960                    overlay.className = 'pf-grid-overlay';
14961                    overlay.innerHTML =
14962                        '<div class="pf-grid-overlay__spinner" role="status" aria-label="Chargement des vues"></div>';
14963                    el.appendChild(overlay);
14964                }
14965            } else {
14966                el.classList.remove('pf-grid-loading');
14967                el.removeAttribute('aria-busy');
14968                if (overlay) {
14969                    overlay.remove();
14970                }
14971            }
14972        }
14973
14974        // Replace the (CDN-cached, unfiltered) slider with the filtered one taken
14975        // from the grid-endpoint response. The slider root carries a per-render
14976        // uniqid id, so it is targeted by the stable [data-pf-slider] hook. A full
14977        // node replacement (rather than a morph) gives the Alpine carousel a clean
14978        // re-init with the new variable-width content. No-op when the page has no
14979        // slider (response or DOM), so non-slider categories are untouched.
14980        function swapSlider(doc) {
14981            var next = doc.querySelector(SLIDER_SEL);
14982            var current = document.querySelector(SLIDER_SEL);
14983            if (!next || !current) {
14984                return;
14985            }
14986            var imported = document.importNode(next, true);
14987            current.replaceWith(imported);
14988            if (window.Alpine && typeof window.Alpine.initTree === 'function') {
14989                window.Alpine.initTree(imported);
14990            }
14991        }
14992
14993        async function swap() {
14994            var categoryId = getCategoryId();
14995            var current = document.getElementById(GRID_ID);
14996            if (!categoryId || !current || inFlight) {
14997                return;
14998            }
14999            inFlight = true;
15000            setLoading(true);
15001            try {
15002                var sep = ENDPOINT.indexOf('?') === -1 ? '?' : '&';
15003                var url = ENDPOINT + sep + 'id=' + encodeURIComponent(categoryId) + '&_=' + Date.now();
15004
15005                var res = await fetch(url, {
15006                    credentials: 'same-origin',
15007                    headers: { 'X-Requested-With': 'XMLHttpRequest' }
15008                });
15009                if (!res.ok) {
15010                    return;
15011                }
15012
15013                var html = await res.text();
15014                var doc = new DOMParser().parseFromString(html, 'text/html');
15015                var next = doc.getElementById(GRID_ID);
15016                current = document.getElementById(GRID_ID);
15017
15018                if (next && current) {
15019                    // Drop the loading overlay before reconciling so it is not
15020                    // morphed into a product card.
15021                    var staleOverlay = current.querySelector(':scope > .pf-grid-overlay');
15022                    if (staleOverlay) {
15023                        staleOverlay.remove();
15024                    }
15025                    current.classList.remove('pf-grid-loading');
15026
15027                    if (window.Alpine && typeof window.Alpine.morph === 'function') {
15028                        window.Alpine.morph(current, next.outerHTML);
15029                    } else {
15030                        current.replaceWith(next);
15031                        if (window.Alpine && typeof window.Alpine.initTree === 'function') {
15032                            window.Alpine.initTree(document.getElementById(GRID_ID));
15033                        }
15034                    }
15035                    // A fresh filtered page 1 is now in place: restart pagination
15036                    // and remember this grid node so the observer doesn't re-swap it.
15037                    pfCurrentPage = 1;
15038                    lastSwappedGrid = document.getElementById(GRID_ID);
15039                    window.dispatchEvent(new CustomEvent('pf-grid-updated'));
15040                }
15041
15042                // The category slider (filter bar with per-view counts) is cached
15043                // model-agnostic by the CDN just like the grid, so it shows every
15044                // view's full count. The endpoint response above already contains
15045                // the per-model filtered slider — swap it in from the same fetch.
15046                swapSlider(doc);
15047            } catch (e) {
15048                /* keep the current grid on failure */
15049            } finally {
15050                inFlight = false;
15051                setLoading(false);
15052            }
15053        }
15054
15055        // Re-evaluate after a (possible) navigation. Fires on first load and on
15056        // every #MainContent swap. Only acts when this is a partfinder-enabled
15057        // category page (marker present), a model is selected, and the grid node
15058        // is one we have not filtered yet (i.e. a fresh, unfiltered grid).
15059        function syncGrid() {
15060            if (!getCategoryId()) {
15061                lastSwappedGrid = null;
15062                return;
15063            }
15064            if (!getFindpart()) {
15065                // No model selected: the unfiltered grid is the correct one.
15066                lastSwappedGrid = null;
15067                return;
15068            }
15069            var grid = document.getElementById(GRID_ID);
15070            if (!grid || grid === lastSwappedGrid) {
15071                return;
15072            }
15073            pfCurrentPage = 1;
15074            swap();
15075        }
15076
15077        // Cookie changed without a full reload (garage bar select / reset).
15078        // Force a re-filter (or restore of the unfiltered grid) for this page.
15079        function onFindpartChanged() {
15080            lastSwappedGrid = null;
15081            if (getCategoryId()) {
15082                swap();
15083            }
15084        }
15085
15086        // --- Filtered pagination ("Load more") -----------------------------
15087        // Satoshi's x-pagination-trigger fetches the canonical, CDN-cached
15088        // category URL (location.pathname?p=N) which is model-agnostic — so it
15089        // would append the WHOLE category on page 2+. When a model is selected
15090        // we hijack the click and pull the next page from the filtered grid
15091        // endpoint instead, mirroring Satoshi's append + #pager swap.
15092
15093        function appendPaginationContent(rawHtml) {
15094            var regex = /<!-- pagination-content -->([\s\S]*?)<!-- end-pagination-content -->/g;
15095            var match = rawHtml.match(regex);
15096            var content = match ? match[0] : '';
15097            var wrapper = document.querySelector('[data-content-wrapper]');
15098            if (!wrapper || !content) {
15099                return;
15100            }
15101            // display:contents so the wrapper doesn't break the grid layout;
15102            // Alpine's MutationObserver initialises the new product cards.
15103            var frag = document.createElement('div');
15104            frag.style.display = 'contents';
15105            frag.innerHTML = content;
15106            wrapper.appendChild(frag);
15107        }
15108
15109        // The HAM #pager (Magento_Theme/templates/html/pager.phtml) drives the
15110        // "Loading more products..." spinner via its Alpine `loading` flag,
15111        // normally flipped by the trigger's @click. We block that click (below)
15112        // to stop Satoshi's canonical fetch, so we must toggle `loading` here.
15113        function setPagerLoading(pager, on) {
15114            try {
15115                if (pager && window.Alpine && typeof window.Alpine.$data === 'function') {
15116                    var data = window.Alpine.$data(pager);
15117                    if (data && typeof data === 'object') {
15118                        data.loading = on;
15119                    }
15120                }
15121            } catch (e) {
15122                /* no Alpine data on the pager — spinner is optional */
15123            }
15124        }
15125
15126        async function paginate(trigger, pager) {
15127            var categoryId = getCategoryId();
15128            if (inFlight || !categoryId) {
15129                return;
15130            }
15131            var expr = trigger.getAttribute('x-pagination-trigger') || '';
15132            var m = expr.match(/lastPage['"]?\s*:\s*(\d+)/);
15133            var lastPage = m ? parseInt(m[1], 10) : Infinity;
15134            if (pfCurrentPage >= lastPage) {
15135                return;
15136            }
15137
15138            inFlight = true;
15139            trigger.setAttribute('aria-busy', '1');
15140            setPagerLoading(pager, true);
15141            var ok = false;
15142            try {
15143                var nextPage = pfCurrentPage + 1;
15144                var sep = ENDPOINT.indexOf('?') === -1 ? '?' : '&';
15145                var url = ENDPOINT + sep + 'id=' + encodeURIComponent(categoryId) +
15146                    '&p=' + nextPage + '&_=' + Date.now();
15147
15148                var res = await fetch(url, {
15149                    credentials: 'same-origin',
15150                    headers: { 'X-Requested-With': 'XMLHttpRequest' }
15151                });
15152                if (!res.ok) {
15153                    return;
15154                }
15155
15156                var html = await res.text();
15157                appendPaginationContent(html);
15158                if (window.hyva && typeof window.hyva.replaceDomElement === 'function') {
15159                    window.hyva.replaceDomElement('#pager', html);
15160                }
15161                pfCurrentPage = nextPage;
15162                ok = true;
15163                window.dispatchEvent(new CustomEvent('pf-grid-updated'));
15164            } catch (e) {
15165                /* keep what we have on failure */
15166            } finally {
15167                inFlight = false;
15168                trigger.setAttribute('aria-busy', '0');
15169                // On success #pager is replaced by a fresh (loading:false) pager.
15170                // On failure the old pager stays, so clear its spinner ourselves.
15171                if (!ok) {
15172                    setPagerLoading(pager, false);
15173                }
15174            }
15175        }
15176
15177        // Capture phase so we run *before* Satoshi's own click listener and can
15178        // stop it from firing the canonical (unfiltered) pagination fetch.
15179        document.addEventListener('click', function (e) {
15180            if (!getFindpart() || !getCategoryId()) {
15181                return; // no model selected: let Satoshi paginate the cached page
15182            }
15183            var pager = e.target.closest('#pager');
15184            if (!pager) {
15185                return;
15186            }
15187            var trigger = e.target.closest('a[x-pagination-trigger]') ||
15188                pager.querySelector('a[x-pagination-trigger]');
15189            if (!trigger) {
15190                return;
15191            }
15192            e.preventDefault();
15193            e.stopImmediatePropagation();
15194            paginate(trigger, pager);
15195        }, true);
15196
15197        function whenAlpineReady(cb) {
15198            if (window.Alpine) {
15199                cb();
15200            } else {
15201                document.addEventListener('alpine:initialized', cb, { once: true });
15202            }
15203        }
15204
15205        // Detect Satoshi soft navigations. replaceMainContent() ultimately calls
15206        // hyva.replaceDomElement('#MainContent', ...), which does a node-level
15207        // replaceWith on #MainContent — so a MutationObserver on its *parent*
15208        // (which stays stable) sees a childList mutation on every navigation,
15209        // forward (menu) or backward (popstate). childList-only keeps it cheap,
15210        // and our own in-place morph (deep inside #MainContent) never triggers it.
15211        var observer = new MutationObserver(function () {
15212            // Defer to let Alpine init the freshly injected tree first.
15213            whenAlpineReady(function () { window.requestAnimationFrame(syncGrid); });
15214        });
15215
15216        function bindObserver() {
15217            var main = document.getElementById(MAIN_ID);
15218            var parent = main && main.parentNode;
15219            if (parent) {
15220                observer.observe(parent, { childList: true });
15221                return true;
15222            }
15223            return false;
15224        }
15225
15226        window.addEventListener('partfinder-changed', onFindpartChanged);
15227        window.addEventListener('partfinder-reset', onFindpartChanged);
15228
15229        whenAlpineReady(function () {
15230            if (!bindObserver()) {
15231                // #MainContent not in the DOM yet — retry once on full load.
15232                window.addEventListener('load', bindObserver, { once: true });
15233            }
15234            // Cached page is model-agnostic. If a model is already selected on
15235            // initial load, swap to the filtered grid now.
15236            syncGrid();
15237        });
15238    })();
15239</script>
15239
15240
15241<script>
15242    (function () {
15243        const modals = [];
15244                let lastHide = 0;
15245
15246                function resolveElement($refs, value) {
15247            if (!value) return null;
15248                        if (value instanceof Element) return value;
15249                        if (typeof value === 'string') {
15250                try {
15251                    return ($refs && $refs[value]) || document.querySelector(value) || null;
15252                } catch (e) {}
15253            }
15254            return null;
15255        }
15256
15257                function determineTrigger($refs, dialog, trigger) {
15258                        if (!trigger && dialog?.target instanceof HTMLElement) {
15259                return dialog.target;
15260            }
15261
15262                        if (typeof dialog === 'string' && trigger?.target instanceof HTMLElement) {
15263                return trigger.target;
15264            }
15265
15266            return resolveElement($refs, trigger);
15267        }
15268
15269                function setFocusFirstElement(dialogElement) {
15270            if (!dialogElement) return;
15271
15272            window.setTimeout(() => {
15273                const candidates = dialogElement.querySelectorAll('[x-focus-first]');
15274                for (const candidate of candidates) {
15275                    if (candidate.closest('dialog') === dialogElement) {
15276                        candidate.focus();
15277                        return;
15278                    }
15279                }
15280            }, 50);
15281        }
15282
15283        window.hyva.modal = function(options = {}) {
15284                        if (this.$el && this.$el.dataset && this.$el.dataset.options) {
15285                try {
15286                    options = Object.assign(options, JSON.parse(this.$el.dataset.options || '{}'));
15287                } catch (e) {
15288                    throw new Error('Cannot read the dialog options from the data-options attribute: not valid JSON');
15289                }
15290            }
15291
15292            const config = Object.assign({
15293                dialog: 'dialog',                 duration: 300,                 transitionEnter: 'transition ease-out duration-300',
15294                transitionEnterStart: 'opacity-0',
15295                transitionEnterEnd: 'opacity-100',
15296                transitionLeave: 'transition ease-in duration-300',
15297                transitionLeaveStart: 'opacity-100',
15298                transitionLeaveEnd: 'opacity-0',
15299            }, options);
15300
15301            return {
15302                opened: {},
15303                show(dialog, trigger) {
15304                    const name = typeof dialog === 'string' ? dialog : config.dialog;
15305                    if (!name || this.opened[name]) return;
15306
15307                    this.opened[name] = true;
15308                    const focusTarget = determineTrigger(this.$refs, dialog, trigger);
15309                    const dialogEl = this.$refs && this.$refs[name];
15310                    const frame = { name, instance: this, focusTarget, time: Date.now() };
15311                    modals.push(frame);
15312                    setFocusFirstElement(dialogEl);
15313                    return new Promise(resolve => { frame.resolve = resolve; });
15314                },
15315                cancel() {
15316                    this.hide(false);
15317                },
15318                ok() {
15319                    this.hide(true);
15320                },
15321                hide(value) {
15322                                        if (Date.now() - lastHide < config.duration) return;
15323                    lastHide = Date.now();
15324
15325                                        const modal = modals.pop();
15326                    if (!modal) return;
15327
15328                    modal.instance.opened[modal.name] = false;
15329
15330                                        const focusTarget = modal.focusTarget;
15331                    focusTarget && window.setTimeout(() => focusTarget.focus(), config.duration + 50);
15332                    modal.resolve && modal.resolve(value);
15333                },
15334                /**
15335                 * @deprecated Use dialogConfig() instead, which is used by the default modal-container.phtml template.
15336                 * This method is kept for backwards compatibility with custom container templates.
15337                 */
15338                overlay(dialog) {
15339                    dialog = this.$el.dataset.dialogRefName || dialog;
15340                    const name = typeof dialog === 'string' ? dialog : config.dialog;
15341                    if (this.$el.tagName !== 'DIALOG' && ! window.hyva.modal.legacyModalCompatibility) {
15342                        console.warn(
15343                            '[hyva] Deprecated modal markup detected (x-bind="overlay" on a non-dialog element' +
15344                            (name ? ` for "${name}"` : '') + ').\n' +
15345                            'Escape and click-outside closing are not available for such dialogs anymore.\n' +
15346                            'Install hyva-themes/magento2-legacy-modal-compatibility or migrate to the native <dialog> markup.'
15347                        );
15348                    }
15349                    return Object.assign({}, this.dialogConfig(name), {
15350                        ['@hyva-modal-show.window'](event) {
15351                            event.detail && event.detail.dialog === name && this.show(name, event.detail.focusAfterHide)
15352                        }
15353                    });
15354                },
15355                dialogConfig(name) {
15356                    name = name || this.$el.dataset.dialogRefName || config.dialog;
15357                    return {
15358                        ['x-show']: () => name ? this.opened[name] : false,
15359                        ['x-transition:enter']: config.transitionEnter,
15360                        ['x-transition:enter-start']: config.transitionEnterStart,
15361                        ['x-transition:enter-end']: config.transitionEnterEnd,
15362                        ['x-transition:leave']: config.transitionLeave,
15363                        ['x-transition:leave-start']: config.transitionLeaveStart,
15364                        ['x-transition:leave-end']: config.transitionLeaveEnd,
15365                        ['@hyva-modal-show.window'](event) {
15366                            event.detail && event.detail.dialog === name && this.show(name, event.detail.focusAfterHide);
15367                        },
15368                    };
15369                },
15370                showDialogOnInit() {
15371                    const name = this.$el.dataset.dialogRefName;
15372                    if (name) {
15373                        this.show(name);
15374                    }
15375                }
15376            };
15377        }
15378
15379        window.hyva.modal.peek = () => modals.length > 0 && modals[modals.length - 1]
15380
15381        window.hyva.modal.pop = function () {
15382            if (modals.length > 0) {
15383                modals[modals.length - 1].instance.hide();
15384            }
15385        }
15386
15387        /**
15388         * @deprecated Native <dialog> handles focus trapping automatically.
15389         * Calling this function has no effect. Kept for backwards compatibility.
15390         */
15391        window.hyva.modal.excludeSelectorsFromFocusTrap = function (selectors) {}
15392
15393        /**
15394         * @deprecated Native <dialog> with x-htmldialog handles ESC key and click-outside events.
15395         * These functions have no effect. Kept for backwards compatibility.
15396         */
15397        window.hyva.modal.eventListeners = {
15398            keydown: event => {},
15399            click: event => {}
15400        };
15401    })();
15402
15403    window.addEventListener('alpine:init', () => {
15404        Alpine.data('hyvaModal', window.hyva.modal);
15405    }, {once: true});
15406</script>
15406
15407
15408<section x-data="initAmGdprLoader"
15409         @amgdpr-loading-start.window="showLoader"
15410         @amgdpr-loading-stop.window="hideLoader"
15411>
15412    <div
15413    class="z-50 fixed inset-0 flex justify-center items-center bg-white/70 select-none"
15414    x-show="isLoading"
15415    x-cloak
15416    x-transition.opacity.duration.200ms
15417>
15418    <div class="flex items-center">
15419        <svg xmlns="http://www.w3.org/2000/svg" width="54" height="54" viewBox="0 0 24 24" stroke="currentColor" fill="none" stroke-width="2" stroke-linecap="round" class="animate-spin" aria-hidden="true">
15420    <circle style="opacity: .3;" cx="12" cy="12" r="10"/>
15421    <path fill="none" stroke-width="2" d="M12,2 a10,10 0 0,1 10,10"/>
15422</svg>
15423        <div class="ml-10 text-xl">
15424            Chargement...        </div>
15425    </div>
15426</div>
15427</section>
15428
15429<script data-cfasync="false">
15430    'use strict';
15431
15432    function initAmGdprLoader() {
15433        return {
15434            isLoading: false,
15435
15436            /**
15437             * @returns {void}
15438             */
15439            showLoader: function () {
15440                this.isLoading = true;
15441            },
15442
15443            /**
15444             * @returns {void}
15445             */
15446            hideLoader: function () {
15447                this.isLoading = false;
15448            }
15449        }
15450    }
15451
15452    window.addEventListener(
15453        'alpine:init',
15454        () => Alpine.data('initAmGdprLoader', initAmGdprLoader),
15455        { once: true }
15456    );
15457</script>
vendor: 1 bytes, line 15457
15457
15458<script type="text/json" id="default-section-data">
15459    {"messages":[],"customer":[],"compare-products":[],"last-ordered-items":[],"cart":[],"directory-data":{"BE":{"name":"Belgique","regions":{"485":{"code":"VAN","name":"Antwerpen"},"486":{"code":"WBR","name":"Brabant wallon"},"487":{"code":"BRU","name":"Brussels-Capital Region"},"488":{"code":"WHT","name":"Hainaut"},"490":{"code":"WLG","name":"Li\u00e8ge"},"489":{"code":"VLI","name":"Limburg"},"491":{"code":"WLX","name":"Luxembourg"},"492":{"code":"WNA","name":"Namur"},"493":{"code":"VOV","name":"Oost-Vlaanderen"},"494":{"code":"VBR","name":"Vlaams-Brabant"},"495":{"code":"VWV","name":"West-Vlaanderen"}}},"CH":{"name":"Suisse","regions":{"104":{"code":"AG","name":"Aargau"},"106":{"code":"AR","name":"Appenzell Ausserrhoden"},"105":{"code":"AI","name":"Appenzell Innerrhoden"},"108":{"code":"BL","name":"Basel-Landschaft"},"109":{"code":"BS","name":"Basel-Stadt"},"107":{"code":"BE","name":"Bern"},"110":{"code":"FR","name":"Friburg"},"111":{"code":"GE","name":"Geneva"},"112":{"code":"GL","name":"Glarus"},"113":{"code":"GR","name":"Graub\u00fcnden"},"114":{"code":"JU","name":"Jura"},"115":{"code":"LU","name":"Lucerne"},"116":{"code":"NE","name":"Neuch\u00e2tel"},"117":{"code":"NW","name":"Nidwalden"},"118":{"code":"OW","name":"Obwalden"},"120":{"code":"SH","name":"Schaffhausen"},"122":{"code":"SZ","name":"Schwyz"},"121":{"code":"SO","name":"Solothurn"},"119":{"code":"SG","name":"St. Gallen"},"123":{"code":"TG","name":"Thurgau"},"124":{"code":"TI","name":"Ticino"},"125":{"code":"UR","name":"Uri"},"126":{"code":"VD","name":"Vaud"},"127":{"code":"VS","name":"Wallis"},"128":{"code":"ZG","name":"Zug"},"129":{"code":"ZH","name":"Z\u00fcrich"}}},"DE":{"name":"Allemagne","regions":{"80":{"code":"BAW","name":"Baden-W\u00fcrttemberg"},"81":{"code":"BAY","name":"Bayern"},"82":{"code":"BER","name":"Berlin"},"83":{"code":"BRG","name":"Brandenburg"},"84":{"code":"BRE","name":"Bremen"},"85":{"code":"HAM","name":"Hamburg"},"86":{"code":"HES","name":"Hessen"},"87":{"code":"MEC","name":"Mecklenburg-Vorpommern"},"79":{"code":"NDS","name":"Niedersachsen"},"88":{"code":"NRW","name":"Nordrhein-Westfalen"},"89":{"code":"RHE","name":"Rheinland-Pfalz"},"90":{"code":"SAR","name":"Saarland"},"91":{"code":"SAS","name":"Sachsen"},"92":{"code":"SAC","name":"Sachsen-Anhalt"},"93":{"code":"SCN","name":"Schleswig-Holstein"},"94":{"code":"THE","name":"Th\u00fcringen"}}},"ES":{"name":"Espagne","regions":{"130":{"code":"A Coru\u0441a","name":"A Coru\u00f1a"},"131":{"code":"Alava","name":"Alava"},"132":{"code":"Albacete","name":"Albacete"},"133":{"code":"Alicante","name":"Alicante"},"134":{"code":"Almeria","name":"Almeria"},"135":{"code":"Asturias","name":"Asturias"},"136":{"code":"Avila","name":"Avila"},"137":{"code":"Badajoz","name":"Badajoz"},"138":{"code":"Baleares","name":"Baleares"},"139":{"code":"Barcelona","name":"Barcelona"},"140":{"code":"Burgos","name":"Burgos"},"141":{"code":"Caceres","name":"Caceres"},"142":{"code":"Cadiz","name":"Cadiz"},"143":{"code":"Cantabria","name":"Cantabria"},"144":{"code":"Castellon","name":"Castellon"},"145":{"code":"Ceuta","name":"Ceuta"},"146":{"code":"Ciudad Real","name":"Ciudad Real"},"147":{"code":"Cordoba","name":"Cordoba"},"148":{"code":"Cuenca","name":"Cuenca"},"149":{"code":"Girona","name":"Girona"},"150":{"code":"Granada","name":"Granada"},"151":{"code":"Guadalajara","name":"Guadalajara"},"152":{"code":"Guipuzcoa","name":"Guipuzcoa"},"153":{"code":"Huelva","name":"Huelva"},"154":{"code":"Huesca","name":"Huesca"},"155":{"code":"Jaen","name":"Jaen"},"156":{"code":"La Rioja","name":"La Rioja"},"157":{"code":"Las Palmas","name":"Las Palmas"},"158":{"code":"Leon","name":"Leon"},"159":{"code":"Lleida","name":"Lleida"},"160":{"code":"Lugo","name":"Lugo"},"161":{"code":"Madrid","name":"Madrid"},"162":{"code":"Malaga","name":"Malaga"},"163":{"code":"Melilla","name":"Melilla"},"164":{"code":"Murcia","name":"Murcia"},"165":{"code":"Navarra","name":"Navarra"},"166":{"code":"Ourense","name":"Ourense"},"167":{"code":"Palencia","name":"Palencia"},"168":{"code":"Pontevedra","name":"Pontevedra"},"169":{"code":"Salamanca","name":"Salamanca"},"170":{"code":"Santa Cruz de Tenerife","name":"Santa Cruz de Tenerife"},"171":{"code":"Segovia","name":"Segovia"},"172":{"code":"Sevilla","name":"Sevilla"},"173":{"code":"Soria","name":"Soria"},"174":{"code":"Tarragona","name":"Tarragona"},"175":{"code":"Teruel","name":"Teruel"},"176":{"code":"Toledo","name":"Toledo"},"177":{"code":"Valencia","name":"Valencia"},"178":{"code":"Valladolid","name":"Valladolid"}
15459,"179":{"code":"Vizcaya","name":"Vizcaya"},"180":{"code":"Zamora","name":"Zamora"},"181":{"code":"Zaragoza","name":"Zaragoza"}}},"FR":{"name":"France","regions":{"182":{"code":"01","name":"Ain"},"183":{"code":"02","name":"Aisne"},"184":{"code":"03","name":"Allier"},"185":{"code":"04","name":"Alpes-de-Haute-Provence"},"187":{"code":"06","name":"Alpes-Maritimes"},"188":{"code":"07","name":"Ard\u00e8che"},"189":{"code":"08","name":"Ardennes"},"190":{"code":"09","name":"Ari\u00e8ge"},"191":{"code":"10","name":"Aube"},"192":{"code":"11","name":"Aude"},"193":{"code":"12","name":"Aveyron"},"249":{"code":"67","name":"Bas-Rhin"},"194":{"code":"13","name":"Bouches-du-Rh\u00f4ne"},"195":{"code":"14","name":"Calvados"},"196":{"code":"15","name":"Cantal"},"197":{"code":"16","name":"Charente"},"198":{"code":"17","name":"Charente-Maritime"},"199":{"code":"18","name":"Cher"},"200":{"code":"19","name":"Corr\u00e8ze"},"201":{"code":"2A","name":"Corse-du-Sud"},"203":{"code":"21","name":"C\u00f4te-d'Or"},"204":{"code":"22","name":"C\u00f4tes-d'Armor"},"205":{"code":"23","name":"Creuse"},"261":{"code":"79","name":"Deux-S\u00e8vres"},"206":{"code":"24","name":"Dordogne"},"207":{"code":"25","name":"Doubs"},"208":{"code":"26","name":"Dr\u00f4me"},"273":{"code":"91","name":"Essonne"},"209":{"code":"27","name":"Eure"},"210":{"code":"28","name":"Eure-et-Loir"},"211":{"code":"29","name":"Finist\u00e8re"},"212":{"code":"30","name":"Gard"},"214":{"code":"32","name":"Gers"},"215":{"code":"33","name":"Gironde"},"250":{"code":"68","name":"Haut-Rhin"},"202":{"code":"2B","name":"Haute-Corse"},"213":{"code":"31","name":"Haute-Garonne"},"225":{"code":"43","name":"Haute-Loire"},"234":{"code":"52","name":"Haute-Marne"},"252":{"code":"70","name":"Haute-Sa\u00f4ne"},"256":{"code":"74","name":"Haute-Savoie"},"269":{"code":"87","name":"Haute-Vienne"},"186":{"code":"05","name":"Hautes-Alpes"},"247":{"code":"65","name":"Hautes-Pyr\u00e9n\u00e9es"},"274":{"code":"92","name":"Hauts-de-Seine"},"216":{"code":"34","name":"H\u00e9rault"},"217":{"code":"35","name":"Ille-et-Vilaine"},"218":{"code":"36","name":"Indre"},"219":{"code":"37","name":"Indre-et-Loire"},"220":{"code":"38","name":"Is\u00e8re"},"221":{"code":"39","name":"Jura"},"222":{"code":"40","name":"Landes"},"223":{"code":"41","name":"Loir-et-Cher"},"224":{"code":"42","name":"Loire"},"226":{"code":"44","name":"Loire-Atlantique"},"227":{"code":"45","name":"Loiret"},"228":{"code":"46","name":"Lot"},"229":{"code":"47","name":"Lot-et-Garonne"},"230":{"code":"48","name":"Loz\u00e8re"},"231":{"code":"49","name":"Maine-et-Loire"},"232":{"code":"50","name":"Manche"},"233":{"code":"51","name":"Marne"},"235":{"code":"53","name":"Mayenne"},"236":{"code":"54","name":"Meurthe-et-Moselle"},"237":{"code":"55","name":"Meuse"},"1034":{"code":"98","name":"Monaco"},"238":{"code":"56","name":"Morbihan"},"239":{"code":"57","name":"Moselle"},"240":{"code":"58","name":"Ni\u00e8vre"},"241":{"code":"59","name":"Nord"},"242":{"code":"60","name":"Oise"},"243":{"code":"61","name":"Orne"},"1033":{"code":"OM","name":"Outre-Mer"},"257":{"code":"75","name":"Paris"},"244":{"code":"62","name":"Pas-de-Calais"},"245":{"code":"63","name":"Puy-de-D\u00f4me"},"246":{"code":"64","name":"Pyr\u00e9n\u00e9es-Atlantiques"},"248":{"code":"66","name":"Pyr\u00e9n\u00e9es-Orientales"},"251":{"code":"69","name":"Rh\u00f4ne"},"253":{"code":"71","name":"Sa\u00f4ne-et-Loire"},"254":{"code":"72","name":"Sarthe"},"255":{"code":"73","name":"Savoie"},"259":{"code":"77","name":"Seine-et-Marne"},"258":{"code":"76","name":"Seine-Maritime"},"275":{"code":"93","name":"Seine-Saint-Denis"},"262":{"code":"80","name":"Somme"},"263":{"code":"81","name":"Tarn"},"264":{"code":"82","name":"Tarn-et-Garonne"},"272":{"code":"90","name":"Territoire-de-Belfort"},"277":{"code":"95","name":"Val-d'Oise"},"276":{"code":"94","name":"Val-de-Marne"},"265":{"code":"83","name":"Var"},"266":{"code":"84","name":"Vaucluse"},"267":{"code":"85","name":"Vend\u00e9e"},"268":{"code":"86","name":"Vienne"},"270":{"code":"88","name":"Vosges"},"271":{"code":"89","name":"Yonne"},"260":{"code":"78","name":"Yvelines"}}},"IT":{"name":"Italie","regions":{"606":{"code":"AG","name":"Agrigento"},"607":{"code":"AL","name":"Alessandria"},"608":{"code":"AN","name":"Ancona"},"609":{"code":"AO","name":"Aosta"},"611":{"code":"AR","name":"Arezzo"},"612":{"code":"AP","name":"Ascoli-Piceno"},"613":{"code":"AT","name":"Asti"},"614":{"code":"AV","name":"Avellino"},"615":{"code":"BA","name":"Bari"},"616":{"code":"BT","name":"Barletta-Andria-Trani"},"617":{"code":"BL","name":"Belluno"},"618":{"code":"BN","name":"Benevento"},"619":{"code":"BG","name":"Bergamo"},"620":{"code":"BI","name":"Biella"},"621":{"code":"BO","name":"Bologna"},"622":{"code":"BZ","name":"Bolzano"},"623":{"code":"BS","name":"Brescia"},"624":{"code":"BR","name":"Brindisi"},"625":{"code":"CA","name":"Cagliari"},"626":{"code":"CL","name":"Caltanissetta"},"627":{"code":"CB","name":"Campobasso"},"628":{"code":"CI","name":"Carbonia Iglesias"},"629":{"code":"CE","name":"Caserta"},"630":{"code":"CT","name":"Catania"},"631":{"code":"CZ","name":"Catanzaro"},"632":{"code":"CH","name":"Chieti"},"633":{"code":"CO","name":"Como"},"634":{"code":"CS","name":"Cosenza"},"635":{"code":"CR","name":"Cremona"},"636":{"code":"KR","name":"Crotone"},"637":{"code":"CN","name":"Cuneo"},"638":{"code":"EN","name":"Enna"},"639":{"code":"FM","name":"Fermo"},"640":{"code":"FE","name":"Ferrara"},"641":{"code":"FI","name":"Firenze"},"642":{"code":"FG","name":"Foggia"},"643":{"code":"FC","name":"Forli-Cesena"},"644":{"code":"FR","name":"Frosinone"},"645":{"code":"GE","name":"Genova"},"646":{"code":"GO","name":"Gorizia"},"647":{"code":"GR","name":"Grosseto"},"648":{"code":"IM","name":"Imperia"},"649":{"code":"IS","name":"Isernia"},"610":{"code":"AQ","name":"L'Aquila"},"650":{"code":"SP","name":"La-Spezia"},"651":{"code":"LT","name":"Latina"},"652":{"code":"LE","name":"Lecce"},"653":{"code":"LC","name":"Lecco"},"654":{"code":"LI","name":"Livorno"},"655":{"code":"LO","name":"Lodi"},"656":{"code":"LU","name":"Lucca"},"657":{"code":"MC","name":"Macerata"},"658":{"code":"MN","name":"Mantova"},"659":{"code":"MS","name":"Massa-Carrara"},"660":{"code":"MT","name":"Matera"},"661":{"code":"VS","name":"Medio Campidano"},"662":{"code":"ME","name":"Messina"},"663":{"code":"MI","name":"Milano"},"664":{"code":"MO","name":"Modena"},"665":{"code":"MB","name":"Monza-Brianza"},"666":{"code":"NA","name":"Napoli"},"667":{"code":"NO","name":"Novara"},"668":{"code":"NU","name":"Nuoro"},"669":{"code":"OG","name":"Ogliastra"},"670":{"code":"OT","name":"Olbia Tempio"},"671":{"code":"OR","name":"Oristano"},"672":{"code":"PD","name":"Padova"},"673":{"code":"PA","name":"Palermo"},"674":{"code":"PR","name":"Parma"},"675":{"code":"PV","name":"Pavia"},"676":{"code":"PG","name":"Perugia"},"677":{"code":"PU","name":"Pesaro-Urbino"},"678":{"code":"PE","name":"Pescara"},"679":{"code":"PC","name":"Piacenza"},"680":{"code":"PI","name":"Pisa"},"681":{"code":"PT","name":"Pistoia"},"682":{"code":"PN","name":"Pordenone"},"683":{"code":"PZ","name":"Potenza"},"684":{"code":"PO","name":"Prato"},"685":{"code":"RG","name":"Ragusa"},"686":{"code":"RA","name":"Ravenna"},"687":{"code":"RC","name":"Reggio-Calabria"},"688":{"code":"RE","name":"Reggio-Emilia"},"689":{"code":"RI","name":"Rieti"},"690":{"code":"RN","name":"Rimini"},"691":{"code":"RM","name":"Roma"},"692":{"code":"RO","name":"Rovigo"},"693":{"code":"SA","name":"Salerno"},"694":{"code":"SS","name":"Sassari"},"695":{"code":"SV","name":"Savona"},"696":{"code":"SI","name":"Siena"},"697":{"code":"SR","name":"Siracusa"},"698":{"code":"SO","name":"Sondrio"},"699":{"code":"TA","name":"Taranto"},"700":{"code":"TE","name":"Teramo"},"701":{"code":"TR","name":"Terni"},"702":{"code":"TO","name":"Torino"},"703":{"code":"TP","name":"Trapani"},"704":{"code":"TN","name":"Trento"},"705":{"code":"TV","name":"Treviso"},"706":{"code":"TS","name":"Trieste"},"707":{"code":"UD","name":"Udine"},"708":{"code":"VA","name":"Varese"},"709":{"code":"VE","name":"Venezia"},"710":{"code":"VB","name":"Verbania"},"711":{"code":"VC","name":"Vercelli"},"712":{"code":"VR","name":"Verona"}
15459,"713":{"code":"VV","name":"Vibo-Valentia"},"714":{"code":"VI","name":"Vicenza"},"715":{"code":"VT","name":"Viterbo"}}},"LU":{"name":"Luxembourg"},"PT":{"name":"Portugal","regions":{"908":{"code":"PT-01","name":"Aveiro"},"909":{"code":"PT-02","name":"Beja"},"910":{"code":"PT-03","name":"Braga"},"911":{"code":"PT-04","name":"Bragan\u00e7a"},"912":{"code":"PT-05","name":"Castelo Branco"},"913":{"code":"PT-06","name":"Coimbra"},"914":{"code":"PT-07","name":"\u00c9vora"},"915":{"code":"PT-08","name":"Faro"},"916":{"code":"PT-09","name":"Guarda"},"917":{"code":"PT-10","name":"Leiria"},"918":{"code":"PT-11","name":"Lisboa"},"919":{"code":"PT-12","name":"Portalegre"},"920":{"code":"PT-13","name":"Porto"},"927":{"code":"PT-30","name":"Regi\u00e3o Aut\u00f3noma da Madeira"},"926":{"code":"PT-20","name":"Regi\u00e3o Aut\u00f3noma dos A\u00e7ores"},"921":{"code":"PT-14","name":"Santar\u00e9m"},"922":{"code":"PT-15","name":"Set\u00fabal"},"923":{"code":"PT-16","name":"Viana do Castelo"},"924":{"code":"PT-17","name":"Vila Real"},"925":{"code":"PT-18","name":"Viseu"}}},"data_id":1791458888},"captcha":[],"instant-purchase":[],"loggedAsCustomer":[],"persistent":[],"review":[],"payments":[],"wishlist":{"items":[]},"alma_section":[],"ammessages":[],"hyva_checkout":[],"cartsguru-tracker":[],"credit":[],"recently_viewed_product":[],"recently_compared_product":[],"product_data_storage":[],"paypal-billing-agreement":[],"paypal-buyer-country":[]}</script>
15459
15460<div x-data="amMessage()" x-bind="eventListeners"></div>
15461
15462<script>
15463    function amMessage() {
15464        let lastProcessedDataId = null;
15465        const processedMessageHashes = new Set();
15466        let debounceTimer;
15467
15468        return {
15469            init() {
15470                this.processStoredMessages();
15471
15472                window.addEventListener('beforeunload', () => {
15473                    processedMessageHashes.clear();
15474                    lastProcessedDataId = null;
15475                });
15476            },
15477
15478            eventListeners: {
15479                ['@private-content-loaded.window'](event) {
15480                    const { ammessages } = event.detail.data;
15481
15482                    clearTimeout(debounceTimer);
15483                    debounceTimer = setTimeout(() => {
15484                        if (ammessages?.data_id && ammessages.data_id === lastProcessedDataId) {
15485                            return;
15486                        }
15487
15488                        lastProcessedDataId = ammessages?.data_id;
15489
15490                        // Checking hash message
15491                        if (ammessages?.messages) {
15492                            const messageHash = JSON.stringify(ammessages.messages);
15493                            if (processedMessageHashes.has(messageHash)) {
15494                                return;
15495                            }
15496                            processedMessageHashes.add(messageHash);
15497                        }
15498
15499                        const isCartPage = document.body.classList.contains('checkout-cart-index');
15500                        const isCheckoutPage = document.body.classList.contains('hyva_checkout-index-index');
15501                        const onePageSuccessPage = document.body.classList.contains('hyva_checkout_onepage_success');
15502
15503                        if (!isCartPage && !isCheckoutPage && !onePageSuccessPage && ammessages?.messages) {
15504                            this.processMessages(ammessages.messages);
15505                        }
15506                    }, 500);
15507                },
15508                ['@am-promo:initialized.window']() {
15509                    this.processStoredMessages();
15510                },
15511                ['@am-promo-products-recollect.window']() {
15512                    this.processStoredMessages();
15513                }
15514            },
15515
15516            processStoredMessages() {
15517                try {
15518                    const messages = JSON.parse(localStorage.getItem('amFreeGiftCartMessages'));
15519                    if (messages?.length) {
15520                        messages.forEach(message => dispatchMessages([message], 5000));
15521                        localStorage.removeItem('amFreeGiftCartMessages');
15522                    }
15523                } catch (e) {
15524                    console.error('Error processing stored messages:', e);
15525                }
15526            },
15527
15528            processMessages(messages) {
15529                if (messages?.notice) {
15530                    this.handleNoticeMessage(messages.notice);
15531                }
15532            },
15533
15534            handleNoticeMessage(notice) {
15535                if (!notice) return;
15536                dispatchMessages([{ type: notice.type, text: notice.text }]);
15537            }
15538        }
15539    }
15540</script>
15540
15541</div></div><div class="contents">
15542    <footer>
15543        <div>
15544                        <style>.cmsb319-mx-auto {
15545margin-left: auto;
15546margin-right: auto
15547}
15548.cmsb319-mb-10 {
15549margin-bottom: 2.5rem
15550}
15551.cmsb319-mb-2 {
15552margin-bottom: 0.5rem
15553}
15554.cmsb319-mb-3 {
15555margin-bottom: 0.75rem
15556}
15557.cmsb319-mb-4 {
15558margin-bottom: 1rem
15559}
15560.cmsb319-mb-5 {
15561margin-bottom: 1.25rem
15562}
15563.cmsb319-mb-6 {
15564margin-bottom: 1.5rem
15565}
15566.cmsb319-block {
15567display: block
15568}
15569.cmsb319-flex {
15570display: flex
15571}
15572.cmsb319-grid {
15573display: grid
15574}
15575.cmsb319-h-10 {
15576height: 2.5rem
15577}
15578.cmsb319-h-4 {
15579height: 1rem
15580}
15581.cmsb319-h-\[24px\] {
15582height: 24px
15583}
15584.cmsb319-h-\[26px\] {
15585height: 26px
15586}
15587.cmsb319-h-\[40px\] {
15588height: 40px
15589}
15590.cmsb319-w-10 {
15591width: 2.5rem
15592}
15593.cmsb319-w-4 {
15594width: 1rem
15595}
15596.cmsb319-w-\[100px\] {
15597width: 100px
15598}
15599.cmsb319-w-\[36px\] {
15600width: 36px
15601}
15602.cmsb319-w-auto {
15603width: auto
15604}
15605.cmsb319-w-full {
15606width: 100%
15607}
15608.cmsb319-max-w-sm {
15609max-width: 24rem
15610}
15611.cmsb319-grid-cols-1 {
15612grid-template-columns: repeat(1, minmax(0, 1fr))
15613}
15614.cmsb319-flex-col {
15615flex-direction: column
15616}
15617.cmsb319-flex-wrap {
15618flex-wrap: wrap
15619}
15620.cmsb319-items-center {
15621align-items: center
15622}
15623.cmsb319-items-baseline {
15624align-items: baseline
15625}
15626.cmsb319-justify-center {
15627justify-content: center
15628}
15629.cmsb319-gap-1\.5 {
15630gap: 0.375rem
15631}
15632.cmsb319-gap-12 {
15633gap: 3rem
15634}
15635.cmsb319-gap-2 {
15636gap: 0.5rem
15637}
15638.cmsb319-gap-3 {
15639gap: 0.75rem
15640}
15641.cmsb319-gap-5 {
15642gap: 1.25rem
15643}
15644.cmsb319-space-y-2 > :not([hidden]) ~ :not([hidden]) {
15645--tw-space-y-reverse: 0;
15646margin-top: calc(0.5rem * calc(1 - var(--tw-space-y-reverse)));
15647margin-bottom: calc(0.5rem * var(--tw-space-y-reverse))
15648}
15649.cmsb319-rounded-lg {
15650border-radius: 0.5rem
15651}
15652.cmsb319-rounded-md {
15653border-radius: 0.375rem
15654}
15655.cmsb319-border {
15656border-width: 1px
15657}
15658.cmsb319-border-t {
15659border-top-width: 1px
15660}
15661.cmsb319-border-zinc-200 {
15662--tw-border-opacity: 1;
15663border-color: rgb(228 228 231 / var(--tw-border-opacity))
15664}
15665.cmsb319-bg-white {
15666--tw-bg-opacity: 1;
15667background-color: rgb(255 255 255 / var(--tw-bg-opacity))
15668}
15669.cmsb319-bg-zinc-100 {
15670--tw-bg-opacity: 1;
15671background-color: rgb(244 244 245 / var(--tw-bg-opacity))
15672}
15673.cmsb319-px-6 {
15674padding-left: 1.5rem;
15675padding-right: 1.5rem
15676}
15677.cmsb319-py-12 {
15678padding-top: 3rem;
15679padding-bottom: 3rem
15680}
15681.cmsb319-pt-6 {
15682padding-top: 1.5rem
15683}
15684.cmsb319-text-center {
15685text-align: center
15686}
15687.cmsb319-text-sm {
15688font-size: 0.875rem;
15689line-height: 1.25rem
15690}
15691.cmsb319-text-xs {
15692font-size: 0.75rem;
15693line-height: 1rem
15694}
15695.cmsb319-font-semibold {
15696font-weight: 600
15697}
15698.cmsb319-uppercase {
15699text-transform: uppercase
15700}
15701.cmsb319-leading-relaxed {
15702line-height: 1.625
15703}
15704.cmsb319-tracking-wider {
15705letter-spacing: 0.05em
15706}
15707.cmsb319-text-zinc-500 {
15708--tw-text-opacity: 1;
15709color: rgb(113 113 122 / var(--tw-text-opacity))
15710}
15711.cmsb319-text-zinc-600 {
15712--tw-text-opacity: 1;
15713color: rgb(82 82 91 / var(--tw-text-opacity))
15714}
15715.cmsb319-text-zinc-700 {
15716--tw-text-opacity: 1;
15717color: rgb(63 63 70 / var(--tw-text-opacity))
15718}
15719.cmsb319-text-zinc-900 {
15720--tw-text-opacity: 1;
15721color: rgb(24 24 27 / var(--tw-text-opacity))
15722}
15723.cmsb319-shadow-sm {
15724--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05);
15725--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);
15726box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
15727}
15728.cmsb319-transition {
15729transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
15730transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
15731transition-duration: 150ms
15732}
15733.cmsb319-transition-all {
15734transition-property: all;
15735transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
15736transition-duration: 150ms
15737}
15738.cmsb319-duration-300 {
15739transition-duration: 300ms
15740}
15741.cmsb319-hover\:scale-110:hover {
15742--tw-scale-x: 1.1;
15743--tw-scale-y: 1.1;
15744transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
15745}
15746.cmsb319-hover\:text-white:hover {
15747--tw-text-opacity: 1;
15748color: rgb(255 255 255 / var(--tw-text-opacity))
15749}
15750@media (min-width: 768px) {
15751.cmsb319-md\:order-1 {
15752order: 1
15753}
15754.cmsb319-md\:grid-cols-3 {
15755grid-template-columns: repeat(3, minmax(0, 1fr))
15756}
15757.cmsb319-md\:flex-row-reverse {
15758flex-direction: row-reverse
15759}
15760.cmsb319-md\:justify-between {
15761justify-content: space-between
15762}
15763.cmsb319-md\:gap-7 {
15764gap: 1.75rem
15765}
15766}
15767@media (min-width: 1024px) {
15768.cmsb319-lg\:pb-6 {
15769padding-bottom: 1.5rem
15770}
15771.cmsb319-lg\:pt-12 {
15772padding-top: 3rem
15773}
15774.cmsb319-lg\:\[grid-template-columns\:2fr_1fr_1fr_1fr\] {
15775grid-template-columns: 2fr 1fr 1fr 1fr
15776}
15777}</style>
15778<!-- Contenu principal du footer -->
15779  <div class="content-wrapper cmsb319-mx-auto cmsb319-mb-4 ">
15780  <section class=" cmsb319-bg-white cmsb319-w-full cmsb319-rounded-lg cmsb319-shadow-sm cmsb319-border cmsb319-border-zinc-200 ">
15781      <div class="cmsb319-px-6 cmsb319-lg:pt-12 cmsb319-lg:pb-6 cmsb319-py-12">
15782          <!-- Grille principale -->
15783          <div class="cmsb319-grid cmsb319-grid-cols-1 cmsb319-md:grid-cols-3 cmsb319-lg:[grid-template-columns:2fr_1fr_1fr_1fr] cmsb319-gap-12 cmsb319-mb-10 cmsb319-w-full">
15784
15785              <!-- Bloc marque -->
15786              <div class="cmsb319-w-full">
15787                  <div class="cmsb319-mb-5 cmsb319-flex cmsb319-items-baseline cmsb319-gap-1.5 ">
15788                      <picture class="cmsb319-h-[40px] cmsb319-w-auto"><source type="image/webp" srcset="https://www.esprit-ktm.com/media/logo/stores/9/ESPRIT_KTM.webp"><img src="https://www.esprit-ktm.com/media/logo/stores/9/ESPRIT_KTM.png" alt="ESPRIT-KTM" class="cmsb319-h-[40px] cmsb319-w-auto" width="126" height="28" loading="lazy" /></picture>
15789                  </div>
15790                  <p class="cmsb319-text-sm cmsb319-text-zinc-700 cmsb319-leading-relaxed cmsb319-mb-4 cmsb319-max-w-sm ">
15791                      ESPRIT-KTM propose des pièces d'origine pour toute la gamme KTM, des modèles classiques aux plus
15792                      récents.
15793                      Retrouvez facilement vues éclatées, accessoires et vêtements officiels pour entretenir et équiper
15794                      votre moto.
15795                  </p>
15796
15797                  <div class="cmsb319-flex cmsb319-gap-3 ">
15798                      <a href="https://www.facebook.com/espritktm" target="_blank" rel="noopener noreferrer"
15799                          class="cmsb319-flex cmsb319-items-center cmsb319-justify-center cmsb319-w-10 cmsb319-h-10 cmsb319-rounded-md cmsb319-bg-zinc-100 cmsb319-border cmsb319-border-zinc-200 cmsb319-transition-all
15800  cmsb319-duration-300 hover:bg-primary-600 hover:border-primary-600 cmsb319-hover:scale-110">
15801                          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" class="cmsb319-w-4 cmsb319-h-4 cmsb319-text-zinc-700 cmsb319-hover:text-white" viewBox="0 0 16 16" fill="none" role="img">
15802              <path d="M15.0133 8.00026C15.0133 11.7882 12.2062 14.9198 8.55963 15.428C8.21867 15.4753 7.86982 15.5 7.51572 15.5C7.10699 15.5 6.70561 15.4674 6.31473 15.4044C2.74433 14.8294 0.0176697 11.7331 0.0176697 8.00026C0.0176697 3.85809 3.37477 0.5 7.5152 0.5C11.6556 0.5 15.0133 3.85809 15.0133 8.00026Z" fill="#1877F2"/>
15803              <path d="M8.55964 6.52197V8.15582H10.5802L10.2603 10.3567H8.55964V15.4275C8.21868 15.4748 7.86983 15.4995 7.51574 15.4995C7.107 15.4995 6.70562 15.4669 6.31474 15.4038V10.3567H4.45126V8.15582H6.31474V6.15673C6.31474 4.9165 7.31977 3.91064 8.56017 3.91064V3.9117C8.56385 3.9117 8.567 3.91064 8.57068 3.91064H10.5807V5.81409H9.26731C8.87697 5.81409 8.55964 6.1315 8.55964 6.52197Z" fill="white"/>
15804            </svg>
15805
15806                      </a>
15807                      <a href="https://www.instagram.com/esprit.ktm" target="_blank" rel="noopener noreferrer"
15808                          class="cmsb319-flex cmsb319-items-center cmsb319-justify-center cmsb319-w-10 cmsb319-h-10 cmsb319-rounded-md cmsb319-bg-zinc-100 cmsb319-border cmsb319-border-zinc-200 cmsb319-transition-all
15809  cmsb319-duration-300 hover:bg-primary-600 hover:border-primary-600 cmsb319-hover:scale-110 ">
15810                          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" class="cmsb319-w-4 cmsb319-h-4 cmsb319-text-zinc-700 cmsb319-hover:text-white" viewBox="0 0 15 16" fill="none" role="img">
15811              <path d="M7.52368 0.5H7.48954C3.35805 0.5 0.00881958 3.85022 0.00881958 7.98292V8.01708C0.00881958 12.1498 3.35805 15.5 7.48954 15.5H7.52368C11.6552 15.5 15.0044 12.1498 15.0044 8.01708V7.98292C15.0044 3.85022 11.6552 0.5 7.52368 0.5Z" fill="url(#paint0_linear_186_603)"/>
15812              <path d="M9.8269 3.55176H5.18685C3.90495 3.55176 2.86209 4.59492 2.86209 5.8772V10.1234C2.86209 11.4057 3.90495 12.4489 5.
1581218685 12.4489H9.8269C11.1088 12.4489 12.1517 11.4057 12.1517 10.1234V5.8772C12.1517 4.59492 11.1088 3.55176 9.8269 3.55176ZM3.68219 5.8772C3.68219 5.0474 4.35729 4.3721 5.18685 4.3721H9.8269C10.6565 4.3721 11.3316 5.0474 11.3316 5.8772V10.1234C11.3316 10.9532 10.6565 11.6285 9.8269 11.6285H5.18685C4.35729 11.6285 3.68219 10.9532 3.68219 10.1234V5.8772Z" fill="white"/>
15813              <path d="M7.5069 10.1628C8.69896 10.1628 9.66931 9.19266 9.66931 7.99972C9.66931 6.80679 8.69949 5.83667 7.5069 5.83667C6.31431 5.83667 5.34448 6.80679 5.34448 7.99972C5.34448 9.19266 6.31431 10.1628 7.5069 10.1628ZM7.5069 6.65754C8.24714 6.65754 8.84921 7.25979 8.84921 8.00025C8.84921 8.74071 8.24714 9.34296 7.5069 9.34296C6.76666 9.34296 6.16458 8.74071 6.16458 8.00025C6.16458 7.25979 6.76666 6.65754 7.5069 6.65754Z" fill="white"/>
15814              <path d="M9.86947 6.18612C10.1905 6.18612 10.4521 5.92493 10.4521 5.60331C10.4521 5.28169 10.191 5.02051 9.86947 5.02051C9.54794 5.02051 9.28683 5.28169 9.28683 5.60331C9.28683 5.92493 9.54794 6.18612 9.86947 6.18612Z" fill="white"/>
15815              <defs>
15816                <linearGradient id="paint0_linear_186_603" x1="2.1996" y1="13.3086" x2="12.8167" y2="2.69508" gradientUnits="userSpaceOnUse">
15817                  <stop stop-color="#FAAD4F"/>
15818                  <stop offset="0.35" stop-color="#DD2A7B"/>
15819                  <stop offset="0.62" stop-color="#9537B0"/>
15820                  <stop offset="1" stop-color="#515BD4"/>
15821                </linearGradient>
15822              </defs>
15823            </svg>
15824
15825                      </a>
15826                      <a href="https://www.youtube.com/@Esprit-KTM" target="_blank" rel="noopener noreferrer"
15827                          class="cmsb319-flex cmsb319-items-center cmsb319-justify-center cmsb319-w-10 cmsb319-h-10 cmsb319-rounded-md cmsb319-bg-zinc-100 cmsb319-border cmsb319-border-zinc-200 cmsb319-transition-all
15828  cmsb319-duration-300 hover:bg-primary-600 hover:border-primary-600 cmsb319-hover:scale-110">
15829                          <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" class="cmsb319-w-4 cmsb319-h-4 cmsb319-text-zinc-700 cmsb319-hover:text-white" viewBox="0 0 15 16" fill="none" role="img">
15830              <path d="M15.0088 8C15.0088 3.85786 11.652 0.5 7.51104 0.5C3.37012 0.5 0.0132446 3.85786 0.0132446 8C0.0132446 12.1421 3.37012 15.5 7.51104 15.5C11.652 15.5 15.0088 12.1421 15.0088 8Z" fill="#FF0209"/>
15831              <path d="M10.6938 11.3218C10.4704 11.346 10.2418 11.3502 10.0226 11.3497C8.31292 11.3481 6.60325 11.3466 4.8941 11.3455C4.35617 11.3455 3.7703 11.3281 3.35461 10.9861C2.88623 10.5998 2.78876 9.92993 2.75082 9.32386C2.69814 8.49328 2.69392 7.66007 2.73713 6.82896C2.76083 6.37256 2.80245 5.90509 2.99897 5.49191C3.14017 5.1952 3.37568 4.92853 3.67705 4.78834C4.02741 4.62549 4.39411 4.65448 4.77134 4.65395C5.67439 4.6529 6.57743 4.65237 7.48048 4.65132C8.41935 4.65026 9.35874 4.64974 10.2976 4.64868C10.7412 4.64868 11.2175 4.65764 11.5795 4.9143C12.0468 5.24527 12.1738 5.87505 12.2323 6.44476C12.3403 7.49405 12.3418 8.55442 12.2365 9.60371C12.1927 10.0364 12.12 10.4938 11.835 10.8222C11.5526 11.1479 11.1337 11.2733 10.6943 11.3213L10.6938 11.3218Z" fill="white"/>
15832              <path d="M9.04 8L6.4921 6.52856V9.47144L9.04 8Z" fill="#FF0209"/>
15833            </svg>
15834
15835                      </a>
15836                  </div>
15837              </div>
15838
15839              <!-- Catégories populaires -->
15840              <div class="cmsb319-w-full ">
15841                  <h3 class="cmsb319-font-semibold cmsb319-text-zinc-900 cmsb319-mb-3">Catégories populaires</h3>
15842                  <ul class="cmsb319-space-y-2 cmsb319-text-sm cmsb319-text-zinc-600">
15843                      <li><a href="/pieces-detachees-origines-ktm.html" class="hover:text-primary-600 cmsb319-transition">Pièces d'origine
15844  KTM</a></li>
15845                      <li><a href="/pieces-detachees-origines-ktm/accessoires.html" class="hover:text-primary-600 cmsb319-transition">Accessoires</a>
15846                      </li>
15847                      <li><a href="/vetements-ktm.html" class="hover:text-primary-600 cmsb319-transition">Vêtements</a></li>
15848                      <li><a href="/entretien.html" class="hover:text-primary-600 cmsb319-transition">Entretien</a></li>
15849                  </ul>
15850              </div>
15851
15852              <!-- Informations légales -->
15853              <div class="cmsb319-w-full">
15854                  <h3 class="cmsb319-font-semibold cmsb319-text-zinc-900 cmsb319-mb-3">Informations légales</h3>
15855                  <ul class="cmsb319-space-y-2 cmsb319-text-sm cmsb319-text-zinc-600">
15856                      <li><a href="/conditions-generales-de-vente.html" class="hover:text-primary-600 cmsb319-transition">Conditions
15857                              générales de vente</a></li>
15858                      <li><a href="/politique-de-confidentialite.html"
15859                              class="hover:text-primary-600 cmsb319-transition">Politique de confidentialité</a></li>
15860                      <li><a href="/politique-de-livraison.html" class="hover:text-primary-600 cmsb319-transition">Politique de
15861                              livraison</a></li>
15862                      <li><a href="/politique-de-retractation.html" class="hover:text-primary-600 cmsb319-transition">Politique de
15863                              rétractation</a></li>
15864                      <li><a href="/procedure-retour" class="hover:text-primary-600 cmsb319-transition">Procédure de retour</a></li>
15865                      <li><a href="javascript:Sddan.cmp.displayUI()" class="hover:text-primary-600 cmsb319-transition">Paramétrage des
15866  cookies</a></li>
15867                      <li><a href="/mentions-legales.html" class="hover:text-primary-600 cmsb319-transition">Mentions légales</a></li>
15868                  </ul>
15869              </div>
15870
15871              <!-- Service client, Paiement & Livraison -->
15872              <div class="cmsb319-w-full">
15873                  <div class="cmsb319-mb-6">
15874                      <h3 class="cmsb319-font-semibold cmsb319-text-zinc-900 cmsb319-mb-3">Service client</h3>
15875                      <ul class="cmsb319-space-y-2 cmsb319-text-sm cmsb319-text-zinc-600">
15876                          <li><a href="/faq" class="hover:text-primary-600 cmsb319-transition">FAQ</a></li>
15877                          <li>
15878                              <a href="/contact" class="cmsb319-flex cmsb319-items-center cmsb319-gap-2 hover:text-primary-600 cmsb319-transition ">
15879                                  
15880                                  <span>Formulaire de contact</span>
15881                              </a>
15882                          </li>
15883                          <li class="cmsb319-flex cmsb319-items-center cmsb319-gap-2">
15884                              
15885                              <a href="tel:+33465030764" class="hover:text-primary-600 cmsb319-transition">+33 4 65 03 07 64</a>
15886                          </li>
15887                      </ul>
15888                  </div>
15889
15890                  <div class="cmsb319-mb-6">
15891                      <p class="cmsb319-text-xs cmsb319-font-semibold cmsb319-text-zinc-900 cmsb319-uppercase cmsb319-tracking-wider cmsb319-mb-2 ">Modes de paiement</p>
15892                      <div class="cmsb319-flex cmsb319-gap-2 cmsb319-flex-wrap">
15893                          <svg xmlns="http://www.w3.org/2000/svg" width="42" height="28" class="cmsb319-h-[24px] cmsb319-w-[36px]" style="box-shadow: 0px 0px 1px 0px rgba(0 0 0);" viewBox="0 0 42 28" fill="none" role="img">
15894            <g clip-path="url(#clip0_201_1748)">
15895              <path d="M0 3.5C0 1.567 1.567 0 3.5 0H38.5C40.433 0 42 1.567 42 3.5V24.5C42 26.433 40.433 28 38.5 28H3.5C1.567 28 0 26.433 0 24.5V3.5Z" fill="white"/>
15896              <path d="M16.7194 8.93559L12.4629 19.0912H9.68579L7.59114 10.9866C7.46397 10.4874 7.3534 10.3045 6.96664 10.0942C6.3352 9.7516 5.29245 9.43021 4.375 9.23074L4.43731 8.93559H8.90754C9.47734 8.93559 9.98957 9.31489 10.1189 9.97106L11.2252 15.8476L13.9592 8.93542H16.7194V8.93559ZM27.6004 15.7755C27.6115 13.0951 23.894 12.9474 23.9196 11.7501C23.9275 11.3857 24.2745 10.9982 25.034 10.8993C25.4104 10.8501 26.4476 10.8125 27.6239 11.3538L28.0853 9.20026C27.4532 8.97081 26.6399 8.75 25.628 8.75C23.0313 8.75 21.2038 10.1304 21.1884 12.107C21.1716 13.569 22.4928 14.3849 23.4881 14.8707C24.5121 15.3682 24.8557 15.6879 24.8518 16.1329C24.8445 16.8141 24.0351 17.1149 23.2787 17.1267C21.9582 17.1471 21.192 16.7694 20.5812 16.4855L20.105 18.7103C20.7189 18.9919 21.8519 19.2376 23.0265 19.25C25.7865 19.25 27.5919 17.8867 27.6004 15.7755ZM34.4573 19.0912H36.8871L34.7662 8.93559H32.5236C32.0193 8.93559 31.5939 9.22921 31.4056 9.68065L27.4634 19.0912H30.222L30.7696 17.5743H34.1402L34.4573 19.0912ZM31.526 15.4928L32.9088 11.6798L33.7047 15.4928H31.526ZM20.473 8.93559L18.3006 19.0912H15.6736L17.8468 8.93559H20.473Z" fill="#1434CB"/>
15897            </g>
15898            <defs>
15899              <clipPath id="clip0_201_1748">
15900                <rect width="42" height="28" fill="white"/>
15901              </clipPath>
15902            </defs>
15903          </svg>
15904
15905                          <svg xmlns="http://www.w3.org/2000/svg" width="42" height="28" class="cmsb319-h-[24px] cmsb319-w-[36px]" style="box-shadow: 0px 0px 1px 0px rgba(0 0 0);" viewBox="0 0 42 28" fill="none" role="img">
15906            <g clip-path="url(#clip0_201_1760)">
15907              <path d="M0 3.5C0 1.567 1.567 0 3.5 0H38.5C40.433 0 42 1.567 42 3.5V24.5C42 26.433 40.433 28 38.5 28H3.5C1.567 28 0 26.433 0 24.5V3.5Z" fill="white"/>
15908              <path d="M24.8286 7.12158H17.1724V20.881H24.8286V7.12158Z" fill="#FF5F00"/>
15909              <path d="M17.6585 14C17.6585 11.2097 18.9661 8.72326 21.0005 7.12153C19.5106 5.95 17.6342 5.25 15.5925 5.25C10.7606 5.25 6.84253 9.16806 6.84253 14C6.84253 18.8319 10.7606 22.75 15.5925 22.75C17.6342 22.75 19.5106 22.05 21.0005 20.8785C18.9661 19.2767 17.6585 16.7903 17.6585 14Z" fill="#EB001B"/>
15910              <path d="M35.156 14C35.156 18.8319 31.238 22.75 26.406 22.75C24.3644 22.75 22.488 22.05 20.998 20.8785C23.0324 19.2767 24.3401 16.7903 24.3401 14C24.3401 11.2097 23.0324 8.72326 20.998 7.12153C22.4855 5.95 24.3644 5.25 26.406 5.25C31.238 5.25 35.156 9.16806 35.156 14Z" fill="#F79E1B"/>
15911            </g>
15912            <defs>
15913              <clipPath id="clip0_201_1760">
15914                <rect width="42" height="28" fill="white"/>
15915              </clipPath>
15916            </defs>
15917          </svg>
15918
15919                          <svg xmlns="http://www.w3.org/2000/svg" width="42" height="28" class="cmsb319-h-[24px] cmsb319-w-[36px]" style="box-shadow: 0px 0px 1px 0px rgba(0 0 0);" viewBox="0 0 42 28" fill="none" role="img">
15920            <g clip-path="url(#clip0_201_1754)">
15921              <path d="M0 4.5C0 2.567 1.567 1 3.5 1H38.5C40.433 1 42 2.567 42 4.5V25.5C42 27.433 40.433 29 38.5 29H3.5C1.567 29 0 27.433 0 25.5V4.5Z" fill="white"/>
15922              <path d="M26.1267 9.275C26.1267 11.4427 24.1263 14 21.0996 14H18.1841L18.041 14.903L17.3608 19.25H13.7375L15.9172 5.25H21.7875C23.7642 5.25 25.3194 6.35172 25.8922 7.88278C26.0574 8.32793 26.137 8.80029 26.1267 9.275Z" fill="#002991"/>
15923              <path d="M28.2151 13.2999C28.0217 14.4749 27.4164 15.5427 26.5077 16.3123
15923C25.5989 17.0818 24.446 17.5028 23.2552 17.4999H21.2306L20.3879 22.7499H16.7841L17.3608 19.2499L18.0413 14.9029L18.1841 13.9999H21.0996C24.1224 13.9999 26.1267 11.4426 26.1267 9.2749C27.6142 10.0426 28.4814 11.5938 28.2151 13.2999Z" fill="#60CDFF"/>
15924              <path d="M26.1267 9.275C25.5029 8.94872 24.7466 8.75 23.9233 8.75H19.0077L18.1841 14H21.0996C24.1224 14 26.1267 11.4427 26.1267 9.275Z" fill="#008CFF"/>
15925            </g>
15926            <defs>
15927              <clipPath id="clip0_201_1754">
15928                <rect width="42" height="28" fill="white"/>
15929              </clipPath>
15930            </defs>
15931          </svg>
15932
15933                          <svg xmlns="http://www.w3.org/2000/svg" width="42" height="28" class="cmsb319-h-[24px] cmsb319-w-[36px]" style="box-shadow: 0px 0px 1px 0px rgba(0 0 0);" viewBox="0 0 42 28" fill="none" role="img">
15934            <g clip-path="url(#clip0_201_1766)">
15935              <path d="M0 3.5C0 1.567 1.567 0 3.5 0H38.5C40.433 0 42 1.567 42 3.5V24.5C42 26.433 40.433 28 38.5 28H3.5C1.567 28 0 26.433 0 24.5V3.5Z" fill="white"/>
15936              <path d="M10.7333 6.37558C12.9727 5.94102 15.1914 6.03508 17.3134 6.94785C20.0581 8.12854 21.4675 10.2989 21.8261 13.2115C21.8392 13.3174 21.8345 13.427 21.8261 13.5338C21.8212 13.5956 21.7921 13.656 21.7577 13.773C21.4752 13.7915 21.18 13.8268 20.8847 13.8277C18.7296 13.8348 16.574 13.834 14.4188 13.8375C14.2251 13.8379 14.0092 13.7985 13.8436 13.8697C13.7074 13.9287 13.5745 14.115 13.5487 14.2633C13.5358 14.3432 13.7452 14.5414 13.8632 14.5494C14.378 14.5827 14.8969 14.5666 15.414 14.567C17.3323 14.568 19.2506 14.5679 21.1688 14.5709C21.3592 14.5712 21.5495 14.5895 21.8026 14.6031C21.9073 15.6328 21.6486 16.5837 21.287 17.4889C20.1621 20.3064 17.9203 21.691 15.0399 22.1666C13.1009 22.4866 11.1901 22.3359 9.32314 21.6695C6.39475 20.6245 4.48727 17.9624 4.38368 14.8443C4.31742 12.853 4.6269 10.9843 5.82607 9.3414C7.04555 7.6707 8.74666 6.76111 10.7333 6.37558ZM23.4032 14.5582C25.1046 14.5909 26.8077 14.5699 28.5097 14.5699V14.5748C30.061 14.5748 31.6129 14.5604 33.164 14.5836C33.7628 14.5924 34.3736 14.6273 34.9559 14.7555C36.6194 15.1211 37.8054 16.8856 37.6024 18.6148C37.3886 20.4334 35.9794 21.7752 34.204 21.7945C30.6286 21.8332 27.0528 21.8382 23.4774 21.8775C22.8729 21.8841 22.5984 21.7495 22.6181 21.0523C22.6722 19.1363 22.6677 17.217 22.6298 15.3004C22.6176 14.6803 22.8333 14.5473 23.4032 14.5582ZM23.5448 6.61191C26.7541 6.61424 29.9645 6.61179 33.1737 6.63535C33.7912 6.63976 34.4261 6.67678 35.0214 6.8248C36.6829 7.23782 37.7935 8.92028 37.5741 10.5894C37.3324 12.428 35.9536 13.727 34.162 13.7467C30.5874 13.7863 27.0119 13.7893 23.4374 13.8365C22.8275 13.8445 22.6202 13.6746 22.6347 13.0406C22.678 11.1461 22.6551 9.25028 22.6581 7.35507C22.6585 7.14387 22.6591 6.93217 22.6591 6.66855C22.9975 6.64578 23.2711 6.61182 23.5448 6.61191Z" fill="url(#paint0_linear_201_1766)"/>
15937            </g>
15938            <defs>
15939              <linearGradient id="paint0_linear_201_1766" x1="55.0812" y1="-3.84989" x2="4.59528" y2="23.1611" gradientUnits="userSpaceOnUse">
15940                <stop stop-color="#002052"/>
15941                <stop offset="1" stop-color="#009656"/>
15942              </linearGradient>
15943              <clipPath id="clip0_201_1766">
15944                <rect width="42" height="28" fill="white"/>
15945              </clipPath>
15946            </defs>
15947          </svg>
15948
15949                      </div>
15950                  </div>
15951
15952                  <div>
15953                      <p class=" cmsb319-text-xs cmsb319-font-semibold cmsb319-text-zinc-900 cmsb319-uppercase cmsb319-tracking-wider cmsb319-mb-2">Modes de livraison</p>
15954                      <div class="cmsb319-flex cmsb319-gap-3 cmsb319-flex-wrap">
15955                          <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="126" height="28" viewBox="0 0 126 28" class="cmsb319-h-[26px] cmsb319-w-[100px]" fill="none" role="img">
15956            <rect width="126" height="28" fill="url(#pattern0_201_1833)"/>
15957            <defs>
15958              <pattern id="pattern0_201_1833" patternContentUnits="objectBoundingBox" width="1" height="1">
15959                <use xlink:href="#image0_201_1833" transform="matrix(0.000669792 0 0 0.00301205 -0.0348292 -1.30422)"/>
15960              </pattern>
15961              <image id="image0_201_1833" width="1600" height="1200" preserveAspectRatio="none" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABkAAAASwCAYAAACjAYaXAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAIABJREFUeJzs3Xu0pXV93/H3HhTwQlwoSURrt4kWKPUSuwyjiSFGmhS8RaGpuk3tWgUaTbSJsWvV1abpH2mbtaJRo1FbZCSInCgarRcavGGlJgpW03idgSCeqIkakKIgIgy7f2zEmTNnzpyZOec85/J6rXWAs5/L77P2DP88n/V7vgUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA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AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACOjR+IAAAAPklEQVQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICDwf8Heh3W9SgEPLoAAAAASUVORK5CYII="/>
15962            </defs>
15963          </svg>
15964
15965                          <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="105" height="28" viewBox="0 0 105 28" class="cmsb319-h-[26px] cmsb319-w-[100px]" fill="none" role="img">
15966            <rect width="105" height="28" fill="url(#pattern0_201_1837)"/>
15967            <defs>
15968              <pattern id="pattern0_201_1837" patternContentUnits="objectBoundingBox" width="1" height="1">
15969                <use xlink:href="#image0_201_1837" transform="matrix(0.002 0 0 0.0075188 0 
15969-1.36842)"/>
15970              </pattern>
15971              <image id="image0_201_1837" width="500" height="500" preserveAspectRatio="none" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAfQAAAH0CAMAAAD8CC+4AAAC5VBMVEUAAAA6OjpDQkE+Pj1APz86OjpEQEA7OzsMBgFEQ0JDQkBCQEBDQ0JCQkFDQkFDQ0FDQkFDQ0FDQ0JDQkFBQD9BQEBDQkFDQ0JDQz9CQUFDQkFEQkJBQUAsLCxEQ0FDQkFEQ0JCQUDchATwgx7teSHpdhfsch/qexbreB7veiLwohb4rx/1qB34riDthxrudyHueSHudiHveSLveiLveyLvfCLueSHueCHudyHudiHudSHudCHucyHtcyDtciDtcSDtcCDtbyDvfSLvfiLwfyLwgSHwgiHwgyHwhCHxhSHxhiHxhyHxiCHxiSHxiiHyiyHyjCHyjSDyjiDyjyDykCDzkSDzkiDzkyDzlCDzlSDzliD0liD0lyD0mCD0mSD0miD0myD1nCD1nSD1niD1nyD1oCD1oSD2oiD2oyD2pCD2pSD2piD3qCDtbiD3qSD3qyDtbSD3rCDsbCD4rSD4ryDsayH4sCD5siDsaiH5syH3qR/ueSD5tCH6tiHvdyHtdR/xhiHzkR/yjiDvfSH1nR/xhyDwfyHtbCD0lSD0lx/tbCD0lR/zkSD0nR/5syD6tSH3qB/tayDsch32pCD4sSD3px7zmB/1ox/1niD1nB/tcSDveSD3qSD0mx/yjyD4rx77uSL6tiHxkB/zkiD4sR/4ryD6tiHtbCDtbR/4rh/3qx/2oiD4sCD1nSD7uSL3qSD2piDxhyHyjSD1oB/wfyHtbyDuciDxhiHxiCDlaBzudiD1ox/ylx7udSDwhSD0ox7wfSHufx/veSHudCDwgSHudSHudCHwfyLwfCHudSDudx/6tiH4rx/2oh/0qB3ueCDteB7NcAHvfSBCQUFDQkBDQ0FEQkFDQkFEQkFEQ0JDQ0FDQUFDQ0JDQ0FDQkFEQ0JDQkE3NzdDQkFDQ0JDQkE4ODg/Pz4+PDxEQkJDQ0JDQkJEQ0JEQkJEQ0FEQ0JEQ0JEQ0JEQUFEQ0JEQ0JDQj9EQ0I/Pz+9xHq5AAAA93RSTlMABGgiFgZEEALpUiy7WHCXicvHrSYwob9GPIHXNgbDettIBjY2ECgMIusOXhqLFuuL+f///////////////////////////////////////////////////////////////////////////////////////////////7W1///lXOlYct2hsfvB94vvt93Ly+vl4y7x3UpgdNnDl1T556E2//dq7XD1/fmLoXb5nfmd0aX9mbG7rfPT9wh8RCxmhTKdMmBOx9mj6/PLOrW1tSRyGgREQEx8t52T9aNg1Y9u74UIXNF2DB4Sme2z4eWp+f3PZN3zOv8cQ6DxWAAAFZBJREFUeNrs1jtKA2EUhmHLrCNg5WU5wSSTuWRu/0xmBXYRC0UHhBQuwDKFgmUEd2DhiiwCFi7AYuZ5lvDCOXwnAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/IPJtt/v3j+FGJFDnxdlVYe3Ly1G4uMhW+dFUVZ12F9c6jEC57dplmXrvCirqg5h9zzVZOBO7+/iJM2ydX588CE0T2cTXQZsevMSreIkTY+nXlZ1CE3bvh6kGazt42IZRas4+X3wdR1C0266a0N+mL77q/l8sYxWcfLnwbebrjPkBznZZ7Mf9sxlpWEgjMLvIrrwtul137S29n61hULBiohQIiUlQbQoFF1aUHeKRNCCIoIrXRTpwoXFgtonci4yJENiXGbCfx5hPs7Pd5hqDUGvm6pODzymfrm8AK/kqSxdlSsYeo1UnVJvNk1Vb8ln9yDynlL2UrlSoVXH1JnLUerbhLosyyDyHlL2YrGEqK8R6jYuR6nvgMh7RNnz+QKGbjzwjYaFy8mYensCIi96ps/ZHIJeMFW9bjXWGfX23RK8m8AZHmWyWUwdQafUq1ULl9tiLkegK7cg8sLma/SUTmcyCLrxwHNjnXM5TF1RlP4NiLyImXt9SSZT6QylXmAuZzfWmcth6p3O+SI8oXjKfphYTWLqGDo78JzLWYx1UnVMXT0BkRcrB714IoGos6oT6jZjfdPiwHcQdW0yhJcUJtO3WGwlnmBVZy7nNNZbxgOvqtrgAURejJzuRaMYOqWeSlm5nNNYpwde07RrEHkhlP1YwtBp1dmBtxvr69xY5w68trsPIu9+ZX+PSJJEqm468DmHsc67XJtWHVPvgsi7Od+f88FgMIKgE+rM5dKcy/1zrNOqI+pdEHnX5qLnDwQQ9Ihkd+C5jxfHsa6qpOooHyDybsx07PMj6AFSdYlzOYexvmE71rVf6vrgEUTefcoe8vkIdf7Am6puOdYdXY5Q10Hk3ZWZUTgcDmHofkPV/xrrVcex3uYOvK7rfTA6N2V2/MPOuf42VcZx/He6zrZrt17WsnYM6PCCNxA0yh2mr/wT+D9MNJEMEJFAECThagKSoJho5IWXqNFoFMWAIEI2tm7dWrp2G73Qdm1/e21Hu3Oe0/M7p+ecUXsW9nm5rH3xfPI8+X37fM8pSy9bFw54dqvTYZ1uSdKzXEW6EU5433IGMzze7N3DbPVXVc5ydEuSOOD7yxy7AAaghAyz8JizZv0GYaurCeu7NIV1/mg3snQuMBPusULDaPWbJuxgKJ7dTcxyZFhXbkkSW50f4gwtPZzBMsFeaAzWRBTL5EsGi21X+VnuDdlZTrElSYf1m7cAjC/dhRVyJmgIo1ghO2i03+Su0WGdnuV2qbp4OXkKYBFIb8N5cj5oABGcpzgLxmLdb8Qs96bixYtyWL/02R1YFNLjyNMJjx7OhjzjYDR+//MV2VlOe0vyq3UAi0L6FAqMcPDICaBAAYzHlT1kWNfRkjzGl+ANLz3Q4Cw3gQJZaDrPUPGNuHjR3JI8TsS0W0aV7kMGCzxy2lAgCk1nw/qnifgmnuV0tCTPrV0jVX7jhlGlx0Yae/xOoYADms62rS9dsRLxTTjg9bQkv5Xu6efXft5vWOkwjDwJaAAO5GmHprN929at15+i4hsR1lW2JM9KY5r1hY/6+w0s3ZzBKvkYNABvEasMWY0gvWx9y1+3ifhWlq6nJXnijDSmXThW/jXWyNLBXsCHuBsUowPV0OawgAGkb5+TvuX7f1cT8U1PS/KANKa9+MXb7xhdOsQ6PNFk1wwHDcLSnS/aUm1gBLZXrW+++gcV37S2JD+WxrTVX16av3i5sXTLZgh2zEl/aH3zbiK+/XpQS0vy/GmQcOqkcLO+JN0o0qtbvWydjG8fqG5JXj5MxLR3hZbkknTDSJ/b6pUDvgwZ335Q15IkY9o5UUtySbpRpDMH/OZNm67/TcW3+i3Jsz8TMe04e7O+mKW32gdnOhIdpvaAwqesUwMTkUQiMtHr5cDQ7NzBH/AV6xvJ+Fbn4uXQfiKmHZW0JPVI94bHU/F0sphMuzvvtZnll9xucjqWZ5LJ9FgqFPZqk25tZYAaelzuHPIkU5EpkDIbGYoiT9bjClhBgKO+n8VSCncvG/IEM7ZMwdN5r90s/vLBVcuG4gWbLR13DCcGYiCBWopoMh1PjU+0ENJ3Mlu9Yv0aGd8UW5KHifdFEy1JzdJLoQyKyK00WYAg4LShiLTLp0H6E8ggWiXrRBwldLVzIMLXmcNa0t2CuRlk4EAE19PxII215BPVT6/odRZQzEinH+QZuJ9EEQWXnZC+g93qZesb3yfi2959CmH9dG1MO3OCakneBC1Y291IUHRNgxiOEcOqGVy4dHseSdJhK/BM3s8hRXZ8up50sykVRZT5tAXA50wihbsEJFx4jFwKf4306gEvbPW5GjwZ336UDes10k+dJVqSWqWX3ChD0g4sgTzK0O
15971VboPRwFlnouzhvEOUwKUqfNnlyqEAmshLlyHUDwRNjKIODXbM+fquz1l97mY5vcmH9oiim/SPXktQgfYVLYT38INA6jvLk7nILkW5CrC/da0Od0qO4EJxQS8yJ8mQTjPS+nZJZrvLEy3O/UPGNbknuZ2La4ct0S1KTdLMHFfBT/0jjsOiXPpBTIX0yiHqlF1En9HXgbBwVScUY6dVZjjngq0+8UPFt/z5qljsCVaynzyu0JFVLbymgEn7yH2nyZr3SJzOoQroTmyCdqnB601gHzzQvnT3ghVmu8kgjFd+++ZqY5T5ZB3M8eVS2JalFujmI6qTPFrAucYtO6XdRhXRvrmnSsQsYpjJYF88kL71POsvxjzRe+4mKb0RY//TiHbh9QPFdkm+pld7qRnXSY3FVa8Ppks5l1EgPYfOko49JEMtRGfYy//U56URY3zj/9DIV397bR4T1D48cqvd6CpXSQ6hS+jCqwqVLuh9FjI2GQsNDwRrpVhuy2FLO8fud7pFGSqdnuQeoilW89D4irDNPL39Hxjft75JUK30AVUofxFpy6Xw+I/1rSY90F5l4LG3Liox0HzJk2qo+uZ7u4P8hPQPztGMtuQK5FL6H0tmtLj7g+UcaD5LxTeO7JFVL5yRZ033XPxWztpp7ZkaTjPTWAorIjvZOVrykUEye0yHdwTrnQGAykualh1Gg2CKKzA5t0secpkCLZQVnHgiN/Nfe3fy2cZxxHH9WIs1XUS+UJVuW5LhunLSXxEHRWwsEyb9jwDAQwGgAv/QlTt1c0kOBJGgPvaTXBo3bBHWLJrETGwicxNar9S6RNF/ElUg9PJc27d2ZnX2ZSWRCkn+fo20I0Hy9yxkOOcuy+uhY3+HYqpU4fNyTMRMw56zPHFmltlLfNMuGOtFfDZrLCcdTfOm3fLtkepakXvRtluUz5LLSQ070HEuywpgfHmTJGplHb7DrEEmspfLj6CvseqC8u2QQPUeu3mMsSG0nyFGo+P1edJwllSI5xtdZknaiBy3W3a80fnGbvC4bnyWpEz15jEXle+SRrnaiW1UWrZAoPsKiBTKPnpL/SFYaSSjTj+Pkkezp047eQ4LeJrvKFgniCz6/9GpKeeF2rW6yaLATPfAGLx9PoSzfThqeJakX/QSLasOkKMwfUV/GBkiW3GTREfPoTfVKVz2QrnSVeXR1PnGURGkWjJDzIuOaIplVYdEO0Zl29MC5nHT+0Ove5dtJ47MkdaKPsGAuQ35Wqa3Cgsmk8m8aLJj/YVd61tJYaDR7dy36OAuWSBSvsyurTj94mrwSNc+U/4xTXVmsq+cPycu3k0ZnSWpGt5bl3zdQoc4uO0OKeyxoThhHX5BGskgK5cW0dmK3ok/Ug29iW+yapIdiNrvqvaToY0Eq2YkeuFhXjhoTl28njc+S/BVFGmfBcxYFOsKCPPkYZMGOcfQKi+r5dIJUfSwZzA3vSnRKBe+sTLNr0OeOHzlPytAZ5VJXFuvS8RRv3XGjm50lqRc9x9JIBFsJ2nbz3yPbMI4+xR72+sx2L8mG2auWP75j/eDojeC5wia7tuihRc//btWGNKqd6CGLdeX8oS/d6IZnSWpFn2eXHaNgFc/NW9ViwaZx9MPsp7E4TqLn2Edzsy/exeij8s3bxzBLP++MWF1drKs3eCG60VmSmtGH2LVOIRaUnQdFlV2DxtFpnf2tr1nKi7qivBLrWvQquyrkqyyN1tkzITd4dS4nRTc9S1Inek16eQoxx67Z6JtByjx6moMs3KUnEmUO0NywuhPdspWVu2KUXQ06266uzOUCF+tydLOzJKOiqwMxRsEs5QVb1c+uunl0ynMQeyCpTOVUQ7GuRE9oTIPm2VXuRNdfrL8mRhc/Jal1lqRGdDu6Jen+pgMssMyjJ7Y40Ig6o1Q1Wt2I3mLBms7//7M+l/ovwuZyQnSjBz8I0c0vYFXJNHrcPDolsqxQb0MbNgfZinchetE8uqf6L8MX61L08LMk1cW6RnSqS69PwSZYkCNfs9/39u5I5poaH1baWecgK12IXmLBdvT7nMt0rhP9jO7Gixy9c6lrL9Y1opfZNa/7v2ORfOXZtWwSXRBbKbO/CjmstS32N1d6+tEnOHoelGVXtR29U11z40WKbnqWpE70BWVvTKEOSyX6Z62bRJfE0yMp9mEXSXB4ZZ395J5+dEqxazN69TpJ58RLXWexLkQ3Pkvya4pUkbsEm458RyJhsytvEl2Rud+/ZbPHEsli6ZVskz1GuxB9UrqM/bTkOeg5p7rOxosc3fQsSZ3oiyzY0P2H4xT1vviYEn04NLoqkd6ss2ieVNbOQI1Fc9bTj/6ABZnI9/43OtGjF+uvODd4IbrxWZJK9IhS1bjeeXzcH3Uv4EPKO6tHo6KrillWRlwRn7JZ0Pv0o6+xYIB8TLJgh86Jl3rUpySV6GZnSepEb7HoOAUq2eyai5FEKVwvKG9B58yjkzWofCwxanvj6NOPXmTBcoIUO55d5jecS11z4+UnbnTjsyQ1otO61GqcAo2G32qTk+pUO8aC0YjorVbEIa9NahuP2uo/8vSj02D4Xc/akree2tHl6uFzOTm64VmSetGnlC+oKoobykDyffIYY1Gfus7ju+HRd5bvk+KoN3r1QYkU1S5Hz7EoHTr94Xvt6J3q+ot1IbrpWZJa0Ys2i5pp8rByzQq1FZZZUE+H7MtzLa4u4rg2HB6defBu2Eyi1ulbXlolmTXHrp0uRC/NsaB+L+wyaljt6A+r6y7WlehGZ0nqRadNluWHSVDYbjBX/N70HoiTIzHi/wVP+Y+Xe+Kh0duG5I3xZJZdQ08u6tRUK3iuXOxCdM+1bI9NkKO0yZIe6kTXnsu1q4vRjZ+4rRU9Y7PHaE+mM1C9ffNN9xW6VGZJdSlGj/ROef+m4OSQLefHQqO3lR/cK9BjMWkAR9w7uT3dU6THJnrq7GpSN6LHmixp9DwZipVlljTinejOpa61WBeimz1xWzc69bOq3ljfajg3sYqbUHYsPzNTabBX2qlms5cVFr3D3hoZW9peGsjWWbQmv3xX8wO57Z6p+RSLKl2JTjn2sBceDkWVvU5Q23mnutZiXYpu/MRtveilGkeoODdbLZvkqJhED1cvOdFD3O9OdGuStczQo+jt6jpzuU51ObrZE7e1o9NRWy86xWqs4bmE8KN3L/o8aUQvF7oTnVpl1rC+6kY3WKwL0X9s/MRtzejUoxmdDi9zpFQvCfK7Fb3eqxM9R12KTuNzHKnaok506VLXWKwL0c2euG0QnY5rRqejzcjmGRK1UrsUPUca0SetrkWnQ0HV1TXqeae61mJdim78xG3t6NRj60WnTI1DNXpJttPclegzpBG9EaPuRafxFIdaKJIb3WQu93MxuvETt/Wj092aXnSKZTnEZoK8dsq7EH3W0oi+1aJuRqfWKIcYKZAbvU1/sS5FN33wg0l0Ks3YHGRE/kJwmQPU+shHK6sVndLHOEDK/bnDeQ5gLxaou9HJyi1zgGqaXOfDL3V1sS5Gf83wwQ9fk4lM3j97Y9siSWmx6ZtmqkD+TkzqRKfkvUqdVamxBAmGZ8usqm9miLoRXRabbbKP2sYqCa6K1SM/JSlHN3ni9qPqvyUzxZVjymDm0xYpEktDLLOz9+MULDM2VA+O7iqtzTdYVJtPT5CHdWhgqM6CuWwuRtSV6IpSbpBl9em1OElutpMbzeWE6MZP3L5Mxobv90/W7Mfvyk2vnChQgNZa/1Cq07s2OdsX0zjDPb20stifpLZ4S2CRLDG+tjHQPzMzO9ZzpBX602ZnZvoHcumMRR6FlsC9LAWrJIkJEp6qLVeM/BTXHjwZiuroYrpEXi86l7rWYl2KbvrE7feS9P1YpVZvK0HR4qVisTRBQLQaaw+FRf5OXQm71NXF+ktudMMnbn/0AlLsGRffdS71qE9JytGNnrj93n8x0nvJC3/7UH+xLkQ3eOL2n/+EYd5rTl3RWawr0XWfuP3273+KMd6DPn9Xby4nRv+Z5hO3//BvjO/e9MmnH74R9SlJNbrGE7ffuYzB3bte/FhnsS5Ed84fCtl4efs/n2Bk97TvboTe4JXoj6qHPnH7dy9iVPe6b+9cDZ/LSdHd4ykCNl7e+Q5Duh98czPsU5JydOf8If+Nl3/9+kcYz33i9q2wxboSPXCx/pdvMJb7h3X9ashcTozeqe67WP/nbQzk/vL8++cC5nJSdPH8IXkud+mvSYzivvPHK4GfkjxFj9155RX/G/zfP3oeI7hPt2ECbvAXPnj8Zs5p4SxJ8Qb/xf8wevt4GyZgLnfrNiU/u+CePyRd6pc+w9Dt722YoMX6jQvy+UPOYv2tl3Fn3//bMK/KN/iIc8H/cQpjdhC2Ya5pnyX5+m8+wIAdlG0YzbMkv/oUWysHaRtG5yzJN7G1csC2Ya5FnT90A1srB3AbJnQu99WdbzFGB3IbJvh4ipvYWjmgktev+n+l8Ra2Vg70NozPXO6l69haOejbMN653Pt4A+7gu3hBXKzfwtbKM7INc/rJDf7CRQzHs+LUm48u9dMv4/uIz5LPb52+9jG2VgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOCZ8X9tJI8aaeP/TAAAAABJRU5ErkJggg=="/>
15972            </defs>
15973          </svg>
15974
15975                      </div>
15976                  </div>
15977              </div>
15978          </div>
15979
15980          <!-- Ligne du bas avec switchers -->
15981          <div class="cmsb319-border-t cmsb319-border-zinc-200 cmsb319-pt-6">
15982              <div class="content-wrapper cmsb319-mx-auto cmsb319-flex cmsb319-w-full cmsb319-flex-col cmsb319-items-center cmsb319-gap-5 cmsb319-md:flex-row-reverse cmsb319-md:justify-between cmsb319-md:gap-7">
15983                  <div class="cmsb319-flex cmsb319-flex-wrap cmsb319-justify-center cmsb319-gap-5 cmsb319-text-center cmsb319-md:order-1">
15984                      
15985                      
15986    
15987<div x-data="Dropdown()" x-ref="DropdownWrapper" class="relative">
15988    <button
15989        @click="toggleDropdown()"
15990        id="store-selector-button"
15991        data-dropdown-toggle="store-selector"
15992        data-dropdown-placement="top"
15993        class="bg-bg-500 inline-flex items-center justify-between gap-6 whitespace-nowrap rounded-sm border border-text-500 px-6 py-3"
15994        type="button"
15995        :aria-expanded="isDropdownVisible"
15996        aria-controls="store-selector"
15997    >
15998        Esprit KTM FR        <span
15999            :class="isDropdownVisible ? '-rotate-90' : 'rotate-90'"
16000            class="transition-transform motion-reduce:transition-none">
16001            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" aria-hidden="true" width="24" height="24" role="img">
16002    <path d="M10.707 17.707 16.414 12l-5.707-5.707-1.414 1.414L13.586 12l-4.293 4.293z"/>
16003</svg>
16004        </span>
16005    </button>
16006    <div
16007        id="store-selector"
16008        x-cloak
16009        x-a11y-trap="isDropdownVisible"
16010        x-show="isDropdownVisible"
16011        class="bg-bg-500 absolute left-1/2 z-10 hidden min-w-full -translate-x-1/2 transform rounded-sm border border-text-500 p-2
16012            bottom-full                                    "
16013        :class="{ 'block': isDropdownVisible, 'hidden': !isDropdownVisible }"
16014    >
16015                <ul class="max-h-48 overflow-y-auto p-2 text-sm"
16016            aria-labelledby="store-selector-button">
16017                            
16018<li>
16019  <a
16020    tabindex="0"
16021    data-value="esprit_ktm_es"
16022    class="flex cursor-pointer justify-between p-3 text-text-500 md:hover:text-primary-600 gap-x-6 text-nowrap rounded-xs"
16023        href="https://www.esprit-ktm.com/stores/store/redirect/___store/esprit_ktm_es/___from_store/esprit_ktm_fr/uenc/aHR0cHM6Ly93d3cuZXNwcml0LWt0bS5lcy8_X19fc3RvcmU9ZXNwcml0X2t0bV9lcw~~/"
16024              >
16025    Esprit KTM ES  </a>
16026</li>
16027                            
16028<li>
16029  <a
16030    tabindex="0"
16031    data-value="esprit_ktm_fr"
16032    class="flex cursor-pointer justify-between p-3 text-text-500 bg-bg-600 text-primary-600 md:cursor-not-allowed gap-x-6 text-nowrap rounded-xs"
16033        href="https://www.esprit-ktm.com/stores/store/redirect/___store/esprit_ktm_fr/___from_store/esprit_ktm_fr/uenc/aHR0cHM6Ly93d3cuZXNwcml0LWt0bS5jb20vP19fX3N0b3JlPWVzcHJpdF9rdG1fZnI~/"
16034                aria-current="true"
16035      >
16036    Esprit KTM FR  </a>
16037</li>
16038                    </ul>
16039    </div>
16040</div>
16041
16042
16043                      
16044
16045                  </div>
16046                  <small class="copyright">
16047    <span>&copy; 2026 Esprit-KTM.com - Tous droits réservés - R.C.S GAP 508 215 357 - APE : 4540 Z  - TVA Intra : FR 83 508 215 357</span>
16048</small>
16049
16050              </div>
16051          </div>
16052      </div>
16053  </section>
16054  </div>        </div>
16055    </footer>
16056</div>
16057<div class="footer content"><div id="footer-portal" class="bg-bg-500"></div>
16058</div>
16058<script type="text/x-magento-init">{"*":
16059            {"Magento_Persistent/js/remember-me-config": {
16060            "config": {"persistenceConfig":{"isRememberMeCheckboxVisible":true,"isRememberMeCheckboxChecked":true}}
16061            }}}</script>
16061<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v4bc70e2c01a94c73b74392e4234840661791215815920" integrity="sha512-L0ha0OXavK/8okipN9F8BtP84dg9DUhPERbBXzwI6dgTA55d2+yweo3pn5CSFYs45/r8md2+xvUPtTdvTNRfjA==" data-cf-beacon='{"version":"2024.11.0","token":"9e2d3d13f1d14373b25e021e4f107b93","r":1,"spa":2}' crossorigin="anonymous"></script>
16061
16062</body>
16063</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.