PageSourceSearch

https://fr.melvita.com/cart

html melvita.com collected 2026-09-25 18:53:04 UTC 192,293 bytes, 3,116 lines download raw bytes

1<!doctype html>
2
3<html lang="fr" dir="ltr">
4  <head>
5    <meta charset="utf-8">
6    <meta name="viewport" content="width=device-width, initial-scale=1.0, height=device-height, minimum-scale=1.0, maximum-scale=5.0"><title>Votre panier</title><link rel="canonical" href="https://fr.melvita.com/cart"><link rel="shortcut icon" href="//fr.melvita.com/cdn/shop/files/Favicon_Melvita_2.jpg?v=1787671610&width=96">
7      <link rel="apple-touch-icon" href="//fr.melvita.com/cdn/shop/files/Favicon_Melvita_2.jpg?v=1787671610&width=180"><link rel="preload" href="//fr.melvita.com/cdn/shop/t/4/assets/FreightNeoPro-Medium.woff2?v=114485382750243139801786368499" as="font" type="font/woff2" crossorigin>
8    <link rel="preload" href="//fr.melvita.com/cdn/shop/t/4/assets/FreightNeoPro-Book.woff2?v=111729217730457420941786368499" as="font" type="font/woff2" crossorigin><link rel="preload" href="//fr.melvita.com/cdn/fonts/manrope/manrope_n4.cd2363f838fb1ef03bdb07c829c7c992d417dd64.woff2" as="font" type="font/woff2" crossorigin><meta property="og:type" content="website">
9  <meta property="og:title" content="Votre panier"><meta property="og:image" content="http://fr.melvita.com/cdn/shop/files/Logo_2_34eea43b-1181-4a27-9ef8-bb81be04fb94.png?v=1786019411&width=2048">
10  <meta property="og:image:secure_url" content="https://fr.melvita.com/cdn/shop/files/Logo_2_34eea43b-1181-4a27-9ef8-bb81be04fb94.png?v=1786019411&width=2048">
11  <meta property="og:image:width" content="441">
12  <meta property="og:image:height" content="100"><meta property="og:url" content="https://fr.melvita.com/cart">
13<meta property="og:site_name" content="Melvita"><meta name="twitter:card" content="summary"><meta name="twitter:title" content="Votre panier">
14  <meta name="twitter:description" content="Votre panier"><meta name="twitter:image" content="https://fr.melvita.com/cdn/shop/files/Logo_2_34eea43b-1181-4a27-9ef8-bb81be04fb94.png?crop=center&height=1200&v=1786019411&width=1200">
15  <meta name="twitter:image:alt" content="">
15<script type="application/ld+json">
16  {
17    "@context": "https://schema.org",
18    "@type": "BreadcrumbList",
19    "itemListElement": [{
20        "@type": "ListItem",
21        "position": 1,
22        "name": "Accueil",
23        "item": "https://fr.melvita.com"
24      }]
25  }
26</script>
26<style>@font-face {
27  font-family: Manrope;
28  font-weight: 700;
29  font-style: normal;
30  font-display: fallback;
31  src: url("//fr.melvita.com/cdn/fonts/manrope/manrope_n7.f3a06f9634c15008fe4637ba89fefcc8a1b93fbd.woff2") format("woff2"),
32       url("//fr.melvita.com/cdn/fonts/manrope/manrope_n7.6dba97311355640bc9b07a590354f08bc8fcc79f.woff") format("woff");
33}
34@font-face {
35  font-family: Manrope;
36  font-weight: 400;
37  font-style: normal;
38  font-display: fallback;
39  src: url("//fr.melvita.com/cdn/fonts/manrope/manrope_n4.cd2363f838fb1ef03bdb07c829c7c992d417dd64.woff2") format("woff2"),
40       url("//fr.melvita.com/cdn/fonts/manrope/manrope_n4.08b75e0e22a3f7267f64ccf115e9fb6d79fc1ce7.woff") format("woff");
41}
42@font-face {
43  font-family: Manrope;
44  font-weight: 500;
45  font-style: normal;
46  font-display: fallback;
47  src: url("//fr.melvita.com/cdn/fonts/manrope/manrope_n5.8eac14e2b642faa6ca8f5a46c1b0b1ed4a42eee7.woff2") format("woff2"),
48       url("//fr.melvita.com/cdn/fonts/manrope/manrope_n5.ed324e5197c333656fb16f9a7e7ba4fa1168607c.woff") format("woff");
49}
50@font-face {
51  font-family: Manrope;
52  font-weight: 700;
53  font-style: normal;
54  font-display: fallback;
55  src: url("//fr.melvita.com/cdn/fonts/manrope/manrope_n7.f3a06f9634c15008fe4637ba89fefcc8a1b93fbd.woff2") format("woff2"),
56       url("//fr.melvita.com/cdn/fonts/manrope/manrope_n7.6dba97311355640bc9b07a590354f08bc8fcc79f.woff") format("woff");
57}
58@font-face {
59  font-family: Archivo;
60  font-weight: 700;
61  font-style: normal;
62  font-display: fallback;
63  src: url("//fr.melvita.com/cdn/fonts/archivo/archivo_n7.651b020b3543640c100112be6f1c1b8e816c7f13.woff2") format("woff2"),
64       url("//fr.melvita.com/cdn/fonts/archivo/archivo_n7.7e9106d320e6594976a7dcb57957f3e712e83c96.woff") format("woff");
65}
66@font-face {
67    font-family: 'FreightNeo Pro';
68    src: url('//fr.melvita.com/cdn/shop/t/4/assets/FreightNeoPro-Book.woff2?v=111729217730457420941786368499') format('woff2');
69    font-weight: 400;
70    font-style: normal;
71    font-display: fallback;
72  }
73
74  @font-face {
75    font-family: 'FreightNeo Pro';
76    src: url('//fr.melvita.com/cdn/shop/t/4/assets/FreightNeoPro-Medium.woff2?v=114485382750243139801786368499') format('woff2');
77    font-weight: 500;
78    font-style: normal;
79    font-display: fallback;
80  }
81
82  :root {
83    /* Container */
84    --container-max-width: 100%;
85    --container-gutter: 1.5rem;
86
87    /* Spacing (Figma: margin-sections 64px mobile / 104px desktop) */
88    --section-vertical-spacing: 4rem;
89    --section-stack-row-gap: 2rem;
90
91    /* Form settings */
92    --form-gap: 1rem; /* Gap between fieldset and submit button */
93    --fieldset-gap: 0.5rem; /* Gap between each form input within a fieldset */
94    --form-control-gap: 0.5rem; /* Gap between input and label (ignored for floating label) */
95    --checkbox-control-gap: 0.75rem; /* Horizontal gap between checkbox and its associated label */
96    --input-padding-block: 0.65rem; /* Vertical padding for input, textarea and native select */
97    --input-padding-inline: 1rem; /* Horizontal padding for input, textarea and native select */
98    --checkbox-size: 0.875rem; /* Size (width and height) for checkbox */
99
100    /* Product listing gaps */
101    --product-list-column-gap: 0.75rem;
102    --product-list-padding-inline: clamp(0px, var(--product-list-column-gap) , min(1.75rem, var(--product-list-column-gap)));--product-list-row-gap: 2.25rem;/* Other sizes */
103    --header-group-height: calc(var(--announcement-bar-height, 0px) + var(--countdown-condensed-height, 0px) + var(--header-height, 0px));
104    --sticky-area-height: calc(var(--announcement-bar-is-sticky, 0) * var(--announcement-bar-height, 0px) + var(--header-is-sticky, 0) * var(--header-height, 0px));
105    --sticky-offset: calc(var(--announcement-bar-is-sticky, 0) * var(--announcement-bar-height, 0px) + var(--header-is-sticky, 0) * var(--header-is-visible, 1) * var(--header-height, 0px));
106
107    /* RTL support */
108    --transform-logical-flip: 1;
109    --transform-origin-start: left;
110    --transform-origin-end: right;
111
112    /**
113     * ---------------------------------------------------------------------
114     * TYPOGRAPHY
115     * ---------------------------------------------------------------------
116     */
117
118    /* Font properties */
119    --subheading-font-family: Manrope, sans-serif;
120    --subheading-font-weight: 700;
121    --subheading-font-style: normal;
122    --subheading-font-size: 0.625rem;
123    --subheading-text-transform: none;
124    --subheading-letter-spacing: 0.0em;
125    --heading-font-family: 'FreightNeo Pro', Georgia, serif;
126    --heading-font-weight: 400;
127    --heading-font-style: normal;
128    --heading-text-transform: uppercase;
129    --heading-letter-spacing: -0.02em;
130    --heading-line-height: 1;
131    --heading-italic-font-family: Helvetica, Arial, sans-serif;
132    --heading-italic-font-weight: 400;
133    --heading-italic-font-size-multiplier: 0%;
134    --text-font-family: Manrope, sans-serif;
135    --text-font-weight: 400;
136    --text-font-style: normal;
137    --text-transform: normal;
138    --text-letter-spacing: 0.0em;
139    --text-line-height: 1.4;
140    --text-font-medium-weight: 500;
141    --text-font-bold-weight: 700;--button-font: normal 700 var(--button-font-size) / normal Archivo, sans-serif;
142    --button-text-transform: none;
143    --button-letter-spacing: 0.0em;
144
145    /* Font sizes */--text-heading-size-factor: 1;
146    --text-display-xl: max(0.75rem, clamp(3rem, 1.5916rem + 6.0094vw, 7rem) * var(--text-heading-size-factor));
147    --text-display-l: max(0.75rem, clamp(2.8125rem, 1.6901rem + 4.7887vw, 6rem) * var(--text-heading-size-factor));
148    --text-display-m: max(0.75rem, clamp(2.75rem, 2.0458rem + 3.0047vw, 4.75rem) * var(--text-heading-size-factor));
149    --text-h1: max(0.75rem, clamp(2.5rem, 1.9718rem + 2.2535vw, 4rem) * var(--text-heading-size-factor));
150    --text-h2: max(0.75rem, 2rem * var(--text-heading-size-factor));
151    --text-h3: max(0.75rem, clamp(1.5rem, 1.3239rem + 0.7512vw, 2rem) * var(--text-heading-size-factor));
152    --text-h4: max(0.75rem, clamp(1.25rem, 1.162rem + 0.3756vw, 1.5rem) * var(--text-heading-size-factor));
153    --text-h5: max(0.75rem, clamp(1.125rem, 1.081rem + 0.1878vw, 1.25rem) * var(--text-heading-size-factor));
154    --text-h6: max(0.75rem, clamp(1rem, 0.956rem + 0.1878vw, 1.125rem) * var(--text-heading-size-factor));
155    --text-h7: max(0.75rem, clamp(0.875rem, 0.831rem + 0.1878vw, 1rem) * var(--text-heading-size-factor));
156    --text-xs: 0.625rem;
157    --text-sm: 0.75rem;
158    --text-base: 0.875rem;
159    --text-lg: 1.0625rem;
160    --button-font-size: 0.875rem;
161
162    /* Rounded variables (used for border radius) */
163    --rounded-full: 9999px;--section-media-radius: 8px;
164    --subheading-border-radius: 0.0rem;
165    --button-border-radius: 0.5rem;
166    --input-border-radius: 0.5rem;
167
168    /* Packshot variables (global background behind product images, overridable per product) */
169    --packshot-background: #f0f1f2;
170
171    /* Product card variables */
172    --product-card-row-count: 2;
173
174    /**
175     * ---------------------------------------------------------------------
176     * OTHER
177     * ---------------------------------------------------------------------
178     */
179
180    --icon-stroke-width: 1px;
181    --quotation-mark-svg: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" focusable="false" width="62" fill="none" viewBox="0 0 62 57"><path fill="%23000" d="M.79 31.904 11.924.816h12.296l-8.12 31.088h7.888V56.96H.79V31.904Zm37.351 0L49.277.816h12.064l-8.12 31.088h7.888V56.96H38.141V31.904Z" /></svg>');
182  }
183
184  [dir="rtl"]:root {
185    /* RTL support */
186    --transform-logical-flip: -1;
187    --transform-origin-start: right;
188    --transform-origin-end: left;
189  }
190
191  @media screen and (min-width: 700px) {
192    :root {
193      --text-xs: 0.75rem;
194      --text-sm: 0.875rem;
195      --text-base: 1.0rem;
196      --text-lg: 1.1875rem;
197      --subheading-font-size: 0.75rem;
198      --text-h2: max(0.75rem, 2.5rem * var(--text-heading-size-factor));
199
200      /* Spacing */
201      --container-gutter: 2rem;
202
203      /* Form settings */
204      --form-gap: 1.25rem; /* Gap between fieldset and submit button */
205      --fieldset-gap: 0.75rem; /* Gap between each form input within a fieldset */
206      --input-padding-block: 0.75rem; /* Vertical padding for input, textarea and native select */
207
208      /* Font sizes */
209      --button-font-size: 0.875rem;
210
211      /* Product listing gaps */--product-list-column-gap: 3rem;
212        --product-list-row-gap: 4rem;}
213  }
214
215  @media screen and (min-width: 1000px) {
216    :root {
217      /* Spacing settings */
218      --section-vertical-spacing: 5rem;
219      --section-stack-row-gap: 3rem;
220    }
221  }
222
223  @media screen and (min-width: 1399px) {
224    :root {
225      /* Spacing settings */
226      --section-vertical-spacing: 6.5rem;
227      --container-gutter: 4rem;
228    }
229  }
230
231  /**
232   * ---------------------------------------------------------------------
233   * COLORS
234   * ---------------------------------------------------------------------
235   */
236
237  :root {--page-overlay: 0 0 0 / 0.4;
238    --dialog-backdrop-blur: 12px;
239
240    /* Status colors */
241    --success-background: 237 237 234;
242    --success-text: 102 106 83;
243    --warning-background: 253 241 224;
244    --warning-text: 237 138 0;
245    --error-background: 254 232 232;
246    --error-text: 250 63 63;
247
248    /* Product colors */
249    --on-sale-text: 250 63 63;
250    --on-sale-badge-background: 250 63 63;
251    --on-sale-badge-text: 255 255 255;
252    --sold-out-badge-background: 17 13 14;
253    --sold-out-badge-text: 255 255 255;
254    --custom-badge-background: 255 255 255;
255    --custom-badge-text: 0 0 0;
256    --star-color: 0 0 0;
257
258    /* Default scheme */
259    --default-color-scheme-background: 240 241 242;
260    --default-color-scheme-background-gradient: ;
261    --default-color-scheme-text-color: 17 13 14;
262  }.color-scheme--scheme-1 {
263      --accent: 107 0 0;
264      --background: 240 241 242;
265      --background-gradient: ;
266      --background-secondary: 255 255 255;--background-secondary-text-color: 17 13 14;
267      --has-transparent-background: 0;
268      --has-filled-background: 1;
269      --text-color: 17 13 14;--border-color: 218 218 219;
269/* Subheading colors */--subheading-background: 0 0 0 / 0.0;
270      --subheading-border: none;
271      --subheading-text-color: 17 13 14;
272      --subheading-has-padding: 0;
273
274      /* Heading highlight */
275      --heading-highlight-accent-color: 107 0 0;
276      --heading-highlight-text-color: 255 255 255;
277
278      /* Button colors */
279      --button-background-primary: 107 0 0;
280      --button-text-primary: 255 255 255;--button-dark: var(--button-background-primary);
281        --button-light: var(--button-text-primary);--button-outline-hover-text: var(--button-text-primary);
282
283      /* Form inputs */
284      --input-background: 255 255 255;
285      --input-text-color: 17 13 14;
286      --input-text-transform: none;
287    }.shopify-section:has(> .color-scheme--scheme-1) + .shopify-section:has(> .color-scheme--scheme-1) {
288          --section-has-same-background-as-previous-section: 1;
289        }.color-scheme--scheme-2 {
290      --accent: 107 0 0;
291      --background: 255 255 255;
292      --background-gradient: ;
293      --background-secondary: 240 241 242;--background-secondary-text-color: 17 13 14;
294      --has-transparent-background: 0;
295      --has-filled-background: 1;
296      --text-color: 17 13 14;--border-color: 231 231 231;/* Subheading colors */--subheading-background: 0 0 0 / 0.0;
297      --subheading-border: none;
298      --subheading-text-color: 17 13 14;
299      --subheading-has-padding: 0;
300
301      /* Heading highlight */
302      --heading-highlight-accent-color: 107 0 0;
303      --heading-highlight-text-color: 255 255 255;
304
305      /* Button colors */
306      --button-background-primary: 107 0 0;
307      --button-text-primary: 255 255 255;--button-dark: var(--button-background-primary);
308        --button-light: var(--button-text-primary);--button-outline-hover-text: var(--button-text-primary);
309
310      /* Form inputs */
311      --input-background: 255 255 255;
312      --input-text-color: 17 13 14;
313      --input-text-transform: none;
314    }.shopify-section:has(> .color-scheme--scheme-2) + .shopify-section:has(> .color-scheme--scheme-2) {
315          --section-has-same-background-as-previous-section: 1;
316        }.shopify-section:has(> .color-scheme--scheme-2) + .shopify-section:has(> .color-scheme--scheme-d51ac0b0-d414-4d17-9757-9f01d7f9c456) {
317          --section-has-same-background-as-previous-section: 1;
318        }.color-scheme--scheme-3 {
319      --accent: 255 255 255;
320      --background: 0 0 0 / 0;
321      --background-gradient: ;
322      --background-secondary: 240 241 242;--background-secondary-text-color: 17 13 14;
323      --has-transparent-background: 1;
324      --has-filled-background: 0;
325      --text-color: 255 255 255;--border-color: 255 255 255 / 0.6;/* Subheading colors */--subheading-background: 0 0 0 / 0.0;
326      --subheading-border: none;
327      --subheading-text-color: 255 255 255;
328      --subheading-has-padding: 0;
329
330      /* Heading highlight */
331      --heading-highlight-accent-color: 255 255 255;
332      --heading-highlight-text-color: 107 0 0;
333
334      /* Button colors */
335      --button-background-primary: 255 255 255;
336      --button-text-primary: 107 0 0;--button-dark: var(--button-text-primary);
337        --button-light: var(--button-background-primary);--button-outline-hover-text: var(--button-text-primary);
338
339      /* Form inputs */
340      --input-background: 255 255 255;
341      --input-text-color: 17 13 14;
342      --input-text-transform: none;
343    }.shopify-section:has(> .color-scheme--scheme-3) + .shopify-section:has(> .color-scheme--scheme-3) {
344          --section-has-same-background-as-previous-section: 1;
345        }.shopify-section:has(> .color-scheme--scheme-3) + .shopify-section:has(> .color-scheme--scheme-12) {
346          --section-has-same-background-as-previous-section: 1;
347        }.color-scheme--scheme-4 {
348      --accent: 255 255 255;
349      --background: 17 13 14;
350      --background-gradient: ;
351      --background-secondary: 240 241 242;--background-secondary-text-color: 17 13 14;
352      --has-transparent-background: 0;
353      --has-filled-background: 1;
354      --text-color: 255 255 255;--border-color: 41 37 38;/* Subheading colors */--subheading-background: 0 0 0 / 0.0;
355      --subheading-border: none;
356      --subheading-text-color: 255 255 255;
357      --subheading-has-padding: 0;
358
359      /* Heading highlight */
360      --heading-highlight-accent-color: 255 255 255;
361      --heading-highlight-text-color: 17 13 14;
362
363      /* Button colors */
364      --button-background-primary: 255 255 255;
365      --button-text-primary: 107 0 0;--button-dark: var(--button-text-primary);
366        --button-light: var(--button-background-primary);--button-outline-hover-text: var(--button-text-primary);
367
368      /* Form inputs */
369      --input-background: 17 13 14;
370      --input-text-color: 255 255 255;
371      --input-text-transform: none;
372    }.shopify-section:has(> .color-scheme--scheme-4) + .shopify-section:has(> .color-scheme--scheme-4) {
373          --section-has-same-background-as-previous-section: 1;
374        }.color-scheme--scheme-5 {
375      --accent: 255 255 255;
376      --background: 107 0 0;
377      --background-gradient: ;
378      --background-secondary: 255 255 255;--background-secondary-text-color: 17 13 14;
379      --has-transparent-background: 0;
380      --has-filled-background: 1;
381      --text-color: 255 255 255;--border-color: 122 26 26;/* Subheading colors */--subheading-background: 0 0 0 / 0.0;
382      --subheading-border: none;
383      --subheading-text-color: 255 255 255;
384      --subheading-has-padding: 0;
385
386      /* Heading highlight */
387      --heading-highlight-accent-color: 255 255 255;
388      --heading-highlight-text-color: 107 0 0;
389
390      /* Button colors */
391      --button-background-primary: 255 255 255;
392      --button-text-primary: 107 0 0;--button-dark: var(--button-text-primary);
393        --button-light: var(--button-background-primary);--button-outline-hover-text: var(--button-text-primary);
394
395      /* Form inputs */
396      --input-background: 255 255 255;
397      --input-text-color: 107 0 0;
398      --input-text-transform: none;
399    }.shopify-section:has(> .color-scheme--scheme-5) + .shopify-section:has(> .color-scheme--scheme-5) {
400          --section-has-same-background-as-previous-section: 1;
401        }.color-scheme--scheme-6 {
402      --accent: 255 255 255;
403      --background: 142 167 64;
404      --background-gradient: ;
405      --background-secondary: 255 255 255;--background-secondary-text-color: 17 13 14;
406      --has-transparent-background: 0;
407      --has-filled-background: 1;
408      --text-color: 17 13 14;--border-color: 130 152 59;/* Subheading colors */--subheading-background: 0 0 0 / 0.0;
409      --subheading-border: none;
410      --subheading-text-color: 17 13 14;
411      --subheading-has-padding: 0;
412
413      /* Heading highlight */
414      --heading-highlight-accent-color: 17 13 14;
415      --heading-highlight-text-color: 255 255 255;
416
417      /* Button colors */
418      --button-background-primary: 255 255 255;
419      --button-text-primary: 107 0 0;--button-dark: var(--button-text-primary);
420        --button-light: var(--button-background-primary);--button-outline-hover-text: var(--button-text-primary);
421
422      /* Form inputs */
423      --input-background: 255 255 255;
424      --input-text-color: 17 13 14;
425      --input-text-transform: none;
426    }.shopify-section:has(> .color-scheme--scheme-6) + .shopify-section:has(> .color-scheme--scheme-6) {
427          --section-has-same-background-as-previous-section: 1;
428        }.color-scheme--scheme-7 {
429      --accent: 255 255 255;
430      --background: 51 0 6;
431      --background-gradient: ;
432      --background-secondary: 255 255 255;--background-secondary-text-color: 17 13 14;
433      --has-transparent-background: 0;
434      --has-filled-background: 1;
435      --text-color: 242 145 157;--border-color: 70 15 21;/* Subheading colors */--subheading-background: 0 0 0 / 0.0;
436      --subheading-border: none;
437      --subheading-text-color: 242 145 157;
438      --subheading-has-padding: 0;
439
440      /* Heading highlight */
441      --heading-highlight-accent-color: 242 145 157;
442      --heading-highlight-text-color: 51 0 6;
443
444      /* Button colors */
445      --button-background-primary: 255 255 255;
446      --button-text-primary: 107 0 0;--button-dark: var(--button-text-primary);
447        --button-light: var(--button-background-primary);--button-outline-hover-text: var(--button-text-primary);
448
449      /* Form inputs */
450      --input-background: 255 255 255;
451      --input-text-color: 51 0 6;
452      --input-text-transform: none;
453    }.shopify-section:has(> .color-scheme--scheme-7) + .shopify-section:has(> .color-scheme--scheme-7) {
454          --section-has-same-background-as-previous-section: 1;
455        }.shopify-section:has(> .color-scheme--scheme-7) + .shopify-section:has(> .color-scheme--scheme-11) {
456          --section-has-same-background-as-previous-section: 1;
457        }.color-scheme--scheme-8 {
458      --accent: 107 0 0;
459      --background: 242 145 157;
460      --background-gradient: ;
461      --background-secondary: 255 255 255;--background-secondary-text-color: 17 13 14;
462      --has-transparent-background: 0;
463      --has-filled-background: 1;
464      --text-color: 107 0 0;--border-color: 229 131 141;/* Subheading colors */--subheading-background: 0 0 0 / 0.0;
465      --subheading-border: none;
466      --subheading-text-color: 107 0 0;
467      --subheading-has-padding: 0;
468
469      /* Heading highlight */
470      --heading-highlight-accent-color: 107 0 0;
471      --heading-highlight-text-color: 255 255 255;
472
473      /* Button colors */
474      --button-background-primary: 107 0 0;
475      --button-text-primary: 255 255 255;--button-dark: var(--button-background-primary);
476        --button-light: var(--button-text-primary);--button-outline-hover-text: var(--button-text-primary);
477
478      /* Form inputs */
479      --input-background: 255 255 255;
480      --input-text-color: 107 0 0;
481      --input-text-transform: none;
482    }.shopify-section:has(> .color-scheme--scheme-8) + .shopify-section:has(> .color-scheme--scheme-8) {
483          --section-has-same-background-as-previous-section: 1;
484        }.color-scheme--scheme-9 {
485      --accent: 107 0 0;
486      --background: 255 204 210;
487      --background-gradient: ;
488      --background-secondary: 255 255 255;--background-secondary-text-color: 17 13 14;
489      --has-transparent-background: 0;
490      --has-filled-background: 1;
491      --text-color: 107 0 0;--border-color: 240 184 189;/* Subheading colors */--subheading-background: 0 0 0 / 0.0;
492      --subheading-border: none;
493      --subheading-text-color: 107 0 0;
494      --subheading-has-padding: 0;
495
496      /* Heading highlight */
497      --heading-highlight-accent-color: 107 0 0;
498      --heading-highlight-text-color: 255 255 255;
499
500      /* Button colors */
501      --button-background-primary: 107 0 0;
502      --button-text-primary: 255 255 255;--button-dark: var(--button-background-primary);
503        --button-light: var(--button-text-primary);--button-outline-hover-text: var(--button-text-primary);
504
505      /* Form inputs */
506      --input-background: 255 255 255;
507      --input-text-color: 107 0 0;
508      --input-text-transform: none;
509    }.shopify-section:has(> .color-scheme--scheme-9) + .shopify-section:has(> .color-scheme--scheme-9) {
510          --section-has-same-background-as-previous-section: 1;
511        }.color-scheme--scheme-10 {
512      --accent: 107 0 0;
513      --background: 233 242 171;
514      --background-gradient: ;
515      --background-secondary: 255 255 255;--background-secondary-text-color: 17 13 14;
516      --has-transparent-background: 0;
517      --has-filled-background: 1;
518      --text-color: 17 13 14;--border-color: 211 219 155;/* Subheading colors */--subheading-background: 0 0 0 / 0.0;
519      --subheading-border: none;
520      --subheading-text-color: 17 13 14;
521      --subheading-has-padding: 0;
522
523      /* Heading highlight */
524      --heading-highlight-accent-color: 107 0 0;
525      --heading-highlight-text-color: 255 255 255;
526
527      /* Button colors */
528      --button-background-primary: 107 0 0;
529      --button-text-primary: 255 255 255;--button-dark: var(--button-background-primary);
530        --button-light: var(--button-text-primary);--button-outline-hover-text: var(--button-text-primary);
531
532      /* Form inputs */
533      --input-background: 255 255 255;
534      --input-text-color: 17 13 14;
535      --input-text-transform: none;
536    }.shopify-section:has(> .color-scheme--scheme-10) + .shopify-section:has(> .color-scheme--scheme-10) {
537          --section-has-same-background-as-previous-section: 1;
538        }.color-scheme--scheme-11 {
539      --accent: 255 255 255;
540      --background: 51 0 6;
541      --background-gradient: ;
542      --background-secondary: 255 255 255;--background-secondary-text-color: 17 13 14;
543      --has-transparent-background: 0;
544      --has-filled-background: 1;
545      --text-color: 255 255 255;--border-color: 71 26 31;/* Subheading colors */--subheading-background: 0 0 0 / 0.0;
546      --subheading-border: none;
547      --subheading-text-color: 255 255 255;
548      --subheading-has-padding: 0;
549
550      /* Heading highlight */
551      --heading-highlight-accent-color: 242 145 157;
552      --heading-highlight-text-color: 51 0 6;
553
554      /* Button colors */
555      --button-background-primary: 255 255 255;
556      --button-text-primary: 107 0 0;--button-dark: var(--button-text-primary);
557        --button-light: var(--button-background-primary);--button-outline-hover-text: var(--button-text-primary);
558
559      /* Form inputs */
560      --input-background: 255 255 255;
561      --input-text-color: 51 0 6;
562      --input-text-transform: none;
563    }.shopify-section:has(> .color-scheme--scheme-11) + .shopify-section:has(> .color-scheme--scheme-7) {
564          --section-has-same-background-as-previous-section: 1;
565        }.shopify-section:has(> .color-scheme--scheme-11) + .shopify-section:has(> .color-scheme--scheme-11) {
566          --section-has-same-background-as-previous-section: 1;
567        }.color-scheme--scheme-12 {
568      --accent: 107 0 0;
569      --background: 0 0 0 / 0;
570      --background-gradient: ;
571      --background-secondary: 255 255 255;--background-secondary-text-color: 17 13 14;
572      --has-transparent-background: 1;
573      --has-filled-background: 0;
574      --text-color: 107 0 0;--border-color: 107 0 0 / 0.6;/* Subheading colors */--subheading-background: 0 0 0 / 0.0;
575      --subheading-border: none;
576      --subheading-text-color: 107 0 0;
577      --subheading-has-padding: 0;
578
579      /* Heading highlight */
580      --heading-highlight-accent-color: 107 0 0;
581      --heading-highlight-text-color: 255 255 255;
582
583      /* Button colors */
584      --button-background-primary: 107 0 0;
585      --button-text-primary: 255 255 255;--button-dark: var(--button-background-primary);
586        --button-light: var(--button-text-primary);--button-outline-hover-text: var(--button-text-primary);
587
588      /* Form inputs */
589      --input-background: 255 255 255;
590      --input-text-color: 17 13 14;
591      --input-text-transform: none;
592    }.shopify-section:has(> .color-scheme--scheme-12) + .shopify-section:has(> .color-scheme--scheme-3) {
593          --section-has-same-background-as-previous-section: 1;
594        }.shopify-section:has(> .color-scheme--scheme-12) + .shopify-section:has(> .color-scheme--scheme-12) {
595          --section-has-same-background-as-previous-section: 1;
596        }.color-scheme--scheme-d51ac0b0-d414-4d17-9757-9f01d7f9c456 {
597      --accent: 107 0 0;
598      --background: 255 255 255;
599      --background-gradient: ;
600      --background-secondary: 255 255 255;--background-secondary-text-color: 17 13 14;
601      --has-transparent-background: 0;
602      --has-filled-background: 1;
603      --text-color: 77 77 77;--border-color: 237 237 237;/* Subheading colors */--subheading-background: 0 0 0 / 0.0;
604      --subheading-border: none;
605      --subheading-text-color: 17 13 14;
606      --subheading-has-padding: 0;
607
608      /* Heading highlight */
609      --heading-highlight-accent-color: 107 0 0;
610      --heading-highlight-text-color: 255 255 255;
611
612      /* Button colors */
613      --button-background-primary: 107 0 0;
614      --button-text-primary: 255 255 255;--button-dark: var(--button-background-primary);
615        --button-light: var(--button-text-primary);--button-outline-hover-text: var(--button-text-primary);
616
617      /* Form inputs */
618      --input-background: 255 255 255;
619      --input-text-color: 17 13 14;
620      --input-text-transform: none;
621    }.shopify-section:has(> .color-scheme--scheme-d51ac0b0-d414-4d17-9757-9f01d7f9c456) + .shopify-section:has(> .color-sch
621eme--scheme-2) {
622          --section-has-same-background-as-previous-section: 1;
623        }.shopify-section:has(> .color-scheme--scheme-d51ac0b0-d414-4d17-9757-9f01d7f9c456) + .shopify-section:has(> .color-scheme--scheme-d51ac0b0-d414-4d17-9757-9f01d7f9c456) {
624          --section-has-same-background-as-previous-section: 1;
625        }@view-transition {
626      navigation: auto;
627    }</style>
628<script>
629  // This allows to expose several variables to the global scope, to be used in scripts
630  window.themeVariables = {
631    settings: {
632      pageType: "cart",
633      moneyFormat: "{{amount_with_comma_separator}} €",
634      moneyWithCurrencyFormat: "€{{amount_with_comma_separator}} EUR",
635      currencyCodeEnabled: false,
636      cartType: "drawer",
637      showHeadingEffectAnimation: true,
638      staggerProducts: true
639    },
640
641    strings: {
642      addedToCart: "{{product_title}} a été ajouté au panier",
643      closeGallery: "Fermer la galerie",
644      zoomGallery: "Zoomer sur l\u0026#39;image",
645      errorGallery: "L\u0026#39;image ne peut pas etre chargée",
646      shippingEstimatorNoResults: "Nous ne livrons pas à votre adresse.",
647      shippingEstimatorOneResult: "Il y a un résultat pour votre adresse :",
648      shippingEstimatorMultipleResults: "Il y a plusieurs résultats pour votre adresse :",
649      shippingEstimatorError: "Impossible d\u0026#39;estimer les frais de livraison :",
650      next: "Suivant",
651      previous: "Précédent"
652    },
653
654    mediaQueries: {
655      'sm': 'screen and (min-width: 700px)',
656      'md': 'screen and (min-width: 1000px)',
657      'lg': 'screen and (min-width: 1150px)',
658      'xl': 'screen and (min-width: 1400px)',
659      '2xl': 'screen and (min-width: 1600px)',
660      'sm-max': 'screen and (max-width: 699px)',
661      'md-max': 'screen and (max-width: 999px)',
662      'lg-max': 'screen and (max-width: 1149px)',
663      'xl-max': 'screen and (max-width: 1399px)',
664      '2xl-max': 'screen and (max-width: 1599px)',
665      'motion-safe': '(prefers-reduced-motion: no-preference)',
666      'motion-reduce': '(prefers-reduced-motion: reduce)',
667      'supports-hover': 'screen and (pointer: fine)',
668      'supports-touch': 'screen and (pointer: coarse)'
669    }
670  };</script>
670<script async crossorigin fetchpriority="high" src="/cdn/shopifycloud/importmap-polyfill/es-modules-shim.2.4.0.js"></script>
vendor: 1 bytes, line 670
670
671<script type="importmap">{
672        "imports": {
673          "vendor": "//fr.melvita.com/cdn/shop/t/4/assets/vendor.min.js?v=115152861726854754811781165056",
674          "theme": "//fr.melvita.com/cdn/shop/t/4/assets/theme.js?v=33174130759666119641788273087",
675          "photoswipe": "//fr.melvita.com/cdn/shop/t/4/assets/photoswipe.min.js?v=13374349288281597431781165053"
676        }
677      }
678    </script>
678<script src="//fr.melvita.com/cdn/shop/t/4/assets/ax-cart-return.js?v=108670334683347548871787909367" data-cart-page="true"></script>
678
679
680    
680<script type="module" src="//fr.melvita.com/cdn/shop/t/4/assets/vendor.min.js?v=115152861726854754811781165056"></script>
680
681    
681<script type="module" src="//fr.melvita.com/cdn/shop/t/4/assets/theme.js?v=33174130759666119641788273087"></script>
681
682
683    
683<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
683<meta name="google-site-verification" content="UNnDNVrq-HoV3nuK60R8Z0CYN3jANLrmhoXJqgtWlYs">
684<meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/107173183826/digital_wallets/dialog">
685<meta id="in-context-paypal-metadata" data-shop-id="107173183826" data-venmo-supported="false" data-environment="production" data-locale="fr_FR" data-paypal-v4="true" data-currency="EUR">
686<link rel="ucp" href="/.well-known/ucp" version="2026-08-25">
686<script async="async" src="/checkouts/internal/preloads.js?locale=fr-FR&default_configuration_id=8405188946"></script>
686
687<link rel="preconnect" href="https://shop.app" crossorigin="anonymous">
688<script async="async" src="https://shop.app/checkouts/internal/preloads.js?locale=fr-FR&default_configuration_id=8405188946&shop_id=107173183826" crossorigin="anonymous"></script>
vendor: 1 bytes, line 688
688
689<script id="apple-pay-shop-capabilities" type="application/json">{"shopId":107173183826,"countryCode":"FR","currencyCode":"EUR","merchantCapabilities":["supports3DS"],"merchantId":"gid:\/\/shopify\/Shop\/107173183826","merchantName":"Melvita","requiredBillingContactFields":["postalAddress","email","phone"],"requiredShippingContactFields":["postalAddress","email","phone"],"shippingType":"shipping","supportedNetworks":["visa","masterCard","amex","maestro"],"total":{"type":"pending","label":"Melvita","amount":"1.00"},"shopifyPaymentsEnabled":true,"supportsSubscriptions":true}</script>
vendor: 1 bytes, line 689
689
690<script id="shopify-features" type="application/json">{"accessToken":"175bb8ecbf2f11fe23eb9a6df696cf5e","betas":["rich-media-storefront-analytics"],"domain":"fr.melvita.com","predictiveSearch":true,"shopId":107173183826,"locale":"fr"}</script>
vendor: 1 bytes, line 690
690
691<script>var Shopify = Shopify || {};
692Shopify.shop = "melvita2026.myshopify.com";
693Shopify.locale = "fr";
694Shopify.currency = {"active":"EUR","rate":"1.0"};
695Shopify.country = "FR";
696Shopify.theme = {"name":"[PROD] Melvita - Axome","id":202104996178,"schema_name":"Axome - Melvita","schema_version":"1.0.0","theme_store_id":null,"role":"main"};
697Shopify.theme.handle = "null";
698Shopify.theme.style = {"id":null,"handle":null};
699Shopify.cdnHost = "fr.melvita.com/cdn";
700Shopify.routes = Shopify.routes || {};
701Shopify.routes.root = "/";
702Shopify.shopJsCdnBaseUrl = "https://cdn.shopify.com/shopifycloud/shop-js";
703Shopify.SignInWithShop = Shopify.SignInWithShop || {};
704Shopify.SignInWithShop.User = Shopify.SignInWithShop.User || {};
705Shopify.SignInWithShop.User.recognized = false;</script>
vendor: 1 bytes, line 705
705
706<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
vendor: 1 bytes, line 706
706
707<script>!function(o){function n(){var o=[];function n(){o.push(Array.prototype.slice.apply(arguments))}return n.q=o,n}var t=o.Shopify=o.Shopify||{};t.loadFeatures=n(),t.autoloadFeatures=n()}(window);</script>
vendor: 1 bytes, line 707
707
708<script>
709  window.ShopifyPay = window.ShopifyPay || {};
710  window.ShopifyPay.apiHost = "shop.app\/pay";
711  window.ShopifyPay.redirectState = null;
712</script>
vendor: 1 bytes, line 712
712
713<script>
714  window.Shopify = window.Shopify || {};
715  window.Shopify.SignInWithShop = window.Shopify.SignInWithShop || {};
716  window.Shopify.SignInWithShop.assetMetrics = { sampleRate: 0.25 };
717  window.Shopify.SignInWithShop.eligible = true;
718</script>
vendor: 1 bytes, line 718
718
719<script id="shop-js-analytics" type="application/json">{"pageType":"cart"}</script>
vendor: 1 bytes, line 719
719
720<script defer="defer" async type="module" src="https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.fr.esm.js"></script>
vendor: 1 bytes, line 720
720
721<script type="module">
722  await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.fr.esm.js");
723
724  window.Shopify.SignInWithShop?.initShopCartSync?.({"fedCMEnabled":true,"windoidEnabled":true});
725
726</script>
vendor: 1 bytes, line 726
726
727<script>
728  window.Shopify = window.Shopify || {};
729  if (!window.Shopify.featureAssets) window.Shopify.featureAssets = {};
730  window.Shopify.featureAssets['shop-js'] = {"avatar":["modules/v2/loader.avatar.fr.esm.js"],"checkout-modal":["modules/v2/loader.checkout-modal.fr.esm.js"],"init-customer-accounts-sign-up":["modules/v2/loader.init-customer-accounts-sign-up.fr.esm.js"],"init-customer-accounts":["modules/v2/loader.init-customer-accounts.fr.esm.js"],"init-fed-cm":["modules/v2/loader.init-fed-cm.fr.esm.js"],"init-shop-cart-sync":["modules/v2/loader.init-shop-cart-sync.fr.esm.js"],"init-shop-email-lookup-coordinator":["modules/v2/loader.init-shop-email-lookup-coordinator.fr.esm.js"],"init-shop-for-new-customer-accounts":["modules/v2/loader.init-shop-for-new-customer-accounts.fr.esm.js"],"init-shop-user-recognition":["modules/v2/loader.init-shop-user-recognition.fr.esm.js"],"init-windoid":["modules/v2/loader.init-windoid.fr.esm.js"],"lead-capture":["modules/v2/loader.lead-capture.fr.esm.js"],"listener":["modules/v2/loader.listener.fr.esm.js"],"pay-button":["modules/v2/loader.pay-button.fr.esm.js"],"payment-terms":["modules/v2/loader.payment-terms.fr.esm.js"],"shop-button":["modules/v2/loader.shop-button.fr.esm.js"],"shop-cart-sync":["modules/v2/loader.shop-cart-sync.fr.esm.js"],"shop-cash-offers":["modules/v2/loader.shop-cash-offers.fr.esm.js"],"shop-follow-button":["modules/v2/loader.shop-follow-button.fr.esm.js"],"shop-login-button":["modules/v2/loader.shop-login-button.fr.esm.js"],"shop-login":["modules/v2/loader.shop-login.fr.esm.js"],"shop-toast-manager":["modules/v2/loader.shop-toast-manager.fr.esm.js"],"shop-user-recognition":["modules/v2/loader.shop-user-recognition.fr.esm.js"]};
731</script>
vendor: 1 bytes, line 731
731
732<script>(function() {
733  var isLoaded = false;
734  function asyncLoad() {
735    if (isLoaded) return;
736    isLoaded = true;
737    var urls = ["https:\/\/redirectify.app\/script_tags\/tracking.js?shop=melvita2026.myshopify.com"];
738    for (var i = 0; i < urls.length; i++) {
739      var s = document.createElement('script');
740      s.type = 'text/javascript';
741      s.async = true;
742      s.src = urls[i];
743      var x = document.getElementsByTagName('script')[0];
744      x.parentNode.insertBefore(s, x);
745    }
746  };
747  if(window.attachEvent) {
748    window.attachEvent('onload', asyncLoad);
749  } else {
750    window.addEventListener('load', asyncLoad, false);
751  }
752})();</script>
vendor: 1 bytes, line 752
752
753<script id="__st">var __st={"a":107173183826,"offset":7200,"reqid":"7587a61f-692a-4d96-9e6c-8cb2495e6e5f-1790362383","pageurl":"fr.melvita.com\/cart","u":"7753c5c8c253","p":"cart"};</script>
vendor: 1 bytes, line 753
753
754<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
vendor: 1 bytes, line 754
754
755<script id="captcha-bootstrap">!function(){'use strict';const t='contact',e='account',n='new_comment',o=[[t,t],['blogs',n],['comments',n],[t,'customer']],c=[[e,'customer_login'],[e,'guest_login'],[e,'recover_customer_password'],[e,'create_customer']],r=t=>t.map((([t,e])=>`form[action*='/${t}']:not([data-nocaptcha='true']) input[name='form_type'][value='${e}']`)).join(','),a=t=>()=>t?[...document.querySelectorAll(t)].map((t=>t.form)):[];function s(){const t=[...o],e=r(t);return a(e)}const i='password',u='form_key',d=['recaptcha-v3-token','g-recaptcha-response','h-captcha-response',i],f=()=>{try{return window.sessionStorage}catch{return}},m='__shopify_v',_=t=>t.elements[u];function p(t,e,n=!1){try{const o=window.sessionStorage,c=JSON.parse(o.getItem(e)),{data:r}=function(t){const{data:e,action:n}=t;return t[m]||n?{data:e,action:n}:{data:t,action:n}}(c);for(const[e,n]of Object.entries(r))t.elements[e]&&(t.elements[e].value=n);n&&o.removeItem(e)}catch(o){console.error('form repopulation failed',{error:o})}}const l='form_type',E='cptcha';function T(t){t.dataset[E]=!0}const w=window,h=w.document,L='Shopify',v='ce_forms',y='captcha';let A=!1;((t,e)=>{const n=(g='f06e6c50-85a8-45c8-87d0-21a2b65856fe',I='https://cdn.shopify.com/shopifycloud/storefront-forms-hcaptcha/ce_storefront_forms_captcha_hcaptcha.v1.5.3.iife.js',D={infoText:'Protégé par hCaptcha',privacyText:'Confidentialité',termsText:'Conditions'},(t,e,n)=>{const o=w[L][v],c=o.bindForm;if(c)return c(t,g,e,D).then(n);var r;o.q.push([[t,g,e,D],n]),r=I,A||(h.body.append(Object.assign(h.createElement('script'),{id:'captcha-provider',async:!0,src:r})),A=!0)});var g,I,D;w[L]=w[L]||{},w[L][v]=w[L][v]||{},w[L][v].q=[],w[L][y]=w[L][y]||{},w[L][y].protect=function(t,e){n(t,void 0,e),T(t)},Object.freeze(w[L][y]),function(t,e,n,w,h,L){const[v,y,A,g]=function(t,e,n){const i=e?o:[],u=t?c:[],d=[...i,...u],f=r(d),m=r(i),_=r(d.filter((([t,e])=>n.includes(e))));return[a(f),a(m),a(_),s()]}(w,h,L),I=t=>{const e=t.target;return e instanceof HTMLFormElement?e:e&&e.form},D=t=>v().includes(t);t.addEventListener('submit',(t=>{const e=I(t);if(!e)return;const n=D(e)&&!e.dataset.hcaptchaBound&&!e.dataset.recaptchaBound,o=_(e),c=g().includes(e)&&(!o||!o.value);(n||c)&&t.preventDefault(),c&&!n&&(function(t){try{if(!f())return;!function(t){const e=f();if(!e)return;const n=_(t);if(!n)return;const o=n.value;o&&e.removeItem(o)}(t);const e=Array.from(Array(32),(()=>Math.random().toString(36)[2])).join('');!function(t,e){_(t)||t.append(Object.assign(document.createElement('input'),{type:'hidden',name:u})),t.elements[u].value=e}(t,e),function(t,e){const n=f();if(!n)return;const o=[...t.querySelectorAll(`input[type='${i}']`)].map((({name:t})=>t)),c=[...d,...o],r={};for(const[a,s]of new FormData(t).entries())c.includes(a)||(r[a]=s);n.setItem(e,JSON.stringify({[m]:1,action:t.action,data:r}))}(t,e)}catch(e){console.error('failed to persist form',e)}}(e),e.submit())}));const S=(t,e)=>{t&&!t.dataset[E]&&(n(t,e.some((e=>e===t))),T(t))};for(const o of['focusin','change'])t.addEventListener(o,(t=>{const e=I(t);D(e)&&S(e,y())}));const B=e.get('form_key'),M=e.get(l),P=B&&M;t.addEventListener('DOMContentLoaded',(()=>{const t=y();if(P)for(const e of t)e.elements[l].value===M&&p(e,B);[...new Set([...A(),...v().filter((t=>'true'===t.dataset.shopifyCaptcha))])].forEach((e=>S(e,t)))}))}(h,new URLSearchParams(w.location.search),n,t,e,['guest_login'])})(!0,!0)}();</script>
vendor: 1 bytes, line 755
755
756<script integrity="sha256-JjoPp5ZfB1sSAs5SQaol1x1GgvveM+BgmRzyDexInEQ=" data-source-attribution="shopify.loadfeatures" defer="defer" src="//fr.melvita.com/cdn/shopifycloud/storefront/assets/storefront/load_feature-1bd60354.js" crossorigin="anonymous"></script>
vendor: 1 bytes, line 756
756
757<script>(function () {var userAgent = navigator.userAgent;var platform = navigator.platform;var maxTouchPoints = navigator.maxTouchPoints || 0;var isIOS = /iPad|iPhone|iPod/.test(platform) || (platform === 'MacIntel' && maxTouchPoints > 1);var isMacSafari = platform.indexOf('Mac') === 0 && /Safari/.test(userAgent) && !/Chrome|Chromium|CriOS|FxiOS|Edg|OPR|Android/.test(userAgent);var isAppleSafari = isIOS || isMacSafari;if (isAppleSafari) {fetch('/sf_private_access_tokens' + location.search).catch(function () {});}function browserMajorVersion(pattern) {var match = userAgent.match(pattern);return match ? parseInt(match[1], 10) : null;}function shouldLoadAutosizesPolyfill() {if (!window.PerformanceObserver?.supportedEntryTypes?.includes('paint')) {return false;}var chromeVersion = browserMajorVersion(/Chrome\/(\d+)/);if (chromeVersion !== null) {return chromeVersion < 126;}var firefoxVersion = browserMajorVersion(/Firefox\/(\d+)/);if (firefoxVersion !== null) {return firefoxVersion < 150;}var safariVersion = isAppleSafari ? browserMajorVersion(/Version\/(\d+).*Safari\//) : null;if (safariVersion !== null) {return safariVersion < 27;}return true;}if (shouldLoadAutosizesPolyfill()) {var autosizesScript = document.createElement('script');autosizesScript.async = true;autosizesScript.crossOrigin = 'anonymous';autosizesScript.src = "//fr.melvita.com/cdn/shopifycloud/storefront/assets/storefront/autosizes-84416378.js";(document.head || document.documentElement).appendChild(autosizesScript);}window.ShopifyAnalytics = window.ShopifyAnalytics || {};window.ShopifyAnalytics.performance = window.ShopifyAnalytics.performance || {};(function () {var LONG_FRAME_THRESHOLD = 50;var longAnimationFrames = [];var activeRafId = null;function collectLongFrames() {var previousTime = null;function rafMonitor(now) {if (activeRafId === null) {return;}var delta = now - previousTime;if (delta > LONG_FRAME_THRESHOLD) {longAnimationFrames.push({startTime: previousTime,endTime: now,});}previousTime = now;activeRafId = requestAnimationFrame(rafMonitor);}previousTime = performance.now();activeRafId = requestAnimationFrame(rafMonitor);}if (!window.PerformanceObserver?.supportedEntryTypes?.includes('long-animation-frame')) {collectLongFrames();var timeoutId = setTimeout(function () {cancelAnimationFrame(activeRafId);}, 10000);window.ShopifyAnalytics.performance.getLongAnimationFrames = function (stopCollection) {if (stopCollection === undefined) {stopCollection = false;}if (stopCollection) {clearTimeout(timeoutId);cancelAnimationFrame(activeRafId);}return longAnimationFrames;};}})();})();</script>
757<script crossorigin="anonymous" defer="defer" src="//fr.melvita.com/cdn/shopifycloud/storefront/assets/shopify_pay/storefront-616277c7.js?v=20250812"></script>
vendor: 1 bytes, line 757
757
758<script id="shopify-origin-trials" async="async" integrity="sha256-qJbe/jEZBHtr5W/BlA2cKAz3vkXu6vJQyLjgvgCC86g=" src="//cdn.shopify.com/shopifycloud/storefront/assets/storefront/origin_trials-318ab40a.js" crossorigin="anonymous" onload="window.__shopifyOriginTrialsDone = true" onerror="window.__shopifyOriginTrialsDone = true"></script>
vendor: 1 bytes, line 758
758
759<script>
760  window.Shopify = window.Shopify || {};
761  window.Shopify.MCP = window.Shopify.MCP || {};
762  window.Shopify.MCP.enabled = true;
763  window.Shopify.MCP.shop = "melvita2026.myshopify.com";
764  window.Shopify.MCP.mcpEndpoint = "https:\/\/fr.melvita.com\/api\/mcp";
765  window.Shopify.MCP.tools = [{"name":"search_shop_policies_and_faqs","description":"Used to get facts about the stores policies, products, or services.\nSome examples of questions you can ask are:\n  - What is your return policy?\n  - What is your shipping policy?\n  - What is your phone number?\n  - What are your hours of operation?\"\n","inputSchema":{"$schema":"https:\/\/json-schema.org\/draft\/2020-12\/schema","type":"object","properties":{"query":{"type":"string","description":"A natural language query."},"context":{"type":"string","description":"Additional information about the request such as user demographics, mood, location, or other relevant details that could help in tailoring the response appropriately."}},"required":["query"]}}];
766</script>
vendor: 1 bytes, line 766
766
767<script>(()=>{var d="shopify:webmcp_adapter_loaded",n=Symbol.for("shopify.webmcp_adapter_loading");function s(c,a,{win:r=window,doc:o=document}={}){function p(){try{return r.localStorage.getItem(d)==="true"}catch{return!1}}function l(){try{r.localStorage.setItem(d,"true")}catch{}}function u(){return typeof(o.modelContext||r.navigator?.modelContext)?.registerTool=="function"}function f(){if(r[n]||!u())return;let t=o.head||o.getElementsByTagName("head")[0];if(!t)return;let e=o.createElement("script");e.type="module",e.crossOrigin="anonymous",a&&(e.integrity=a),e.src=c,e.addEventListener("load",l,{once:!0}),e.addEventListener("error",()=>{r[n]=!1},{once:!0}),t.appendChild(e),r[n]=!0}function _(t){let e=o.getElementById("shopify-origin-trials");if(!e||r.__shopifyOriginTrialsDone){t();return}e.addEventListener("load",t,{once:!0}),e.addEventListener("error",t,{once:!0})}function i(){_(()=>r.setTimeout(f,0))}function m(){o.addEventListener("DOMContentLoaded",i,{once:!0})}p()?i():m()}s("\/\/fr.melvita.com\/cdn\/shopifycloud\/storefront\/assets\/storefront\/webmcp-c6b62ece.js","sha256-ke4DDuBjdvea3vxLWxHc9E9nq8zihuG4IfYEGbb77ys=");})();
768</script>
vendor: 1 bytes, line 768
768
769<script data-source-attribution="shopify.dynamic_checkout.dynamic.init">var Shopify=Shopify||{};Shopify.PaymentButton=Shopify.PaymentButton||{isStorefrontPortableWallets:!0,init:function(){window.Shopify.PaymentButton.init=function(){};var t=document.createElement("script");t.src="https://fr.melvita.com/cdn/shopifycloud/portable-wallets/latest/portable-wallets.fr.js",t.type="module",document.head.appendChild(t)}};
770</script>
vendor: 1 bytes, line 770
770
771<script data-source-attribution="shopify.dynamic_checkout.buyer_consent">
772  function portableWalletsHideBuyerConsent(e){var t=document.getElementById("shopify-buyer-consent"),n=document.getElementById("shopify-subscription-policy-button");t&&n&&(t.classList.add("hidden"),t.setAttribute("aria-hidden","true"),n.removeEventListener("click",e))}function portableWalletsShowBuyerConsent(e){var t=document.getElementById("shopify-buyer-consent"),n=document.getElementById("shopify-subscription-policy-button");t&&n&&(t.classList.remove("hidden"),t.removeAttribute("aria-hidden"),n.addEventListener("click",e))}window.Shopify?.PaymentButton&&(window.Shopify.PaymentButton.hideBuyerConsent=portableWalletsHideBuyerConsent,window.Shopify.PaymentButton.showBuyerConsent=portableWalletsShowBuyerConsent);
773</script>
vendor: 1 bytes, line 773
773
774<script data-source-attribution="shopify.dynamic_checkout.cart.bootstrap">document.addEventListener("DOMContentLoaded",(function(){function t(){return document.querySelector("shopify-accelerated-checkout-cart, shopify-accelerated-checkout")}if(t())Shopify.PaymentButton.init();else{new MutationObserver((function(e,n){t()&&(Shopify.PaymentButton.init(),n.disconnect())})).observe(document.body,{childList:!0,subtree:!0})}}));
775</script>
775
776<link id="shopify-accelerated-checkout-styles" rel="stylesheet" media="screen" href="https://fr.melvita.com/cdn/shopifycloud/portable-wallets/latest/accelerated-checkout-backwards-compat.css" crossorigin="anonymous">
777<style id="shopify-accelerated-checkout-cart">
778        #shopify-buyer-consent {
779  margin-top: 1em;
780  display: inline-block;
781  width: 100%;
782}
783
784#shopify-buyer-consent.hidden {
785  display: none;
786}
787
788#shopify-subscription-policy-button {
789  background: none;
790  border: none;
791  padding: 0;
792  text-decoration: underline;
793  font-size: inherit;
794  cursor: pointer;
795}
796
797#shopify-subscription-policy-button::before {
798  box-shadow: none;
799}
800
801      </style>
802
803<script id="shopify-cfh-end">window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
803
804
805
806
807<!-- Début de la mention OneTrust de consentement aux cookies pour le domaine fr.melvita.com -->
807<script src="https://cdn.cookielaw.org/scripttemplates/otSDKStub.js" type="text/javascript" charset="UTF-8" data-domain-script="2f186e1c-05ac-4625-975b-7963117343ff"></script>
vendor: 1 bytes, line 807
807
808<script type="text/javascript">
809  (function () {
810    // Correspondance groupes OneTrust → signaux de consentement Shopify.
811    var GROUP_MAP = {
812      analytics: ['C0002'],
813      preferences: ['C0003'],
814      marketing: ['C0004', 'C0005'],
815      sale_of_data: ['C0004']
816    };
817
818    var apiReady = false;
819    var pending = null;
820    var lastSent = '';
821
822    function log() {
823      if (!window.OT_SHOPIFY_DEBUG || !window.console) return;
824      console.log.apply(console, ['[OneTrust→Shopify]'].concat([].slice.call(arguments)));
825    }
826
827    function activeGroups() {
828      var raw = window.OnetrustActiveGroups || window.OptanonActiveGroups || '';
829      return String(raw).split(',').filter(Boolean);
830    }
831
832    // Ne rien pousser avant un choix explicite : sans appel, Shopify considère
833    // qu'aucune décision n'a été prise et applique son comportement par défaut.
834    function decisionMade() {
835      try {
836        if (window.OneTrust && typeof window.OneTrust.IsAlertBoxClosed === 'function') {
837          return window.OneTrust.IsAlertBoxClosed();
838        }
839      } catch (e) {}
840      return document.cookie.indexOf('OptanonAlertBoxClosed=') !== -1;
841    }
842
843    function buildConsent() {
844      var groups = activeGroups();
845      var consent = {};
846
847      Object.keys(GROUP_MAP).forEach(function (signal) {
848        consent[signal] = GROUP_MAP[signal].some(function (group) {
849          return groups.indexOf(group) !== -1;
850        });
851      });
852
853      return consent;
854    }
855
856    function flush() {
857      if (!apiReady || !pending) return;
858
859      var fingerprint = JSON.stringify(pending);
860      if (fingerprint === lastSent) return;
861
862      var payload = pending;
863
864      try {
865        window.Shopify.customerPrivacy.setTrackingConsent(payload, function (result) {
866          if (result && result.error) {
867            log('setTrackingConsent en erreur', result.error);
868            return;
869          }
870
871          lastSent = fingerprint;
872          log('consentement appliqué', payload);
873          document.dispatchEvent(new CustomEvent('onetrust:consent-applied', { detail: payload }));
874        });
875      } catch (e) {
876        log('setTrackingConsent a échoué', e);
877      }
878    }
879
880    function sync() {
881      if (!decisionMade()) {
882        log('aucune décision utilisateur pour le moment');
883        return;
884      }
885
886      pending = buildConsent();
887      flush();
888    }
889
890    // OptanonWrapper : appelé par OneTrust à l'init de la bannière puis à chaque
891    // enregistrement. OneTrustGroupsUpdated couvre les changements ultérieurs
892    // (centre de préférences, lien « Cookies » du footer).
893    window.OptanonWrapper = function () {
894      sync();
895    };
896
897    window.addEventListener('OneTrustGroupsUpdated', sync);
898
899    // Shopify.loadFeatures est injecté par content_for_header : on tolère un retard.
900    function loadApi(attempt) {
901      if (window.Shopify && typeof window.Shopify.loadFeatures === 'function') {
902        window.Shopify.loadFeatures([{ name: 'consent-tracking-api', version: '0.1' }], function (error) {
903          if (error) {
904            log('chargement de consent-tracking-api impossible', error);
905            return;
906          }
907
908          apiReady = true;
909          log('API Customer Privacy prête');
910          flush();
911        });
912        return;
913      }
914
915      if (attempt < 50) {
916        setTimeout(function () { loadApi(attempt + 1); }, 100);
917        return;
918      }
919
920      log('window.Shopify.loadFeatures introuvable');
921    }
922
923    loadApi(0);
924
925    // OneTrust injecte des h2/h3/h4 qui polluent la hiérarchie de titres de la page.
926    function demoteHeadings(root) {
927      root.querySelectorAll('h1, h2, h3, h4, h5, h6').forEach(function (heading) {
928        var div = document.createElement('div');
929        for (var i = 0; i < heading.attributes.length; i++) {
930          div.setAttribute(heading.attributes[i].name, heading.attributes[i].value);
931        }
932        div.className = heading.className;
933        div.innerHTML = heading.innerHTML;
934        heading.parentNode.replaceChild(div, heading);
935      });
936    }
937
938    new MutationObserver(function () {
939      ['onetrust-consent-sdk', 'onetrust-pc-sdk', 'ot-sdk-cookie-policy'].forEach(function (id) {
940        var root = document.getElementById(id);
941        if (root) demoteHeadings(root);
942      });
943    }).observe(document.documentElement, { childList: true, subtree: true });
944  })();
945</script>
945
946<!-- Fin de la mention OneTrust de consentement aux cookies pour le domaine fr.melvita.com -->
947
948<link href="//fr.melvita.com/cdn/shop/t/4/assets/theme.css?v=158163033534490993411789656534" rel="stylesheet" type="text/css" media="all" /><link href="//fr.melvita.com/cdn/shop/t/4/assets/ax-typography.css?v=182365509266313969341787908793" rel="stylesheet" type="text/css" media="all" /><link href="//fr.melvita.com/cdn/shop/t/4/assets/ax-badges.css?v=33586028472518224671788863846" rel="stylesheet" type="text/css" media="all" /><link href="//fr.melvita.com/cdn/shop/t/4/assets/ax-product-variations.css?v=46475551306836448481787911533" rel="stylesheet" type="text/css" media="all" /><link href="//fr.melvita.com/cdn/shop/t/4/assets/ax-carousel-arrows.css?v=116941441801558068081787908792" rel="stylesheet" type="text/css" media="all" /><link href="//fr.melvita.com/cdn/shop/t/4/assets/ax-collection-toolbar.css?v=183180576473984108121788183088" rel="stylesheet" type="text/css" media="all" /><!-- BEGIN app block: shopify://apps/regios-discounts/blocks/regios_discounts_embed/dc1514bb-4830-4102-bffa-e8b300bac5bd -->
949
950<script id="regios-dopp-config" type="application/json">
951{
952  "discountConfigs": {"1898210165074":"null","1898227859794":"null","1898289201490":"null","1905427972434":"null","1906147262802":"null","1906154668370":"null","1906156372306":"null","1906156601682":"null","1906158928210":"null","1906159747410":"null","1906160238930":"null","1906160828754":"null","1906161451346":"null","1906644123986":"null","1910377906514":"null","1910573629778":"null","1911809573202":"null","1912379277650":"null","1918336434514":"null","1918341546322":"null","1918341710162":"null","1918342005074":"null","1918343610706":"null","1918345019730":"null","1918358421842":"null","1918845419858":"null","1918846566738":"null","1919076139346":"null","1919127355730":"null"},
953  "calculateDiscountBasedOnQuantity": false,
954  "countryCode": "FR",
955  "currencyCode": "EUR",
956  "currencySymbol": "€",
957  
958  "customer": null,
959  
960  "customerMetafieldsToCheck": "",
961  
962  "moneyFormat": "0,00 €",
963  "moneyFormatString": "{{amount_with_comma_separator}} €",
964  
965  "themeType": "auto_detect",
966  "badgeTemplate": "[discount_percentage] OFF",
967  "badgeCss": "",
968  "descriptionTemplate": "[discount_message]",
969  "descriptionCss": "",
970  "priceOnSaleClass": "",
971  "delay": 0,
972  "logLevel": "error",
973  "regularPriceTemplate": "[regular_price]",
974  "salePriceTemplate": "[sale_price]",
975  "regiosDiscountsAppProxyUrl": "\/apps\/regios-discounts",
976  "useAppProxyForManualCodeStrikethrough": false,
977  "cart": {
978    "attributes": {},
979    "discountCodes": [],
980    "items": [
981      
982    ]
983  },
984  "featureFlags": "",
985  "designMode": false,
986  
987    "marketId": 116017496402,
988  
989
990  "doppV3Fallbacks": {
991    
992      "product": null,
993    
994    "keep-this-last": ""
995  }
996  
997}
998</script>
998
999
1000<script id="regios-dopp-script">
1001  var configScript = document.getElementById('regios-dopp-config');
1002
1003  if (!configScript) {
1004    throw new Error('[Regios Discounts] Critical error: Configuration script not found.');
1005  } 
1006
1007  var config = JSON.parse(configScript.textContent);
1008  window.RegiosDOPP = Object.assign(window.RegiosDOPP || {}, config);
1009</script>
1009
1010
1011
1012<!-- END app block --><!-- BEGIN app block: shopify://apps/addingwell/blocks/aw-gtm/c8ed21e7-0ac8-4249-8c91-cbdde850b5b8 -->
1012<script
1013  type="module"
1014>
1015  setTimeout(async function () {
1016    const keySessionStorage = 'aw_settings';
1017    let __AW__settings = JSON.parse(sessionStorage.getItem(keySessionStorage));
1018    if(!__AW__settings) {
1019      const awSettings = await fetch(
1020              "/apps/addingwell-proxy",
1021              {
1022                method: "GET",
1023                redirect: "follow",
1024                headers: {'Content-Type': 'application/json', 'Access-Control-Allow-Origin': '*'}
1025              }
1026      );
1027      if (awSettings.ok) {
1028        __AW__settings = await awSettings.json();
1029        sessionStorage.setItem(keySessionStorage, JSON.stringify(__AW__settings));
1030      } else {
1031        console.error('Addingwell - Loading proxy error', awSettings.status);
1032        return;
1033      }
1034    }
1035
1036    if(__AW__settings.insertGtmTag && __AW__settings.gtmId) {
1037      let __AW__gtmUrl = 'https://www.googletagmanager.com/gtm.js';
1038      let __AW__isAddingwellCdn = false;
1039      if(__AW__settings.insertGtmUrl && __AW__settings.gtmUrl) {
1040        __AW__gtmUrl = __AW__settings.gtmUrl;
1041        __AW__isAddingwellCdn = __AW__settings.isAddingwellCdn;
1042      }
1043
1044      (function(w,d,s,l,i){
1045        w[l]=w[l]||[];w[l].push({'gtm.start':new Date().getTime(),event:'gtm.js'});
1046        var f=d.getElementsByTagName(s)[0],j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';
1047        j.async=true;
1048        j.src=`${__AW__gtmUrl}?${__AW__isAddingwellCdn ? 'awl' : 'id'}=`+(__AW__isAddingwellCdn ? i.replace(/^GTM-/, '') : i)+dl;f.parentNode.insertBefore(j,f);
1049      })(window,document,'script',`${__AW__settings.dataLayerVariableName}`,`${__AW__settings.gtmId}`);
1050    }
1051
1052    const __AW__getEventNameWithSuffix = (eventName) => {
1053      return eventName + (__AW__settings.dataLayerEventSuffix ? "_" + __AW__settings.dataLayerEventSuffix : "");
1054    }
1055
1056    function __AW__waitForShopifyYCookie(maxAttempts, intervalMs) {
1057      return new Promise(function(resolve) {
1058        let attempts = 0;
1059        maxAttempts = maxAttempts || 5;
1060        intervalMs = intervalMs || 200;
1061        function check() {
1062          const match = document.cookie.match(/(?:^|;\s*)_shopify_y=([^;]*)/);
1063          if (match) {
1064            resolve(match[1]);
1065          } else if (attempts < maxAttempts) {
1066            attempts++;
1067            setTimeout(check, intervalMs);
1068          } else {
1069            console.warn('[AW] _shopify_y cookie not found after consent');
1070            resolve(null);
1071          }
1072        }
1073        check();
1074      });
1075    }
1076
1077    const __AW__CONSENT_KEY = 'aw_consent_state';
1078
1079    function __AW__getConsentState() {
1080      try {
1081        if (window.Shopify?.customerPrivacy?.currentVisitorConsent) {
1082          return JSON.stringify(window.Shopify.customerPrivacy.currentVisitorConsent());
1083        }
1084      } catch(e) {}
1085      return null;
1086    }
1087
1088    function __AW__isEmptyConsent(stateStr) {
1089      try {
1090        return Object.values(JSON.parse(stateStr)).every(v => v === '');
1091      } catch(e) {}
1092      return true;
1093    }
1094
1095    let __AW__prevConsentState = __AW__getConsentState() ?? localStorage.getItem(__AW__CONSENT_KEY);
1096
1097    document.addEventListener('visitorConsentCollected', async function(event) {
1098      const currentConsentState = __AW__getConsentState();
1099
1100      if (currentConsentState !== null && currentConsentState === __AW__prevConsentState) {
1101        return;
1102      }
1103
1104      __AW__prevConsentState = currentConsentState;
1105
1106      if (currentConsentState !== null) {
1107        if (__AW__isEmptyConsent(currentConsentState)) {
1108          localStorage.removeItem(__AW__CONSENT_KEY);
1109        } else {
1110          localStorage.setItem(__AW__CONSENT_KEY, currentConsentState);
1111        }
1112      }
1113
1114      window.Shopify.analytics.publish('addingwell:shopify_update_consent', {visitorConsentCollected: true});
1115
1116      const shopifyY = await __AW__waitForShopifyYCookie();
1117      if (!shopifyY) return;
1118
1119      window[__AW__settings.dataLayerVariableName] = window[__AW__settings.dataLayerVariableName] || [];
1120      window[__AW__settings.dataLayerVariableName].push({
1121        event: __AW__getEventNameWithSuffix('shopify_consent_updated'),
1122      });
1123    });
1124
1125    if(__AW__settings.enableDataLayer) {
1126      const MAX_ITEMS_BATCH = 10;
1127      const sendBatchEvents = (items, eventName, eventObject) => {
1128        let batch = [];
1129        for(let i  = 0; i < items.length; i++) {
1130          batch.push(items[i]);
1131          if(batch.length === MAX_ITEMS_BATCH || i === items.length - 1) {
1132            const eventClone = {
1133              ...eventObject,
1134              ecommerce: {
1135                ...eventObject.ecommerce,
1136                items: [...batch]
1137              }
1138            };
1139            window[__AW__settings.dataLayerVariableName].push({ ecommerce: null });
1140            window[__AW__settings.dataLayerVariableName].push({
1141              ...{'event': __AW__getEventNameWithSuffix(eventName)},
1142              ...eventClone
1143            });
1144
1145            batch = [];
1146          }
1147        }
1148      }
1149
1150      function __AW__filterNullOrEmpty(obj) {
1151        let filteredObj = {};
1152
1153        for (let key in obj) {
1154          if (obj.hasOwnProperty(key)) {
1155            let value = obj[key];
1156
1157            // If value is an object (and not null), recursively filter sub-elements
1158            if (typeof value === "object" && value !== null && value !== undefined) {
1159              let filteredSubObject = __AW__filterNullOrEmpty(value);
1160
1161              // Add the filtered sub-object only if it's not empty
1162              if (Object.keys(filteredSubObject).length > 0) {
1163                filteredObj[key] = filteredSubObject;
1164              }
1165            } else {
1166              // Add the value only if it's neither null nor an empty string
1167              if (value !== null && value !== "" && value !== undefined) {
1168                filteredObj[key] = value;
1169              }
1170            }
1171          }
1172        }
1173        return filteredObj;
1174      }
1175
1176      function getPageType(value) {
1177        const pageTypeMapping = {
1178          404: '404',
1179          article: 'article',
1180          blog: 'blog',
1181          cart: 'cart',
1182          collection: 'collection',
1183          gift_card: 'gift_card',
1184          index: 'homepage',
1185          product: 'product',
1186          search: 'searchresults',
1187          'customers/login': 'login',
1188          'customers/register': 'sign_up'
1189        };
1190        return pageTypeMapping[value] || 'other';
1191      }
1192      let __AW__cartReady = false;
1193
1194      function pushDataLayerEvents() {
1195        initCart();
1196        window[__AW__settings.dataLayerVariableName] = window[__AW__settings.dataLayerVariableName] || [];  // init data layer if doesn't already exist
1197        const templateName = "cart";
1198
1199        const getFormattedPrice = (priceInCents) => priceInCents/100;
1200        /**********************
1201         * DATALAYER SECTIONS
1202         ***********************/
1203        /**
1204         * DATALAYER: User Data
1205         * Build user_data properties.
1206         */
1207        let newCustomer = true;
1208        window.__AW__CommonData = {
1209          user_data: {
1210            new_customer: newCustomer,
1211          }
1212        };
1213
1214        
1215
1216        window.__AW__CommonData.country = "FR"
1217        window.__AW__CommonData.market = "fr"
1218        window.__AW__CommonData.marketId = 116017496402
1219
1220        
1221          window.__AW__CommonData.language = "fr-FR";
1222        
1223        window.__AW__CommonData = __AW__filterNullOrEmpty(window.__AW__CommonData);
1224
1225        // Ajout du hash SHA256 des champs sensibles de user_data (version robuste)
1226        async function sha256(str) {
1227          if (!str) return undefined;
1228          if (!(window.crypto && window.crypto.subtle)) {
1229            console.error('Crypto.subtle non supporté, hash impossible pour :', str);
1230            return undefined;
1231          }
1232          try {
1233            const buf = await window.crypto.subtle.digest('SHA-256', new TextEncoder().encode(str));
1234            return Array.from(new Uint8Array(buf)).map(x => x.toString(16).padStart(2, '0')).join('');
1235          } catch (e) {
1236            console.error('Erreur lors du hash SHA256 pour', str, e);
1237            return undefined;
1238          }
1239        }
1240        async function getUserDataHash(user_data) {
1241          const hashObj = {};
1242          if (!user_data) return hashObj;
1243          try {
1244            if (user_data.email_address) hashObj.email_address = await sha256(user_data.email_address);
1245            if (user_data.phone_number) hashObj.phone_number = await sha256(user_data.phone_number);
1246            if (user_data.address && typeof user_data.address === 'object') {
1247              hashObj.address = {};
1248              if (user_data.address.first_name) hashObj.address.first_name = await sha256(user_data.address.first_name);
1249              if (user_data.address.last_name) hashObj.address.last_name = await sha256(user_data.address.last_name);
1250              if (user_data.address.street) hashObj.address.street = await sha256(user_data.address.street);
1251              if (user_data.address.city) hashObj.address.city = await sha256(user_data.address.city);
1252              if (user_data.address.region) hashObj.address.region = await sha256(user_data.address.region);
1253              if (user_data.address.postal_code) hashObj.address.postal_code = await sha256(user_data.address.postal_code);
1254              if (user_data.address.country) hashObj.address.country = await sha256(user_data.address.country);
1255            }
1256          } catch (e) {
1257            console.error('Erreur lors du hash user_data_hashed', e);
1258          }
1259          return __AW__filterNullOrEmpty(hashObj);
1260        }
1261        (async function() {
1262          if (window.__AW__CommonData && window.__AW__CommonData.user_data) {
1263            window.__AW__CommonData.user_data_hashed = await getUserDataHash(window.__AW__CommonData.user_data);
1264          }
1265        })();
1266
1267        window.__AW__CommonData["page_type"] = getPageType(templateName);
1268        window.__AW__CommonData["theme"] = window?.Shopify?.theme;
1269        window[__AW__settings.dataLayerVariableName].push(window.__AW__CommonData);
1270
1271        window[__AW__settings.dataLayerVariableName].push({"event": __AW__getEventNameWithSuffix("page_view")});
1272
1273        /** DATALAYER: select_item handoff */
1274        const pendingSelectItemName = "aw_pending_select_item";
1275
1276        const __AW__pushSelectItem = (payload) => {
1277          window[__AW__settings.dataLayerVariableName].push({ ecommerce: null });
1278          window[__AW__settings.dataLayerVariableName].push(payload);
1279        };
1280
1281        const __AW__flushPendingSelectItem = () => {
1282          let pending = null;
1283          try {
1284            pending = sessionStorage.getItem(pendingSelectItemName);
1285            sessionStorage.removeItem(pendingSelectItemName);
1286          } catch (e) {
1287            return;
1288          }
1289          if (!pending) return;
1290          try {
1291            __AW__pushSelectItem(JSON.parse(pending));
1292          } catch (e) {
1293            console.warn('[AW] pending select_item error', e);
1294          }
1295        };
1296
1297        __AW__flushPendingSelectItem();
1298
1299
1300        /**
1301         * DATALAYER: 404 Pages
1302         * Fire on 404 Pages */
1303        
1304
1305
1306        /**
1307         * DATALAYER: Blog Articles
1308         * Fire on Blog Article Pages */
1309        
1310
1311        
1312
1313        
1314
1315        /** DATALAYER: Product List Page (Collections, Category)
1316         * Fire on all product listing pages. */
1317
1318        const __AW__transformNumberToString = (value) => {
1319          if (value !== null && value !== undefined && typeof value === 'number') {
1320            return value.toString();
1321          }
1322          /** By Default return the current value */
1323          return value;
1324        };
1325
1326        let discountPrice = 0.00;
1327        
1328
1329        /** DATALAYER: Product Page
1330         * Fire on all Product View pages. */
1331        
1332
1333        /** DATALAYER: Cart View
1334         * Fire anytime a user views their cart (non-dynamic) */
1335        
1336        const awEcommerceCart = {
1337                  ecommerce: {
1338                    currency: "EUR",
1339                    value: getFormattedPrice(0),
1340                    items:[
1341                      
1342                    ],
1343                  }
1344                };
1345        window[__AW__settings.dataLayerVariableName].push({ ecommerce: null });
1346        window[__AW__settings.dataLayerVariableName].push({
1347          ...{'event': __AW__getEventNameWithSuffix('view_cart')},
1348          ...awEcommerceCart
1349        });
1350        
1351
1352        let drawerCartAlreadyOpened = false;
1353        let pendingViewCartTimeout = null;
1354
1355        let stateObserver = null;
1356        let domObserver = null;
1357
1358        function initCart() {
1359          fetch(`${window.Shopify?.routes?.root || "/"}cart.js?adw=1&init=1`, {
1360            credentials: 'same-origin',
1361            headers: { 'Accept': 'application/json' }
1362          }).then(r => r.ok ? r.json() : null)
1363            .then(freshCart => {
1364              if (freshCart) {
1365                window.__AW__slaveShopifyCart = freshCart;
1366              } else {
1367                window.__AW__slaveShopifyCart = { items: [] };
1368              }
1369              __AW__cartReady = true;
1370            })
1371            .catch(e => {
1372              console.warn('[AW] Cart hydration failed', e);
1373              window.__AW__slaveShopifyCart = { items: [] };
1374              __AW__cartReady = true;
1375            });
1376        }
1377
1378        function fireViewCartOncePerOpen() {
1379          if (pendingViewCartTimeout) return;
1380
1381          drawerCartAlreadyOpened = true;
1382
1383          pendingViewCartTimeout = setTimeout(() => {
1384            pendingViewCartTimeout = null;
1385            if (!__AW__cartReady) return;
1386            const ecommerceDataLayer = {
1387              ecommerce: {
1388                currency: window.__AW__slaveShopifyCart.currency,
1389                value: window.__AW__slaveShopifyCart.total_price / 100,
1390                items: window.__AW__slaveShopifyCart.items.map(item => {
1391                  const price = (item.discounted_price ?? item.price) / 100;
1392                  const discount = (item.price - (item.discounted_price ?? 0)) / 100;
1393
1394                  let coupon = "";
1395                  if (Array.isArray(item?.discounts)) {
1396                    coupon = item.discounts
1397                            .filter(d => typeof d?.title === "string")
1398                            .map(d => d.title)
1399                            .join(", ");
1400                  }
1401
1402                  return {
1403                    item_id: __AW__transformNumberToString(item.product_id),
1404                    item_variant: item.variant_title,
1405                    item_variant_title: item.variant_title,
1406                    item_variant_id: __AW__transformNumberToString(item.variant_id),
1407                    item_product_id: __AW__transformNumberToString(item.product_id),
1408                    item_product_title: item.product_title,
1409                    item_name: item.product_title,
1410                    price,
1411                    discount,
1412                    item_brand: item.vendor,
1413                    item_category: item.product_type,
1414                    item_list_name: item.collection || "",
1415                    item_list_id: "",
1416                    quantity: item.quantity,
1417                    sku: __AW__transformNumberToString(item.sku),
1418                    coupon,
1419                    url: item.url,
1420                    selling_plan_id     : item?.selling_plan_allocation?.selling_plan?.id,
1421                    selling_plan_name   : item?.selling_plan_allocation?.selling_plan?.name
1422
1423                  };
1424                })
1425              }
1426            };
1427
1428            window[__AW__settings.dataLayerVariableName].push({ ecommerce: null });
1429            window[__AW__settings.dataLayerVariableName].push({
1430              event: __AW__getEventNameWithSuffix("view_cart"),
1431              ...ecommerceDataLayer
1432            });
1433          }, 1000);
1434        }
1435
1436        function resetOnClose() {
1437          drawerCartAlreadyOpened = false;
1438          if (pendingViewCartTimeout) {
1439            clearTimeout(pendingViewCartTimeout);
1440            pendingViewCartTimeout = null;
1441          }
1442        }
1443
1444        function getTargets() {
1445          const cartDrawer = document.querySelector("cart-drawer");
1446          const dialog =
1447                  document.querySelector("cart-drawer dialog") ||
1448                  document.querySelector("cart-drawer-component dialog") ||
1449                  document.querySelector("cart-drawer-component dialog[ref='dialog']");
1450
1451          return { cartDrawer, dialog };
1452        }
1453
1454        function isCartOpen({ cartDrawer, dialog }) {
1455          const openByDialog = !!dialog && (dialog.open || dialog.hasAttribute("open"));
1456          const openByClass = !!cartDrawer && cartDrawer.classList.contains("active");
1457          const openByAttr = !!cartDrawer && cartDrawer.hasAttribute("open");
1458          return openByDialog || openByClass || openByAttr;
1459        }
1460
1461        function attachStateObserver() {
1462          const { cartDrawer, dialog } = getTargets();
1463
1464          if (stateObserver) stateObserver.disconnect();
1465
1466          stateObserver = new MutationObserver(() => {
1467            const openNow = isCartOpen(getTargets());
1468
1469            if (openNow) {
1470              if (!drawerCartAlreadyOpened) fireViewCartOncePerOpen();
1471            } else {
1472              resetOnClose();
1473            }
1474          });
1475
1476          if (cartDrawer) {
1477            stateObserver.observe(cartDrawer, {
1478              attributes: true,
1479              attributeFilter: ["class", "open"]
1480            });
1481          }
1482
1483          if (dialog) {
1484            stateObserver.observe(dialog, {
1485              attributes: true,
1486              attributeFilter: ["open"]
1487            });
1488          }
1489
1490          const openNow = isCartOpen(getTargets());
1491          if (openNow) {
1492            if (!drawerCartAlreadyOpened) fireViewCartOncePerOpen();
1493          } else {
1494            resetOnClose();
1495          }
1496        }
1497
1498        function observeCartDrawerOpen() {
1499          attachStateObserver();
1500
1501          if (domObserver) domObserver.disconnect();
1502
1503          domObserver = new MutationObserver(() => {
1504            attachStateObserver();
1505          });
1506
1507          domObserver.observe(document.documentElement, {
1508            childList: true,
1509            subtree: true
1510          });
1511        }
1512
1513        observeCartDrawerOpen();
1514
1515
1516        /** DATALAYER: Search Results */
1517        var searchPage = new RegExp("search", "g");
1518        if(document.location.pathname.match(searchPage)){
1519          var __AW__items = [];
1520          
1521
1522          const awEcommerceSearch = {
1523            search_term: null,
1524            results_count: null,
1525            ecommerce: {
1526              currency: "EUR",
1527              items : []
1528            }
1529          };
1530          sendBatchEvents(__AW__items, "search", awEcommerceSearch);
1531        }
1532
1533
1534        const cartRegex = /\/cart\/(add|change|update)(\.js|\.json)?(\?.*)?$/;
1535        const pendingCartEventName = "aw_pending_cart_event";
1536        let awCartQueue = Promise.resolve();
1537
1538        if(sessionStorage.getItem(pendingCartEventName)) {
1539          scheduleCartSync();
1540        }
1541
1542        document.addEventListener('click', async function(e) {
1543          const btn = e.target.closest('[href*="/cart/add"], [action*="/cart/add"], button[name="add"]');
1544          if (!btn || !__AW__cartReady) return;
1545          snapshotCart();
1546        }, true);
1547
1548        patchFetch();
1549        patchXhr();
1550
1551        function snapshotCart() {
1552          try {
1553            sessionStorage.setItem(
1554              pendingCartEventName,
1555              JSON.stringify(window.__AW__slaveShopifyCart ?? { items: [] })
1556            );
1557          } catch (e) {
1558            console.warn('[AW] snapshot error', e);
1559          }
1560        }
1561
1562        function patchXhr() {
1563          const nativeSend = typeof XMLHttpRequest === 'function' ? XMLHttpRequest.prototype?.send : null;
1564          if (typeof nativeSend !== 'function' || nativeSend.__AW__patched) return;
1565
1566          XMLHttpRequest.prototype.send = function(body) {
1567            this.addEventListener('load', () => {
1568              try {
1569                const abs = this.responseURL || '';
1570                const u = new URL(abs, location.origin);
1571                const mt = u.pathname + (u.search || '');
1572                if (this.status === 200 && cartRegex.test(mt)) {
1573                  scheduleCartSync();
1574                }
1575              } catch (e) {
1576                console.error('[AW] XHR handler error', e);
1577              }
1578            });
1579            return nativeSend.apply(this, arguments);
1580          };
1581
1582          XMLHttpRequest.prototype.send.__AW__patched = true;
1583        }
1584
1585        function patchFetch() {
1586          const previousFetch = window.fetch;
1587          if (typeof previousFetch !== 'function' || previousFetch.__AW__patched) return;
1588
1589          window.fetch = async function (...args) {
1590            const resource = args[0];
1591            try {
1592
1593              const url = resource instanceof Request ? resource.url  : resource instanceof URL ? resource.href : String(resource);
1594              if (cartRegex.test(url)) {
1595                const response = await previousFetch.apply(this, args);
1596                if (response.ok) {
1597                  scheduleCartSync();
1598                } else {
1599                  console.warn(`Fetch for ${url} failed with status: ${response.status}`);
1600                }
1601                return response;
1602              }
1603            } catch (error) {
1604              console.error('[AW] Fetch Wrapper Error:', error);
1605            }
1606
1607            return previousFetch.apply(this, args);
1608          };
1609
1610          window.fetch.__AW__patched = true;
1611        }
1612
1613        function scheduleCartSync() {
1614          if (!__AW__cartReady) return;
1615          awCartQueue = awCartQueue
1616            .then(() => {
1617              if (!sessionStorage.getItem(pendingCartEventName)) snapshotCart();
1618              return runCartSyncOnce();
1619            }).catch(e => {
1620              console.error('[AW] scheduleCartSync error', e);
1621            });
1622        }
1623
1624        async function runCartSyncOnce() {
1625          try {
1626            const response = await fetch(`${window.Shopify.routes.root || "/"}cart.js?adw=1`, {
1627              credentials: 'same-origin',
1628              headers: { 'Accept': 'application/json' }
1629            });
1630            if (!response.ok) throw new Error('HTTP ' + response.status);
1631            const newCart = await response.json();
1632            await compareCartData(newCart);
1633          } catch (error) {
1634            console.error('[AW] Error fetching /cart.js (singleton):', error);
1635          }
1636        }
1637
1638        function compareCartData(newCartData) {
1639          return new Promise((resolve) => {
1640            setTimeout(() => {
1641              try {
1642                const oldCartData = sessionStorage.getItem(pendingCartEventName) ? JSON.parse(sessionStorage.getItem(pendingCartEventName)) : {items: []};
1643                newCartData = newCartData || {items: []};
1644                const cartItemKey = item => `${item.variant_id ?? item.id}:${item.selling_plan_allocation?.selling_plan?.id ?? ''}`;
1645                const oldItems = new Map(oldCartData.items.map(item => [cartItemKey(item), item]));
1646                const newItems = new Map(newCartData.items.map(item => [cartItemKey(item), item]));
1647
1648                newItems.forEach((newItem, key) => {
1649                  const oldItem = oldItems.get(key);
1650                  const eventName = "add_to_cart";
1651                  if (!oldItem) {
1652                    handleCartDataLayer(eventName, newItem.quantity, newItem);
1653                  } else if (newItem.quantity > oldItem.quantity) {
1654                    handleCartDataLayer(eventName, newItem.quantity - oldItem.quantity, newItem);
1655                  }
1656                });
1657
1658                oldItems.forEach((oldItem, key) => {
1659                  const newItem = newItems.get(key);
1660                  const eventName = "remove_from_cart";
1661                  if (!newItem) {
1662                    handleCartDataLayer(eventName, oldItem.quantity, oldItem);
1663                  } else if (oldItem.quantity > newItem.quantity) {
1664                    handleCartDataLayer(eventName, oldItem.quantity - newItem.quantity, newItem);
1665                  }
1666                });
1667
1668                sessionStorage.removeItem(pendingCartEventName);
1669                window.__AW__slaveShopifyCart = newCartData;
1670              } catch(e) {
1671                console.error('[AW] compareCartData error', e);
1672                sessionStorage.removeItem(pendingCartEventName);
1673              } finally {
1674                resolve();
1675              }
1676            }, 500);
1677          });
1678        }
1679
1680        function handleCartDataLayer(eventName, quantity, item) {
1681          const price = (item.discounted_price ?? item.price) / 100;
1682          const discount = (item.price - (item.discounted_price ?? 0)) / 100;
1683          const totalValue = price * quantity;
1684          let coupon = "";
1685          if(Array.isArray(item?.discounts)) {
1686            coupon = item.discounts
1687                    .filter(discount => typeof discount?.title === 'string')
1688                    .map(discount => discount.title)
1689                    .join(', ');
1690          }
1691
1692          const ecommerceCart = {
1693            ecommerce: {
1694              currency: "EUR",
1695              value: totalValue,
1696              items: [{
1697                item_id: __AW__transformNumberToString(item.product_id),
1698                item_variant: item.variant_title || "Default Variant",
1699                item_variant_id: __AW__transformNumberToString(item.variant_id),
1700                item_variant_title: item.variant_title || "Default Variant",
1701                item_name: item.product_title,
1702                item_product_id: __AW__transformNumberToString(item.product_id),
1703                item_product_title: item.product_title,
1704                sku: __AW__transformNumberToString(item.sku),
1705                discount: discount,
1706                price: price,
1707                item_brand: item.vendor,
1708                item_category: item.product_type,
1709                quantity: quantity,
1710                coupon: coupon,
1711                url: item?.url,
1712                selling_plan_id     : item?.selling_plan_allocation?.selling_plan?.id,
1713                selling_plan_name   : item?.selling_plan_allocation?.selling_plan?.name
1714              }]
1715            }
1716          };
1717
1718          window[__AW__settings.dataLayerVariableName].push({ ecommerce: null });
1719          window[__AW__settings.dataLayerVariableName].push({
1720            ...{ 'event': __AW__getEventNameWithSuffix(eventName) },
1721            ...ecommerceCart
1722          });
1723
1724        }
1725      }
1726
1727      if (document.readyState === 'loading') {
1728        // document still loading...
1729        document.addEventListener('DOMContentLoaded', () => {
1730          pushDataLayerEvents();
1731        });
1732      } else {
1733        // already loaded, chocs away!
1734        pushDataLayerEvents();
1735      }
1736    }
1737  }, 0);
1738</script>
1738
1739
1740
1741<!-- END app block --><!-- BEGIN app block: shopify://apps/regios-discounts/blocks/regios_add_to_cart_embed/dc1514bb-4830-4102-bffa-e8b300bac5bd -->
1741<script>
1742  window.RegiosDOPP_AddToCart = window.RegiosDOPP_AddToCart || {
1743    reloadInUnsupportedThemes: true,
1744    maxRetries: null,
1745    reAddAfterManualRemoval: false,
1746  };
1747</script>
1747
1748
1749
1750
1751<!-- END app block --><!-- BEGIN app block: shopify://apps/yotpo-product-reviews/blocks/settings/eb7dfd7d-db44-4334-bc49-c893b51b36cf -->
1752
1753
1754  
1754<script type="text/javascript" src="https://cdn-widgetsrepository.yotpo.com/v1/loader/gLTEH61CavIahnKMBUMow8H10Up5GsgD5uocpXc1?languageCode=fr" async></script>
1754
1755
1756
1757
1758  
1759<!-- END app block --><!-- BEGIN app block: shopify://apps/klaviyo-email-marketing-sms/blocks/klaviyo-onsite-embed/2632fe16-c075-4321-a88b-50b567f42507 -->
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772  
1772<script async src="https://static.klaviyo.com/onsite/js/VVuEpA/klaviyo.js?company_id=VVuEpA"></script>
1772
1773  
1773<script>!function(){if(!window.klaviyo){window._klOnsite=window._klOnsite||[];try{window.klaviyo=new Proxy({},{get:function(n,i){return"push"===i?function(){var n;(n=window._klOnsite).push.apply(n,arguments)}:function(){for(var n=arguments.length,o=new Array(n),w=0;w<n;w++)o[w]=arguments[w];var t="function"==typeof o[o.length-1]?o.pop():void 0,e=new Promise((function(n){window._klOnsite.push([i].concat(o,[function(i){t&&t(i),n(i)}]))}));return e}}})}catch(n){window.klaviyo=window.klaviyo||[],window.klaviyo.push=function(){var n;(n=window._klOnsite).push.apply(n,arguments)}}}}();</script>
1773
1774
1775  
1776
1777
1778
1779
1780  
1780<script>
1781    window.klaviyoReviewsProductDesignMode = false
1782  </script>
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792<!-- END app block --><!-- BEGIN app block: shopify://apps/iadvize-ai-shopping-assistant/blocks/iadvize-tag/97672039-3647-476c-9ad9-4f6daaa2d3e4 --><!-- START IADVIZE LIVECHAT -->
1793
1794<script>
1795
1796function loadIAdvize() {
1797    if (window.__idzLoaded) return;
1798    window.__idzLoaded = true;
1799
1800    function fromShopifyToIAdvizePageType(shopifyPageType) {
1801      if (!shopifyPageType) {
1802        return 'OTHER_PAGE';
1803      }
1804
1805      switch (shopifyPageType.toLowerCase()) {
1806        case 'index':
1807        case 'home':
1808          return 'HOME_PAGE';
1809        case 'collection':
1810          return 'CATEGORY_PAGE';
1811        case 'product':
1812          return 'PRODUCT_DETAIL_PAGE';
1813        case 'cart':
1814          return 'CART_PAGE';
1815        case 'checkout':
1816          return 'CHECKOUT_PAGE';
1817        case 'account':
1818          return 'ACCOUNT_PAGE';
1819        case 'search':
1820          return 'SEARCH_PAGE';
1821        case 'signup':
1822          return 'SIGNUP_PAGE';
1823        case 'page':
1824          return 'CONTENT_PAGE';
1825        case 'info':
1826          return 'INFO_PAGE';
1827        default:
1828          return 'OTHER_PAGE';
1829      }
1830    }
1831
1832    window.iAdvizeInterface = window.iAdvizeInterface || [];
1833    window.iAdvizeInterface.config = {
1834        sid: 9464
1835    };
1836
1837    // Implement Add-to-Cart callback for iAdvize
1838    window.iAdvizeInterface.push(function(iAdvize) {
1839      const iadvizePageType = fromShopifyToIAdvizePageType(ShopifyAnalytics.meta.page.pageType);
1840      const productId =  null ;
1841      const customData = {};
1842
1843      if (iadvizePageType === 'PRODUCT_DETAIL_PAGE') {
1844        customData.page_type = 'product';
1845      }
1846
1847      if (iadvizePageType) {
1848        customData.iadvize_page_type = iadvizePageType;
1849      }
1850
1851      if (productId) {
1852        customData.product_id = productId;
1853      }
1854
1855      if (Object.keys(customData).length > 0) {
1856        iAdvize.set('customData', customData);
1857      }
1858
1859      // Listen for navigation events and update variant
1860      iAdvize.on('tag:eventsChange', function(events) {
1861        try {
1862          if (Array.isArray(events)) {
1863            events.forEach(function(event) {
1864              if (event.type === 'data-pipeline' && event.event === 'visitor.navigate') {
1865                // Visitor navigated, update variant
1866                setTimeout(function() {
1867                  const form = document.querySelector('form[id*="product"], [data-product-form]');
1868                  const variantInput = form?.querySelector('input[name="id"][type="hidden"]');
1869                  const currentVariant = variantInput?.value;
1870
1871                  if (currentVariant) {
1872                    const existingCustomData = iAdvize.get('customData') || {};
1873                    iAdvize.set('customData', {
1874                      ...existingCustomData,
1875                      product_id: currentVariant,
1876                      iadvize_page_type: 'PRODUCT_DETAIL_PAGE'
1877                    });
1878                  }
1879                }, 100);
1880              }
1881            });
1882          }
1883        } catch (e) {
1884          // Ignore errors
1885        }
1886      });
1887
1888      // register product id watcher, to react to variant changes
1889      (function initVariantObserver(){
1890        try {
1891          if (window.__idzVariantObserverStarted) return; // avoid duplicates
1892          window.__idzVariantObserverStarted = true;
1893
1894          let lastVariantId = null;
1895          const getVariantId = function() {
1896            try {
1897              const variantParam = document.location.search.replace('?', '').split('&').map((param) => param.split('=')).find(([key, value]) => {
1898                return (key === 'variant' && value)
1899              });
1900
1901              return (variantParam && variantParam[1]) || null;
1902            } catch (e) {
1903              return null;
1904            }
1905          };
1906
1907          const onChange = function(newId) {
1908            // Update iAdvize custom data with the new product/variant id
1909            iAdvize.set('customData', { product_id: newId });
1910          };
1911
1912          setInterval(function(){
1913            const current = getVariantId();
1914            if (current !== lastVariantId && current != null) {
1915              lastVariantId = current;
1916              onChange(current);
1917            }
1918          }, 250);
1919
1920          // Trigger immediately if value already present
1921          const initial = getVariantId();
1922          if (initial != null) {
1923            lastVariantId = initial;
1924            onChange(initial);
1925          }
1926
1927        } catch (e) {
1928          // fail-safe: do nothing if observer setup fails
1929        }
1930      })();
1931
1932
1933      // Register the callback for Add-to-Cart events
1934      iAdvize.labs().onAddToCart((itemId) => {
1935        return new Promise((resolve, reject) => {
1936          // From here, the loading state is automatically enabled
1937
1938          // Use Shopify's Ajax API to add the item to cart
1939          fetch('/cart/add.js', {
1940            method: 'POST',
1941            headers: {
1942              'Content-Type': 'application/json',
1943            },
1944            body: JSON.stringify({
1945              id: itemId,
1946              quantity: 1
1947            })
1948          })
1949          .then(response => {
1950            if (response.ok) {
1951              return response.json();
1952            }
1953            throw new Error('Network response was not ok');
1954          })
1955          .then(data => {
1956            // Successfully added to cart
1957            resolve(true);
1958          })
1959          .catch(error => {
1960            console.error('Error adding product to cart:', error);
1961            resolve(false);
1962          });
1963        });
1964      });
1965    });
1966    const script = document.createElement("script");
1967    
1968      script.src = "//halc.iadvize.com/iadvize.js";
1969    
1970    (function() {
1971      if (document.body) {
1972        document.body.append(script);
1973        return;
1974      }
1975      const deadline = Date.now() + 10000;
1976      const intervalId = setInterval(function() {
1977        if (document.body) {
1978          clearInterval(intervalId);
1979          document.body.append(script);
1980        } else if (Date.now() >= deadline) {
1981          clearInterval(intervalId);
1982        }
1983      }, 250);
1984    })();
1985  }
1986
1987  (function() {
1988    const region = 'FR';
1989    const consentMode = 'always';
1990    const hasConsentApi = !!(window.Shopify && window.Shopify.loadFeatures);
1991    const POLL_INTERVAL_MS = 250;
1992    const POLL_MAX_MS = 10000;
1993
1994    function checkConsent() {
1995      const cp = window.Shopify && window.Shopify.customerPrivacy;
1996      return cp && cp.preferencesProcessingAllowed() && cp.analyticsProcessingAllowed();
1997    }
1998
1999    let pollIntervalId = null;
2000    function stopPolling() {
2001      if (pollIntervalId !== null) {
2002        clearInterval(pollIntervalId);
2003        pollIntervalId = null;
2004      }
2005    }
2006
2007    function grantAndLoad() {
2008      stopPolling();
2009      document.removeEventListener('visitorConsentCollected', onConsentCollected);
2010      loadIAdvize();
2011    }
2012
2013    // Registered upfront — catches CMP events even if loadFeatures callback fires
2014    // late or not at all (known Shopify issue on some shops).
2015    function onConsentCollected(event) {
2016      if (event.detail.analyticsAllowed && event.detail.preferencesAllowed) {
2017        grantAndLoad();
2018      }
2019    }
2020    document.addEventListener('visitorConsentCollected', onConsentCollected);
2021
2022    // 'never': embed stays inert. iAdvize is loaded outside Shopify (CMP / tag
2023    // manager), which is the source of truth. Do nothing.
2024    if (consentMode === 'never') {
2025      stopPolling();
2026      document.removeEventListener('visitorConsentCollected', onConsentCollected);
2027      return;
2028    }
2029
2030    // 'always': load immediately, never gate on Shopify consent.
2031    if (consentMode === 'always') {
2032      grantAndLoad();
2033      return;
2034    }
2035
2036    // 'auto' (legacy default): US loads immediately; fail-open when the consent
2037    // API is unavailable. Other regions fall through to the consent-required path.
2038    if (consentMode === 'auto' && (region === 'US' || !hasConsentApi)) {
2039      grantAndLoad();
2040      return;
2041    }
2042
2043    // 'sync', or non-US 'auto': require Shopify consent. Load now if already
2044    // granted, otherwise rely on the upfront listener + poll + loadFeatures
2045    // fallback below. 'sync' is fail-closed: if consent is never granted (or the
2046    // API is absent) the tag does not fire — clients whose CMP doesn't sync with
2047    // Shopify should use 'always' or 'never' instead.
2048    if (checkConsent()) {
2049      grantAndLoad();
2050      return;
2051    }
2052
2053    // Without Shopify's consent API there is nothing to poll or load. We reach
2054    // here only in 'sync' mode (non-US 'auto' with no API loaded immediately
2055    // above), so stay fail-closed: the tag does not fire. The upfront listener
2056    // remains registered in case the CMP populates consent later.
2057    if (!hasConsentApi) {
2058      return;
2059    }
2060
2061    // Poll customerPrivacy for late population (some CMPs write async without
2062    // firing visitorConsentCollected, and Shopify.loadFeatures callback may
2063    // never fire on affected shops). Listener stay active past deadline.
2064    const deadline = Date.now() + POLL_MAX_MS;
2065    pollIntervalId = setInterval(function() {
2066      if (checkConsent()) {
2067        grantAndLoad();
2068        return;
2069      }
2070      if (Date.now() >= deadline) {
2071        stopPolling();
2072      }
2073    }, POLL_INTERVAL_MS);
2074
2075    window.Shopify.loadFeatures(
2076      [{ name: 'consent-tracking-api', version: '0.1' }],
2077      function(error) {
2078        if (error) {
2079          // Fail open for legacy 'auto' (preserve prior behavior); stay
2080          // fail-closed for 'sync'.
2081          if (consentMode === 'auto') {
2082            grantAndLoad();
2083          }
2084        } else if (checkConsent()) {
2085          grantAndLoad();
2086        }
2087      }
2088    );
2089  })();
2090</script>
2090
2091
2092<!-- END IADVIZE LIVECHAT -->
2093
2094
2095<!-- END app block -->
2095<script src="https://cdn.shopify.com/extensions/01a0d067-22bb-70e7-ab2c-d9c2f3a42271/regios-automatic-discounts-1510/assets/regios_discounts_embed.js" type="text/javascript" defer="defer"></script>
vendor: 1 bytes, line 2095
2095
2096<script src="https://cdn.shopify.com/extensions/01a0d067-22bb-70e7-ab2c-d9c2f3a42271/regios-automatic-discounts-1510/assets/regios_add_to_cart_embed.js" type="text/javascript" defer="defer"></script>
2096
2097<link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch">
2098<script>(function(){if ("sendBeacon" in navigator && "performance" in window) {try {var session_token_from_headers = performance.getEntriesByType('navigation')[0].serverTiming.find(x => x.name == '_s').description;} catch {var session_token_from_headers = undefined;}var session_cookie_matches = document.cookie.match(/_shopify_s=([^;]*)/);var session_token_from_cookie = session_cookie_matches && session_cookie_matches.length === 2 ? session_cookie_matches[1] : "";var session_token = session_token_from_headers || session_token_from_cookie || "";function handle_abandonment_event(e) {var entries = performance.getEntries().filter(function(entry) {return /monorail-edge.shopifysvc.com/.test(entry.name);});if (!window.abandonment_tracked && entries.length === 0) {window.abandonment_tracked = true;var currentMs = Date.now();var navigation_start = performance.timing.navigationStart;var payload = {shop_id: 107173183826,url: window.location.href,navigation_start,duration: currentMs - navigation_start,session_token,page_type: "cart"};window.navigator.sendBeacon("https://monorail-edge.shopifysvc.com/v1/produce", JSON.stringify({schema_id: "online_store_buyer_site_abandonment/1.1",payload: payload,metadata: {event_created_at_ms: currentMs,event_sent_at_ms: currentMs}}));}}window.addEventListener('pagehide', handle_abandonment_event);}}());</script>
vendor: 1 bytes, line 2098
2098
2099<script>
2100  window.__TREKKIE_SHIM_QUEUE = window.__TREKKIE_SHIM_QUEUE || [];
2101</script>
vendor: 1 bytes, line 2101
2101
2102<script>(function(){var wpmLoader=function(){"use strict";var e=/Googlebot|Storebot-Google|bingbot|Baiduspider|YandexBot|DuckDuckBot|Slurp|facebookexternalhit|Twitterbot|LinkedInBot|Applebot|AdsBot-Google|Mediapartners-Google|APIs-Google|PetalBot|SemrushBot|AhrefsBot|MJ12bot|DotBot|Acunetix|PerplexityBot|Perplexity-User/i,t=/bytedance/i;function i(){try{var e=document.cookie;if(!e||"string"!=typeof e)return;for(var t=0,i=e.split(";");t<i.length;t++){var n=i[t],r=n.indexOf("=");if(-1!==r){var o=n.slice(0,r).trim();if(o){var a=void 0;try{a=decodeURIComponent(o)}catch(e){a=o}if("_shopify_s"===a){var d=n.slice(r+1).trim();try{return decodeURIComponent(d)}catch(e){return d}}}}}return}catch(e){return}}function n(e){try{"undefined"!=typeof console&&"function"==typeof console.warn&&console.warn(e)}catch(e){}}function r(e,t){return"string"==typeof e&&e.length>0&&e.length<=t?e:void 0}function o(e){var t;switch(null==(t=null==e?void 0:e.navigation)?void 0:t.type){case 0:return"navigate";case 1:return"reload";case 2:return"back_forward";default:return}}function a(){var e,t,i;try{var n=null==(i=null==(t=null==(e=self.ShopifyAnalytics)?void 0:e.lib)?void 0:t.trekkie)?void 0:i.state;return"awaiting-consent"===n||"initialized"===n?n:void 0}catch(e){return}}return function(d,s,u,l){var c=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{};try{var p=c.trekkieShim;!0!==p&&"true"!==p||null!=window.__TREKKIE_SHIM_QUEUE||(window.__TREKKIE_SHIM_QUEUE=[])}catch(e){}var f,v,h,y,g=(v=(f={modern:/Edge?\/(1{2}[4-9]|1[2-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Firefox\/(1{2}[4-9]|1[2-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Chrom(ium|e)\/(9{2}|\d{3,})\.\d+(\.\d+|)|(Maci|X1{2}).+ Version\/(15\.\d+|(1[6-9]|[2-9]\d|\d{3,})\.\d+)([,.]\d+|)( \(\w+\)|)( Mobile\/\w+|) Safari\/|Chrome.+OPR\/(9{2}|\d{3,})\.\d+\.\d+|(CPU[ +]OS|iPhone[ +]OS|CPU[ +]iPhone|CPU IPhone OS|CPU iPad OS)[ +]+(15[._]\d+|(1[6-9]|[2-9]\d|\d{3,})[._]\d+)([._]\d+|)|Android:?[ /-](14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})(\.\d+|)(\.\d+|)|Android.+Firefox\/(15\d|1[6-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+Chrom(ium|e)\/(14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|SamsungBrowser\/([2-9]\d|\d{3,})\.\d+/,legacy:/Edge?\/(1[6-9]|[2-9]\d|\d{3,})\.\d+(\.\d+|)|Firefox\/(5[4-9]|[6-9]\d|\d{3,})\.\d+(\.\d+|)|Chrom(ium|e)\/(5[1-9]|[6-9]\d|\d{3,})\.\d+(\.\d+|)([\d.]+$|.*Safari\/(?![\d.]+ Edge\/[\d.]+$))|(Maci|X1{2}).+ Version\/(10\.\d+|(1[1-9]|[2-9]\d|\d{3,})\.\d+)([,.]\d+|)( \(\w+\)|)( Mobile\/\w+|) Safari\/|Chrome.+OPR\/(3[89]|[4-9]\d|\d{3,})\.\d+\.\d+|(CPU[ +]OS|iPhone[ +]OS|CPU[ +]iPhone|CPU IPhone OS|CPU iPad OS)[ +]+(10[._]\d+|(1[1-9]|[2-9]\d|\d{3,})[._]\d+)([._]\d+|)|Android:?[ /-](14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})(\.\d+|)(\.\d+|)|Mobile Safari.+OPR\/([89]\d|\d{3,})\.\d+\.\d+|Android.+Firefox\/(15\d|1[6-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+Chrom(ium|e)\/(14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+(UC? ?Browser|UCWEB|U3)[ /]?(15\.([5-9]|\d{2,})|(1[6-9]|[2-9]\d|\d{3,})\.\d+)\.\d+|SamsungBrowser\/(5\.\d+|([6-9]|\d{2,})\.\d+)|Android.+MQ{2}Browser\/(14(\.(9|\d{2,})|)|(1[5-9]|[2-9]\d|\d{3,})(\.\d+|))(\.\d+|)|K[Aa][Ii]OS\/(3\.\d+|([4-9]|\d{2,})\.\d+)(\.\d+|)/}).modern,h=f.legacy,(y=navigator.userAgent).match(e)?"bot":y.match(v)?"modern":y.match(h)?"legacy":y.match(t)?"bot":"unknown"),m=function(e){var t,i,n=r(e,128);try{var a=window.performance,d=null==(t=null==a?void 0:a.getEntriesByType)?void 0:t.call(a,"navigation")[0];if(!d)return{requestId:n,navigationType:o(a)};var s="type"in d?r(d.type,64):void 0,u="serverTiming"in d&&Array.isArray(d.serverTiming)?d.serverTiming:[];return{requestId:null!=n?n:r(null==(i=u.find(function(e){return"requestID"===e.name}))?void 0:i.description,128),navigationType:s}}catch(e){return{requestId:n}}}(c.requestId),w=function(e){var t=e.version,r=e.browserTarget,o=e.surface,a=e.shopId,d=e.monorailEndpoint,s=window.location.href;return{emit:function(e){var u=e.status,l=e.errorMsg,c=e.failureReason,p=e.useKeepaliveFallback,f=void 0!==p&&p,v=e.navigationType,h=e.pagehidePersisted,y=e.requestId,g=e.trekkieState;if(d){var m,w;try{var b=(new Date).getTime();m=JSON.stringify({metadata:{event_sent_at_ms:b},events:[{schema_id:"web_pixels_manager_load/3.3",payload:{version:t,bundle_target:r,page_url:s,status:u,surface:o,error_msg:l,failure_reason:c,navigation_type:v,pagehide_persisted:h,request_id:y,trekkie_state:g,shop_id:a,visit_token:i()},metadata:{event_created_at_ms:b}}]})}catch(e){return}try{if("function"==typeof window.navigator.sendBeacon&&-1===(w=window.navigator.userAgent).indexOf("iPhone; CPU iPhone OS 12_")&&-1===w.indexOf("iPad; CPU OS 12_")&&-1===w.indexOf("iPod touch; CPU iPhone OS 12_")&&window.navigator.sendBeacon.bind(window.navigator)(d,m))return}catch(e){}if(f)try{"function"==typeof window.fetch&&window.fetch(d,{method:"POST",headers:{"Content-Type":"text/plain"},body:m,keepalive:!0}
2102).catch(function(){})}catch(e){}else try{var _=new XMLHttpRequest;_.open("POST",d,!0),_.setRequestHeader("Content-Type","text/plain"),_.send(m)}catch(e){n("[Web Pixels Manager] Got an unhandled error while logging to Monorail.")}}else n("[Web Pixels Manager] No Monorail endpoint provided, skipping logging.")}}}({version:u,browserTarget:g,surface:d.surface,shopId:d.shopId,monorailEndpoint:d.monorailEndpoint});if(Boolean(null==(_=null==(b=window.Shopify)?void 0:b.analytics)?void 0:_.replayQueue))w.emit({status:"setup-skipped",errorMsg:"replay queue already initialized."});else{var b,_;w.emit({status:"setup-started"}),window.Shopify=window.Shopify||{};var S=window.Shopify;S.analytics=S.analytics||{};var P=S.analytics;P.replayQueue=[],P.publish=function(e,t,i){return P.replayQueue.push([e,t,i]),!0};try{self.performance.mark("wpm:start")}catch(e){}var k,C="modern"===g?"modern":"legacy",E=(null!=l?l:{modern:"",legacy:""})[C],I=[(k={baseUrl:s,hashVersion:u,buildTarget:C}).baseUrl,"/wpm","/b",k.hashVersion,"modern"===k.buildTarget?"m":"l",".js"].join(""),O=!1,T=!1;try{c.browserTarget=g,function(){O=!0;try{window.addEventListener("pagehide",M)}catch(e){O=!1}}(),R(function(){try{R(x)}catch(e){D(e)}}),w.emit({status:"loading",requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()})}catch(e){D(e)}}function U(){var e;if(q(),!function(){var e,t;return Boolean(null==(t=null==(e=window.Shopify)?void 0:e.analytics)?void 0:t.initialized)}()){var t,i,n;try{if("function"!=typeof(null==(e=window.webPixelsManager)?void 0:e.init))return void A();if(!(null!==(n=i=t=window.webPixelsManager.init(d))&&"function"!=typeof n&&Object(n)===n&&"publish"in i&&"function"==typeof i.publish&&"publishCustomEvent"in i&&"function"==typeof i.publishCustomEvent&&"visitor"in i&&"function"==typeof i.visitor))return void A()}catch(e){return void A(e)}var r=window.Shopify.analytics;r.replayQueue.forEach(function(e){var i=e[0],n=e[1],r=e[2];t.publishCustomEvent(i,n,r)}),r.replayQueue=[],r.publish=t.publishCustomEvent,r.visitor=t.visitor,r.initialized=!0}}function A(e){B("manager_api_unavailable",void 0===e?void 0:Q(e))}function x(){B("script_load_failed","".concat(I," has failed to load"))}function B(e,t){T||(T=!0,q(),w.emit({status:"failed",errorMsg:t,failureReason:e,requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()}))}function M(e){O&&(q(),w.emit({status:"pagehide-while-loading",useKeepaliveFallback:!0,pagehidePersisted:e.persisted,requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()}))}function q(){O=!1;try{window.removeEventListener("pagehide",M)}catch(e){}}function R(e){var t;!function(e){var t=e.src,i=e.async,n=void 0===i||i,r=e.onload,o=e.onerror,a=e.sri,d=e.scriptDataAttributes,s=void 0===d?{}:d,u=document.createElement("script"),l=document.querySelector("head"),c=document.querySelector("body");if(u.async=n,u.src=t,a&&(u.integrity=a,u.crossOrigin="anonymous"),s)for(var p in s)if(Object.prototype.hasOwnProperty.call(s,p))try{u.dataset[p]=String(s[p])}catch(e){}if(r&&u.addEventListener("load",r),o&&u.addEventListener("error",o),l)l.appendChild(u);else{if(!c)throw new Error("Did not find a head or body element to append the script");c.appendChild(u)}}({src:I,async:!0,onload:U,onerror:e,sri:(t=E,"string"==typeof t&&/^sha384-[A-Za-z0-9+/=]+$/.test(t)?E:""),scriptDataAttributes:c})}function D(e){B("script_append_failed",Q(e))}function Q(e){return e instanceof Error?e.message:"Unknown error"}}}();wpmLoader({shopId: 107173183826,storefrontBaseUrl: "https://fr.melvita.com",extensionsBaseUrl: "https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager",monorailEndpoint: "https://fr.melvita.com/.well-known/shopify/monorail/unstable/produce_batch",surface: "storefront-renderer",enabledBetaFlags: ["16072cab","8450a54b"],webPixelsConfigList: [{"id":"5821694290","configuration":"{\"cart_viewed\":\"true\",\"checkout_address_info_submitted\":\"true\",\"checkout_completed\":\"true\",\"checkout_contact_info_submitted\":\"true\",\"checkout_shipping_info_submitted\":\"true\",\"checkout_started\":\"true\",\"collection_viewed\":\"true\",\"page_viewed\":\"true\",\"payment_info_submitted\":\"true\",\"product_added_to_cart\":\"true\",\"product_removed_from_cart\":\"true\",\"product_viewed\":\"true\",\"search_submitted\":\"true\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"4b912d4db8d67578541bfae8b70a40a9","type":"APP","apiClientId":100317265921,"privacyPurposes":["ANALYTICS"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":[],"dataSharingControls":["share_all_events"]}
2102,"dataSharingState":"unrestricted"},{"id":"5821661522","configuration":"{\"joinDomain\":\"melvita\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"aba44f25bef6b6f9c5cce3989ad88990","type":"APP","apiClientId":111364603905,"privacyPurposes":["ANALYTICS"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":[],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted"},{"id":"5761958226","configuration":"{\"config\":\"{\\\"google_tag_ids\\\":[\\\"G-E3KFRWX15F\\\",\\\"GT-W6VNBNKS\\\"],\\\"target_country\\\":\\\"ZZ\\\",\\\"gtag_events\\\":[{\\\"type\\\":\\\"search\\\",\\\"action_label\\\":\\\"G-E3KFRWX15F\\\"},{\\\"type\\\":\\\"begin_checkout\\\",\\\"action_label\\\":\\\"G-E3KFRWX15F\\\"},{\\\"type\\\":\\\"remove_from_cart\\\",\\\"action_label\\\":\\\"G-E3KFRWX15F\\\"},{\\\"type\\\":\\\"view_item\\\",\\\"action_label\\\":[\\\"G-E3KFRWX15F\\\",\\\"MC-2N5E5MQZ09\\\"]},{\\\"type\\\":\\\"purchase\\\",\\\"action_label\\\":[\\\"G-E3KFRWX15F\\\",\\\"MC-2N5E5MQZ09\\\"]},{\\\"type\\\":\\\"add_shipping_info\\\",\\\"action_label\\\":\\\"G-E3KFRWX15F\\\"},{\\\"type\\\":\\\"page_view\\\",\\\"action_label\\\":[\\\"G-E3KFRWX15F\\\",\\\"MC-2N5E5MQZ09\\\"]},{\\\"type\\\":\\\"view_item_list\\\",\\\"action_label\\\":\\\"G-E3KFRWX15F\\\"},{\\\"type\\\":\\\"add_payment_info\\\",\\\"action_label\\\":\\\"G-E3KFRWX15F\\\"},{\\\"type\\\":\\\"add_to_cart\\\",\\\"action_label\\\":\\\"G-E3KFRWX15F\\\"},{\\\"type\\\":\\\"view_cart\\\",\\\"action_label\\\":\\\"G-E3KFRWX15F\\\"}],\\\"enable_monitoring_mode\\\":false}\"}","eventPayloadVersion":"v1","runtimeContext":"OPEN","scriptVersion":"a3321ca85cf5aaf6b57585fcd8d67b3a","type":"APP","apiClientId":1780363,"privacyPurposes":[],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized","enabledFlags":["9a3ed68a"]},{"id":"5741314386","configuration":"{\"pixel_id\":\"2201243340146442\",\"pixel_type\":\"facebook_pixel\"}","eventPayloadVersion":"v1","runtimeContext":"OPEN","scriptVersion":"96420dbe9ea96c426a1b7f364f977719","type":"APP","apiClientId":2329312,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized","enabledFlags":["9a3ed68a"]},{"id":"5554143570","configuration":"{\"projectId\":\"9464\", \"platform\": \"ha\", \"transactionEndpoint\": \"https:\/\/api.iadvize.com\/engagement\/short-conversions?platform=ha\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"02fbb4bc7ea3748896c6dc59ec131b8a","type":"APP","apiClientId":86693281793,"privacyPurposes":[],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":[],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted"},{"id":"5134877010","configuration":"{\"accountID\":\"VVuEpA\",\"webPixelConfig\":\"eyJlbmFibGVBZGRlZFRvQ2FydEV2ZW50cyI6IHRydWV9\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"c63c5b72c8d77be5f2d27d14c081da38","type":"APP","apiClientId":123074,"privacyPurposes":["ANALYTICS","MARKETING"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized","enabledFlags":["9a3ed68a"]},{"id":"351895890","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"1","type":"CUSTOM","privacyPurposes":[],"name":"Pixel Addingwell"},{"id":"355369298","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"10","type":"CUSTOM","privacyPurposes":[],"name":"Affilae - Purchase"},{"id":"366477650","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"1","type":"CUSTOM","privacyPurposes":[],"name":"Kolsquare"},{"id":"shopify-app-pixel","configuration":"{}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"0530","apiClientId":"shopify-pixel","type":"APP","privacyPurposes":["ANALYTICS","MARKETING"]},{"id":"shopify-custom-pixel","eventPayloadVersion":"v1","runtimeContext":"LAX","scriptVersion":"0530","apiClientId":"shopify-pixel","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING"]}],isMerchantRequest: false,initData: {"shop":{"name":"Melvita","paymentSettings":{"currencyCode":"EUR"},"myshopifyDomain":"melvita2026.myshopify.com","countryCode":"FR","storefrontUrl":"https:\/\/fr.melvita.com"},"customer":null,"cart":null,"checkout":null,"productVariants":[],"products":[{"id":"
210210926775075154","handle":"eau-extraordinaire-source-de-roses","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"53940039090514","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]}],"purchasingCompany":null},},"https://fr.melvita.com/cdn","c8540278we853e1abpb62b2c4amde256306",{"modern":"","legacy":""},{"trekkieShim":true,"agentContext":true,"apiClientId":"580111","facebookCapiEnabled":"true","themeId":"202104996178","themePublished":"true","eventMetadataId":"5ef70ba6-82a8-4687-ab51-5fe0d64dcd7c","pageType":"cart","shopId":"107173183826","storefrontBaseUrl":"https:\/\/fr.melvita.com","extensionBaseUrl":"https:\/\/extensions.shopifycdn.com\/cdn\/shopifycloud\/web-pixels-manager","surface":"storefront-renderer","enabledBetaFlags":"[\"16072cab\", \"8450a54b\"]","isMerchantRequest":"false","hashVersion":"c8540278we853e1abpb62b2c4amde256306","publish":"custom","events":"[[\"page_viewed\",{}]]"});})();</script>
2102<script>
2103  window.ShopifyAnalytics = window.ShopifyAnalytics || {};
2104  window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {};
2105  window.ShopifyAnalytics.meta.currency = 'EUR';
2106  var meta = {"page":{"pageType":"cart","requestId":"7587a61f-692a-4d96-9e6c-8cb2495e6e5f-1790362383"}};
2107  for (var attr in meta) {
2108    window.ShopifyAnalytics.meta[attr] = meta[attr];
2109  }
2110</script>
vendor: 1 bytes, line 2110
2110
2111<script class="analytics">
2112  (function () {
2113    var customDocumentWrite = function(content) {
2114      var jquery = null;
2115
2116      if (window.jQuery) {
2117        jquery = window.jQuery;
2118      } else if (window.Checkout && window.Checkout.$) {
2119        jquery = window.Checkout.$;
2120      }
2121
2122      if (jquery) {
2123        jquery('body').append(content);
2124      }
2125    };
2126
2127    var hasLoggedConversion = function(token) {
2128      if (token) {
2129        return document.cookie.indexOf('loggedConversion=' + token) !== -1;
2130      }
2131      return false;
2132    }
2133
2134    var setCookieIfConversion = function(token) {
2135      if (token) {
2136        var twoMonthsFromNow = new Date(Date.now());
2137        twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2);
2138
2139        document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow;
2140      }
2141    }
2142
2143    var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || [];
2144    window.ShopifyAnalytics.lib.trekkie = window.trekkie;
2145    if (trekkie.integrations) {
2146      return;
2147    }
2148    trekkie.methods = [
2149      'identify',
2150      'page',
2151      'ready',
2152      'track',
2153      'trackForm',
2154      'trackLink'
2155    ];
2156    trekkie.factory = function(method) {
2157      return function() {
2158        var args = Array.prototype.slice.call(arguments);
2159        args.unshift(method);
2160        trekkie.push(args);
2161        if (method == 'track' || method == 'page') {
2162          var pageUrl;
2163          try {
2164            pageUrl = window.location.href;
2165          } catch (e) {}
2166          var pageReferrer;
2167          try {
2168            pageReferrer = document.referrer;
2169          } catch (e) {}
2170          try {
2171            if (window.__TREKKIE_SHIM_QUEUE == null) {
2172              window.__TREKKIE_SHIM_QUEUE = [];
2173            }
2174            window.__TREKKIE_SHIM_QUEUE.push({
2175              from: 'trekkie-stub',
2176              method: method,
2177              args: args.slice(1),
2178              pageContext: {
2179                url: pageUrl,
2180                referrer: pageReferrer
2181              }
2182            });
2183          } catch (e) {
2184            // no-op
2185          }
2186        }
2187        return trekkie;
2188      };
2189    };
2190    for (var i = 0; i < trekkie.methods.length; i++) {
2191      var key = trekkie.methods[i];
2192      trekkie[key] = trekkie.factory(key);
2193    }
2194    trekkie.load = function(config) {
2195      trekkie.config = config || {};
2196      trekkie.config.initialDocumentCookie = document.cookie;
2197      var first = document.getElementsByTagName('script')[0];
2198var script = document.createElement('script');
2199script.type = 'text/javascript';
2200script.onerror = function(e) {
2201  var scriptFallback = document.createElement('script');
2202  scriptFallback.type = 'text/javascript';
2203  scriptFallback.onerror = function(error) {
2204          var Monorail = {
2205      produce: function produce(monorailDomain, schemaId, payload) {
2206        var currentMs = new Date().getTime();
2207        var event = {
2208          schema_id: schemaId,
2209          payload: payload,
2210          metadata: {
2211            event_created_at_ms: currentMs,
2212            event_sent_at_ms: currentMs
2213          }
2214        };
2215        return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event));
2216      },
2217      sendRequest: function sendRequest(endpointUrl, payload) {
2218        // Try the sendBeacon API
2219        if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) {
2220          var blobData = new window.Blob([payload], {
2221            type: 'text/plain'
2222          });
2223
2224          if (window.navigator.sendBeacon(endpointUrl, blobData)) {
2225            return true;
2226          } // sendBeacon was not successful
2227
2228        } // XHR beacon
2229
2230        var xhr = new XMLHttpRequest();
2231
2232        try {
2233          xhr.open('POST', endpointUrl);
2234          xhr.setRequestHeader('Content-Type', 'text/plain');
2235          xhr.send(payload);
2236        } catch (e) {
2237          console.log(e);
2238        }
2239
2240        return false;
2241      },
2242      isIos12: function isIos12() {
2243        return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1;
2244      }
2245    };
2246    Monorail.produce('monorail-edge.shopifysvc.com',
2247      'trekkie_storefront_load_errors/1.1',
2248      {shop_id: 107173183826,
2249      theme_id: 202104996178,
2250      app_name: "storefront",
2251      context_url: window.location.href,
2252      source_url: "//fr.melvita.com/cdn/s/trekkie.storefront.f1ba865b3fecd812ad617f74ac079261075e9edb.min.js"});
2253
2254  };
2255  scriptFallback.async = true;
2256  scriptFallback.src = '//fr.melvita.com/cdn/s/trekkie.storefront.f1ba865b3fecd812ad617f74ac079261075e9edb.min.js';
2257  first.parentNode.insertBefore(scriptFallback, first);
2258};
2259script.async = true;
2260script.src = '//fr.melvita.com/cdn/s/trekkie.storefront.f1ba865b3fecd812ad617f74ac079261075e9edb.min.js';
2261first.parentNode.insertBefore(script, first);
2262
2263    };
2264    trekkie.load(
2265      {"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":107173183826,"isMerchantRequest":null,"themeId":202104996178,"themeCityHash":"9498158764090115809","contentLanguage":"fr","currency":"EUR","eventMetadataId":"5ef70ba6-82a8-4687-ab51-5fe0d64dcd7c"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain","enabledBetaFlags":["764d78cb","8450a54b"]},"Session Attribution":{},"S2S":{"facebookCapiEnabled":true,"source":"trekkie-storefront-renderer","apiClientId":580111}}
2266    );
2267
2268    var loaded = false;
2269    trekkie.ready(function() {
2270      if (loaded) return;
2271      loaded = true;
2272
2273      window.ShopifyAnalytics.lib = window.trekkie;
2274
2275      var originalDocumentWrite = document.write;
2276      document.write = customDocumentWrite;
2277      try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {};
2278      document.write = originalDocumentWrite;
2279
2280      var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/)
2281      var token = match? match[1]: undefined;
2282      if (!hasLoggedConversion(token)) {
2283        setCookieIfConversion(token);
2284        
2285      }
2286    });
2287
2288    window.ShopifyAnalytics.lib.page(null,{"pageType":"cart","requestId":"7587a61f-692a-4d96-9e6c-8cb2495e6e5f-1790362383","shopifyEmitted":true});
2289
2290    var eventsListenerScript = document.createElement('script');
2291    eventsListenerScript.async = true;
2292    eventsListenerScript.src = "//fr.melvita.com/cdn/shopifycloud/storefront/assets/shop_events_listener-4e26a9ce.js";
2293    document.getElementsByTagName('head')[0].appendChild(eventsListenerScript);
2294})();</script>
vendor: 1 bytes, line 2294
2294
2295<script
2296  defer
2297  src="https://fr.melvita.com/cdn/shopifycloud/perf-kit/shopify-perf-kit-3.9.4.min.js"
2298  data-application="storefront-renderer"
2299  data-shop-id="107173183826"
2300  data-render-region="gcp-us-west1"
2301  data-page-type="cart"
2302  data-theme-instance-id="202104996178"
2303  data-theme-name="Axome - Melvita"
2304  data-theme-version="1.0.0"
2305  data-monorail-region="shop_domain"
2306  data-resource-timing-sampling-rate="10"
2307  data-shs="true"
2308  data-shs-beacon="true"
2309  data-shs-export-with-fetch="true"
2310  data-shs-logs-sample-rate="1"
2311  data-shs-beacon-endpoint="https://fr.melvita.com/api/collect"
2312></script>
vendor: 1 bytes, line 2312
2312
2313<script src="https://cdn.shopify.com/storefront/web-components/account.js" type="module" crossorigin fetchpriority="low" async></script>
2313<script id="shopify-customer-account-data" type="application/json">{"customer":null,"shop":{"id":"107173183826","customerAccountTranslations":[{"key":"account_menu.signed_out_state.sheet_title","value":"Se connecter ou créer un compte"},{"key":"account_menu.signed_out_state.section_divider","value":"Autres moyens de connexion"},{"key":"account_menu.signed_out_state.alternate_divider","value":"OR"},{"key":"account_menu.signed_out_state.email_field_label","value":"E-mail"},{"key":"account_menu.signed_out_state.orders_button","value":"Commandes"},{"key":"account_menu.signed_out_state.profile_button","value":"Profil"},{"key":"account_menu.signed_out_state.shop_login_button","value":"Se connecter avec Shop"},{"key":"account_menu.signed_out_state.continue_with_google","value":"Continuer avec Google"},{"key":"account_menu.signed_out_state.continue_with_facebook","value":"Continuer avec Facebook"},{"key":"account_menu.signed_out_state.marketing_consent_label","value":"Envoyez-moi des nouvelles et des offres par e-mail"},{"key":"account_menu.signed_in_state.greeting_with_name","value":"Bonjour, {{first_name}}"},{"key":"account_menu.signed_in_state.greeting_without_name","value":"Compte"},{"key":"account_menu.signed_in_state.orders_button","value":"Commandes"},{"key":"account_menu.signed_in_state.profile_button","value":"Profil"},{"key":"account_menu.location_picker.sheet_title","value":"Emplacements"},{"key":"account_menu.location_picker.search_field_placeholder","value":"Rechercher"},{"key":"account_menu.aria_labels.close_menu","value":"Fermer le menu"},{"key":"account_menu.aria_labels.back_to_main_menu","value":"Retour au menu principal depuis {{title}}"},{"key":"account_menu.aria_labels.open_submenu","value":"{{title}}, ouvre le sous-menu"},{"key":"account_menu.aria_labels.loading_menu","value":"Chargement du menu"},{"key":"account_menu.aria_labels.account","value":"Compte"},{"key":"account_menu.aria_labels.sign_in_with_email","value":"Se connecter avec e-mail"},{"key":"account_menu.aria_labels.sign_in","value":"Se connecter"}],"socialLoginProviders":[{"handle":"Shop"}],"legacyCustomerAccounts":false,"signInLinksVisible":true,"b2bEnabled":false,"marketingConsentSigninEnabled":true,"marketingConsentPreselected":false},"visitor":{"country":"FR","language":"fr"}}</script>
2313
2314<meta name="shopify-y" content="f063604a-0d46-4fa7-b973-615eb27a3ca9" data-expiration="1821919983000"><meta name="shopify-s" content="72853eb4-fe78-4791-805b-498882869189" data-expiration="1790364183000"><meta name="new-cookie-storage-activated" content="t">
2315</head>
2316
2317  
2318
2319  <body class="features--zoom-image "><template id="drawer-default-template">
2320  <div part="base">
2321    <div part="overlay"></div>
2322
2323    <div part="content">
2324      <header part="header">
2325        <dialog-close-button style="display: contents">
2326          <button type="button" part="close-button">
2327            <span class="sr-only" part="sr-only">Fermer</span><svg aria-hidden="true" focusable="false" width="10" class="icon icon-close"  part="icon" fill="none" viewBox="0 0 10 10">
2328        <path stroke="currentColor" d="m1 1 8 8m0-8L1 9" />
2329      </svg></button>
2330        </dialog-close-button>
2331
2332        <slot name="header"></slot>
2333      </header>
2334
2335      <div part="body">
2336        <slot></slot>
2337      </div>
2338
2339      <footer part="footer">
2340        <slot name="footer"></slot>
2341      </footer>
2342    </div>
2343  </div>
2344</template><template id="drawer-popover-default-template">
2345  <div part="base">
2346    <div part="overlay"></div>
2347
2348    <div part="content">
2349      <header part="header">
2350        <dialog-close-button style="display: contents">
2351          <button type="button" part="close-button">
2352            <span class="sr-only" part="sr-only">Fermer</span><svg aria-hidden="true" focusable="false" width="10" class="icon icon-close"  part="icon" fill="none" viewBox="0 0 10 10">
2353        <path stroke="currentColor" d="m1 1 8 8m0-8L1 9" />
2354      </svg></button>
2355        </dialog-close-button>
2356
2357        <slot name="header"></slot>
2358      </header>
2359
2360      <div part="body">
2361        <slot></slot>
2362      </div>
2363    </div>
2364  </div>
2365</template><template id="modal-default-template">
2366  <div part="base">
2367    <div part="overlay"></div>
2368
2369    <div part="content">
2370      <slot name="image"></slot>
2371
2372      <div part="body">
2373        <dialog-close-button style="display: contents">
2374          <button type="button" part="close-button">
2375            <span class="sr-only" part="sr-only">Fermer</span><svg aria-hidden="true" focusable="false" width="10" class="icon icon-close"  part="icon" fill="none" viewBox="0 0 10 10">
2376        <path stroke="currentColor" d="m1 1 8 8m0-8L1 9" />
2377      </svg></button>
2378        </dialog-close-button>
2379
2380        <slot></slot>
2381      </div>
2382    </div>
2383  </div>
2384</template><template id="popover-default-template">
2385  <div part="base">
2386    <div part="overlay"></div>
2387
2388    <div part="content">
2389      <header part="header">
2390        <slot name="header"></slot>
2391
2392        <dialog-close-button style="display: contents">
2393          <button type="button" part="close-button">
2394            <span class="sr-only" part="sr-only">Fermer</span><svg aria-hidden="true" focusable="false" width="10" class="icon icon-close"  part="icon" fill="none" viewBox="0 0 10 10">
2395        <path stroke="currentColor" d="m1 1 8 8m0-8L1 9" />
2396      </svg></button>
2397        </dialog-close-button>
2398      </header>
2399
2400      <div part="body">
2401        <slot></slot>
2402      </div>
2403    </div>
2404  </div>
2405</template><template id="simple-popover-default-template">
2406  <div part="base">
2407    <div part="overlay"></div>
2408
2409    <div part="content">
2410      <dialog-close-button style="display: contents">
2411        <button type="button" part="close-button overlaid-close-button">
2412          <span class="sr-only" part="sr-only">Fermer</span><svg aria-hidden="true" focusable="false" width="10" class="icon icon-close"  part="icon" fill="none" viewBox="0 0 10 10">
2413        <path stroke="currentColor" d="m1 1 8 8m0-8L1 9" />
2414      </svg></button>
2415      </dialog-close-button>
2416
2417      <div part="body">
2418        <slot></slot>
2419      </div>
2420    </div>
2421  </div>
2422</template><template id="video-media-default-template">
2423  <slot></slot>
2424
2425  <div part="play-button"><svg aria-hidden="true" focusable="false" width="12" class="icon icon-play-triangle"  part="icon" fill="none" viewBox="0 0 12 17">
2426        <path fill="#ffffff" d="M1.783 15.889A1 1 0 0 1 .2 15.076V1.148A1 1 0 0 1 1.783.335l9.71 6.964a1 1 0 0 1 0 1.626l-9.71 6.964Z"/>
2427      </svg></div>
2428</template><loading-bar class="loading-bar" aria-hidden="true"></loading-bar>
2429
2430    <a href="#main" allow-hash-change class="skip-to-content sr-only">Passer au contenu</a>
2430<div class="sr-only" role="status" aria-live="polite" aria-atomic="true">
2431      <span id="status-announcement"></span>
2432    </div>
2433
2434    <div class="sr-only" role="alert" aria-live="assertive" aria-atomic="true">
2435      <span id="error-announcement"></span>
2436    </div>
2437
2438    <span id="header-scroll-tracker" style="position: absolute; width: 1px; height: 1px; top: 200px; left: 0;"></span><!-- BEGIN sections: header-group -->
2439<aside id="shopify-section-sections--30543191376210__announcement-bar" class="shopify-section shopify-section-group-header-group shopify-section--announcement-bar"><style>
2440      :root {
2441        --announcement-bar-is-sticky: 0;
2442      }</style>
2443
2444    <div class="color-scheme color-scheme--scheme-5">
2445      <height-observer variable="announcement-bar"><announcement-bar id="carousel-sections--30543191376210__announcement-bar" allow-swipe cell-selector=".announcement-bar__message-list > *" autoplay="5" class="announcement-bar"><carousel-prev-button aria-controls="carousel-sections--30543191376210__announcement-bar">
2446              <button type="button" class="tap-area">
2447                <span class="sr-only">Précédent</span>
2448                <svg xmlns="http://www.w3.org/2000/svg" width="13" height="11" viewB
2448ox="0 0 11 8" fill="none">
2449                  <path d="M3.82703 6.59355L0.707031 3.47355L3.82703 0.353546" stroke="currentColor" stroke-miterlimit="10"/>
2450                  <path d="M0.707031 3.4736H10.707" stroke="currentColor" stroke-miterlimit="10"/>
2451                </svg>
2452              </button>
2453            </carousel-prev-button><div class="announcement-bar__message-list"><div class="is-selected prose prose-justify-center" >
2454                  <p class="text-xs">Faites-vous plaisir : -20% sur tout le site* | Code FRENCHDAYS</p>
2455                </div><div class=" prose prose-justify-center" >
2456                  <p class="text-xs">Livraison offerte dès 49€ d'achat</p>
2457                </div><div class=" prose prose-justify-center" >
2458                  <p class="text-xs">Votre programme de fidélité revient bientôt</p>
2459                </div></div><carousel-next-button aria-controls="carousel-sections--30543191376210__announcement-bar">
2460              <button type="button" class="tap-area">
2461                <span class="sr-only">Suivant</span>
2462                <svg xmlns="http://www.w3.org/2000/svg" width="13" height="11" viewB
2462ox="0 0 11 8" fill="none">
2463                  <path d="M7.17297 6.59355L10.293 3.47355L7.17297 0.353546" stroke="currentColor" stroke-miterlimit="10"/>
2464                  <path d="M10.293 3.4736H0.292969" stroke="currentColor" stroke-miterlimit="10"/>
2465                </svg>
2466              </button>
2467            </carousel-next-button></announcement-bar>
2468      </height-observer>
2469    </div>
2470
2471    
2471<script>
2472      document.documentElement.style.setProperty('--announcement-bar-height', `${Math.round(document.getElementById('shopify-section-sections--30543191376210__announcement-bar').clientHeight)}px`);
2473    </script>
2473
2474</aside><header id="shopify-section-sections--30543191376210__header" class="shopify-section shopify-section-group-header-group shopify-section--header"><style>
2475  :root {
2476    --header-is-sticky: 1;
2477    --header-is-visible: 1;
2478  }
2479
2480  #shopify-section-sections--30543191376210__header {--header-grid: "primary-nav logo secondary-nav" "search search search" / minmax(0, 1fr) auto minmax(0, 1fr);--header-transparent-header-text-color: 255 255 255;
2481    --header-non-transparent-text-color: 17 13 14;
2482  }
2483
2484  @media screen and (min-width: 1000px) {
2485    #shopify-section-sections--30543191376210__header {--header-grid: "logo primary-nav secondary-nav" / auto minmax(0, 1fr) auto;}
2486  }#shopify-section-sections--30543191376210__header {
2487      position: sticky;
2488      top: 0;
2489    }
2490
2491    .shopify-section--announcement-bar ~ #shopify-section-sections--30543191376210__header {
2492      top: calc(var(--announcement-bar-is-sticky, 0) * var(--announcement-bar-height, 0px));
2493    }#shopify-section-sections--30543191376210__header {
2494      --header-logo-width: 95px;
2495    }
2496
2497    @media screen and (min-width: 700px) {
2498      #shopify-section-sections--30543191376210__header {
2499        --header-logo-width: 110px;
2500      }
2501    }#shopify-section-sections--30543191376210__header .header {
2502    --highlight-link-background: #f0f1f2;
2503    --highlight-link-text-color: #110d0e;
2504    --highlight-link-background-hover: #6b0000;
2505    --highlight-link-text-color-hover: #ffffff;
2506  }
2507
2508  :root:has(.shopify-section:first-child [allow-transparent-header]):not(:has(.shopify-section--header ~ .shopify-section-group-header-group)) #shopify-section-sections--30543191376210__header .header:not(.is-solid, :has([open])) {
2509    --highlight-link-background: #6b0000;
2510    --highlight-link-text-color: #ffffff;
2511    --highlight-link-background-hover: #f0f1f2;
2512    --highlight-link-text-color-hover: #110d0e;
2513  }.header__primary-nav > ul > li > :is(a, span, button) {
2514    font: var(--button-font);
2515    letter-spacing: var(--button-letter-spacing);
2516    text-transform: var(--button-text-transform);
2517  }.header__dropdown-menu :is(span, button) {
2518    display: grid;
2519    grid-auto-flow: column;
2520    justify-content: space-between;
2521    align-items: center;
2522    padding: .4rem 1.75rem;
2523    text-align: start;
2524  }
2525
2526  .header__dropdown-menu:has(.header__dropdown-menu) :is(span, button) {
2527    grid-template-columns: minmax(0, 1fr) 1.5rem;
2528  }
2529
2530  .header__dropdown-menu .header__dropdown-menu :is(span, button) {
2531    grid-template-columns: auto;
2532  }
2533
2534  .header__dropdown-menu :is(span, button):where(:hover, :has(~ [open])) .icon-chevron-right {
2535    transform: translateX(4px);
2536  }.menu-link-static {
2537    cursor: default;
2538  }
2539
2540  .menu-link-static:is(.link, .link-reversed):hover {
2541    background-size: 0 1px;
2542  }
2543
2544  .menu-link-static.link-faded:hover {
2545    color: rgb(var(--text-color) / .6);
2546  }
2547
2548  .menu-link-static.link-faded-reverse:hover {
2549    color: rgb(var(--text-color));
2550  }
2551
2552  .menu-link-static.header__nav-highlight:hover {
2553    background-color: var(--highlight-link-background);
2554    color: var(--highlight-link-text-color);
2555  }
2556
2557  .header__nav-highlight {
2558    background-color: var(--highlight-link-background);
2559    color: var(--highlight-link-text-color);
2560    border-radius: 4px;
2561    padding: .25rem .5rem;
2562    margin-block: -.375rem;
2563    transition: background-color .2s ease-in-out, color .2s ease-in-out;
2564  }
2565
2566  .header__nav-highlight:hover {
2567    background-color: var(--highlight-link-background-hover);
2568    color: var(--highlight-link-text-color-hover);
2569  }
2570
2571  .menu-drawer__link-highlight {
2572    background-color: #6b0000;
2573    color: #ffffff;
2574    border-radius: 6px;
2575    padding: .375rem .75rem;
2576    display: inline-block;
2577  }.header__search-field {
2578    align-items: center;
2579    justify-content: space-between;
2580    gap: 1.5rem;
2581    min-width: 14rem;
2582    font-size: var(--text-sm);
2583    font-weight: 400;
2584    border: 1px solid rgb(var(--text-color) / .2);
2585    border-radius: 8px;
2586    padding: .625rem 1rem;
2587    transition: border-color .2s ease-in-out;
2588    display: flex;
2589  }
2590
2591  @media screen and (min-width: 1200px) {
2592    .header__search-field {
2593      min-width: 16.375rem;
2594    }
2595  }
2596
2597  .header__search-field:hover {
2598    border-color: rgb(var(--text-color) / .5);
2599  }
2600
2601  .header__search-bar {
2602    grid-area: search;
2603    margin-block-start: .75rem;
2604  }@media screen and (min-width: 1000px) {
2605    .header__search-bar {
2606      display: none;
2607    }
2608  }
2609</style>
2610
2611<height-observer variable="header">
2612  <x-header class="header color-scheme color-scheme--scheme-2" ><a href="/" class="header__logo"><span class="sr-only">Melvita</span><img src="//fr.melvita.com/cdn/shop/files/logo-melvita-dark.svg?v=1788265829&amp;width=112" alt="Melvita" srcset="//fr.melvita.com/cdn/shop/files/logo-melvita-dark.svg?v=1788265829&amp;width=112 112w, //fr.melvita.com/cdn/shop/files/logo-melvita-dark.svg?v=1788265829&amp;width=112 112w" width="112" height="26" sizes="110px" class="header__logo-image"><img src="//fr.melvita.com/cdn/shop/files/Logo.png?v=1781171577&amp;width=112" alt="" srcset="//fr.melvita.com/cdn/shop/files/Logo.png?v=1781171577&amp;width=112 112w, //fr.melvita.com/cdn/shop/files/Logo.png?v=1781171577&amp;width=112 112w" width="112" height="26" sizes="110px" class="header__logo-image header__logo-image--transparent"></a><nav class="header__primary-nav " aria-label="Navigation principale">
2613        <button type="button" aria-controls="menu-drawer" class="tap-area md:hidden">
2614          <span class="sr-only">Menu</span>
2615
2616          <div class="h-stack gap-3" aria-hidden="true">
2617            <svg aria-hidden="true" focusable="false" width="16" height="13" viewBox="0 0 16 13" fill="none" xmlns="http://www.w3.org/2000/svg">
2618              <path d="M16 0.5H0" stroke="currentColor" stroke-linejoin="round"/>
2619              <path d="M12 6.5H0" stroke="currentColor" stroke-linejoin="round"/>
2620              <path d="M16 12.5H0" stroke="currentColor" stroke-linejoin="round"/>
2621            </svg>
2622
2623            <span class="subheading md-max:hidden">Menu</span>
2624          </div>
2625        </button><a href="/pages/nos-boutiques" class="header__store-locator-link tap-area md:hidden">
2626            <span class="sr-only">Trouver un magasin</span>
2627            <svg aria-hidden="true" focusable="false" xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none">
2628              <path d="M13.6179 4.45024C11.0709 1.84992 6.94854 1.84992 4.40932 4.45024C1.86226 7.05057 1.86226 11.2591 4.40932 13.8514L9.01754 18.5L13.6258 13.8514C16.1728 11.2511 16.1728 7.04257 13.6258 4.45024H13.6179Z" stroke="currentColor" stroke-linecap="round"/>
2629              <circle cx="9.01855" cy="8" r="1.5" stroke="currentColor"/>
2630            </svg>
2631          </a><ul class="contents unstyled-list md-max:hidden">
2632
2633              <li><a href="/collections/tous-les-produits" class="block text-sm bold"  aria-expanded="false" aria-controls="header-menu-dropdown-1" data-open-on-hover>Produits</a><header-mega-menu id="header-menu-dropdown-1" class="mega-menu justify-between mega-menu--categories color-scheme color-scheme--scheme-2" style="--mega-menu-columns: 4; --mega-menu-category-count: 3;" ><div class="mega-menu__aside v-stack">
2634        <ul class="mega-menu__linklist mega-menu__linklist--aside unstyled-list"><li><a href="/collections/french-days" class="mega-menu__title link-reversed" >French Days</a></li><li><a href="/collections/best-sellers" class="mega-menu__title link-reversed" >Best-sellers</a></li><li><a href="/collections/cadeaux" class="mega-menu__title link-reversed" >Cadeaux</a></li></ul>
2635      </div><div class="mega-menu__navigation"><div class="mega-menu__column v-stack gap-4"><span class="mega-menu__title link-reversed menu-link-static">Soins visage</span><ul class="mega-menu__linklist unstyled-list"><li><a href="/collections/serum-visage" class="link-reversed" >Essence et sérum visage</a></li><li><a href="/collections/creme-visage" class="link-reversed" >Crème visage </a></li><li><a href="/collections/nettoyant-demaquillant" class="link-reversed" >Nettoyant et démaquillant </a></li><li><a href="/collections/exfoliant-visage" class="link-reversed" >Exfoliant et masque visage </a></li><li><a href="/collections/soin-contour-des-yeux" class="link-reversed" >Soin contour des yeux </a></li><li><a href="/collections/eaux-florales" class="link-reversed" >Eau florale</a></li><li><a href="/collections/huile-visage" class="link-reversed" >Huile visage </a></li><li><a href="/collections/bb-creme" class="link-reversed" >BB crème</a></li><li><a href="/collections/baume-a-levres" class="link-reversed" >Baume à lèvres </a></li><li><a href="/collections/tous-les-soins-visage" class="link-reversed" >Tous les soins visage </a></li></ul>
2636          </div><div class="mega-menu__column v-stack gap-4"><span class="mega-menu__title link-reversed menu-link-static">Soins corps </span><ul class="mega-menu__linklist unstyled-list"><li><a href="/collections/serum-corps" class="link-reversed" >Sérum corps</a></li><li><a href="/collections/huile-corps" class="link-reversed" >Huile corps</a></li><li><a href="/collections/creme-corps" class="link-reversed" >Crème corps</a></li><li><a href="/collections/gel-douche-savon" class="link-reversed" >Gel douche et savon</a></li><li><a href="/collections/gommage-corps" class="link-reversed" >Gommage corps</a></li><li><a href="/collections/hygiene" class="link-reversed" >Hygiène quotidienne</a></li><li><a href="/collections/creme-mains" class="link-reversed" >Crème mains</a></li><li><a href="/collections/soin-cheveux" class="link-reversed" >Soin cheveux</a></li><li><a href="/collections/tous-les-soins-corps" class="link-reversed" >Tous les soins corps</a></li></ul>
2637          </div><div class="mega-menu__column v-stack gap-4"><span class="mega-menu__title link-reversed menu-link-static">Préoccupations</span><ul class="mega-menu__linklist unstyled-list"><li><a href="/collections/soin-visage-hydratant" class="link-reversed" >Manque d'hydratation</a></li><li><a href="/collections/soin-visage-eclat" class="link-reversed" >Manque d'éclat</a></li><li><a href="/collections/soin-rides-et-ridules" class="link-reversed" >Rides et ridules</a></li><li><a href="/collections/peau-seche-inconfortable" class="link-reversed" >Peau sèche et inconfortable</a></li><li><a href="/collections/soin-visage-fermete" class="link-reversed" >Manque de fermeté</a></li><li><a href="/collections/soin-visage-taches" class="link-reversed" >Taches pigmentaires</a></li><li><a href="/collections/soin-visage-rougeurs" class="link-reversed" >Peau sensible et rougeurs</a></li><li><a href="/collections/soin-visage-imperfections" class="link-reversed" >Peau à imperfections</a></li></ul>
2638          </div></div>
2638<script src="//fr.melvita.com/cdn/shop/t/4/assets/ax-menu-promo.js?v=174421363216936711411789037182" defer="defer"></script>
2638<style>
2639    #promo-block-list-mega_menu_qQWnVzmega-menu {
2640      --menu-promo-block-column-gap: 12px;
2641      --menu-promo-blocks-count: 1;
2642    }
2643  </style>
2644
2645  <div id="promo-block-list-mega_menu_qQWnVzmega-menu" class="menu-promo menu-promo--without-spacing">
2646    <scroll-carousel id="promo-block-list-mega_menu_qQWnVzmega-menu-carousel" class="menu-promo__carousel scroll-area" allow-drag>
2647
2648
2649
2650
2651
2652
2653        <a href="/products/eau-extraordinaire-source-de-roses" class="menu-promo__item @container/content-box group"><div class="content-box overflow-hidden h-full" style="--text-color: 255 255 255; color: rgb(var(--text-color));--border-color: var(--text-color) / 0.15;"><div class="content-box__background-media with-overlay"><img src="//fr.melvita.com/cdn/shop/files/TEX-SDR-EAU_EXTRA_1200x1200_1ceaa359-0990-4cc2-8ffb-c00a2bfabf53.png?v=1787301174&amp;width=1200" alt="" srcset="//fr.melvita.com/cdn/shop/files/TEX-SDR-EAU_EXTRA_1200x1200_1ceaa359-0990-4cc2-8ffb-c00a2bfabf53.png?v=1787301174&amp;width=420 420w, //fr.melvita.com/cdn/shop/files/TEX-SDR-EAU_EXTRA_1200x1200_1ceaa359-0990-4cc2-8ffb-c00a2bfabf53.png?v=1787301174&amp;width=840 840w" width="1200" height="1200" loading="lazy" sizes="420px" class="zoom-image group-hover:zoom"></div><div class="place-self-end-start text-start"><div class="v-stack text-start gap-1"><p class="subheading">L’efficacité par le plaisir</p>
2654          
2655</div></div></div></a></scroll-carousel>
2656  </div></header-mega-menu>
2657</li>
2658
2659              <li><a href="/pages/marque" class="block text-sm bold"  aria-expanded="false" aria-controls="header-menu-dropdown-2" data-open-on-hover>Marque </a><header-mega-menu id="header-menu-dropdown-2" class="mega-menu justify-between color-scheme color-scheme--scheme-2" >
2659<script src="//fr.melvita.com/cdn/shop/t/4/assets/ax-menu-promo.js?v=174421363216936711411789037182" defer="defer"></script>
2659<style>
2660    #promo-block-list-mega_menu_N3Ed7Cmega-menu {
2661      --menu-promo-block-column-gap: 12px;
2662      --menu-promo-blocks-count: 3;
2663    }
2664  </style>
2665
2666  <div id="promo-block-list-mega_menu_N3Ed7Cmega-menu" class="menu-promo menu-promo--without-spacing">
2667    <scroll-carousel id="promo-block-list-mega_menu_N3Ed7Cmega-menu-carousel" class="menu-promo__carousel scroll-area" allow-drag>
2668
2669        <a href="/pages/notre-histoire" class="menu-promo__item @container/content-box group"><div class="content-box overflow-hidden h-full" style="--text-color: 255 255 255; color: rgb(var(--text-color));--border-color: var(--text-color) / 0.15;"><div class="content-box__background-media with-overlay"><img src="//fr.melvita.com/cdn/shop/files/VISUEL-HISTOIRE-MENU.jpg?v=1787925243&amp;width=840" alt="" srcset="//fr.melvita.com/cdn/shop/files/VISUEL-HISTOIRE-MENU.jpg?v=1787925243&amp;width=420 420w, //fr.melvita.com/cdn/shop/files/VISUEL-HISTOIRE-MENU.jpg?v=1787925243&amp;width=840 840w" width="840" height="680" loading="lazy" sizes="420px" class="zoom-image group-hover:zoom"></div><div class="place-self-end-start text-start"><div class="v-stack text-start gap-1"><p class="subheading">NOTRE HISTOIRE</p>
2670          
2671</div></div></div></a>
2672
2673        <a href="/pages/notre-expertise" class="menu-promo__item @container/content-box group"><div class="content-box overflow-hidden h-full" style="--text-color: 255 255 255; color: rgb(var(--text-color));--border-color: var(--text-color) / 0.15;"><div class="content-box__background-media with-overlay"><img src="//fr.melvita.com/cdn/shop/files/TEX-HAIRCARE-SERUM_840x680_21c44065-4b15-4e12-b18f-4c6e6f3daead.jpg?v=1788189419&amp;width=840" alt="" srcset="//fr.melvita.com/cdn/shop/files/TEX-HAIRCARE-SERUM_840x680_21c44065-4b15-4e12-b18f-4c6e6f3daead.jpg?v=1788189419&amp;width=420 420w, //fr.melvita.com/cdn/shop/files/TEX-HAIRCARE-SERUM_840x680_21c44065-4b15-4e12-b18f-4c6e6f3daead.jpg?v=1788189419&amp;width=840 840w" width="840" height="680" loading="lazy" sizes="420px" class="zoom-image group-hover:zoom"></div><div class="place-self-end-start text-start"><div class="v-stack text-start gap-1"><p class="subheading">NOTRE EXPERTISE</p>
2674          
2675</div></div></div></a>
2676
2677        <a href="/pages/nos-engagements" class="menu-promo__item @container/content-box group"><div class="content-box overflow-hidden h-full" style="--text-color: 255 255 255; color: rgb(var(--text-color));--border-color: var(--text-color) / 0.15;"><div class="content-box__background-media with-overlay"><img src="//fr.melvita.com/cdn/shop/files/VISUEL-ENGAGEMENT.jpg?v=1787925182&amp;width=840" alt="" srcset="//fr.melvita.com/cdn/shop/files/VISUEL-ENGAGEMENT.jpg?v=1787925182&amp;width=420 420w, //fr.melvita.com/cdn/shop/files/VISUEL-ENGAGEMENT.jpg?v=1787925182&amp;width=840 840w" width="840" height="680" loading="lazy" sizes="420px" class="zoom-image group-hover:zoom"></div><div class="place-self-end-start text-start"><div class="v-stack text-start gap-1"><p class="subheading">NOS ENGAGEMENTS</p>
2678          
2679</div></div></div></a>
2680
2681
2682</scroll-carousel>
2683  </div></header-mega-menu>
2684</li></ul></nav><nav class="header__secondary-nav" aria-label="Navigation secondaire">
2685      <ul class="contents unstyled-list"><li class="header__news-link" hidden>
2686          <news-modal-button class="contents">
2687            <button class="tap-area" aria-controls="news-modal" aria-expanded="false">
2688              <span class="sr-only">Modale des actualités</span><svg aria-hidden="true" focusable="false" width="16" fill="none" class="icon icon-bell" style="--icon-mobile-max-width: 16px; --icon-max-width: 20px" part="icon" viewBox="0 0 16 16">
2689        <path stroke-width="1" stroke="currentColor" d="M3.333 7v3.333L2 12.5h12l-1.333-2.167V7A4.665 4.665 0 0 0 4.7 3.7 4.667 4.667 0 0 0 3.333 7ZM6.5 15.5h3" />
2690      </svg></button>
2691          </news-modal-button>
2692        </li>
2693
2694        <li class="header__search-link md-max:hidden">
2695          <a href="/search" class="header__search-field" aria-controls="search-drawer">
2696            <span>Que recherchez-vous ?</span><svg aria-hidden="true" focusable="false" width="24" fill="none" class="icon icon-search"  part="icon" viewB
2696ox="0 0 16 16">
2697        <path stroke-width="1" stroke="currentColor" d="M1.333 7.333a6 6 0 1 0 12 0 6 6 0 0 0-12 0ZM11.575 11.576l3.09 3.09" />
2698      </svg></a>
2699        </li><li class="md-max:hidden">
2700          <hr class="header__secondary-nav-separator" />
2701        </li><li class="header__store-locator-link md-max:hidden">
2702            <a href="/pages/nos-boutiques" class="block tap-area">
2703              <span class="sr-only">Trouver un magasin</span>
2704              <svg aria-hidden="true" focusable="false" xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none">
2705                <path d="M13.6179 4.45024C11.0709 1.84992 6.94854 1.84992 4.40932 4.45024C1.86226 7.05057 1.86226 11.2591 4.40932 13.8514L9.01754 18.5L13.6258 13.8514C16.1728 11.2511 16.1728 7.04257 13.6258 4.45024H13.6179Z" stroke="currentColor" stroke-linecap="round"/>
2706                <circle cx="9.01855" cy="8" r="1.5" stroke="currentColor"/>
2707              </svg>
2708            </a>
2709          </li><li class="header__account-link">
2710            <shopify-store store-domain="https://fr.melvita.com" country="FR" language="fr"></shopify-store>
2711<shopify-account menu="customer-account-main-menu">
2712              <div slot="signed-out-avatar" class="tap-area">
2713                <span class="sr-only">Connexion</span>
2714                <svg aria-hidden="true" focusable="false" width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
2715                  <circle cx="10" cy="5.94336" r="1.5" stroke="currentColor"/>
2716                  <path d="M3.88672 16.0566C3.88672 12.6827 6.62136 9.94336 10 9.94336C13.3786 9.94336 16.1133 12.678 16.1133 16.0566" stroke="currentColor" stroke-linejoin="round"/>
2717                </svg>
2718              </div>
2719            </shopify-account>
2720          </li><li class="header__cart-link relative">
2721          <a href="/cart" class="block tap-area"  data-no-instant>
2722            <span class="sr-only">Panier</span>
2723            <svg aria-hidden="true" focusable="false" xmlns="http://www.w3.org/2000/svg" width="14" height="15" viewBox="0 0 14 15" fill="none">
2724              <path d="M10.2196 3.16578V5.31865C10.2196 7.11693 8.75689 8.57962 6.95861 8.57962C5.16033 8.57962 3.69764 7.11693 3.69764 5.31865V3.16578M0.5 0.5H13.4236V14.5H0.5V0.5Z" stroke="currentColor"/>
2725            </svg>
2726          </a>
2727
2728          <cart-count class="header__active-dot"hidden>
2729            <span class="sr-only">0 article</span>
2730          </cart-count>
2731        </li></ul>
2732    </nav><a href="/search" class="header__search-field header__search-bar md:hidden" aria-controls="search-drawer">
2733        <span>Que recherchez-vous ?</span><svg aria-hidden="true" focusable="false" width="24" fill="none" class="icon icon-search"  part="icon" viewBox="0 0 16 16">
2734        <path stroke-width="1" stroke="currentColor" d="M1.333 7.333a6 6 0 1 0 12 0 6 6 0 0 0-12 0ZM11.575 11.576l3.09 3.09" />
2735      </svg></a><link href="//fr.melvita.com/cdn/shop/t/4/assets/ax-menu-drawer.css?v=20666038638637104561787828863" rel="stylesheet" type="text/css" media="all" />
2736
2737<header-menu-drawer id="menu-drawer" class="menu-drawer color-scheme color-scheme--scheme-2">
2738  <template>
2739    <div part="overlay"></div>
2740
2741    <div part="content">
2742      <slot></slot>
2743    </div>
2744  </template><header-menu-drawer-panel id="menu-drawer-panel-main" data-main-panel class="menu-drawer__panel">
2745    <div class="menu-drawer__panel-body">
2746      <div class="menu-drawer__sections"><div class="menu-drawer__cards scroll-area"><a href="/collections/french-days" class="menu-drawer__card content-box" ><div class="content-box__background-media with-overlay"><img src="//fr.melvita.com/cdn/shop/files/OFFRES_1200x1200_4aeb87f3-932c-40b2-8a49-fb8d87e4fbc5.png?v=1787854405&amp;width=1200" alt="" srcset="//fr.melvita.com/cdn/shop/files/OFFRES_1200x1200_4aeb87f3-932c-40b2-8a49-fb8d87e4fbc5.png?v=1787854405&amp;width=142 142w, //fr.melvita.com/cdn/shop/files/OFFRES_1200x1200_4aeb87f3-932c-40b2-8a49-fb8d87e4fbc5.png?v=1787854405&amp;width=284 284w, //fr.melvita.com/cdn/shop/files/OFFRES_1200x1200_4aeb87f3-932c-40b2-8a49-fb8d87e4fbc5.png?v=1787854405&amp;width=426 426w" width="1200" height="1200" loading="lazy" sizes="142px"></div><span class="menu-drawer__card-title h5">French Days</span></a><a href="/collections/best-sellers" class="menu-drawer__card content-box" ><div class="content-box__background-media with-overlay"><img src="//fr.melvita.com/cdn/shop/files/Large-2026_SDR_-_GLOW_GEL_CREAM_-_2IN1_MASK_-_GLOW_GEL_CREAM.jpg?v=1787300178&amp;width=1200" alt="" srcset="//fr.melvita.com/cdn/shop/files/Large-2026_SDR_-_GLOW_GEL_CREAM_-_2IN1_MASK_-_GLOW_GEL_CREAM.jpg?v=1787300178&amp;width=142 142w, //fr.melvita.com/cdn/shop/files/Large-2026_SDR_-_GLOW_GEL_CREAM_-_2IN1_MASK_-_GLOW_GEL_CREAM.jpg?v=1787300178&amp;width=284 284w, //fr.melvita.com/cdn/shop/files/Large-2026_SDR_-_GLOW_GEL_CREAM_-_2IN1_MASK_-_GLOW_GEL_CREAM.jpg?v=1787300178&amp;width=426 426w" width="1200" height="1200" loading="lazy" sizes="142px"></div><span class="menu-drawer__card-title h5">Best-sellers</span></a><a href="/collections/cadeaux" class="menu-drawer__card content-box" ><div class="content-box__background-media with-overlay"><img src="//fr.melvita.com/cdn/shop/files/ING-ROSE2_1200x1200_c4171a2c-3cf0-4fb9-9891-29a87c77d7f1.png?v=1787300780&amp;width=1200" alt="" srcset="//fr.melvita.com/cdn/shop/files/ING-ROSE2_1200x1200_c4171a2c-3cf0-4fb9-9891-29a87c77d7f1.png?v=1787300780&amp;width=142 142w, //fr.melvita.com/cdn/shop/files/ING-ROSE2_1200x1200_c4171a2c-3cf0-4fb9-9891-29a87c77d7f1.png?v=1787300780&amp;width=284 284w, //fr.melvita.com/cdn/shop/files/ING-ROSE2_1200x1200_c4171a2c-3cf0-4fb9-9891-29a87c77d7f1.png?v=1787300780&amp;width=426 426w" width="1200" height="1200" loading="lazy" sizes="142px"></div><span class="menu-drawer__card-title h5">Cadeaux</span></a></div><ul class="menu-drawer__nav faded-linklist unstyled-list"><li><button type="button" class="menu-drawer__link" data-panel-toggle aria-controls="menu-drawer-panel-primary-1"><span>Soins visage</span><svg aria-hidden="true" focusable="false" width="10" class="menu-drawer__link-chevron icon icon-chevron-right"  part="icon" viewB
2746ox="0 0 9 10">
2747        <path fill="none" stroke="currentColor" stroke-width="1.5" d="m2.5 9 4-4-4-4"/>
2748      </svg></button></li><li><button type="button" class="menu-drawer__link" data-panel-toggle aria-controls="menu-drawer-panel-primary-2"><span>Soins corps</span><svg aria-hidden="true" focusable="false" width="10" class="menu-drawer__link-chevron icon icon-chevron-right"  part="icon" viewBox="0 0 9 10">
2749        <path fill="none" stroke="currentColor" stroke-width="1.5" d="m2.5 9 4-4-4-4"/>
2750      </svg></button></li><li><button type="button" class="menu-drawer__link" data-panel-toggle aria-controls="menu-drawer-panel-primary-3"><span>Préoccupations</span><svg aria-hidden="true" focusable="false" width="10" class="menu-drawer__link-chevron icon icon-chevron-right"  part="icon" viewBox="0 0 9 10">
2751        <path fill="none" stroke="currentColor" stroke-width="1.5" d="m2.5 9 4-4-4-4"/>
2752      </svg></button></li><li><button type="button" class="menu-drawer__link" data-panel-toggle aria-controls="menu-drawer-panel-primary-4"><span>Marque </span><svg aria-hidden="true" focusable="false" width="10" class="menu-drawer__link-chevron icon icon-chevron-right"  part="icon" viewBox="0 0 9 10">
2753        <path fill="none" stroke="currentColor" stroke-width="1.5" d="m2.5 9 4-4-4-4"/>
2754      </svg></button></li></ul><a href="/products/eau-extraordinaire-source-de-roses" class="menu-drawer__push content-box"><div class="content-box__background-media with-overlay"><img src="//fr.melvita.com/cdn/shop/files/TEXT-SDR-EAU-EXTRA_981x558_9107dab0-51a9-4c3b-a17a-ff352015bb2c.png?v=1787316353&amp;width=837" alt="" srcset="//fr.melvita.com/cdn/shop/files/TEXT-SDR-EAU-EXTRA_981x558_9107dab0-51a9-4c3b-a17a-ff352015bb2c.png?v=1787316353&amp;width=400 400w, //fr.melvita.com/cdn/shop/files/TEXT-SDR-EAU-EXTRA_981x558_9107dab0-51a9-4c3b-a17a-ff352015bb2c.png?v=1787316353&amp;width=600 600w, //fr.melvita.com/cdn/shop/files/TEXT-SDR-EAU-EXTRA_981x558_9107dab0-51a9-4c3b-a17a-ff352015bb2c.png?v=1787316353&amp;width=800 800w" width="837" height="558" loading="lazy" sizes="(max-width: 480px) 100vw, 432px"></div><span class="menu-drawer__push-heading h2">Un soin pour hydrater</span></a></div>
2755    </div></header-menu-drawer-panel><header-menu-drawer-panel id="menu-drawer-panel-primary-1" class="menu-drawer__panel color-scheme color-scheme--scheme-2">
2756  <div class="menu-drawer__panel-body">
2757    <div class="menu-drawer__sections menu-drawer__sections--panel">
2758      <button type="button" class="menu-drawer__back" data-panel-toggle aria-controls="menu-drawer-panel-main">Retour</button>
2759
2760      <div class="menu-drawer__sections"><ul class="menu-drawer__nav unstyled-list"><li><a href="/collections/serum-visage" class="menu-drawer__panel-link link-reversed" >Essence et sérum visage</a></li><li><a href="/collections/creme-visage" class="menu-drawer__panel-link link-reversed" >Crème visage</a></li><li><a href="/collections/nettoyant-demaquillant" class="menu-drawer__panel-link link-reversed" >Nettoyant et démaquillant</a></li><li><a href="/collections/exfoliant-visage" class="menu-drawer__panel-link link-reversed" >Exfoliant et masque visage</a></li><li><a href="/collections/soin-contour-des-yeux" class="menu-drawer__panel-link link-reversed" >Soin contour des yeux</a></li><li><a href="/collections/eaux-florales" class="menu-drawer__panel-link link-reversed" >Eau florale</a></li><li><a href="/collections/huile-visage" class="menu-drawer__panel-link link-reversed" >Huile visage</a></li><li><a href="/collections/bb-creme" class="menu-drawer__panel-link link-reversed" >BB crème</a></li><li><a href="/collections/baume-a-levres" class="menu-drawer__panel-link link-reversed" >Baume à lèvres</a></li><li><a href="/collections/tous-les-soins-visage" class="menu-drawer__panel-link link-reversed" >Tous les soins visage</a></li></ul></div>
2761    </div>
2762  </div>
2763</header-menu-drawer-panel>
2764<header-menu-drawer-panel id="menu-drawer-panel-primary-2" class="menu-drawer__panel color-scheme color-scheme--scheme-2">
2765  <div class="menu-drawer__panel-body">
2766    <div class="menu-drawer__sections menu-drawer__sections--panel">
2767      <button type="button" class="menu-drawer__back" data-panel-toggle aria-controls="menu-drawer-panel-main">Retour</button>
2768
2769      <div class="menu-drawer__sections"><ul class="menu-drawer__nav unstyled-list"><li><a href="/collections/serum-corps" class="menu-drawer__panel-link link-reversed" >Sérum corps</a></li><li><a href="/collections/huile-corps" class="menu-drawer__panel-link link-reversed" >Huile corps</a></li><li><a href="/collections/creme-corps" class="menu-drawer__panel-link link-reversed" >Crème corps</a></li><li><a href="/collections/gel-douche-savon" class="menu-drawer__panel-link link-reversed" >Gel douche et savon</a></li><li><a href="/collections/gommage-corps" class="menu-drawer__panel-link link-reversed" >Gommage corps</a></li><li><a href="/collections/hygiene" class="menu-drawer__panel-link link-reversed" >Hygiène quotidienne</a></li><li><a href="/collections/creme-mains" class="menu-drawer__panel-link link-reversed" >Crème mains</a></li><li><a href="/collections/soin-cheveux" class="menu-drawer__panel-link link-reversed" >Soin cheveux</a></li><li><a href="/collections/tous-les-soins-corps" class="menu-drawer__panel-link link-reversed" >Tous les soins corps</a></li></ul></div>
2770    </div>
2771  </div>
2772</header-menu-drawer-panel>
2773<header-menu-drawer-panel id="menu-drawer-panel-primary-3" class="menu-drawer__panel color-scheme color-scheme--scheme-2">
2774  <div class="menu-drawer__panel-body">
2775    <div class="menu-drawer__sections menu-drawer__sections--panel">
2776      <button type="button" class="menu-drawer__back" data-panel-toggle aria-controls="menu-drawer-panel-main">Retour</button>
2777
2778      <div class="menu-drawer__sections"><ul class="menu-drawer__nav unstyled-list"><li><a href="/collections/soin-visage-hydratant" class="menu-drawer__panel-link link-reversed" >Manque d'hydratation</a></li><li><a href="/collections/soin-visage-eclat" class="menu-drawer__panel-link link-reversed" >Manque d'éclat</a></li><li><a href="/collections/soin-rides-et-ridules" class="menu-drawer__panel-link link-reversed" >Rides et ridules</a></li><li><a href="/collections/peau-seche-inconfortable" class="menu-drawer__panel-link link-reversed" >Peau sèche et inconfortable</a></li><li><a href="/collections/soin-visage-fermete" class="menu-drawer__panel-link link-reversed" >Manque de fermeté</a></li><li><a href="/collections/soin-visage-taches" class="menu-drawer__panel-link link-reversed" >Tâches pigmentaires</a></li><li><a href="/collections/soin-visage-rougeurs" class="menu-drawer__panel-link link-reversed" >Peau sensible et rougeurs</a></li><li><a href="/collections/soin-visage-imperfections" class="menu-drawer__panel-link link-reversed" >Peau à imperfections</a></li></ul></div>
2779    </div>
2780  </div>
2781</header-menu-drawer-panel>
2782<header-menu-drawer-panel id="menu-drawer-panel-primary-4" class="menu-drawer__panel color-scheme color-scheme--scheme-2">
2783  <div class="menu-drawer__panel-body">
2784    <div class="menu-drawer__sections menu-drawer__sections--panel">
2785      <button type="button" class="menu-drawer__back" data-panel-toggle aria-controls="menu-drawer-panel-main">Retour</button>
2786
2787      <div class="menu-drawer__sections">
2787<script src="//fr.melvita.com/cdn/shop/t/4/assets/ax-menu-promo.js?v=174421363216936711411789037182" defer="defer"></script>
2787<style>
2788    #promo-block-list-mega_menu_N3Ed7Cmenu-drawer-panel-primary-4 {
2789      --menu-promo-block-column-gap: 12px;
2790      --menu-promo-blocks-count: 3;
2791    }
2792  </style>
2793
2794  <div id="promo-block-list-mega_menu_N3Ed7Cmenu-drawer-panel-primary-4" class="menu-promo menu-promo--without-spacing">
2795    <scroll-carousel id="promo-block-list-mega_menu_N3Ed7Cmenu-drawer-panel-primary-4-carousel" class="menu-promo__carousel scroll-area" allow-drag>
2796
2797        <a href="/pages/notre-histoire" class="menu-promo__item @container/content-box group"><div class="content-box overflow-hidden h-full" style="--text-color: 255 255 255; color: rgb(var(--text-color));--border-color: var(--text-color) / 0.15;"><div class="content-box__background-media with-overlay"><img src="//fr.melvita.com/cdn/shop/files/VISUEL-HISTOIRE-MENU.jpg?v=1787925243&amp;width=840" alt="" srcset="//fr.melvita.com/cdn/shop/files/VISUEL-HISTOIRE-MENU.jpg?v=1787925243&amp;width=420 420w, //fr.melvita.com/cdn/shop/files/VISUEL-HISTOIRE-MENU.jpg?v=1787925243&amp;width=840 840w" width="840" height="680" loading="lazy" sizes="420px" class="zoom-image group-hover:zoom"></div><div class="place-self-end-start text-start"><div class="v-stack text-start gap-1"><p class="subheading">NOTRE HISTOIRE</p>
2798          
2799</div></div></div></a>
2800
2801        <a href="/pages/notre-expertise" class="menu-promo__item @container/content-box group"><div class="content-box overflow-hidden h-full" style="--text-color: 255 255 255; color: rgb(var(--text-color));--border-color: var(--text-color) / 0.15;"><div class="content-box__background-media with-overlay"><img src="//fr.melvita.com/cdn/shop/files/TEX-HAIRCARE-SERUM_840x680_21c44065-4b15-4e12-b18f-4c6e6f3daead.jpg?v=1788189419&amp;width=840" alt="" srcset="//fr.melvita.com/cdn/shop/files/TEX-HAIRCARE-SERUM_840x680_21c44065-4b15-4e12-b18f-4c6e6f3daead.jpg?v=1788189419&amp;width=420 420w, //fr.melvita.com/cdn/shop/files/TEX-HAIRCARE-SERUM_840x680_21c44065-4b15-4e12-b18f-4c6e6f3daead.jpg?v=1788189419&amp;width=840 840w" width="840" height="680" loading="lazy" sizes="420px" class="zoom-image group-hover:zoom"></div><div class="place-self-end-start text-start"><div class="v-stack text-start gap-1"><p class="subheading">NOTRE EXPERTISE</p>
2802          
2803</div></div></div></a>
2804
2805        <a href="/pages/nos-engagements" class="menu-promo__item @container/content-box group"><div class="content-box overflow-hidden h-full" style="--text-color: 255 255 255; color: rgb(var(--text-color));--border-color: var(--text-color) / 0.15;"><div class="content-box__background-media with-overlay"><img src="//fr.melvita.com/cdn/shop/files/VISUEL-ENGAGEMENT.jpg?v=1787925182&amp;width=840" alt="" srcset="//fr.melvita.com/cdn/shop/files/VISUEL-ENGAGEMENT.jpg?v=1787925182&amp;width=420 420w, //fr.melvita.com/cdn/shop/files/VISUEL-ENGAGEMENT.jpg?v=1787925182&amp;width=840 840w" width="840" height="680" loading="lazy" sizes="420px" class="zoom-image group-hover:zoom"></div><div class="place-self-end-start text-start"><div class="v-stack text-start gap-1"><p class="subheading">NOS ENGAGEMENTS</p>
2806          
2807</div></div></div></a>
2808
2809
2810</scroll-carousel>
2811  </div></div>
2812    </div>
2813  </div>
2814</header-menu-drawer-panel>
2815</header-menu-drawer>
2816</x-header>
2817</height-observer>
2818
2819<script>
2820  document.documentElement.style.setProperty('--header-height', `${Math.round(document.getElementById('shopify-section-sections--30543191376210__header').clientHeight)}px`);
2821</script>
2821
2822
2823</header>
2824<!-- END sections: header-group --><!-- BEGIN sections: overlay-group -->
2825<section id="shopify-section-sections--30543191408978__cart-drawer" class="shopify-section shopify-section-group-overlay-group shopify-section--cart-drawer">
2826</section><section id="shopify-section-sections--30543191408978__search-drawer" class="shopify-section shopify-section-group-overlay-group shopify-section--search-drawer"><link href="//fr.melvita.com/cdn/shop/t/4/assets/ax-search.css?v=9963105301847081791787240104" rel="stylesheet" type="text/css" media="all" />
2827<script src="//fr.melvita.com/cdn/shop/t/4/assets/ax-search.js?v=35820209326577726131786011914" defer></script>
2827
2828
2829<x-drawer id="search-drawer" class="drawer drawer--search color-scheme color-scheme--scheme-1" handle-editor-events>
2830  <div slot="header">
2831    <form action="/search" id="predictive-search-form" method="GET" aria-owns="predictive-search" class="ax-search__form" role="search"><svg aria-hidden="true" focusable="false" width="20" fill="none" class="icon icon-search"  part="icon" viewBox="0 0 16 16">
2832        <path stroke-width="1" stroke="currentColor" d="M1.333 7.333a6 6 0 1 0 12 0 6 6 0 0 0-12 0ZM11.575 11.576l3.09 3.09" />
2833      </svg><label for="search-drawer-input" class="sr-only">Recherche...</label>
2834      <input id="search-drawer-input" type="search" class="ax-search__input" name="q" placeholder="Recherche..." autocomplete="off" autocorrect="off" spellcheck="false">
2835
2836      <button type="reset" class="ax-search__clear">
2837        <span class="sr-only">Effacer</span><svg aria-hidden="true" focusable="false" width="14" class="icon icon-remove-bin"  part="icon" viewBox="0 0 16 17">
2838        <path stroke="currentColor" fill="none" d="M2 4.5h12M3.5 4.5h9v10h-9v-10ZM6.5 7v5M9.5 7v5M5.5 4.5a2.5 2.5 0 1 1 5 0" />
2839      </svg></button>
2840    </form>
2841  </div>
2842
2843  <predictive-search id="predictive-search">
2844    <div slot="placeholder"><div class="ax-search ax-search--placeholder ax-search--no-aside"></div>
2845    </div><div slot="skeleton" aria-hidden="true">
2846      <div class="ax-search ax-search--skeleton">
2847        <div class="ax-search__aside"><div class="ax-search__group">
2848              <span class="ax-skeleton ax-skeleton--title"></span>
2849              <div class="ax-search__links"><span class="ax-skeleton ax-skeleton--aside-line" style="--ax-skeleton-w: 70%"></span><span class="ax-skeleton ax-skeleton--aside-line" style="--ax-skeleton-w: 85%"></span><span class="ax-skeleton ax-skeleton--aside-line" style="--ax-skeleton-w: 55%"></span><span class="ax-skeleton ax-skeleton--aside-line" style="--ax-skeleton-w: 70%"></span><span class="ax-skeleton ax-skeleton--aside-line" style="--ax-skeleton-w: 85%"></span><span class="ax-skeleton ax-skeleton--aside-line" style="--ax-skeleton-w: 55%"></span></div>
2850            </div><div class="ax-search__group">
2851              <span class="ax-skeleton ax-skeleton--title"></span>
2852              <div class="ax-search__links"><span class="ax-skeleton ax-skeleton--aside-line" style="--ax-skeleton-w: 70%"></span><span class="ax-skeleton ax-skeleton--aside-line" style="--ax-skeleton-w: 85%"></span><span class="ax-skeleton ax-skeleton--aside-line" style="--ax-skeleton-w: 55%"></span><span class="ax-skeleton ax-skeleton--aside-line" style="--ax-skeleton-w: 70%"></span></div>
2853            </div><div class="ax-search__group">
2854              <span class="ax-skeleton ax-skeleton--title"></span>
2855              <div class="ax-search__links"><span class="ax-skeleton ax-skeleton--aside-line" style="--ax-skeleton-w: 70%"></span><span class="ax-skeleton ax-skeleton--aside-line" style="--ax-skeleton-w: 85%"></span></div>
2856            </div></div>
2857
2858        <div class="ax-search__main">
2859          <span class="ax-skeleton ax-skeleton--title"></span>
2860          <div class="ax-search__grid ax-search__grid--skeleton"><div class="ax-skeleton-card">
2861                <span class="ax-skeleton ax-skeleton--media aspect-portrait_crop"></span>
2862                <span class="ax-skeleton ax-skeleton--card-title" style="--ax-skeleton-w: 70%"></span>
2863                <span class="ax-skeleton ax-skeleton--card-sub" style="--ax-skeleton-w: 90%"></span>
2864                <span class="ax-skeleton ax-skeleton--card-sub" style="--ax-skeleton-w: 55%"></span>
2865                <span class="ax-skeleton ax-skeleton--card-price" style="--ax-skeleton-w: 30%"></span>
2866              </div><div class="ax-skeleton-card">
2867                <span class="ax-skeleton ax-skeleton--media aspect-portrait_crop"></span>
2868                <span class="ax-skeleton ax-skeleton--card-title" style="--ax-skeleton-w: 70%"></span>
2869                <span class="ax-skeleton ax-skeleton--card-sub" style="--ax-skeleton-w: 90%"></span>
2870                <span class="ax-skeleton ax-skeleton--card-sub" style="--ax-skeleton-w: 55%"></span>
2871                <span class="ax-skeleton ax-skeleton--card-price" style="--ax-skeleton-w: 30%"></span>
2872              </div><div class="ax-skeleton-card">
2873                <span class="ax-skeleton ax-skeleton--media aspect-portrait_crop"></span>
2874                <span class="ax-skeleton ax-skeleton--card-title" style="--ax-skeleton-w: 70%"></span>
2875                <span class="ax-skeleton ax-skeleton--card-sub" style="--ax-skeleton-w: 90%"></span>
2876                <span class="ax-skeleton ax-skeleton--card-sub" style="--ax-skeleton-w: 55%"></span>
2877                <span class="ax-skeleton ax-skeleton--card-price" style="--ax-skeleton-w: 30%"></span>
2878              </div><div class="ax-skeleton-card">
2879                <span class="ax-skeleton ax-skeleton--media aspect-portrait_crop"></span>
2880                <span class="ax-skeleton ax-skeleton--card-title" style="--ax-skeleton-w: 70%"></span>
2881                <span class="ax-skeleton ax-skeleton--card-sub" style="--ax-skeleton-w: 90%"></span>
2882                <span class="ax-skeleton ax-skeleton--card-sub" style="--ax-skeleton-w: 55%"></span>
2883                <span class="ax-skeleton ax-skeleton--card-price" style="--ax-skeleton-w: 30%"></span>
2884              </div><div class="ax-skeleton-card">
2885                <span class="ax-skeleton ax-skeleton--media aspect-portrait_crop"></span>
2886                <span class="ax-skeleton ax-skeleton--card-title" style="--ax-skeleton-w: 70%"></span>
2887                <span class="ax-skeleton ax-skeleton--card-sub" style="--ax-skeleton-w: 90%"></span>
2888                <span class="ax-skeleton ax-skeleton--card-sub" style="--ax-skeleton-w: 55%"></span>
2889                <span class="ax-skeleton ax-skeleton--card-price" style="--ax-skeleton-w: 30%"></span>
2890              </div><div class="ax-skeleton-card">
2891                <span class="ax-skeleton ax-skeleton--media aspect-portrait_crop"></span>
2892                <span class="ax-skeleton ax-skeleton--card-title" style="--ax-skeleton-w: 70%"></span>
2893                <span class="ax-skeleton ax-skeleton--card-sub" style="--ax-skeleton-w: 90%"></span>
2894                <span class="ax-skeleton ax-skeleton--card-sub" style="--ax-skeleton-w: 55%"></span>
2895                <span class="ax-skeleton ax-skeleton--card-price" style="--ax-skeleton-w: 30%"></span>
2896              </div><div class="ax-skeleton-card">
2897                <span class="ax-skeleton ax-skeleton--media aspect-portrait_crop"></span>
2898                <span class="ax-skeleton ax-skeleton--card-title" style="--ax-skeleton-w: 70%"></span>
2899                <span class="ax-skeleton ax-skeleton--card-sub" style="--ax-skeleton-w: 90%"></span>
2900                <span class="ax-skeleton ax-skeleton--card-sub" style="--ax-skeleton-w: 55%"></span>
2901                <span class="ax-skeleton ax-skeleton--card-price" style="--ax-skeleton-w: 30%"></span>
2902              </div><div class="ax-skeleton-card">
2903                <span class="ax-skeleton ax-skeleton--media aspect-portrait_crop"></span>
2904                <span class="ax-skeleton ax-skeleton--card-title" style="--ax-skeleton-w: 70%"></span>
2905                <span class="ax-skeleton ax-skeleton--card-sub" style="--ax-skeleton-w: 90%"></span>
2906                <span class="ax-skeleton ax-skeleton--card-sub" style="--ax-skeleton-w: 55%"></span>
2907                <span class="ax-skeleton ax-skeleton--card-price" style="--ax-skeleton-w: 30%"></span>
2908              </div></div>
2909          <span class="ax-skeleton ax-skeleton--view-all"></span>
2910        </div>
2911      </div>
2912    </div>
2913
2914    <div slot="results" class="contents"><!-- FILL IN JS --></div>
2915  </predictive-search>
2916</x-drawer>
2917
2918</section>
2919<!-- END sections: overlay-group --><main id="main" class="anchor ">
2920      <section id="shopify-section-template--30543204778322__main" class="shopify-section shopify-section--main-cart"><div class="color-scheme color-scheme--scheme-1">
2921  <div class="section-spacing">
2922    <div class="container">
2923      <div class="max-w-2xl mx-auto"><div class="empty-state">
2924            <div class="prose prose-justify-center">
2925              <h1 class="h3">Panier</h1>
2926              <p>Votre panier est vide</p>
2927<a  class="button" href="/collections/best-sellers" ><button-content class="button__content" >Explorer nos produits</button-content></a></div>
2928          </div></div>
2929    </div>
2930  </div>
2931</div>
2932
2933
2934</section>
2935    </main><!-- BEGIN sections: footer-group -->
2936<section id="shopify-section-sections--30543190688082__trust_icons_dhwgem" class="shopify-section shopify-section-group-footer-group shopify-section--trust-icons"><style>
2937    #shopify-section-sections--30543190688082__trust_icons_dhwgem {
2938      --trust-icons-item-count: 4;
2939    }
2940  </style>
2940<script src="//fr.melvita.com/cdn/shop/t/4/assets/ax-product-slider.js?v=135989042043708014381787222692" defer></script>
2940<div class="color-scheme color-scheme--scheme-2"><ax-autoplay-carousel class="trust-icons trust-icons--slider" autoplay="4000">
2941        <scroll-carousel id="trust-icons-sections--30543190688082__trust_icons_dhwgem" class="trust-icons__carousel scroll-area snap-x" allow-drag><div class="trust-icons__item snap-center" role="group" aria-label="Elément 1 de 4" >
2942        <div class="prose prose-justify-center prose--compact"><p class="h7">PAIEMENT SÉCURISÉ</p><p class="text-subdued">Transactions 100% protégées</p></div>
2943      </div><div class="trust-icons__item snap-center" role="group" aria-label="Elément 2 de 4" >
2944        <div class="prose prose-justify-center prose--compact"><p class="h7">FORMULES CERTIFIÉES BIOLOGIQUES</p><p class="text-subdued">Des actifs d'origine naturelle</p></div>
2945      </div><div class="trust-icons__item snap-center" role="group" aria-label="Elément 3 de 4" >
2946        <div class="prose prose-justify-center prose--compact"><p class="h7">LIVRAISON RAPIDE</p><p class="text-subdued">Offerte dès 49€ d'achat</p></div>
2947      </div><div class="trust-icons__item snap-center" role="group" aria-label="Elément 4 de 4" >
2948        <div class="prose prose-justify-center prose--compact"><p class="h7">RETOURS FACILES</p><p class="text-subdued">Sous 14 jours</p></div>
2949      </div></scroll-carousel>
2950
2951        <progress-bar track-scroll-target="trust-icons-sections--30543190688082__trust_icons_dhwgem" class="progress-bar progress-bar--limit-width sm:hidden"></progress-bar>
2952      </ax-autoplay-carousel></div>
2953</section><section id="shopify-section-sections--30543190688082__newsletter" class="shopify-section shopify-section-group-footer-group shopify-section--newsletter"><style>
2954  #shopify-section-sections--30543190688082__newsletter .newsletter-band {
2955    display: grid;
2956    gap: 1.5rem;
2957  }
2958
2959  #shopify-section-sections--30543190688082__newsletter .newsletter-band__description {
2960    max-width: 28rem;
2961  }
2962
2963  /* Email field and submit button on a single row, but kept separate (gap + rounded corners) */
2964  #shopify-section-sections--30543190688082__newsletter .newsletter-band .input-with-connected-submit {
2965    flex-direction: row;
2966    align-items: stretch;
2967    gap: .75rem;
2968  }
2969
2970  #shopify-section-sections--30543190688082__newsletter .newsletter-band .input-with-connected-submit .form-control {
2971    flex-grow: 1;
2972  }
2973
2974  #shopify-section-sections--30543190688082__newsletter .newsletter-band .input-with-connected-submit .input {
2975    --input-padding-block: .5rem;
2976    min-height: 100%;
2977    border-inline-end-width: 1px;
2978    border-radius: var(--input-border-radius);
2979    background-color: transparent;
2980  }
2981
2982  #shopify-section-sections--30543190688082__newsletter .newsletter-band .input-with-connected-submit .button {
2983    --button-padding-block: .5rem;
2984    border-radius: var(--button-border-radius);
2985    font-weight: 700;
2986  }
2987
2988  /* Placeholder ("Votre mail") in solid black instead of the default subdued tone */
2989  #shopify-section-sections--30543190688082__newsletter .newsletter-band .floating-label {
2990    color: rgb(var(--input-text-color, var(--text-color)));
2991    font-size: 14px;
2992  }
2993
2994  /* The theme lowercases every heading; the mockup keeps the original casing */
2995  #shopify-section-sections--30543190688082__newsletter .newsletter-band__heading :where(h1, h2, h3, h4, h5, h6) {
2996    font-weight: 400;
2997    text-transform: none;
2998    line-height: 110%;
2999  }
3000
3001   #shopify-section-sections--30543190688082__newsletter .newsletter-band__heading * {
3002    margin: 0;
3003   }
3004
3005  /* Two-tone heading: light first words, bold highlighted part */
3006  #shopify-section-sections--30543190688082__newsletter .newsletter-band__heading :where(h1, h2, h3, h4, h5, h6) strong {
3007    font-weight: 800;
3008  }
3009
3010  @media screen and (min-width: 1000px) {
3011    #shopify-section-sections--30543190688082__newsletter .newsletter-band {
3012      grid-template-columns: minmax(0, auto) minmax(0, 1fr) minmax(0, auto);
3013      align-items: center;
3014      gap: clamp(2.5rem, 5vw, 6rem);
3015    }
3016
3017    #shopify-section-sections--30543190688082__newsletter .newsletter-band__heading {
3018      max-width: 21rem;
3019    }
3020
3021    #shopify-section-sections--30543190688082__newsletter .newsletter-band__form {
3022      width: 22rem;
3023    }
3024  }
3025</style>
3026
3027<div class="color-scheme color-scheme--scheme-1"><div class="container section-spacing">
3028      <div class="newsletter-band">
3029        <div class="newsletter-band__heading prose"><h2  class="h3" >Inscrivez-vous <br/>À NOTRE NEWSLETTER !</h2></div><div class="newsletter-band__description text-sm text-subdued">Profitez de -15 % sur votre prochaine commande et découvrez en avant-première nos nouveautés, nos offres exclusives et nos conseils pour prendre soin de votre peau.</div><div class="newsletter-band__form"><form method="post" action="/contact#newsletter-form-sections--30543190688082__newsletter" id="newsletter-form-sections--30543190688082__newsletter" accept-charset="UTF-8" class="form"><input type="hidden" name="form_type" value="customer" /><input type="hidden" name="utf8" value="✓" /><input type="hidden" name="contact[tags]" value="newsletter"><div class="input-with-connected-submit"><div class="form-control" ><input id="input--sections--30543190688082__newsletter--contactemail" class="input " type="email" dir="ltr" name="contact[email]" 
3030  
3031  
3032  
3033  
3034  placeholder=" "
3035  autocomplete="email"
3036  
3037  enterkeyhint="send"
3038  required
3039  
3040  
3041  
3042><label for="input--sections--30543190688082__newsletter--contactemail" class="floating-label ">Votre mail</label></div>
3043<button type="submit"  class="button" ><button-content class="button__content" >Envoyer</button-content></button></div></form></div>
3044      </div>
3045    </div></div>
3046
3047
3048</section><footer id="shopify-section-sections--30543190688082__footer" class="shopify-section shopify-section-group-footer-group shopify-section--footer"><div class="footer color-scheme color-scheme--scheme-11">
3049  <div class="container">
3049<div class="footer__content"><div class="footer__block-list"><div class="footer__block footer__block--links footer__block--accordion-links" ><div class="v-stack gap-4.5 sm-max:hidden"><p class="footer__menu-title"><strong>Besoin d'aide ?</strong></p><ul class="v-stack gap-2.5 unstyled-list" role="list"><li><span class="footer__menu-link">Nous contacter</span><ul class="footer__submenu v-stack gap-2.5 unstyled-list" role="list"><li><a href="tel:0475370948" class="footer__menu-link link-reversed link-tap-area">04 75 37 09 48 </a></li><li><a href="mailto:[email protected]" class="footer__menu-link link-reversed link-tap-area">[email protected]</a></li></ul></li><li><a href="/pages/programme-de-fidelite" class="footer__menu-link link-reversed link-tap-area">Programme de fidélité</a></li><li><a href="/pages/programme-de-parrainage" class="footer__menu-link link-reversed link-tap-area">Programme de parrainage</a></li>
3050                      </ul></div><accordion-disclosure class="accordion   sm:hidden" >
3051  <details class="accordion__disclosure"  >
3052    <summary class="accordion__summary   "><span><strong>Besoin d'aide ?</strong></span><svg ria-hidden="true" focusable="false" width="11" class="icon icon-accordion-small-arrow"  part="icon" width="11" height="6" viewBox="0 0 11 6" fill="none">
3053        <path d="M10.5133 0.367188L5.42631 5.06284L0.339355 0.367188" stroke="currentColor" stroke-linejoin="round"/>
3054      </svg></summary>
3055
3056    <div class="accordion__content "><ul class="v-stack gap-2.5 unstyled-list" role="list"><li><span class="footer__menu-link">Nous contacter</span><ul class="footer__submenu v-stack gap-2.5 unstyled-list" role="list"><li>
3056<a href="tel:0475370948" class="footer__menu-link link-reversed link-tap-area">04 75 37 09 48 </a></li><li><a href="mailto:[email protected]" class="footer__menu-link link-reversed link-tap-area">[email protected]</a></li></ul></li><li><a href="/pages/programme-de-fidelite" class="footer__menu-link link-reversed link-tap-area">Programme de fidélité</a></li><li><a href="/pages/programme-de-parrainage" class="footer__menu-link link-reversed link-tap-area">Programme de parrainage</a></li>
3057                      </ul></div>
3058  </details>
3059</accordion-disclosure>
3060</div><div class="footer__block footer__block--links footer__block--accordion-links" ><div class="v-stack gap-4.5 sm-max:hidden"><p class="footer__menu-title"><strong>Nous trouver</strong></p><ul class="v-stack gap-2.5 unstyled-list" role="list"><li><a href="/pages/nos-boutiques" class="footer__menu-link link-reversed link-tap-area">Nos points de vente</a></li><li><a href="/pages/notre-usine" class="footer__menu-link link-reversed link-tap-area">Lagorce : boutique et visite de l'usine</a></li><li><a href="/pages/notre-boutique-et-institut" class="footer__menu-link link-reversed link-tap-area">Aubenas : boutique et institut</a></li>
3061                      </ul></div><accordion-disclosure class="accordion   sm:hidden" >
3062  <details class="accordion__disclosure"  >
3063    <summary class="accordion__summary   "><span><strong>Nous trouver</strong></span><svg ria-hidden="true" focusable="false" width="11" class="icon icon-accordion-small-arrow"  part="icon" width="11" height="6" viewBox="0 0 11 6" fill="none">
3064        <path d="M10.5133 0.367188L5.42631 5.06284L0.339355 0.367188" stroke="currentColor" stroke-linejoin="round"/>
3065      </svg></summary>
3066
3067    <div class="accordion__content "><ul class="v-stack gap-2.5 unstyled-list" role="list"><li><a href="/pages/nos-boutiques" class="footer__menu-link link-reversed link-tap-area">Nos points de vente</a></li><li><a href="/pages/notre-usine" class="footer__menu-link link-reversed link-tap-area">Lagorce : boutique et visite de l'usine</a></li><li><a href="/pages/notre-boutique-et-institut" class="footer__menu-link link-reversed link-tap-area">Aubenas : boutique et institut</a></li>
3068                      </ul></div>
3069  </details>
3070</accordion-disclosure>
3071</div><div class="footer__block footer__block--links footer__block--accordion-links" ><div class="v-stack gap-4.5 sm-max:hidden"><p class="footer__menu-title"><strong>Melvita</strong></p><ul class="v-stack gap-2.5 unstyled-list" role="list"><li><a href="/pages/notre-histoire" class="footer__menu-link link-reversed link-tap-area">Notre histoire </a></li><li><a href="/pages/notre-expertise" class="footer__menu-link link-reversed link-tap-area">Notre expertise </a></li><li><a href="/pages/nos-engagements" class="footer__menu-link link-reversed link-tap-area">Nos engagements </a></li><li><a href="/pages/gammes" class="footer__menu-link link-reversed link-tap-area">Nos gammes </a></li><li><a href="/blogs/articles" class="footer__menu-link link-reversed link-tap-area">Nos articles beauté </a></li><li><a href="/pages/offres" class="footer__menu-link link-reversed link-tap-area">Nos offres saisonnières </a></li><li><a href="/collections/tous-les-produits" class="footer__menu-link link-reversed link-tap-area">Tous nos produits </a></li>
3072                      </ul></div><accordion-disclosure class="accordion   sm:hidden" >
3073  <details class="accordion__disclosure"  >
3074    <summary class="accordion__summary   "><span><strong>Melvita</strong></span><svg ria-hidden="true" focusable="false" width="11" class="icon icon-accordion-small-arrow"  part="icon" width="11" height="6" viewBox="0 0 11 6" fill="none">
3075        <path d="M10.5133 0.367188L5.42631 5.06284L0.339355 0.367188" stroke="currentColor" stroke-linejoin="round"/>
3076      </svg></summary>
3077
3078    <div class="accordion__content "><ul class="v-stack gap-2.5 unstyled-list" role="list"><li><a href="/pages/notre-histoire" class="footer__menu-link link-reversed link-tap-area">Notre histoire </a></li><li><a href="/pages/notre-expertise" class="footer__menu-link link-reversed link-tap-area">Notre expertise </a></li><li><a href="/pages/nos-engagements" class="footer__menu-link link-reversed link-tap-area">Nos engagements </a></li><li><a href="/pages/gammes" class="footer__menu-link link-reversed link-tap-area">Nos gammes </a></li><li><a href="/blogs/articles" class="footer__menu-link link-reversed link-tap-area">Nos articles beauté </a></li><li><a href="/pages/offres" class="footer__menu-link link-reversed link-tap-area">Nos offres saisonnières </a></li><li><a href="/collections/tous-les-produits" class="footer__menu-link link-reversed link-tap-area">Tous nos produits </a></li>
3079                      </ul></div>
3080  </details>
3081</accordion-disclosure>
3082</div><div class="footer__block footer__block--image " ><img src="//fr.melvita.com/cdn/shop/files/Bcorp_Entreprise_Certifiee_White.png?v=1786367857&amp;width=225" alt="Entreprise B Certifiée" srcset="//fr.melvita.com/cdn/shop/files/Bcorp_Entreprise_Certifiee_White.png?v=1786367857&amp;width=60 60w, //fr.melvita.com/cdn/shop/files/Bcorp_Entreprise_Certifiee_White.png?v=1786367857&amp;width=120 120w" width="225" height="343" sizes="60px" style="--image-max-width: 60px; --image-mobile-max-width: 34px" class="constrained-image"></div></div></div><div class="footer__logo-bar" ><div class="footer__big-logo footer__big-logo--static"><img src="//fr.melvita.com/cdn/shop/files/logo-melvita-white.svg?v=1788265829&amp;width=600" alt="" srcset="//fr.melvita.com/cdn/shop/files/logo-melvita-white.svg?v=1788265829&amp;width=200 200w, //fr.melvita.com/cdn/shop/files/logo-melvita-white.svg?v=1788265829&amp;width=400 400w, //fr.melvita.com/cdn/shop/files/logo-melvita-white.svg?v=1788265829&amp;width=600 600w" width="600" height="136" loading="lazy" style="--image-mobile-max-width: 70vw; --image-max-width: 32vw;" class="constrained-image"></div><ul class="social-media unstyled-list" role="list"><li class="social-media__item branding-colors--facebook">
3083      <a href="https://www.facebook.com/MelvitaFR/" class="tap-area" target="_blank" rel="noopener" aria-label="Nous suivre sur Facebook"><svg aria-hidden="true" focusable="false" width="24" class="icon icon-facebook-outline"  viewBox="0 0 24 24" fill="none">
3084        <path transform="translate(6 1.5)" d="M11.5 0.5H8.5C7.17392 0.5 5.90215 1.02678 4.96447 1.96447C4.02678 2.90215 3.5 4.17392 3.5 5.5V8.5H0.5V12.5H3.5V20.5
3084H7.5V12.5H10.5L11.5 8.5H7.5V5.5C7.5 5.23478 7.60536 4.98043 7.79289 4.79289C7.98043 4.60536 8.23478 4.5 8.5 4.5H11.5V0.5Z" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"/>
3085      </svg></a>
3086    </li><li class="social-media__item branding-colors--instagram">
3087      <a href="https://www.instagram.com/melvitaofficial/" class="tap-area" target="_blank" rel="noopener" aria-label="Nous suivre sur Instagram"><svg aria-hidden="true" focusable="false" width="24" class="icon icon-instagram-outline"  viewBox="0 0 24 24" fill="none">
3088        <path d="M17 2H7C4.23858 2 2 4.23858 2 7V17C2 19.7614 4.23858 22 7 22H17C19.7614 22 22 19.7614 22 17V7C22 4.23858 19.7614 2 17 2Z" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"/>
3089        <path d="M15.9997 11.3703C16.1231 12.2025 15.981 13.0525 15.5935 13.7993C15.206 14.5461 14.5929 15.1517 13.8413 15.53C13.0898 15.9082 12.2382 16.0399 11.4075 15.9062C10.5768 15.7726 9.80947 15.3804 9.21455 14.7855C8.61962 14.1905 8.22744 13.4232 8.09377 12.5925C7.96011 11.7619 8.09177 10.9102 8.47003 10.1587C8.84829 9.40716 9.45389 8.79404 10.2007 8.40654C10.9475 8.01904 11.7975 7.87689 12.6297 8.0003C13.4786 8.12619 14.2646 8.52176 14.8714 9.12861C15.4782 9.73545 15.8738 10.5214 15.9997 11.3703Z" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"/>
3090        <path d="M17.5 6.5H17.51" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"/>
3091      </svg></a>
3092    </li><li class="social-media__item branding-colors--youtube">
3093      <a href="https://www.youtube.com/user/MelvitaFR" class="tap-area" target="_blank" rel="noopener" aria-label="Nous suivre sur YouTube"><svg aria-hidden="true" focusable="false" width="24" class="icon icon-youtube-outline"  viewBox="0 0 24 24" fill="none">
3094        <path d="M22.5401 6.42C22.4213 5.94541 22.1794 5.51057 21.8387 5.15941C21.4981 4.80824 21.0708 4.55318 20.6001 4.42C18.8801 4 12.0001 4 12.0001 4C12.0001 4 5.12008 4 3.40008 4.46C2.92933 4.59318 2.50206 4.84824 2.16143 5.19941C1.8208 5.55057 1.57887 5.98541 1.46008 6.46C1.1453 8.20556 0.991319 9.97631 1.00008 11.75C0.988863 13.537 1.14285 15.3213 1.46008 17.08C1.59104 17.5398 1.83839 17.9581 2.17823 18.2945C2.51806 18.6308 2.9389 18.8738 3.40008 19C5.12008 19.46 12.0001 19.46 12.0001 19.46C12.0001 19.46 18.8801 19.46 20.6001 19C21.0708 18.8668 21.4981 18.6118 21.8387 18.2606C22.1794 17.9094 22.4213 17.4746 22.5401 17C22.8524 15.2676 23.0064 13.5103 23.0001 11.75C23.0113 9.96295 22.8573 8.1787 22.5401 6.42Z" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"/>
3095        <path d="M9.75 15.0205L15.5 11.7505L9.75 8.48047V15.0205Z" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"/>
3096      </svg></a>
3097    </li></ul></div><div class="footer__aside"><ul class="footer__legal-links unstyled-list" role="list"><li><a href="/pages/donnees-personnelles" class="footer__legal-link link-reversed link-tap-area">Données personnelles</a></li><li><a href="/pages/conditions-generales-de-vente" class="footer__legal-link link-reversed link-tap-area">Conditions générales de vente </a></li><li><a href="/pages/charte-cookie" class="footer__legal-link link-reversed link-tap-area">Charte cookies </a></li><li><a
3098    href="#cookie"
3099    class="footer__legal-link link-reversed link-tap-area"
3100    onclick="if(window.OneTrust){event.preventDefault();OneTrust.ToggleInfoDisplay()}"
3101  >Gestion des cookies </a></li><li><a href="/pages/mentions-legales" class="footer__legal-link link-reversed link-tap-area">Mentions légales </a></li><li><a href="/pages/conditions-generales-programme-de-fidelite" class="footer__legal-link link-reversed link-tap-area">Conditions générales - Programme de fidélité</a></li></ul></div></div>
3102</div>
3103
3104</footer>
3105<!-- END sections: footer-group --><x-toast class="toast">
3106      
3107    </x-toast>
3108
3109    
3109<script>
3110      if (window) {const urlParams = new URLSearchParams(window?.location?.search);
3111      const sales_token = urlParams.get('ts');
3112      if (sales_token) {window.localStorage.setItem('kolsquare', JSON.stringify({ sales_token }));}}
3113    </script>
3113
3114  
3114<script src="https://cdn.shopify.com/storefront/standard-actions.js" type="module" data-source-attribution="shopify.standard_actions"></script>
3114
3115</body>
3116</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.