Back In Stock

Show filters
Sort:
Size
Color
Price
All filters
Sort
Loading...
tag of the document. This will help to improve the load of the images // during color swatches interaction on PLP const preloadBackground = (entries, observer) => { entries.forEach(async (entry) => { if (entry.isIntersecting) { const swatch = entry.target; const images = swatch.dataset.varimg.split(','); images.forEach((img, index) => { // preload image const link = document.createElement('link'); link.href = buildSrc(img); link.imagesrcset = getSrcset(img); link.imagesizes = cssImageMediaCondition; link.rel = 'preload'; link.as = 'image'; document.getElementsByTagName('head')[0].appendChild(link); }); swatch.removeAttribute('data-varimg'); switchObserver.unobserve(swatch); } }); }; const switchObserver = new IntersectionObserver(preloadBackground, { root: null, // Default is the viewport rootMargin: '30px', threshold: 0.05, // Load image when 10% of the div is visible }); // Sort options function getPageParam() { const urlParams = new URLSearchParams(window.location.search); const pageParam = urlParams.get('page'); return pageParam ? parseInt(pageParam, 10) : 1; } domLoadedPage = getPageParam(); setupSortDropdown('.fs_sort_by_wrap_desktop', '.fs_sort_by_options_desktop', '.fs_sort_by_select_desktop'); const sortBySelect = document.getElementById('sortByDesktop'); let sortByValue = getSortBy(); // call the function and store the returned value sortBySelect.value = sortByValue; // update the desktop dropdown value on page load // update sort mobile dropdown value on page load const validSortOptions = ['price_min_to_max', 'price_max_to_min', 'creation_date', 'relevency']; sortByValue = validSortOptions.includes(sortByValue) ? sortByValue : 'relevency'; const inputField = document.querySelector(`form [data-value="${sortByValue}"]`); if (inputField) { inputField.checked = true; // update the value of the option } else { console.error(`No radio button found with data-value="${sortByValue}"`); } const form = document.getElementById('sortForm'); if (form) { form.addEventListener('change', (event) => { if (event.target.name === 'sort') { const selectedValue = event.target.getAttribute('data-value'); if (selectedValue && validSortOptions.includes(selectedValue)) { setUrlParam('sortBy', selectedValue, true); resetPageAndScroll(); updateOtherDropdown(selectedValue); } } }); } updateOtherDropdown(getSortBy()); if (sortBySelect) { sortBySelect.addEventListener('change', function () { if (sortBySelect.value && validSortOptions.includes(sortBySelect.value)) { setUrlParam('sortBy', sortBySelect.value, true); } }); } // Description 'read more' function toggleReadMore(button) { const container = button.parentNode; const isExpanded = container.getAttribute('aria-expanded') === 'true'; container.setAttribute('aria-expanded', !isExpanded); if (isExpanded) { button.querySelector('.button-text').textContent = 'more'; } else { button.querySelector('.button-text').textContent = 'Show less'; } } function visibleReadMore() { const toggleButtons = document.querySelectorAll('.fs_collection_top_toggle'); toggleButtons.forEach(button => { const description_children = button.previousElementSibling.children; let description_scroll_width = 0; let description_client_width = 0; for(const child of description_children) { description_scroll_width += child.scrollWidth; description_client_width += child.clientWidth; }; button.style.display = (description_scroll_width > description_client_width) ? 'block' : 'none'; }); } window.addEventListener('DOMContentLoaded', visibleReadMore); // category pills GTM const categories = document.querySelectorAll('.category-pills__pill'); let category; let categoryHandle; let categoryId; const pushCategoryPills = (category, categoryHandle, categoryId, typeCategory) => { if (category && categoryHandle && categoryId && typeCategory) { const categoryPills = { event: `categoryPills`, category: category, categoryHandle: categoryHandle, categoryId: categoryId, typeCategory: typeCategory }; window.dataLayer.push(categoryPills); } } categories?.forEach(category => { category.addEventListener('click', function(e) { try { category = e.currentTarget.getAttribute('data-category'); categoryHandle = e.currentTarget.getAttribute('data-collection-handle'); categoryId = e.currentTarget.getAttribute('data-collection-id'); typeCategory = e.currentTarget.getAttribute('data-type-category'); pushCategoryPills(category, categoryHandle, categoryId, typeCategory); } catch (error) { console.error('Error in category click event:', error); } }) })

Product Recommendations

  • All The Attention Abstract Split Crop Top

    Command attention in this striking halter crop top featuring a flattering twisted neckline, a daring split design, and a cropped length that perfectly highlights your figure.

    Fit & Features

    • Abstract print, mesh fabric, sewn-in knit lining
    • Halter plunge twist neckline, tie closure
    • Center split design
    • Crop hem
    • Runs true to size

    Style Number/Barcode: 06001-000167

    Category Name: Back In Stock

    Price: $29.90

    Availability: In Stock

    Available Color: TAUPE

    Available Size: S, M, L

    Product Badge:
    • Back In Stock
  • Ruffle Up And Go Tube Romper

    Short, sweet, and kinda irresistible. This tube romper flirts with every step thanks to its strapless straight neckline, drop waist design, and adorable ruffled overlay.

    Fit & Features

    • Ponte knit fabric, moderate stretch
    • Strapless straight-across neckline
    • Drop waist design
    • Tiered ruffled mini-length overlay, A-line silhouette
    • Hidden fitted shorts
    • Runs true to size

    Style Number/Barcode: 06503-000099

    Category Name: Back In Stock

    Price: $44.90

    Availability: In Stock

    Available Color: BROWN

    Available Size: XS, S, M, L

    Product Badge:
    • Back In Stock
  • Cute Effect Mid-Rise Belted Denim Mini Skort

    A mid-rise denim mini skort offers a flattering adjustable belted waist and form-hugging fit. Style with a crop top for any plans.

    Fit & Features

    • Cotton-blend denim fabric, minimal stretch
    • Mid-rise adjustable belted waist
    • Form-hugging mini-length silhouette
    • Front dual button and hidden zipper closure
    • Two-pocket styling 
    • Skort in size small has a 2" inseam
    • Runs true to size

    Style Number/Barcode: 06603-0410

    Category Name: Back In Stock

    Price: $39.90

    Availability: In Stock

    Available Color: DENIM

    Available Size: S, M, L, XL

    Product Badge:
    • Back In Stock
  • Trendy Arrival Denim Moto Jacket

    Show up to your weekend plans in this trendy denim moto jacket with a cool faded design. Layer over a crop top paired with your fave jeans.

    Fit & Features

    • Faded denim fabric with stretch
    • Standing collar with button detail
    • Long sleeves with button detail
    • Front zipper closure
    • Dual front faux pockets
    • Fitted cropped hem, front button detail
    • Runs true to size

    Style Number/Barcode: 06203-0575

    Category Name: Back In Stock

    Price: $44.90

    Availability: In Stock

    Available Color: DENIM

    Available Size: S, M, L, XL

    Product Badge:
    • Back In Stock