Добавьте товары для сравнения
Добавьте товары в желания
0
Добавьте товары в корзину
Описание

Envie Luxury Chromactive Color Fluid - это кислотный флюид, созданный специально для ухода за окрашенными и поврежденными волосами. Этот уникальный спрей-кондиционер поражает своей роскошной формулой, которая помогает сохранить идеальный цвет и структуру ваших локонов, обеспечивая им при этом невероятную мягкость и шелковистость. Флюид Envie Luxury Chromactive Color Fluid имеет кислый pH, что помогает стабилизировать цвет волос и удерживать его насыщенность и яркость. 

Флюид содержит активную липосому Chromazone, которая предотвращает выгорание цвета волос. Экстракт граната, входящий в состав флюида, обладает антиоксидантным действием, которое борется со свободными радикалами и помогает сохранить здоровье локонов. После использования Envie Luxury Chromactive Color Fluid ваши волосы обретут невероятную шелковистость и мягкость. Вы чувствуете, что они становятся более объемными и легкими в укладке.

Способ использования: Нанесите небольшое количество Envie Luxury Chromactive Color Fluid на влажные волосы, распределите его равномерно, прочешите во всех направлениях с помощью рук или расчески. Флюид не нужно смывать!

Envie luxury chromactive color fluid кислотный флюид для окрашенных и поврежденных волос

В наличии
Артикул: ENV0225
689 грн
Войдите на сайт чтобы
добавить товар в список желаний
%
Войти для отображения накопительной скидки
Объем
250
Быстрый заказ
Характеристики
Назначение  Восстановление, Смягчение, Защита цвета волос
Страна производитель  Италия
Тип волос  Окрашенные, Поврежденные
Время применения  Универсальный
Пол  Для женщин
Классификация  Профессиональная
Вид продукции  Флюид
Новый отзыв или комментарий
Войти с помощью
Оцените товар
/* ========================================================= DEEPLY — попап "С Днём Рождения бренда" с шариками/конфетти Вставить в Хорошоп: Управление сайтом → Дополнительные настройки → "Дополнительный код" (перед ) в виде ========================================================= */ (function () { "use strict"; /* ===== НАСТРОЙКИ — меняйте под себя ===== */ var CONFIG = { title: "DEEPLY отмечает День Рождения! 🎉", text: "Нам исполняется больше — и мы дарим скидку в честь праздника!", promoCode: "DEEPLYBDAY", // можно оставить пустым "" — блок с промокодом скроется promoText: "Промокод на скидку:", buttonText: "Перейти к акции", buttonLink: "/ua/birthday-sale", // ссылка на страницу акции, поменяйте на реальную showOncePerSession: true, // true = показывать один раз за сессию браузера showOncePerDay: false, // true = не чаще раза в сутки (использует localStorage) delayMs: 800, // задержка перед показом после загрузки страницы autoCloseSec: 0, // 0 = не закрывать автоматически, иначе кол-во секунд accentColor: "#e91e63", // основной акцентный цвет бренда }; /* ========================================= */ var STORAGE_KEY = "deeply_birthday_popup_shown"; function alreadyShown() { try { if (CONFIG.showOncePerDay) { var last = localStorage.getItem(STORAGE_KEY); if (!last) return false; var today = new Date().toDateString(); return last === today; } if (CONFIG.showOncePerSession) { return sessionStorage.getItem(STORAGE_KEY) === "1"; } } catch (e) { /* доступ к storage может быть заблокирован — просто показываем */ } return false; } function markShown() { try { if (CONFIG.showOncePerDay) { localStorage.setItem(STORAGE_KEY, new Date().toDateString()); } else if (CONFIG.showOncePerSession) { sessionStorage.setItem(STORAGE_KEY, "1"); } } catch (e) {} } function init() { if (alreadyShown()) return; setTimeout(buildPopup, CONFIG.delayMs); } function buildPopup() { injectStyles(); var overlay = document.createElement("div"); overlay.className = "dpl-bday-overlay"; overlay.setAttribute("role", "dialog"); overlay.setAttribute("aria-modal", "true"); var promoBlock = ""; if (CONFIG.promoCode) { promoBlock = '
' + '' + escapeHtml(CONFIG.promoText) + "" + '' + escapeHtml(CONFIG.promoCode) + "" + "
"; } overlay.innerHTML = '
' + '' + '' + '
' + '
🎈🎂🎈
' + '

' + escapeHtml(CONFIG.title) + "

" + '

' + escapeHtml(CONFIG.text) + "

" + promoBlock + '' + escapeHtml(CONFIG.buttonText) + "" + "
" + "
"; document.body.appendChild(overlay); document.body.style.overflow = "hidden"; // анимация появления requestAnimationFrame(function () { overlay.classList.add("dpl-bday-visible"); }); startConfetti(overlay.querySelector("#dplBdayCanvas")); // копирование промокода по клику var codeEl = overlay.querySelector("#dplBdayCode"); if (codeEl) { codeEl.style.cursor = "pointer"; codeEl.title = "Нажмите, чтобы скопировать"; codeEl.addEventListener("click", function () { copyToClipboard(CONFIG.promoCode); var old = codeEl.textContent; codeEl.textContent = "Скопировано ✓"; setTimeout(function () { codeEl.textContent = old; }, 1200); }); } function close() { overlay.classList.remove("dpl-bday-visible"); document.body.style.overflow = ""; setTimeout(function () { if (overlay.parentNode) overlay.parentNode.removeChild(overlay); }, 300); document.removeEventListener("keydown", onKeydown); } function onKeydown(e) { if (e.key === "Escape") close(); } overlay.querySelector(".dpl-bday-close").addEventListener("click", close); overlay.addEventListener("click", function (e) { if (e.target === overlay) close(); }); document.addEventListener("keydown", onKeydown); if (CONFIG.autoCloseSec > 0) { setTimeout(close, CONFIG.autoCloseSec * 1000); } markShown(); } /* ===== Canvas-конфетти/шарики ===== */ function startConfetti(canvas) { if (!canvas) return; var ctx = canvas.getContext("2d"); var dpr = window.devicePixelRatio || 1; function resize() { var rect = canvas.parentElement.getBoundingClientRect(); canvas.width = rect.width * dpr; canvas.height = rect.height * dpr; canvas.style.width = rect.width + "px"; canvas.style.height = rect.height + "px"; ctx.setTransform(dpr, 0, 0, dpr, 0, 0); } resize(); window.addEventListener("resize", resize); var colors = ["#e91e63", "#ff9800", "#ffd54f", "#4dd0e1", "#ba68c8", "#81c784"]; var particles = []; var count = 60; function rand(min, max) { return Math.random() * (max - min) + min; } for (var i = 0; i < count; i++) { particles.push({ x: rand(0, canvas.clientWidth), y: rand(-canvas.clientHeight, 0), size: rand(6, 12), speedY: rand(1, 3), speedX: rand(-1, 1), rotation: rand(0, 360), rotationSpeed: rand(-4, 4), color: colors[Math.floor(Math.random() * colors.length)], shape: Math.random() > 0.5 ? "rect" : "circle", }); } var running = true; var frameCount = 0; var maxFrames = 60 * 8; // ~8 секунд анимации, затем canvas очищается (модалка остаётся) function draw() { if (!running) return; var w = canvas.clientWidth; var h = canvas.clientHeight; ctx.clearRect(0, 0, w, h); particles.forEach(function (p) { p.y += p.speedY; p.x += p.speedX; p.rotation += p.rotationSpeed; if (p.y > h) { p.y = -10; p.x = rand(0, w); } ctx.save(); ctx.translate(p.x, p.y); ctx.rotate((p.rotation * Math.PI) / 180); ctx.fillStyle = p.color; if (p.shape === "rect") { ctx.fillRect(-p.size / 2, -p.size / 2, p.size, p.size * 0.5); } else { ctx.beginPath(); ctx.arc(0, 0, p.size / 2, 0, Math.PI * 2); ctx.fill(); } ctx.restore(); }); frameCount++; if (frameCount < maxFrames) { requestAnimationFrame(draw); } else { running = false; } } requestAnimationFrame(draw); } /* ===== Утилиты ===== */ function escapeHtml(str) { var div = document.createElement("div"); div.textContent = str; return div.innerHTML; } function escapeAttr(str) { return String(str).replace(/"/g, """); } function copyToClipboard(text) { if (navigator.clipboard && navigator.clipboard.writeText) { navigator.clipboard.writeText(text).catch(function () {}); } else { var ta = document.createElement("textarea"); ta.value = text; ta.style.position = "fixed"; ta.style.opacity = "0"; document.body.appendChild(ta); ta.select(); try { document.execCommand("copy"); } catch (e) {} document.body.removeChild(ta); } } function injectStyles() { if (document.getElementById("dpl-bday-styles")) return; var css = ".dpl-bday-overlay{position:fixed;inset:0;z-index:99999;background:rgba(20,10,20,0.55);" + "display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease;" + "padding:16px;box-sizing:border-box;font-family:inherit;}" + ".dpl-bday-overlay.dpl-bday-visible{opacity:1;}" + ".dpl-bday-modal{position:relative;background:#fff;border-radius:20px;max-width:420px;width:100%;" + "overflow:hidden;transform:scale(.85);transition:transform .3s ease;box-shadow:0 20px 60px rgba(0,0,0,.3);}" + ".dpl-bday-overlay.dpl-bday-visible .dpl-bday-modal{transform:scale(1);}" + ".dpl-bday-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;}" + ".dpl-bday-content{position:relative;padding:36px 28px 32px;text-align:center;}" + ".dpl-bday-emoji{font-size:36px;margin-bottom:8px;}" + ".dpl-bday-title{margin:0 0 12px;font-size:22px;line-height:1.3;color:#222;font-weight:700;}" + ".dpl-bday-text{margin:0 0 20px;font-size:15px;line-height:1.5;color:#555;}" + ".dpl-bday-promo{margin:0 0 22px;padding:12px 16px;border:2px dashed " + CONFIG.accentColor + ";" + "border-radius:12px;display:flex;flex-direction:column;gap:4px;background:#fff7fa;}" + ".dpl-bday-promo-label{font-size:12px;color:#888;text-transform:uppercase;letter-spacing:.04em;}" + ".dpl-bday-promo-code{font-size:20px;font-weight:800;letter-spacing:.06em;color:" + CONFIG.accentColor + ";}" + ".dpl-bday-btn{display:inline-block;padding:13px 28px;background:" + CONFIG.accentColor + ";color:#fff;" + "text-decoration:none;border-radius:999px;font-weight:600;font-size:15px;transition:opacity .2s;}" + ".dpl-bday-btn:hover{opacity:.88;}" + ".dpl-bday-close{position:absolute;top:10px;right:12px;width:32px;height:32px;border:none;" + "background:rgba(0,0,0,.06);border-radius:50%;font-size:20px;line-height:1;color:#333;cursor:pointer;" + "z-index:2;transition:background .2s;}" + ".dpl-bday-close:hover{background:rgba(0,0,0,.12);}" + "@media (max-width:480px){.dpl-bday-title{font-size:19px;}.dpl-bday-content{padding:30px 20px 26px;}}"; var style = document.createElement("style"); style.id = "dpl-bday-styles"; style.textContent = css; document.head.appendChild(style); } if (document.readyState === "loading") { document.addEventListener("DOMContentLoaded", init); } else { init(); } })();