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

Восстанавливающая маска Mimare Reconstruction Mask - это настоящий источник жизненной силы и здоровья для ваших волос. Эта маска создана, чтобы делать ваши поврежденные, сухие и вьющиеся локоны невероятно красивыми и послушными. Ее уникальный состав обладает мощным увлажняющим и реструктуризирующим эффектом, благодаря которому волосы становятся сильными и блестящими.

Главным ингредиентом этой маски является масло семян абиссиники, которое считается настоящим эликсиром для волос. Оно глубоко проникает в структуру волос, реструктуризируя их и восстанавливая природную силу. Волосы становятся более эластичными и легкими в расчесывании, а блеск, как после салонного ухода, будет радовать вас в течение всего дня. Оливковое масло, также содержащееся в составе маски, оказывает дополнительное питательное действие. Оно смягчает волосы и поддерживает их здоровый баланс влаги, укрепляя каждый волосок и делая его менее склонным к ломкости. Экстракт овса обеспечивает волосам дополнительное увлажнение, улучшая их структуру, придавая шелковистость и эластичность.

Способ применения: Нанесите маску на влажные волосы по всей длине и на кончики, распределите равномерно с помощью расчески или пальцев, и оставьте на несколько минут. После этого тщательно смойте теплой водой.

Mimare Reconstruction Mask Маска восстанавливающая

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