Blue Sleeveless Red Striped And Ruffled Loose Mini Dress
Blue Sleeveless Red Striped And Ruffled Loose Mini Dress
Blue Sleeveless Red Striped And Ruffled Loose Mini Dress
Blue Sleeveless Red Striped And Ruffled Loose Mini Dress
Blue Sleeveless Red Striped And Ruffled Loose Mini Dress
Blue Sleeveless Red Striped And Ruffled Loose Mini Dress
Blue Sleeveless Red Striped And Ruffled Loose Mini Dress
Blue Sleeveless Red Striped And Ruffled Loose Mini Dress
Blue Sleeveless Red Striped And Ruffled Loose Mini Dress
Blue Sleeveless Red Striped And Ruffled Loose Mini Dress
Blue Sleeveless Red Striped And Ruffled Loose Mini Dress
Blue Sleeveless Red Striped And Ruffled Loose Mini Dress
Blue Sleeveless Red Striped And Ruffled Loose Mini Dress
Blue Sleeveless Red Striped And Ruffled Loose Mini Dress
Blue Sleeveless Red Striped And Ruffled Loose Mini Dress
Blue Sleeveless Red Striped And Ruffled Loose Mini Dress

Blue Sleeveless Red Striped And Ruffled Loose Mini Dress

Price

$0.00 $22.90
Save $-22.90

color

Please select a color

size

Please select a size

Quantity

💛 Every Order Gives Back — We donate $1 from every order to support children’s health hunger relief animal rescue and environmental care.
/** @private {string} */ class SpzCustomAnchorScroll extends SPZ.BaseElement { static deferredMount() { return false; } constructor(element) { super(element); /** @private {Element} */ this.scrollableContainer_ = null; } isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } buildCallback() { this.viewport_ = this.getViewport(); this.initActions_(); } setTarget(containerId, targetId) { this.containerId = '#' + containerId; this.targetId = '#' + targetId; } scrollToTarget() { const container = document.querySelector(this.containerId); const target = container.querySelector(this.targetId); const {scrollTop} = container; const eleOffsetTop = this.getOffsetTop_(target, container); this.viewport_ .interpolateScrollIntoView_( container, scrollTop, scrollTop + eleOffsetTop ); } initActions_() { this.registerAction( 'scrollToTarget', (invocation) => this.scrollToTarget(invocation?.caller) ); this.registerAction( 'setTarget', (invocation) => this.setTarget(invocation?.args?.containerId, invocation?.args?.targetId) ); } /** * @param {Element} element * @param {Element} container * @return {number} * @private */ getOffsetTop_(element, container) { if (!element./*OK*/ getClientRects().length) { return 0; } const rect = element./*OK*/ getBoundingClientRect(); if (rect.width || rect.height) { return rect.top - container./*OK*/ getBoundingClientRect().top; } return rect.top; } } SPZ.defineElement('spz-custom-anchor-scroll', SpzCustomAnchorScroll); const STRENGTHEN_TRUST_URL = "/api/strengthen_trust/settings"; class SpzCustomStrengthenTrust extends SPZ.BaseElement { constructor(element) { super(element); this.renderElement_ = null; } isLayoutSupported(layout) { return layout == SPZCore.Layout.CONTAINER; } buildCallback() { this.xhr_ = SPZServices.xhrFor(this.win); const renderId = this.element.getAttribute('render-id'); SPZCore.Dom.waitForChild( document.body, () => !!document.getElementById(renderId), () => { this.renderElement_ = SPZCore.Dom.scopedQuerySelector( document.body, `#${renderId}` ); if (this.renderElement_) { this.render_(); } this.registerAction('track', (invocation) => { this.track_(invocation.args); }); } ); } render_() { this.fetchData_().then((data) => { if (!data) { return; } SPZ.whenApiDefined(this.renderElement_).then((apis) => { apis?.render(data); document.querySelector('#strengthen-trust-render-1539149753700').addEventListener('click',(event)=>{ if(event.target.nodeName == 'A'){ this.track_({type: 'trust_content_click'}); } }) }); }); } track_(data = {}) { const track = window.sa && window.sa.track; if (!track) { return; } track('trust_enhancement_event', data); } parseJSON_(string) { let result = {}; try { result = JSON.parse(string); } catch (e) {} return result; } fetchData_() { return this.xhr_ .fetchJson(STRENGTHEN_TRUST_URL) .then((responseData) => { if (!responseData || !responseData.data) { return null; } const data = responseData.data; const moduleSettings = (data.module_settings || []).reduce((result, moduleSetting) => { return result.concat(Object.assign(moduleSetting, { logos: (moduleSetting.logos || []).map((item) => { return moduleSetting.logos_type == 'custom' ? this.parseJSON_(item) : item; }) })); }, []); return Object.assign(data, { module_settings: moduleSettings, isEditor: window.self !== window.top, }); }); } } SPZ.defineElement('spz-custom-strengthen-trust', SpzCustomStrengthenTrust);

Description:

Fabric :
  • Lightweight rayon blend fabric, soft texture, slightly wrinkled texture
  • Breathable and relaxed, with a lived-in, comfortable feel

Core Features:
  • Sleeveless round-neck tunic silhouette in soft light blue
  • Two front patch pockets with gathered detailing
  • Contrast red-and-white horizontal stripe panel above the hem
  • Voluminous red ruffled hem with frayed edges for a playful, artisanal touch
Matching Tips:
  • Footwear: Brown leather strappy sandals or woven espadrilles
  • Accessories: Oversized neutral linen tote bag and simple drop earrings
  • Styling: Wear it as a tunic over jeans or leggings, or style alone as a mini dress
Occasions:
  • Casual city outings, weekend shopping trips, and relaxed brunches
  • Beach cover-ups and summertime daytime gatherings

Size chart: