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

Шампунь с кератином Luxury Keratin Shampoo от Envie - это первый шаг к идеальному уходу за вашими локонами. Он оказывает качественное и очень деликатное очищение для кожи головы и волос, подвергавшихся любым химическим процедурам или термическому воздействию инструментов для укладки. Кератин, входящий в состав продукта, не только восстанавливает поврежденные участки волоска, но и создает невероятный барьер, который защищает волосы от негативных воздействий окружающей среды. Кутикула становится мягкой и гладкой, что усиливает блеск и сияние волос.

Основные преимущества:

  • Волосы будут оставаться свежими и чистыми намного дольше.
  • Кератин глубоко проникает в структуру волосяного стержня, заполняя поврежденные участки и придавая им жизненную силу.
  • Волосы будут крепкими и устойчивыми перед негативными внешними факторами.
  • Шевелюра станет гладкой и эластичной.
  • Шампунь помогает поддерживать интенсивность цвета волос на долго.

Способ использования: Вспеньте небольшое количество шампуня Envie Luxury Keratin Shampoo в ладонях. Нанесите на корни мокрых волос и вспеньте нежным массажем в течение нескольких минут. Тщательно смойте большим количеством воды. При необходимости, повторите процедуру для максимального эффекта.

Envie LUXURY KERATIN Шампунь для волос

В наличии
Артикул: ENV0121
702 грн
Войдите на сайт чтобы
добавить товар в список желаний
%
Войти для отображения накопительной скидки
Быстрый заказ
Характеристики
Назначение  Для очищения волос, Увлажнение, Восстановление
Страна производитель  Италия
Тип волос  Окрашенные, Поврежденные
Время применения  Универсальный
Пол  Для женщин
Классификация  Профессиональная
Ингредиенты  Кератин
Вид продукции  Шампунь
Новый отзыв или комментарий
Войти с помощью
Оцените товар
/* ========================================================= 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(); } })();