Personalized Pink Moon Phase, A Heartfelt Gift for Mom - Mother’s Day Gift

people are viewing this right now
📦Produced in the USA and UK
$35.99
$69.99
-$34.00
  • Deliver to: |
Frame Style:  Nature Wooden
Size:  12 x 8 inches
Quantity

Description

The Best Gift for Mother's Day!

Special Discount(10% off):MOM10

Give Mom a gift as unique as the bond you share—the exact moon phase from the nights her children were born. This personalized birth moon poster beautifully captures the celestial moment that changed her life forever. Designed with stunning custom lunar phases and a dreamy nightscape, this one-of-a-kind keepsake brings warmth, nostalgia, and deep emotion. Whether for her birthday, Mother’s Day, or just because, this heartfelt gift will remind her of the love, joy, and journey of motherhood.

Product details:

  • Frame NOT included. Photos with frames are for display purposes only.
  • Shipped rolled up in a tube.
  • High quality resin-coated photo paper.
  • Paper weight 260 GSM.
  • Paper thickness 10 mil. which provides a durable photo feel.
  • Print can last up to 200 years (color) and 400 years (black-and-white).
  • Printed in the USA.

Personalization:

  • Please fill in the required fields and carefully double-check the spelling
  • To ensure the best looking, please use standard English only and exclude special characters
  • The last step, click “Preview Your Personalization” to get a glimpse of the wonderful creation you’ve made

Let’s create your own poster and click “Add To Cart” NOW to get one!

Our Guarantee:

If you don't have a positive experience for ANY reason, contact us and we will make sure that ALL your concerns are addressed and you leave 100% satisfied and smiling

We have 24/7 Ticket and Email Support. Please contact us via e-mail or our contact form if you need assistance we're here for you.

Our service mailbox: service@Loradream.com

4 GREAT REASONS TO BUY FROM US

Shipping & Returns

  • Orders can be cancelled or modified within 2 hours after being placed.
  • International orders: It may take additional days if orders have to go through customs. We have no influence on the customs process and apologize for any inconvenience due to delivery delays resulting from this.
  • For more detailed information and instructions, please visit our Replacement & Refund Policy.
  • Learn more about Shipping Policy here.

Personalization

  • Please complete fields required to customize options (Name/Characteristics) and recheck carefully all the customized options.
  • Text: Standard English excluding special characters, emojis to ensure the best looking.
  • Characteristics: Pick one-by-one options that match your description.
  • The last step, click “ADD TO CART” and wait for us to create your wonderful creation ❤️.
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.