Meruert Tolegen welcomes you into her world, a story of a spirit, free and playful.

A universe with cues of a whimsical nature, comes to fruition, however elegant and strong. A play on fabrics and details, a creative synergy brought together with careful stitching and fine lines.

Inspired by childhood memories, and evenings spent in the rose garden of her grandparents home,

Meruvert Tolegen – an idea – comes to life.

An echo of laughter in the distance, faces rushing past, a memory once ever clear, all paint the scenes in hues and colors. Recollections of savor, scents wafting about, and the feel of compositions and textures all imprint on our minds, creating an atlas of memories.

SPRING | SUMMER 2026

Explore Design Team Favorites

document.addEventListener("DOMContentLoaded", () => { const wrapper = document.querySelector('.elementor-widget-woocommerce-products .elementor-widget-container'); const slider = document.querySelector('.elementor-widget-woocommerce-products .woocommerce'); if (!slider || !wrapper) return; wrapper.classList.add('vanilla-slider-wrapper'); slider.classList.add('vanilla-slider-container'); // --- 1. Locate or Create Arrows --- let prevBtn = wrapper.querySelector('.slider-arrow.prev'); let nextBtn = wrapper.querySelector('.slider-arrow.next'); // Only inject buttons if they don't already exist in the HTML if (!prevBtn || !nextBtn) { prevBtn = document.createElement('button'); prevBtn.className = 'slider-arrow prev'; prevBtn.innerHTML = '❮'; prevBtn.ariaLabel = "Previous"; nextBtn = document.createElement('button'); nextBtn.className = 'slider-arrow next'; nextBtn.innerHTML = '❯'; nextBtn.ariaLabel = "Next"; wrapper.appendChild(prevBtn); wrapper.appendChild(nextBtn); } // --- 2. Infinite Loop DOM Shifting Logic --- let isTransitioning = false; function moveNext() { if (isTransitioning) return; isTransitioning = true; const list = slider.querySelector('ul.products'); const items = list.children; const itemWidth = items[0].offsetWidth + 20; // Width + CSS Gap // Smooth scroll right slider.scrollBy({ left: itemWidth, behavior: 'smooth' }); // Wait for animation, then shift the DOM setTimeout(() => { slider.style.scrollBehavior = 'auto'; slider.style.scrollSnapType = 'none'; list.appendChild(items[0]); // Move first to last slider.scrollLeft -= itemWidth; // Adjust visual position void slider.offsetWidth; // Force layout recalculation slider.style.scrollBehavior = ''; slider.style.scrollSnapType = ''; isTransitioning = false; }, 500); } function movePrev() { if (isTransitioning) return; isTransitioning = true; const list = slider.querySelector('ul.products'); const items = list.children; const itemWidth = items[0].offsetWidth + 20; // Shift DOM first (Move last to first) slider.style.scrollBehavior = 'auto'; slider.style.scrollSnapType = 'none'; list.insertBefore(items[items.length - 1], items[0]); slider.scrollLeft += itemWidth; void slider.offsetWidth; slider.style.scrollBehavior = ''; slider.style.scrollSnapType = ''; // Smooth scroll left into the newly created space requestAnimationFrame(() => { slider.scrollBy({ left: -itemWidth, behavior: 'smooth' }); setTimeout(() => { isTransitioning = false; }, 500); }); } // Attach click events nextBtn.onclick = () => { stopAutoSlide(); moveNext(); }; prevBtn.onclick = () => { stopAutoSlide(); movePrev(); }; // --- 3. Smooth Auto-Slide Functionality --- let autoSlideInterval; const slideDelay = 3000; // 3 seconds between slides function startAutoSlide() { stopAutoSlide(); autoSlideInterval = setInterval(moveNext, slideDelay); } function stopAutoSlide() { clearInterval(autoSlideInterval); } // Pause on interaction wrapper.addEventListener('mouseenter', stopAutoSlide); wrapper.addEventListener('mouseleave', startAutoSlide); wrapper.addEventListener('touchstart', stopAutoSlide, { passive: true }); wrapper.addEventListener('touchend', startAutoSlide); // --- 4. Mouse Drag Functionality --- let isDown = false; let startX; let scrollLeft; slider.addEventListener('mousedown', (e) => { isDown = true; slider.classList.add('dragging'); startX = e.pageX - slider.offsetLeft; scrollLeft = slider.scrollLeft; stopAutoSlide(); }); slider.addEventListener('mouseleave', () => { isDown = false; slider.classList.remove('dragging'); }); slider.addEventListener('mouseup', () => { isDown = false; slider.classList.remove('dragging'); startAutoSlide(); }); slider.addEventListener('mousemove', (e) => { if (!isDown) return; e.preventDefault(); const x = e.pageX - slider.offsetLeft; const walk = (x - startX) * 1.5; slider.scrollLeft = scrollLeft - walk; }); // Initialize Auto-Slide startAutoSlide(); });
Your cart is currently empty.

Return to shop