William Morris "Acanthus Leaves"
William Morris "Acanthus Leaves"
William Morris "Acanthus Leaves"
William Morris "Acanthus Leaves"
William Morris "Acanthus Leaves"
William Morris "Acanthus Leaves"
William Morris "Acanthus Leaves"
William Morris "Acanthus Leaves"
William Morris "Acanthus Leaves"
William Morris "Acanthus Leaves"
William Morris "Acanthus Leaves"
William Morris "Acanthus Leaves"
William Morris "Acanthus Leaves"
William Morris "Acanthus Leaves"
William Morris "Acanthus Leaves"
William Morris "Acanthus Leaves"
Casualruby© William Morris "Acanthus Leaves" -Tote Bag

Price

$49.00 $28.00
84 sold

style

Please select a style

Quantity

Free Shipping Over $50
Sales spanning over 100 countries.
100% Natural Cotton Handmade
Paypal & Stripe Secure Payment
/** @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);

Introducing the William Morris "Acanthus Leaves" Tote Bag by Casualruby 🌿🎨

Step into the intricate and nature-inspired world of William Morris with Casualruby’s "Acanthus Leaves" tote bag. William Morris, a leading figure in the Arts and Crafts Movement, created the "Acanthus Leaves" design in 1875. Known for his detailed and elaborate patterns, Morris's work often drew inspiration from natural forms, and "Acanthus Leaves" is no exception. The design showcases the lush and flowing acanthus leaves, symbolizing growth and renewal, and capturing the essence of Morris’s artistic philosophy.

Our "Acanthus Leaves" tote bag brings this iconic artwork into your daily life, seamlessly merging artistic beauty with practical functionality. Crafted from eco-friendly cotton canvas, this tote exemplifies sustainability and durability, making it an essential accessory for all your daily activities.

Product Features:

  • Artistic Design: The vivid "Acanthus Leaves" print brings Morris’s masterpiece to life, transforming your tote into a stylish accessory that celebrates classic art. 🌿🎨
  • Spacious Interior: The tote features a large internal capacity, perfect for carrying books, groceries, a laptop, or other daily necessities. 📚🛒
  • Convenient Side Pocket: An internal side pocket offers a secure place for small items like keys, phones, or wallets, ensuring you stay organized on the go. 🔑📱
  • Durable and Sustainable: Crafted from high-quality, sustainable cotton canvas, the tote is designed to withstand daily use while promoting eco-friendly practices. 🌍💪

Ideal Usage:

  • Daily Commute: Perfect for carrying work or school essentials, including a laptop, documents, and personal items, all with an artistic touch. 🚶‍♀️💼
  • Shopping Trips: The generous space makes it ideal for carrying groceries or shopping hauls. 🛍️🍎
  • Travel Companion: An excellent choice for day trips, beach outings, or as an additional travel bag, bringing a touch of Morris’s intricate beauty wherever you go. 🏖️✈️
  • Gym and Fitness: Easily fits gym clothes, shoes, and a water bottle, making your fitness routine more stylish and organized. 🏋️‍♂️👟

By choosing Casualruby’s William Morris "Acanthus Leaves" tote bag, you’re not only making a chic and practical choice but also supporting sustainable living and celebrating the beauty of classic art. Elevate your everyday carry with a touch of sophistication and the timeless elegance of Morris’s masterpiece.


Get yours today and let the intricate charm of William Morris’s "Acanthus Leaves" brighten your daily life! 🌟👜

    ✔ Secure Haven

    Our tote bags feature a zip-top closure, ensuring your essentials are always safe and secure, no matter where your day takes you.

    ✔ Organized Interior

    Thoughtfully designed compartments provide a dedicated space for your phone, credit cards, keys, documents, and more. With our tote, there's a spot for everything.

    ✔ Featherweight Yet Sturdy

    Despite its robust build, our tote bag is surprisingly lightweight, making it your ideal companion for work, leisure, and everything in between

    ✔ Adaptable Companion

    Whether you're heading to the office, the gym, a shopping spree, or the beach, our tote bag effortlessly adapts to your lifestyle.

    ✔ Gift Ready

    Looking for a unique Birthday or Christmas gift? Our stylish tote bag is a perfect choice, delighting both women and men with its artistic flair and practicality.

    United States & Canada: 7-15 days.
    European Regions: 7-12 days.
    Japan: 3-7 days.
    United Arab Emirates (UAE): 5-10 days.
    Please note that these are estimated delivery times and can vary based on external factors outside of Casualruby’s and our courier's control. These factors can include, but are not limited to, extreme weather conditions, technical malfunctions, and customs delays.

    At Casualruby, we're committed to delivering our handcrafted treasures to you, no matter where you are in the world. Every piece is a culmination of meticulous craftsmanship, personalized customization, and our brand's promise of quality.

    Production Time:

    Our entire collection is custom-made to ensure you receive a piece that is truly yours. We have partnered with China's premier Tote Bag factories, where skilled artisans bring Casualruby’s designs to life. Due to the detailed nature of our handcrafted items, please allow 2-5 days for production.

    Shipping & Delivery:

    Once your customized order is crafted to perfection, it is handed over to our trusted logistics partners for delivery. We strive to ensure that your purchase reaches you in pristine condition and in a timely manner. Here are our estimated shipping times based on regions:

    Tracking Your Order:

    Once your order has been dispatched, we will provide you with a tracking number, allowing you to follow your handcrafted item's journey from our factory to your doorstep.

    In Conclusion:

    We appreciate your patience and understanding as we work to provide you with a piece that is not only of exceptional quality but also uniquely yours. For any queries or concerns regarding our shipping policy or the status of your order, please feel free to contact our dedicated customer service team.

    Thank you for choosing Casualruby – where craftsmanship meets world-class delivery.

    Why Choose Casualruby?

    • Passion

      We love what we do! We obsess over every detail to make sure our tote bag are the best style and quality around.

    • Art

      In the dawn of a new age, where craft meets canvas,World-renowned art, now at your fingertips, ushering in a fashionable revival.

    • Natural

      All our tote bags are handmade using pure cotton fabric with cotton seeds, which is green and environmentally friendly.

    Customer Reviews
    Here are what our customers say.
    Write a Review
    Customer Reviews
    Wow you reached the bottom
    Newest
    Most liked
    Highest ratings
    Lowest ratings
    ×
    class SpzCustomFileUpload extends SPZ.BaseElement { constructor(element) { super(element); this.uploadCount_ = 0; this.fileList_ = []; } buildCallback() { this.action = SPZServices.actionServiceForDoc(this.element); this.registerAction('upload', (data) => { this.handleFileUpload_(data.event?.detail?.data || []); }); this.registerAction('delete', (data) => { this.handleFileDelete_(data?.args?.data); }); this.registerAction('preview', (data) => { this.handleFilePreview_(data?.args?.data); }); this.registerAction('limit', (data) => { this.handleFileLimit_(); }); this.registerAction('sizeLimit', (data) => { this.handleFileSizeLimit_(); }); } isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } setData_(count, file) { this.uploadCount_ = count; this.fileList_ = file; } handleFileUpload_(data) { data.forEach(i => { if(this.fileList_.some(j => j.url === i.url)) return; this.fileList_.push(i); }) this.uploadCount_++; sessionStorage.setItem('fileList', JSON.stringify(this.fileList_)); this.triggerEvent_("handleFileUpload", { count: this.uploadCount_, files: this.fileList_}); if(this.fileList_.length >= 5){ document.querySelector('#review_upload').style.display = 'none'; } if(this.fileList_.length > 0){ document.querySelector('.apps-reviews-write-anonymous-box').style.marginTop = '8px'; } } handleFileDelete_(index) { this.fileList_.splice(index, 1); this.uploadCount_--; sessionStorage.setItem('fileList', JSON.stringify(this.fileList_)); this.triggerEvent_("handleFileDelete", { count: this.uploadCount_, files: this.fileList_}); document.querySelector('#review_upload').style.display = 'block'; if(this.fileList_?.length === 0){ document.querySelector('.apps-reviews-write-anonymous-box').style.marginTop = '132px'; } } handleFilePreview_(index) { const finalPreviewData = this.fileList_[index]; const filePreviewModal = document.getElementById('filePreviewModal'); const fullScreenVideo = document.getElementById('fullScreenVideo'); const fullScreenImage = document.getElementById('fullScreenImage'); const previewModalClose = document.getElementById('previewModalClose'); const previewLoading = document.getElementById('previewLoading'); filePreviewModal.style.display = 'block'; previewLoading.style.display = 'flex'; if(finalPreviewData?.type === 'video'){ const media = this.mediaParse_(this.fileList_[index]?.url); fullScreenVideo.addEventListener('canplaythrough', function() { previewLoading.style.display = 'none'; }); fullScreenImage.src = ''; fullScreenImage.style.display = 'none'; fullScreenVideo.style.display = 'block'; fullScreenVideo.src = media.mp4 || ''; } else { fullScreenImage.onload = function() { previewLoading.style.display = 'none'; }; fullScreenVideo.src = ''; fullScreenVideo.style.display = 'none'; fullScreenImage.style.display = 'block'; fullScreenImage.src = finalPreviewData.url; } previewModalClose.addEventListener('click', function() { filePreviewModal.style.display = 'none'; }); } handleFileLimit_() { alert(window.AppReviewsLocale.comment_file_limit || 'please do not upload files more than 5'); this.triggerEvent_("handleFileLimit"); } handleFileSizeLimit_() { alert(window.AppReviewsLocale.comment_file_size_limit || 'File size does not exceed 10M'); } clear(){ this.fileList_ = []; this.uploadCount_ = 0; sessionStorage.setItem('fileList', JSON.stringify(this.fileList_)); this.triggerEvent_("handleClear", { count: this.uploadCount_, files: this.fileList_}); document.querySelector('#review_upload').style.display = 'block'; } mediaParse_(url) { var result = {}; try { url.replace(/[?&]+([^=&]+)=([^&]*)/gi, function (str, key, value) { try { result[key] = decodeURIComponent(value); } catch (e) { result[key] = value; } }); result.preview_image = url.split('?')[0]; } catch (e) {}; return result; } triggerEvent_(name, data) { const event = SPZUtils.Event.create(this.win, name, data); this.action.trigger(this.element, name, event); } } SPZ.defineElement('spz-custom-file-upload', SpzCustomFileUpload);
    The review would not show in product details on storefront since it does not support to.

    Casualruby's family

    I was very impressed with this bag. It is very sturdy and I love that it has a zip fastening. The picture is lovely too.

    Elizabeth Wren

    Los Angeles

    Thank you so much for this beautiful summer bag! That’s exactly what I‘ve been waiting for by making a purchase. And I’m also glad that it suits to everything what I wear. Perfect looks guaranteed!

    Mariia Risinskaia

    London

    It’s so spacious and ten times prettier in person

    Ani S.

    Berlin

    It has the perfect amount of space and pockets. I’ve used it for everything and I love the sturdy design it’s made beautifully I need more!

    Emma F.

    Paris

    Love it. Perfectly organized, well made, comfy and stylish!

    Monika P.

    New York

    I was very impressed with this bag. It is very sturdy and I love that it has a zip fastening. The picture is lovely too.

    Elizabeth Wren

    Los Angeles

    Thank you so much for this beautiful summer bag! That’s exactly what I‘ve been waiting for by making a purchase. And I’m also glad that it suits to everything what I wear. Perfect looks guaranteed!

    Mariia Risinskaia

    London

    It’s so spacious and ten times prettier in person

    Ani S.

    Berlin

    It has the perfect amount of space and pockets. I’ve used it for everything and I love the sturdy design it’s made beautifully I need more!

    Emma F.

    Paris

    Love it. Perfectly organized, well made, comfy and stylish!

    Monika P.

    New York