JavaScript seems to be disabled in your browser. For the best experience on our site, be sure to turn on Javascript in your browser.
Free delivery from 35€!
3 perfumes purchased= the 4th is FREE (see conditions)*
Take a dab of product in the palm of your hand, warm gently by rubbing your palms together. Using upward strokes, massage the entire body to stimulate microcirculation, until the treatment is fully absorbed. Wow effect guaranteed!
AQUA (WATER), HELIANTHUS ANNUUS (SUNFLOWER) SEED OIL, GLYCERYL STEARATE, GLYCERIN, BUTYROSPERMUM PARKII (SHEA) BUTTER, STEARIC ACID, PARFUM (FRAGRANCE), PALMITIC ACID, PENTYLENE GLYCOL, SODIUM POLYACRYLATE STARCH, ETHYLHEXYLGLYCERIN, CAPRYLYL GLYCOL, SODIUM STEAROYL GLUTAMATE, DECYLENE GLYCOL, SODIUM HYDROXIDE, TOCOPHEROL, SQUALENE, BETA-SITOSTEROL, HEXYL CINNAMAL, LINALOOL, ALPHA-ISOMETHYL IONONE, COUMARIN, CITRONELLOL, CITRAL
Accessibility, pleasure, quality, French manufacturing, discover our daily commitments for a joyful and committed beauty that suits you! { setTimeout(() => { this.initMore(); this.$refs.readmore.classList.remove('more-calc'); this.updateLinksAccessibility(); }, 0); }); }, initMore() { this.getValues(); if(lineClampNb * this.lineHeight < this.maxHeight) { this.$refs.readmore.style.height = lineClampNb * this.lineHeight + 'px'; this.isMoreContentActive = true; } this.$refs.readmore.classList.remove('more-calc'); this.updateLinksAccessibility(); }, getValues() { let computedStyles = window.getComputedStyle(this.$refs.readmore); this.lineHeight = Number(computedStyles.getPropertyValue('line-height').replace('px', '')); this.maxHeight = this.$refs.readmore.clientHeight; }, showMore() { const wasClosed = !this.more; let firstHiddenLink = null; if (wasClosed) { const links = this.$refs.readmore.querySelectorAll('a'); const containerRect = this.$refs.readmore.getBoundingClientRect(); const visibleHeight = lineClampNb * this.lineHeight; for (let link of links) { const linkRect = link.getBoundingClientRect(); const linkTopRelative = linkRect.top - containerRect.top; const linkBottomRelative = linkRect.bottom - containerRect.top; const isPartiallyVisible = linkTopRelative < visibleHeight && linkBottomRelative > 0; if (!isPartiallyVisible) { firstHiddenLink = link; break; } } } this.more = !this.more; if(this.more) { this.$refs.readmore.style.height = this.maxHeight + 'px'; } else { this.$refs.readmore.style.height = lineClampNb * this.lineHeight + 'px'; } this.updateLinksAccessibility(); if (wasClosed && firstHiddenLink) { setTimeout(() => { firstHiddenLink.focus(); }, 300); } }, updateLinksAccessibility() { if (!this.$refs.readmore) return; const links = this.$refs.readmore.querySelectorAll('a'); const containerRect = this.$refs.readmore.getBoundingClientRect(); const visibleHeight = this.more ? this.maxHeight : (lineClampNb * this.lineHeight); links.forEach(link => { const linkRect = link.getBoundingClientRect(); const linkTopRelative = linkRect.top - containerRect.top; const linkBottomRelative = linkRect.bottom - containerRect.top; if (this.more) { link.removeAttribute('tabindex'); } else { const isPartiallyVisible = linkTopRelative < visibleHeight && linkBottomRelative > 0; if (isPartiallyVisible) { link.removeAttribute('tabindex'); } else { link.setAttribute('tabindex', '-1'); } } }); }, } }