Back to Compare
Recovery

Momentous

Recovery Chocolate 15 Servings

Price
£2.800

Flavour

Momentous

Buy

Price History

Loading...

Description

Recovery is a balanced protein powder containing both protein and carbohydrates designed to fuel rapid recovery from strenuous workouts. Recovery is intentionally designed to include a 2:1 protein-to-carb ratio. The base of premium grass-fed whey isolate starts the muscle recovery and protein synthesis processes while L-glutamine and L-carnitine help support the repair and rebuilding of muscle tissue, reducing muscle soreness and promoting optimal muscle function.

Ingredients

Chocolate: Truly Grass Fed™ Whey Protein Isolate, L-Glutamine, D-Ribose, Dimagnesium Malate, L-Carnitine Tartrate, ProHydrolase® (protease enzyme blend) Other Ingredients: Cocoa, Dextrose, Rice Maltodextrin, Natural Flavors, Guar Gum, Salt, Potassium Citrate, Sunflower Lecithin, Silica, Steviol Glycosides. Contains: Milk Vanilla: Truly Grass Fed™ Whey Protein Isolate, L-Glutamine, D-Ribose, Dimagnesium Malate, L-Carnitine Tartrate, ProHydrolase® (protease enzyme blend) Other Ingredients: Dextrose, Natural Flavors, Rice Maltodextrin, Guar Gum, Potassium Citrate, Sunflower Lecithin, Silica, Steviol Glycosides. Contains: Milk Recovery starts with grass-fed Whey Protein Isolate, sourced from european grass-fed cows raised in a natural, traceable, and sustainable environment. It’s paired with 10g of carbohydrates from dextrose and rice maltodextrin to support recovery without overloading the formula with sugar. Additional recovery support comes from: L-Glutamine for muscle recovery and gut support L-Carnitine Tartrate for exercise recovery support DiMagnesium Malate for muscle and metabolic support Potassium + sodium for electrolyte replenishment ProHydrolase® to support protein digestion and absorption Onset Time & Expected Results When to use Post-workout, immediately after training or high-intensity exercise. Onset time Supports recovery right away; noticeable improvements typically within 2–4 weeks of consistent use. Expected results Reduced muscle soreness and fatigue Faster recovery between sessions Improved post-workout energy replenishment Better support for muscle repair and performance Clinical Research & 3rd Party Test Results There are 5 credible reviews and studies related to this product: The impact of dietary protein supplementation on recovery from resistance exercise-induced muscle damage: A systematic review with meta-analysis Timing and distribution of protein ingestion during prolonged recovery from resistance exercise alters myofibrillar protein synthesis Dietary protein for athletes: From requirements to optimum adaptation Rapid aminoacidemia enhances myofibrillar protein synthesis and anabolic intramuscular signaling responses after resistance exercise The Influence of Oral L-Glutamine Supplementation on Muscle Strength Recovery and Soreness Following Unilateral Knee Extension Eccentric Exercise Build Your Stack Best Seller {const lazyImages = window.lazyImages = window.lazyImages || [] const el = document.querySelector("#image2127") if(el && window.lazyImageFn) window.lazyImageFn(el); else if(el) lazyImages.push(el) } 4.7 Rated 4.7 out of 5 stars 3,092 {"averageRating":"4.7","reviewCount":3092} Whey Protein Isolate Supports lean muscle mass and recovery* High in leucine to build and repair muscle faster* No gums, fillers, or artificial sweeteners £34.50 £46.00 Add to Bag Whey Protein Isolate Flavor: ChocolateVanillaUnflavoredStrawberry Subscribe & Save 25% £ 34.50 £ 46.00 Out of Stock Protection 10% off future deliveries Cancel or reschedule anytime Experience long-term results Delivery every 1 month Delivery every 2 months Delivery every 3 months One-time Purchase £ 46.00 £ 46.00 £ 46.00 £ 46.00 Sorry, We are currently out of stock! Estimated to be back in stock: Add to Bag Notify me when available View Full Details .first-hidden { display: none; } Whey Protein Isolate Flavor: ChocolateVanillaUnflavoredStrawberry Subscribe & Save 25% £ 34.50 £ 46.00 Out of Stock Protection 10% off future deliveries Cancel or reschedule anytime Experience long-term results Delivery every 1 month Delivery every 2 months Delivery every 3 months One-time Purchase £ 46.00 £ 46.00 £ 46.00 £ 46.00 Sorry, We are currently out of stock! Estimated to be back in stock: Add to Bag Notify me when available View Full Details .first-hidden { display: none; } Upgraded Formula {const lazyImages = window.lazyImages = window.lazyImages || [] const el = document.querySelector("#image2755") if(el && window.lazyImageFn) window.lazyImageFn(el); else if(el) lazyImages.push(el) } 4.9 Rated 4.9 out of 5 stars 3,664 {"averageRating":"4.9","reviewCount":3664} Creatine - 90 Servings New Signature Spec creatine standard Ultrafine powder for exceptional mixability Unrivaled 6-stage testing & certification £24.75 £33.00 Add to Bag Creatine - 90 Servings Subscribe & Save 25% £ 24.75 £ 33.00 Out of Stock Protection 10% off future deliveries Cancel or reschedule anytime Experience long-term results Delivery every 3 months Delivery every 2 months Delivery every 1 month One-time Purchase £ 33.00 £ 33.00 £ 33.00 £ 33.00 Sorry, We are currently out of stock! Estimated to be back in stock: Add to Bag Notify me when available View Full Details .first-hidden { display: none; } Creatine - 90 Servings Subscribe & Save 25% £ 24.75 £ 33.00 Out of Stock Protection 10% off future deliveries Cancel or reschedule anytime Experience long-term results Delivery every 3 months Delivery every 2 months Delivery every 1 month One-time Purchase £ 33.00 £ 33.00 £ 33.00 £ 33.00 Sorry, We are currently out of stock! Estimated to be back in stock: Add to Bag Notify me when available View Full Details .first-hidden { display: none; } Best Seller {const lazyImages = window.lazyImages = window.lazyImages || [] const el = document.querySelector("#image6845") if(el && window.lazyImageFn) window.lazyImageFn(el); else if(el) lazyImages.push(el) } 4.8 Rated 4.8 out of 5 stars 1,090 {"averageRating":"4.8","reviewCount":1090} Collagen Peptides 10g collagen + 5g FORTIGEL® for soft tissue strength Includes Vitamin C to support collagen synthesis Supports mobility, skin elasticity, and resilience £30.00 £40.00 Add to Bag Collagen Peptides Subscribe & Save 25% £ 30.00 £ 40.00 Out of Stock Protection 10% off future deliveries Cancel or reschedule anytime Experience long-term results Delivery every 1 month Delivery every 2 months Delivery every 3 months One-time Purchase £ 40.00 £ 40.00 £ 40.00 £ 40.00 Sorry, We are currently out of stock! Estimated to be back in stock: Add to Bag Notify me when available View Full Details .first-hidden { display: none; } Collagen Peptides Subscribe & Save 25% £ 30.00 £ 40.00 Out of Stock Protection 10% off future deliveries Cancel or reschedule anytime Experience long-term results Delivery every 1 month Delivery every 2 months Delivery every 3 months One-time Purchase £ 40.00 £ 40.00 £ 40.00 £ 40.00 Sorry, We are currently out of stock! Estimated to be back in stock: Add to Bag Notify me when available View Full Details .first-hidden { display: none; } {const lazyImages = window.lazyImages = window.lazyImages || [] const el = document.querySelector("#image2369") if(el && window.lazyImageFn) window.lazyImageFn(el); else if(el) lazyImages.push(el) } 4.8 Rated 4.8 out of 5 stars 201 {"averageRating":"4.8","reviewCount":201} Fuel Slow-burning energy with no spike or crash 3:1 carb ratio lowers risk of GI distress Essential electrolytes hydrate + combat cramping £22.50 £30.00 Add to Bag Fuel Flavor: Passion Orange GuavaMangoStrawberry LimeCherry Berry Subscribe & Save 25% £ 22.50 £ 30.00 Out of Stock Protection 10% off future deliveries Cancel or reschedule anytime Experience long-term results Delivery every 1 month Delivery every 2 months Delivery every 3 months One-time Purchase £ 30.00 £ 30.00 £ 30.00 £ 30.00 Sorry, We are currently out of stock! Estimated to be back in stock: Add to Bag Notify me when available View Full Details .first-hidden { display: none; } Fuel Flavor: Passion Orange GuavaMangoStrawberry LimeCherry Berry Subscribe & Save 25% £ 22.50 £ 30.00 Out of Stock Protection 10% off future deliveries Cancel or reschedule anytime Experience long-term results Delivery every 1 month Delivery every 2 months Delivery every 3 months One-time Purchase £ 30.00 £ 30.00 £ 30.00 £ 30.00 Sorry, We are currently out of stock! Estimated to be back in stock: Add to Bag Notify me when available View Full Details .first-hidden { display: none; } {const lazyImages = window.lazyImages = window.lazyImages || [] const el = document.querySelector("#image443") if(el && window.lazyImageFn) window.lazyImageFn(el); else if(el) lazyImages.push(el) } 4.5 Rated 4.5 out of 5 stars 364 {"averageRating":"4.5","reviewCount":364} Vital Aminos 13 amino acids including all 9 essential aminos Supports muscle repair, recovery, and metabolic function Helps maintain consistent performance over time £27.00 £36.00 Add to Bag Vital Aminos Subscribe & Save 25% £ 27.00 £ 36.00 Out of Stock Protection 10% off future deliveries Cancel or reschedule anytime Experience long-term results Delivery every 1 month Delivery every 2 months Delivery every 3 months One-time Purchase £ 36.00 £ 36.00 £ 36.00 £ 36.00 Sorry, We are currently out of stock! Estimated to be back in stock: Add to Bag Notify me when available View Full Details .first-hidden { display: none; } Vital Aminos Subscribe & Save 25% £ 27.00 £ 36.00 Out of Stock Protection 10% off future deliveries Cancel or reschedule anytime Experience long-term results Delivery every 1 month Delivery every 2 months Delivery every 3 months One-time Purchase £ 36.00 £ 36.00 £ 36.00 £ 36.00 Sorry, We are currently out of stock! Estimated to be back in stock: Add to Bag Notify me when available View Full Details .first-hidden { display: none; } .product-carousel .swiper-slide { flex-shrink: 0; } @media (min-width: 768px) { .product-carousel .swiper-wrapper { display: flex; gap: 1rem; overflow-x: auto; scrollbar-width: none; -ms-overflow-style: none; } .product-carousel .swiper-wrapper::-webkit-scrollbar { display: none; } } #shopify-section-template--20282424131767__horizontal_line_hMFxBL { padding-top: 0px; padding-bottom: 10px; } @media (max-width: 1023px) { #shopify-section-template--20282424131767__horizontal_line_hMFxBL { padding-top: 0px; padding-bottom: 10px; } } Frequently Asked Questions What is a recovery supplement? A recovery supplement is designed to support the body after exercise by helping repair muscle tissue and replenish energy stores. These supplements often include protein, carbohydrates, or both, depending on the type of training. How is this different than grass-fed whey protein? Recovery differs from whey protein by providing both protein and carbohydrates. While whey protein primarily supports muscle repair, Recovery also includes carbohydrates to help replenish glycogen stores used during longer or more intense training sessions. This makes Recovery especially useful after endurance workouts or high-volume training. Do I need carbohydrates after a workout? After longer or more intense workouts, carbohydrates can help replenish glycogen stores used during exercise. Pairing carbohydrates with protein is commonly recommended to support both energy restoration and muscle recovery. When should I take Recovery? Recovery is typically taken after training, especially following longer endurance workouts or high-volume sessions. It is designed to be consumed shortly after exercise as part of a post-workout nutrition routine. Who is Recovery best for? Recovery is designed for endurance athletes and active individuals who perform longer or more demanding training sessions. It is commonly used to support post-workout muscle repair and energy replenishment. Can I use Recovery after every workout? Recovery can be used after workouts, especially those that are longer in duration or higher in intensity. For shorter or lower-intensity sessions, protein alone may be sufficient depending on overall nutrition. Why is taking Recovery important? Recovery is designed to support the post-workout window, when the body is replenishing energy and repairing muscle tissue. By providing both protein and carbohydrates, it helps support muscle recovery while restoring energy used during training. This can help prepare the body for subsequent workouts and training days. Is Recovery better than protein after workouts? Protein supports muscle repair after exercise, while a recovery supplement that includes both protein and carbohydrates can also help restore energy levels. The best option depends on the duration and intensity of training. Can I use Recovery as a meal replacement? Recovery is a post-workout recovery supplement designed to support muscle repair and replenish energy after training. It is not intended to replace a complete meal. For best results, Recovery should be used after exercise and followed by a balanced meal within a few hours. Is Momentous Recovery NSF Certified for Sport®? Every finished batch of Recovery is certified through NSF Certified for Sport®, a respected independent program that verifies label accuracy and screens for hundreds of banned substances. If a batch fails to meet these independent standards, it does not ship. We also take transparency a step further by publishing third-party test results via Light Labs on individual product pages and making Certificates of Analysis (COAs) available for every batch. 4.8 Rated 4.8 out of 5 stars Based on 260 reviews 5 Rated out of 5 stars 230 Total 5 star reviews: 230 4 Rated out of 5 stars 22 Total 4 star reviews: 22 3 Rated out of 5 stars 3 Total 3 star reviews: 3 2 Rated out of 5 stars 2 Total 2 star reviews: 2 1 Rated out of 5 stars 3 Total 1 star reviews: 3 97%would recommend these products Reviews Summary Generated by AI from 100 most recent customer reviews Last updated 4 months ago Customers say this recovery protein powder tastes great, with many describing the chocolate flavor as rich and smooth like hot chocolate, while the vanilla pairs well with fruits. Users report it mixes easily with water or milk without clumps and is gentle on the stomach. Many athletes appreciate the protein-to-carb ratio for post-workout recovery, noting reduced muscle soreness and improved energy levels. The convenient travel packets are frequently praised for portability. Common feedback includes faster recovery times, less fatigue after workouts, and effectiveness for endurance activities like cycling and running. Some users mention it helps with sleep quality. A few note it works better with milk than water, and one reviewer experienced digestive issues. Read More Customers Talked About Taste Recovery Mixing Performance Nutrition Filters Write a Review (Opens in a new window) 260 reviews Sort Most RecentPhotos & VideosMost HelpfulHighest RatingOldestLowest RatingLeast Helpful FM Florentino M. Verified Buyer Product Standouts Ease of Use, Trust and Transparency Yesterday Product Standouts Ease of Use, Trust and Transparency Reviewing Recovery Rated 5 out of 5 stars Great recovery for 2 a days I train jiujitsu then immediately lift . This has greatly improved my recovery! I mix this with creatine Read MoreRead more about this review Was this helpful?Yes, this review from Florentino M. was helpful. 0 people voted yesNo, this review from Florentino M. was not helpful. 0 people voted no I Irving 1 month ago Reviewing Recovery Rated 4 out of 5 stars 4 Stars I like the product, I think I need to understand my bady more now they im over 40. Plus things are not recovering as fast as I thought. Overall the product is great but not like the ones I had in the past. Read MoreRead more about this review Was this helpful?Yes, this review from Irving was helpful. 0 people voted yesNo, this review from Irving was not helpful. 0 people voted no L Lura 1 month ago Reviewing Recovery Rated 5 out of 5 stars 5 Stars I am a F age 44 experiencing fatigue after training/lifting and this has helped ease my recovery. I love this brand,I always feel the effects of their products in my body. 10/10 Read MoreRead more about this review Was this helpful?Yes, this review from Lura was helpful. 0 people voted yesNo, this review from Lura was not helpful. 0 people voted no JE James E. Verified Buyer Product Standouts Results, Ease of Use, Taste + Texture 2 months ago Product Standouts Results, Ease of Use, Taste + Texture Reviewing Recovery Rated 5 out of 5 stars Worth including in your daily nutrition I am in my upper 50's with life things that have kept me from a regular exercise routine for quite a while, but i have been for the last 27 weeks consistently doing strength training 5 days a week. Since using this about a half hour after completing my daily routine i have noticed that aches or soreness are very minimal and i am able to go at it the next day. I use the whey protein as well and i am happy with that but the recovery mix with the creatine and fiber+ do help me to feel better fast. I have even used it after a hard stretch of outdoor chores and it helps then too. Read MoreRead more about this review Was this helpful?Yes, this review from James E. was helpful. 1 person voted yesNo, this review from James E. was not helpful. 0 people voted no CM Charis M. Verified Buyer 2 months ago Reviewing Recovery Rated 5 out of 5 stars Recovery that tastes as good as it works! Taste was great! This is not always the case. I find the best test is “how does it taste with water” and this passes that test! The chocolate was delicious! The texture was none existent so that was a huge plus. Often times you have good taste but the texture is bad and this was the opposite. Great taste and texture is not an issue at all. I do see a huge difference in soreness recovery time. Read MoreRead more about this review Was this helpful?Yes, this review from Charis M. was helpful. 1 person voted yesNo, this review from Charis M. was not helpful. 0 people voted no Loading... Loading... Show More {"areReviewsGrouped":true,"chatAssistant":{"reviewCount":260},"media":[],"productAttributes":[],"questionCount":0,"reviewAggregate":{"dateUpdated":"2026-07-21T05:57:49.268Z","mediaCount":0,"productAttributeCount":[{"title":"Product Standouts","type":"multi-value","options":[{"title":"Ease of Use","count":3},{"title":"Taste + Texture","count":2},{"title":"Results","count":2},{"title":"Trust and Transparency","count":2}]}],"productId":"shopify-6843815690423","productName":"Recovery","ratingAndReviewCount":260,"ratingAndReviewCountByLevel":{"level1Count":3,"level2Count":2,"level3Count":3,"level4Count":22,"level5Count":230},"ratingAndReviewValuesTotal":1254,"ratingCount":0,"ratingCountByLevel":{},"ratingValuesTotal":0,"recommendationCount":252,"replyCount":2,"replyWordsTotal":131,"reviewCount":260,"reviewCountByLevel":{"level1Count":3,"level2Count":2,"level3Count":3,"level4Count":22,"level5Count":230},"reviewRatingValuesTotal":1254,"reviewWordsTotal":6490,"subscriberId_productId":"72adcf9f-ede7-4232-8bc6-db71fceaf77c:shopify-6843815690423","subscriberId":"72adcf9f-ede7-4232-8bc6-db71fceaf77c"},"reviews":[{"subscriberId":"72adcf9f-ede7-4232-8bc6-db71fceaf77c","reviewId":"289c93af-f217-41a5-9b34-367f3f1d0704","subscriberId_productId":"72adcf9f-ede7-4232-8bc6-db71fceaf77c:shopify-6843815690423","productId":"shopify-6843815690423","body":"I train jiujitsu then immediately lift . This has greatly improved my recovery! I mix this with creatine","dateCreated":"2026-07-21T05:57:48.141Z","dateUpdated":"2026-07-21T05:57:48.141Z","helpfulCount":0,"isRecommended":true,"languageCode":"en","productAttributes":[{"title":"Product Standouts","type":"multi-value","value":["Ease of Use","Trust and Transparency"]}],"productHandle":"recovery-grass-fed-whey-isolate","productImageUrl":"https://cdn.shopify.com/s/files/1/1400/2351/files/Recovery_HERO-Vanilla_x280.png?v=1778013998","productName":"Recovery","productUrl":"//www.livemomentous.com/products/recovery-grass-fed-whey-isolate","productVariantName":"Vanilla","rating":5,"reviewer":{"displayName":"Florentino M.","isVerified":true},"isIncentivized":false,"status":"approved","title":"Great recovery for 2 a days ","unhelpfulCount":0,"variantId":"40138118332599"},{"subscriberId":"72adcf9f-ede7-4232-8bc6-db71fceaf77c","reviewId":"8be97331-59d0-41c4-8e26-444344d29bc1","subscriberId_productId":"72adcf9f-ede7-4232-8bc6-db71fceaf77c:shopify-6843815690423","productId":"shopify-6843815690423","body":"I like the product, I think I need to understand my bady more now they im over 40. Plus things are not recovering as fast as I thought. Overall the product is great but not like the ones I had in the past.","dateCreated":"2026-06-16T00:44:07.000Z","dateUpdated":"2026-06-16T00:44:07.000Z","externalProvider":"shopify-shop","helpfulCount":0,"isRecommended":true,"languageCode":"en","productHandle":"recovery-grass-fed-whey-isolate","productImageUrl":"https://cdn.shopify.com/s/files/1/1400/2351/files/Recovery_HERO-Chocolate_x280.png?v=1778013999","productName":"Recovery","productUrl":"//www.livemomentous.com/products/recovery-grass-fed-whey-isolate","productVariantName":"Chocolate","rating":4,"reviewer":{"displayName":"Irving"},"isIncentivized":false,"status":"approved","title":"4 Stars","unhelpfulCount":0,"variantId":"40138118299831"},{"subscriberId":"72adcf9f-ede7-4232-8bc6-db71fceaf77c","reviewId":"81140e7a-5a99-4ee6-a61a-8f7d9242f1b7","subscriberId_productId":"72adcf9f-ede7-4232-8bc6-db71fceaf77c:shopify-6843815690423","productId":"shopify-6843815690423","body":"I am a F age 44 experiencing fatigue after training/lifting and this has helped ease my recovery. I love this brand,I always feel the effects of their products in my body. 10/10","dateCreated":"2026-06-06T12:11:26.000Z","dateUpdated":"2026-06-06T12:11:26.000Z","externalProvider":"shopify-shop","helpfulCount":0,"isRecommended":true,"languageCode":"en","productHandle":"recovery-grass-fed-whey-isolate","productImageUrl":"https://cdn.shopify.com/s/files/1/1400/2351/files/Recovery_HERO-Vanilla_x280.png?v=1778013998","productName":"Recovery","productUrl":"//www.livemomentous.com/products/recovery-grass-fed-whey-isolate","productVariantName":"Vanilla","rating":5,"reviewer":{"displayName":"Lura"},"isIncentivized":false,"status":"approved","title":"5 Stars","unhelpfulCount":0,"variantId":"40138118332599"},{"subscriberId":"72adcf9f-ede7-4232-8bc6-db71fceaf77c","reviewId":"2bb2af0c-9c6d-48eb-9125-e6e6fb65a044","subscriberId_productId":"72adcf9f-ede7-4232-8bc6-db71fceaf77c:shopify-6843815690423","productId":"shopify-6843815690423","body":"I am in my upper 50's with life things that have kept me from a regular exercise routine for quite a while, but i have been for the last 27 weeks consistently doing strength training 5 days a week. Since using this about a half hour after completing my daily routine i have noticed that aches or soreness are very minimal and i am able to go at it the next day. I use the whey protein as well and i am happy with that but the recovery mix with the creatine and fiber+ do help me to feel better fast. I have even used it after a hard stretch of outdoor chores and it helps then too. ","dateCreated":"2026-05-21T22:30:24.322Z","dateUpdated":"2026-05-21T22:30:24.322Z","helpfulCount":1,"isRecommended":true,"languageCode":"en","productAttributes":[{"title":"Product Standouts","type":"multi-value","value":["Results","Ease of Use","Taste + Texture"]}],"productHandle":"recovery-grass-fed-whey-isolate","productImageUrl":"https://cdn.shopify.com/s/files/1/1400/2351/files/Recovery_HERO-Vanilla_x280.png?v=1778013998","productName":"Recovery","productUrl":"//www.livemomentous.com/products/recovery-grass-fed-whey-isolate","productVariantName":"Vanilla","rating":5,"reviewer":{"displayName":"James E.","isVerified":true},"isIncentivized":false,"status":"approved","title":"Worth including in your daily nutrition","unhelpfulCount":0,"variantId":"40138118332599"},{"subscriberId":"72adcf9f-ede7-4232-8bc6-db71fceaf77c","reviewId":"0f2be369-576e-4525-8af3-c64f02a84490","subscriberId_productId":"72adcf9f-ede7-4232-8bc6-db71fceaf77c:shopify-6843815690423","productId":"shopify-6843815690423","body":"Taste was great! This is not always the case. I find the best test is “how does it taste with water” and this passes that test! The chocolate was delicious! The texture was none existent so that was a huge plus. Often times you have good taste but the texture is bad and this was the opposite. Great taste and texture is not an issue at all. \n\nI do see a huge difference in soreness recovery time. ","dateCreated":"2026-05-21T01:09:36.995Z","dateUpdated":"2026-05-21T01:09:36.995Z","helpfulCount":1,"isRecommended":true,"languageCode":"en","productHandle":"recovery-grass-fed-whey-isolate","productImageUrl":"https://cdn.shopify.com/s/files/1/1400/2351/files/Recovery_HERO-Chocolate_x280.png?v=1778013999","productName":"Recovery","productUrl":"//www.livemomentous.com/products/recovery-grass-fed-whey-isolate","productVariantName":"Chocolate","rating":5,"reviewer":{"displayName":"Charis M.","isVerified":true},"isIncentivized":false,"status":"approved","title":"Recovery that tastes as good as it works!","unhelpfulCount":0,"variantId":"40138118299831"}],"reviewsKeywords":{"keywordTopics":[{"keywords":[{"name":"taste","occurrences":52},{"name":"flavor","occurrences":12},{"name":"sweetness","occurrences":4},{"name":"chocolate flavor","occurrences":3},{"name":"flavors","occurrences":2},{"name":"vanilla","occurrences":2},{"name":"vanilla flavor","occurrences":2},{"name":"aftertaste","occurrences":1},{"name":"chocolate","occurrences":1}],"topic":"Taste"},{"keywords":[{"name":"recovery","occurrences":20},{"name":"post-workout","occurrences":3},{"name":"muscle recovery","occurrences":1},{"name":"post workout","occurrences":1},{"name":"workout recovery","occurrences":1},{"name":"soreness","occurrences":1}],"topic":"Recovery"},{"keywords":[{"name":"mixing","occurrences":9},{"name":"mixability","occurrences":8},{"name":"texture","occurrences":8},{"name":"dissolves","occurrences":2},{"name":"consistency","occurrences":2},{"name":"dissolving","occurrences":1}],"topic":"Mixing"},{"keywords":[{"name":"workout","occurrences":8},{"name":"effectiveness","occurrences":6},{"name":"energy","occurrences":3},{"name":"workouts","occurrences":3},{"name":"performance","occurrences":2},{"name":"training","occurrences":2},{"name":"energy levels","occurrences":1},{"name":"workout performance","occurrences":1}],"topic":"Performance"},{"keywords":[{"name":"protein","occurrences":9},{"name":"carbs","occurrences":3},{"name":"macros","occurrences":2},{"name":"nutrition","occurrences":2},{"name":"sugar content","occurrences":2},{"name":"ingredients","occurrences":2},{"name":"added sugars","occurrences":1},{"name":"protein quality","occurrences":1}],"topic":"Nutrition"},{"keywords":[{"name":"digestion","occurrences":5},{"name":"digestibility","occurrences":4},{"name":"cramps","occurrences":1},{"name":"gut disruption","occurrences":1}],"topic":"Digestion"},{"keywords":[{"name":"portability","occurrences":5},{"name":"versatility","occurrences":5},{"name":"convenience","occurrences":3},{"name":"preparation","occurrences":2},{"name":"ease of use","occurrences":1},{"name":"travel","occurrences":1},{"name":"travel packs","occurrences":1}],"topic":"Convenience"}],"languageCode":"en"},"reviewsNextUrl":"https://api.okendo.io/v1/stores/72adcf9f-ede7-4232-8bc6-db71fceaf77c/products/shopify-6843815690423/reviews?limit=5&orderBy=date%20desc&lastEvaluated=%7B%22dateCreated%22%3A%222026-05-21T01%3A09%3A36.995Z%22%2C%22reviewId%22%3A%220f2be369-576e-4525-8af3-c64f02a84490%22%2C%22subscriberId_collectionId%22%3A%2272adcf9f-ede7-4232-8bc6-db71fceaf77c%3A896e9ae6-bd59-4ab0-8b66-0a2884095552%22%7D","reviewsSummary":{"body":"Customers say this recovery protein powder tastes great, with many describing the chocolate flavor as rich and smooth like hot chocolate, while the vanilla pairs well with fruits. Users report it mixes easily with water or milk without clumps and is gentle on the stomach. Many athletes appreciate the protein-to-carb ratio for post-workout recovery, noting reduced muscle soreness and improved energy levels. The convenient travel packets are frequently praised for portability. Common feedback includes faster recovery times, less fatigue after workouts, and effectiveness for endurance activities like cycling and running. Some users mention it helps with sleep quality. A few note it works better with milk than water, and one reviewer experienced digestive issues.","contributingReviewCount":100,"dateGenerated":"2026-02-26T00:08:06.464Z","datePublished":"2026-02-26T05:05:21.785Z","languageCode":"en"},"sort":{"defaultSort":"date desc"}} !(function() { const widgets = document.querySelectorAll('.js-oke-widgetSize'); if (widgets && widgets.length) { if (!window.okeSetWidgetSizes) { window.okeSetWidgetSizes = (allWidgets) => { if (allWidgets) { allWidgets.forEach(widget => { const width = widget.getBoundingClientRect().width; widget.classList.remove('oke-is-small', 'oke-is-medium', 'oke-is-large'); widget.classList.add(width > 960 ? 'oke-is-large' : width > 640 ? 'oke-is-medium' : 'oke-is-small'); }); } }; } if (!window.okeResizeObserver) { let okeMetafieldResizerTimer; window.okeResizeObserver = new ResizeObserver(entries => { if (entries && entries.length) { if (okeMetafieldResizerTimer) { clearTimeout(okeMetafieldResizerTimer); } okeMetafieldResizerTimer = window.setTimeout(() => { window.okeSetWidgetSizes(entries.map(e => e.target)); }, 100); } }); } window.okeSetWidgetSizes(document.querySelectorAll('.js-oke-widgetSize')); widgets.forEach((widget) => { window.okeResizeObserver.observe(widget); }); } })(); @media (min-width: 1024px) { .oke-w-main { width: 67%; margin-left: auto; } } [ { "@context": "https://schema.org/", "@type": "Product", "name": "Recovery", "url": "https:\/\/www.livemomentous.com\/products\/recovery-grass-fed-whey-isolate", "image":"https:\/\/www.livemomentous.com\/cdn\/shop\/files\/Recovery_HERO-Chocolate.png?v=1778013999\u0026width=1000","description": "Momentous Recovery is a performance-focused post-workout formula designed to optimize muscle repair, replenish glycogen stores, and reduce exercise-induced soreness. Featuring a clinically supported 2:1 ratio of fast-acting carbohydrates to grass-fed whey protein, plus amino acids and electrolytes, it delivers comprehensive recovery support in one simple shake.\nIdeal for endurance athletes, strength trainers, and anyone serious about recovery, this formula helps your body rebuild and rehydrate efficiently—so you can train consistently and perform at your best.","sku": "850243008598","brand": { "@type": "Brand", "name": "Momentous" },"aggregateRating": { "@type": "AggregateRating", "ratingValue": "4.8", "reviewCount": "260", "bestRating": "5", "worstRating": "1" },"hasMerchantReturnPolicy": { "@type": "MerchantReturnPolicy", "@id": "#momentous-return-policy", "applicableCountry": "US", "returnPolicyCategory": "https://schema.org/MerchantReturnFiniteReturnWindow", "merchantReturnDays": 30, "merchantReturnLink": "https:\/\/www.livemomentous.com\/policies\/refund-policy", "returnMethod": "https://schema.org/ReturnByMail", "returnFees": "https://schema.org/FreeReturn", "customerRemorseReturnFees": "https://schema.org/FreeReturn", "returnShippingFeesAmount": { "@type": "MonetaryAmount", "value": 0, "currency": "USD" }, "refundType": "https://schema.org/FullRefund" }, "offers": [{ "@type": "Offer","sku": "850243008598","gtin12": "850243008598","itemCondition": "https://schema.org/NewCondition", "availability": "https://schema.org/InStock", "price": 42.0, "priceCurrency": "GBP", "url": "https:\/\/www.livemomentous.com\/products\/recovery-grass-fed-whey-isolate?variant=40138118299831","priceSpecification": [ { "@type": "UnitPriceSpecification", "price": 42.0, "priceCurrency": "GBP", "name": "One-Time Purchase" }, { "@type": "UnitPriceSpecification", "price": 31.5, "priceCurrency": "GBP", "name": "Delivery every 1 month", "validForMemberTier": { "@type": "MemberProgramTier", "@id": "#momentous-subscriber", "name": "Subscriber" } } ],"hasMerchantReturnPolicy": { "@type": "MerchantReturnPolicy", "@id": "#momentous-return-policy" } }, { "@type": "Offer","sku": "850243008789","gtin12": "850243008789","itemCondition": "https://schema.org/NewCondition", "availability": "https://schema.org/InStock", "price": 42.0, "priceCurrency": "GBP", "url": "https:\/\/www.livemomentous.com\/products\/recovery-grass-fed-whey-isolate?variant=40138118332599","priceSpecification": [ { "@type": "UnitPriceSpecification", "price": 42.0, "priceCurrency": "GBP", "name": "One-Time Purchase" }, { "@type": "UnitPriceSpecification", "price": 31.5, "priceCurrency": "GBP", "name": "Delivery every 1 month", "validForMemberTier": { "@type": "MemberProgramTier", "@id": "#momentous-subscriber", "name": "Subscriber" } } ],"hasMerchantReturnPolicy": { "@type": "MerchantReturnPolicy", "@id": "#momentous-return-policy" } } ] }, { "@context": "https://schema.org", "@type": "BreadcrumbList", "itemListElement": [ { "@type": "ListItem", "position": 1, "name": "Home", "item": "https:\/\/www.livemomentous.com" }, { "@type": "ListItem", "position": 2, "name": "Protein", "item": "https:\/\/www.livemomentous.com\/collections\/protein" }, { "@type": "ListItem", "position": 3, "name": "Recovery", "item": "https:\/\/www.livemomentous.com\/products\/recovery-grass-fed-whey-isolate" } ] } ] .combined-product-button.flavour-disabled { opacity: 0.5; position: relative; cursor: not-allowed; pointer-events: none; } .combined-product-button.flavour-disabled:after { content: ' '; position: absolute; width: 100%; height: 100%; top: 0; left: 0; background: linear-gradient(to top left, rgba(0,0,0,0) calc(50% - 1px), #CFCFCA, rgba(0,0,0,0) calc(50% + 1px)) } Sign up for offers, product news, and tips Support Account Help & Contact Subscriptions Locations Press Inquiries Company About Us Careers Blog Affiliate Program Trusted Experts Wholesale Corporate Wellness Resources Privacy Policy Terms of Service Your Privacy Choices Accessibility California Prop 65 Save with HSA/FSA Certificate of Analysis Patents Do Not Sell My Information *These statements have not been evaluated by the food and drug administration. This product is not intended to diagnose, treat, cure, or prevent any disease. Afghanistan - USD $ Åland Islands - USD $ Algeria - USD $ Andorra - EUR € Anguilla - USD $ Antigua & Barbuda - USD $ Argentina - USD $ Armenia - USD $ Aruba - USD $ Ascension Island - USD $ Australia - AUD $ Austria - EUR € Bahamas - USD $ Bahrain - USD $ Bangladesh - USD $ Barbados - USD $ Belgium - EUR € Belize - USD $ Bermuda - USD $ Bhutan - USD $ Bolivia - USD $ Bosnia & Herzegovina - USD $ Botswana - USD $ Brazil - USD $ British Indian Ocean Territory - USD $ Brunei - USD $ Bulgaria - USD $ Burkina Faso - USD $ Burundi - USD $ Cambodia - USD $ Cameroon - USD $ Canada - CAD $ Cape Verde - USD $ Caribbean Netherlands - USD $ Cayman Islands - USD $ Central African Republic - USD $ Chad - USD $ Chile - USD $ China - USD $ Christmas Island - USD $ Cocos (Keeling) Islands - USD $ Colombia - USD $ Congo - Brazzaville - USD $ Congo - Kinshasa - USD $ Cook Islands - USD $ Costa Rica - USD $ Côte d’Ivoire - USD $ Croatia - USD $ Curaçao - USD $ Cyprus - EUR € Czechia - USD $ Denmark - USD $ Dominica - USD $ Dominican Republic - USD $ Ecuador - USD $ Egypt - USD $ El Salvador - USD $ Estonia - EUR € Eswatini - USD $ Ethiopia - USD $ Falkland Islands - USD $ Finland - EUR € France - EUR € French Guiana - USD $ French Polynesia - USD $ French Southern Territories - USD $ Gabon - USD $ Gambia - USD $ Germany - EUR € Ghana - USD $ Greece - EUR € Guadeloupe - USD $ Guatemala - USD $ Guernsey - USD $ Guinea - USD $ Guyana - USD $ Haiti - USD $ Hong Kong SAR - USD $ Hungary - USD $ Iceland - USD $ India - USD $ Indonesia - USD $ Iraq - USD $ Ireland - EUR € Isle of Man - USD $ Israel - USD $ Italy - EUR € Jamaica - USD $ Japan - USD $ Jersey - USD $ Jordan - USD $ Kenya - USD $ Kosovo - EUR € Kuwait - USD $ Laos - USD $ Latvia - EUR € Lebanon - USD $ Liberia - USD $ Liechtenstein - USD $ Lithuania - EUR € Luxembourg - EUR € Macao SAR - USD $ Madagascar - USD $ Malawi - USD $ Malaysia - USD $ Maldives - USD $ Mali - USD $ Malta - EUR € Martinique - USD $ Mauritania - USD $ Mauritius - USD $ Mayotte - USD $ Mexico - USD $ Moldova - USD $ Monaco - EUR € Montenegro - EUR € Morocco - USD $ Mozambique - USD $ Namibia - USD $ Nauru - USD $ Nepal - USD $ Netherlands - EUR € New Zealand - USD $ Nicaragua - USD $ Niger - USD $ Nigeria - USD $ Niue - USD $ Norfolk Island - USD $ Norway - USD $ Oman - USD $ Pakistan - USD $ Palestinian Territories - USD $ Panama - USD $ Papua New Guinea - USD $ Paraguay - USD $ Peru - USD $ Philippines - USD $ Pitcairn Islands - USD $ Poland - USD $ Portugal - EUR € Qatar - USD $ Réunion - USD $ Romania - USD $ Rwanda - USD $ San Marino - EUR € São Tomé & Príncipe - USD $ Saudi Arabia - USD $ Senegal - USD $ Seychelles - USD $ Sierra Leone - USD $ Singapore - USD $ Slovakia - EUR € Slovenia - EUR € Solomon Islands - USD $ Somalia - USD $ South Africa - USD $ South Georgia & South Sandwich Islands - USD $ South Korea - USD $ South Sudan - USD $ Spain - EUR € Sri Lanka - USD $ St. Helena - USD $ St. Pierre & Miquelon - USD $ Suriname - USD $ Svalbard & Jan Mayen - USD $ Sweden - USD $ Switzerland - USD $ Taiwan - USD $ Tajikistan - USD $ Tanzania - USD $ Thailand - USD $ Togo - USD $ Tokelau - USD $ Trinidad & Tobago - USD $ Tristan da Cunha - USD $ Tunisia - USD $ Türkiye - USD $ Turkmenistan - USD $ Tuvalu - USD $ U.S. Outlying Islands - USD $ Uganda - USD $ Ukraine - USD $ United Arab Emirates - USD $ United Kingdom - GBP £ United States - USD $ Uruguay - USD $ Vatican City - USD $ Venezuela - USD $ Vietnam - USD $ Western Sahara - USD $ Yemen - USD $ Zambia - USD $ Zimbabwe - USD $ United Kingdom - GB £ .country-selector { position: relative; } .country-selector__select { position: absolute; top: 0; left: 0; width: 100%; height: 100%; opacity: 0; cursor: pointer; } .country-selector__selected-display { display: flex; align-items: center; gap: 8px; } document.querySelector('.country-selector__select').addEventListener('change', function() { const selectedOption = this.options[this.selectedIndex]; const flagSrc = selectedOption.dataset.flagSrc; const currency = selectedOption.dataset.currency; // Update the displayed flag and text const display = this.closest('.country-selector').querySelector('.country-selector__selected-display'); display.querySelector('img').src = flagSrc; display.querySelector('img').alt = selectedOption.text; display.querySelector('span').textContent = selectedOption.text; // Submit the form this.closest('form').submit(); }); document.addEventListener("DOMContentLoaded", () => { const managePreferencesBtn = document.querySelector( 'a[aria-label="Your Privacy Choices"]' ); if (managePreferencesBtn) { managePreferencesBtn.addEventListener("click", (event) => { event.preventDefault(); const consent = window[Symbol.for("blotout-consent")]; if (consent && typeof consent.showBanner === "function") { consent.showBanner(); console.log('Banner Fired') } }); } }); document.addEventListener('DOMContentLoaded', function() { // Handle newsletter form submission document.addEventListener('newsletter-submit', function(event) { const email = event.detail.email; // Here you can integrate with your email service (Klaviyo, Mailchimp, etc.) // Example: Send to Klaviyo or your backend console.log('Newsletter subscription:', email); // You can add your newsletter integration here // For example, if using Klaviyo: // if (window._learnq) { // window._learnq.push(['identify', { $email: email }]); // } }); }); /* Ensure x-cloak works properly */ [x-cloak] { display: none !important; } /* Custom styles for localization form integration */ #footer-new .country-selector { min-width: 200px; } #footer-new .country-selector__selected-display { padding: 8px 12px; cursor: pointer; transition: border-color 0.2s; } #footer-new .country-selector__selected-display:hover { border-color: #f97316; } #footer-new .country-selector__selected-display:focus-within { outline: 2px solid #f97316; outline-offset: 2px; } /* Ensure proper spacing for social icons */ #footer-new [role="list"] { list-style: none; padding: 0; margin: 0; } /* Smooth transitions for all interactive elements */ #footer-new a, #footer-new button { transition: all 0.2s ease-in-out; } /* High contrast mode support */ @media (prefers-contrast: high) { #footer-new { border-top: 2px solid currentColor; } #footer-new a:focus, #footer-new button:focus { outline-width: 3px; } } /* Reduced motion support */ @media (prefers-reduced-motion: reduce) { #footer-new * { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; } } .footer-new__logo { width: 300px; height: 120px; } @media (max-width: 768px) { .footer-new__logo { width: 200px; height: 85px; } } .new-footer-klaviyo-form button[type="button"] { font-size: 0 !important; } .new-footer-klaviyo-form button[type="button"]::before { content: ""; display: inline-block; width: 19px; height: 16px; background-image: url("data:image/svg+xml;utf8,"); background-repeat: no-repeat; background-size: contain; margin-right: 6px; /* spacing before text */ vertical-align: middle; } function closeKlaviyoOutOfStockModal() { let modalElem = document.getElementById("klaviyo_modal"); modalElem.style.display = "none"; document.getElementById('back-in-stock').innerHTML = "" document.body.classList.remove('back-in-stock-opned') } function successKlaviyoOutOfStockModal() { document.getElementById("klaviyo_out_of_stock_form").innerHTML = `

You will receive an email when the product is back in stock! `; } function createKlaviyoOutOfStockSubscriptionModal(variantId, productTitle, variantTitle, backDate, image) { let modalElem = document.createElement("div"); modalElem.innerHTML = `

We’ll notify you when the product is back in stock!
${productTitle}
${productTitle}

${variantTitle}

Estimated to be back in stock: ${backDate}

Email
Notify me when available ` modalElem.id = "klaviyo_modal"; modalElem.classList.add("klaviyo_modal"); modalElem.style.display = "block"; return modalElem; } function klaviyoFormValidateEmail(email) { return String(email) .toLowerCase() .match( /^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/ ); }; window.openKlaviyoStockAlertSubscriptionForm = function(variantId, productTitle, variantTitle, backDate, image) { let modalElem = createKlaviyoOutOfStockSubscriptionModal(variantId, productTitle, variantTitle, backDate, image); document.getElementById('back-in-stock').appendChild(modalElem); document.body.classList.add('back-in-stock-opned') document.querySelectorAll('.klaviyo_modal_close_triger').forEach(item => { item.addEventListener("click", closeKlaviyoOutOfStockModal); }) document.getElementById("klaviyo_out_of_stock_form_button").addEventListener("click", function(evt) { evt.stopPropagation(); const email = document.getElementById("Klaviyo_out_of_stock_email").value; const emailValidation = klaviyoFormValidateEmail(email); console.log(email, variantId, 'email, variantId'); if (!emailValidation) return; const data = { data: { type: "back-in-stock-subscription", attributes: { profile: { data: { type: "profile", attributes: { email: email } } }, channels: ["EMAIL"] }, relationships: { variant: { data: { type: "catalog-variant", id: `$shopify:::$default:::${variantId}` } } } } }; fetch("https://a.klaviyo.com/client/back-in-stock-subscriptions/?company_id=MfVp5f", { method: "POST", headers: { "Content-Type": "application/json", "revision": "2024-06-15" }, body: JSON.stringify(data) }) .then(async res => { if (!res.ok) { const errorText = await res.text(); // Don't assume JSON here console.error("Klaviyo API error:", errorText); throw new Error("Failed to subscribe"); } // Only try parsing JSON if there's content const contentType = res.headers.get("content-type") || ""; if (contentType.includes("application/json")) { const result = await res.json(); console.log("Subscription success:", result); } // Run your success handler successKlaviyoOutOfStockModal(); }) .catch(err => { console.error("Klaviyo Back-in-Stock Error:", err); }); }); document.getElementById("Klaviyo_out_of_stock_email").addEventListener("input", function(evt) { let email = document.getElementById("Klaviyo_out_of_stock_email").value; let emailValidation = klaviyoFormValidateEmail(email) if (emailValidation) { document.getElementById('klaviyo_out_of_stock_form_button').removeAttribute("disabled"); } else { document.getElementById("klaviyo_out_of_stock_form_button").setAttribute("disabled", "true"); } }) } window.upsell_popup = { title : null, subtitle : null, info : null, product_handle : "", product_id : 1234, product_image : "//www.livemomentous.com/cdn/shopifycloud/storefront/assets/no-image-2048-a2addb12_550x.gif", product_variants : [ ], base_product_id : 1234 } if (window.location.pathname == '/a/account/login') { window.location.replace('/tools/recurring/login/'); } window.addEventListener('load', function() { var _learnq = window._learnq || []; function addedToCart() { fetch(`${window.location.origin}/cart.js`) .then(res => res.clone().json().then(data => { var cart = { total_price: data.total_price/100, $value: data.total_price/100, total_discount: data.total_discount, original_total_price: data.original_total_price/100, items: data.items } if (item !== 'undefined') { cart = Object.assign(cart, item) } if (klAjax) { _learnq.push(['track', 'Added to Cart', cart]); klAjax = false; } })) }; (function (ns, fetch) { ns.fetch = function() { const response = fetch.apply(this, arguments); response.then(res => { if (`${window.location.origin}/cart/add.js` .includes(res.url)) { addedToCart() } }); return response } }(window, window.fetch)); var klAjax = true; var atcButtons = document.querySelectorAll("form[action*='/cart/add'] button[type='submit']"); for (var i = 0; i { window.ShopifyAnalytics.meta.selectedVariantId = '40138118299831'; console.log( 'window.ShopifyAnalytics.meta.selectedVariantId:', window.ShopifyAnalytics.meta.selectedVariantId ); }, 5000); .rebuy-product-actions .subscription-checkbox .slider.round, .buttons-wrappers button:nth-of-type(2) { display: none; } .siena-iframe { display: none; } @media (max-width: 1366px) { .siena-iframe { z-index: 39; } .siena-iframe.siena-iframe--bottom-0, .siena-iframe.siena-iframe--fullscreen{ z-index: 9999999; } } ttd_dom_ready( function() { if (typeof TTDUniversalPixelApi === 'function') { var universalPixelApi = new TTDUniversalPixelApi(); universalPixelApi.init("h4w8qq9", ["k1r6x4d"], "https://insight.adsrvr.org/track/up"); } }); document.querySelectorAll('button[aria-label*="Add to Bag"]').forEach(function(btn) { var productn = btn.getAttribute('aria-label').slice(11) btn.addEventListener('click', function(event) { var conversionPixel = new Image(); conversionPixel.src = "https://insight.adsrvr.org/track/pxl/?adv=h4w8qq9&ct=0:fmme5s8&fmt=3&td1=" + productn + "&ts=" + (new Date()).getTime(); // Adding a unique ID to prevent caching conversionPixel.height = 1; conversionPixel.width = 1; conversionPixel.style.display = "none"; // Hide the pixel document.body.appendChild(conversionPixel); }); });
0 ? 'is-visible' : 'is-hidden', 'widget-layout-' + currentLayout()]">

:

1 ? 'lazy' : 'eager'" v-bind:src="itemImage(product, product.selected_variant, '400x400')" v-bind:alt="itemImageAlt(product, product.selected_variant)">
{{ value }}
{{ frequencyLabel(frequency, product.subscription_interval) }}
Quantity {{ n }}
Sale price Original price
Price
Powered by Rebuy
0 ? 'is-visible' : 'is-hidden']">

:

0">
{{ variant.title }}
{{ value }}
0">
0 ? 'is-visible' : 'is-hidden', 'widget-layout-' + currentLayout()]">

:

1 ? 'lazy' : 'eager'" v-bind:src="itemImage(product, product.selected_variant, '400x400')" v-bind:alt="itemImageAlt(product, product.selected_variant)">
{{ value }} Select your purchase method
Out of Stock Protection {{ frequencyLabel(frequency, product.subscription_interval) }}
One-Time Purchase Receive Once Add to Bag
Price View Product
el.classList.remove('show')); $event.target.closest('.rebuy-product-block').querySelector('.rebuy-product-options').classList.add('show')" type="button">
Price
Powered by Rebuy
0 ? 'is-visible' : 'is-hidden', 'widget-layout-' + currentLayout()]">

:

1 ? 'lazy' : 'eager'" v-bind:src="itemImage(product, product.selected_variant, '400x400')" v-bind:alt="itemImageAlt(product, product.selected_variant)">
{{ value }} Select your purchase method
Out of Stock Protection {{ frequencyLabel(frequency, product.subscription_interval) }}
One-Time Purchase Receive Once Add to Bag
Price View Product
el.classList.remove('show')); $event.target.closest('.rebuy-product-block').querySelector('.rebuy-product-options').classList.add('show')" type="button">
Price
Powered by Rebuy Search Search for products, collections, pages, and articles .search-form-wrapper { position: relative; -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); isolation: isolate; } .search-form__input:focus { border: 1px solid #000; } .search-form__results { width: 480px; border-radius: 10px; border: 1px solid #E5E7EB; background: #FFF; box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25); top: 100%; } @media(max-width: 640px) { .search-form__results { width: 100%; border-radius: 10px; border: none; margin-top: 0; } } .search-form__results.show { display: block; } .search-result-divider { border-top: 1px solid var(--grey-100, #e5e5e5); } .search-product-img { width: 5rem; height: 5rem; } @media(max-width: 640px) { .search-product-img { width: 70px; height: 70px; } } .atc-btn[data-loading] { opacity: 0.6; pointer-events: none; } .atc-btn[data-added] { background-color: #2d7a3a; } .search-form__results.is-loading::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 2px; background: linear-gradient(90deg, transparent 0%, var(--grey-900, #171717) 50%, transparent 100%); background-size: 200% 100%; animation: search-loading-shimmer 1.2s ease-in-out infinite; pointer-events: none; } .search-form__results-content { max-height: calc(100vh - 170px); overflow-y: auto; -webkit-overflow-scrolling: touch; overscroll-behavior: contain; } .search-result-divider { position: sticky; bottom: 0; background-color: #FFF; z-index: 10; } @keyframes search-loading-shimmer { 0% { background-position: -100% 0; } 100% { background-position: 200% 0; } } @media(max-width: 640px) { .search-product-row { flex-direction: column; align-items: flex-start !important; } .search-recommended-section { display: none; } } .query-item-text *, .query-item-text { white-space: nowrap; } .query-item-text mark { background-color: #FFFADF; color: inherit; border-radius: 2px; } .search-form__clear-btn { background: none; border: none; padding: 0; cursor: pointer; line-height: 0; color: var(--grey-400, #999); } .search-form__clear-btn:hover svg path { stroke: var(--grey-700, #404040); } (function() { 'use strict'; const SEARCH_ICON = ` `; // Guard: only define the class once even if snippet is rendered multiple times if (!window.MomentousPredictiveSearch) { window.MomentousPredictiveSearch = class { constructor(wrapper) { this.wrapper = wrapper; this.input = wrapper.querySelector('[data-search-input]'); this.resultsContainer = wrapper.querySelector('[data-search-results]'); this.resultsContent = wrapper.querySelector('[data-search-results-content]'); this.form = wrapper.querySelector('.search-form'); this.submitBtn = wrapper.querySelector('[data-search-submit]'); this.clearBtn = wrapper.querySelector('[data-search-clear]'); this.debounceTimer = null; this.currentRequest = null; this.currentQuery = ''; this.minQueryLength = 2; this.debounceDelay = 300; this.cache = new Map(); this.requestId = 0; this.init(); } init() { this.input.addEventListener('input', (e) => { this.handleInput(e.target.value); this.updateClearBtn(); }); if (this.clearBtn) { this.clearBtn.addEventListener('click', () => { this.input.value = ''; this.currentQuery = ''; this.hideResults(); this.updateClearBtn(); this.input.focus(); }); } this.input.addEventListener('focus', () => { if (this.input.value.length >= this.minQueryLength) { this.showResults(); } }); this.input.addEventListener('touchend', (e) => { e.stopPropagation(); this.input.focus(); }); this.input.addEventListener('touchstart', (e) => { e.stopPropagation(); }, { passive: true }); const handleOutsideInteraction = (e) => { if (!this.wrapper.contains(e.target)) { const sidebarPanel = document.getElementById('ss-panel'); if (sidebarPanel && sidebarPanel.contains(this.wrapper) && sidebarPanel.contains(e.target)) { return; } this.hideResults(); } }; document.addEventListener('click', handleOutsideInteraction); document.addEventListener('touchstart', handleOutsideInteraction, { passive: true }); document.addEventListener('keydown', (e) => { if (e.key === 'Escape') this.hideResults(); }); } updateClearBtn() { const show = this.input.value.length >= this.minQueryLength; if (this.clearBtn) this.clearBtn.classList.toggle('hidden', !show); if (this.submitBtn) this.submitBtn.classList.toggle('hidden', show); } handleInput(query) { const trimmedQuery = query.trim(); if (this.debounceTimer) clearTimeout(this.debounceTimer); if (trimmedQuery.length { this.fetchSearchData(trimmedQuery); }, this.debounceDelay); } async fetchSearchData(query) { if (this.cache.has(query)) { const cached = this.cache.get(query); this.setLoadingState(false); this.renderResults(cached.results, query, cached.recommended); return; } if (this.currentRequest) { this.currentRequest.abort(); this.currentRequest = null; } const requestId = ++this.requestId; const controller = new AbortController(); this.currentRequest = controller; const baseUrl = window.Shopify?.routes?.root || '/'; const apiUrl = `${baseUrl}search/suggest.json?q=${encodeURIComponent(query)}&resources[type]=product,query&resources[limit]=5&resources[limit_scope]=each`; try { const response = await fetch(apiUrl, { signal: controller.signal, headers: { 'Accept': 'application/json' } }); if (!response.ok) throw new Error(`HTTP error! status: ${response.status}`); const data = await response.json(); if (requestId !== this.requestId) return; this.currentRequest = null; const results = data.resources?.results || {}; if (this.cache.size > 50) this.cache.clear(); this.cache.set(query, { results, recommended: null }); this.setLoadingState(false); this.renderResults(results, query, null); } catch (error) { if (error.name === 'AbortError') return; if (requestId !== this.requestId) return; console.error('Predictive search error:', error); this.setLoadingState(false); this.showError(); } } async fetchRecommendations(productId) { try { const baseUrl = window.Shopify?.routes?.root || '/'; const url = `${baseUrl}recommendations/products.json?product_id=${productId}&limit=6&intent=related`; const response = await fetch(url, { headers: { 'Accept': 'application/json' } }); if (!response.ok) return []; const data = await response.json(); return (data.products || []) .filter(p => { const tags = (p.tags || []).map(t => t.toLowerCase()); return !tags.includes('searchnise_ignore') && !tags.includes('search_hide'); }) .slice(0, 3); } catch (e) { return []; } } async addToCart(variantId, btn) { btn.setAttribute('data-loading', ''); btn.textContent = 'Adding...'; try { const response = await fetch('/cart/add.js', { method: 'POST', headers: { 'Content-Type': 'application/json', 'Accept': 'application/json' }, body: JSON.stringify({ id: variantId, quantity: 1 }) }); if (!response.ok) throw new Error('Failed to add to cart'); btn.removeAttribute('data-loading'); btn.setAttribute('data-added', ''); btn.textContent = 'Added!'; document.dispatchEvent(new CustomEvent('cart:refresh')); setTimeout(() => { btn.removeAttribute('data-added'); btn.textContent = 'Add to Cart'; }, 2000); } catch (e) { btn.removeAttribute('data-loading'); btn.textContent = 'Add to Cart'; console.error('ATC error:', e); } } bindAtcButtons() { this.resultsContent.querySelectorAll('.atc-btn').forEach(btn => { btn.addEventListener('click', (e) => { e.preventDefault(); const variantId = btn.dataset.variantId; if (variantId) this.addToCart(variantId, btn); }); }); } renderResults(results, query, preloadedRecommended) { if (!results || ((!results.products || results.products.length === 0) && (!results.queries || results.queries.length === 0))) { this.resultsContent.innerHTML = `
No results found for "${this.escapeHtml(query)}" `; this.showResults(); return; } const products = (results.products || []) .filter(p => { const tags = (p.tags || []).map(t => t.toLowerCase()); return !tags.includes('searchnise_ignore') && !tags.includes('search_hide'); }) .slice(0, 4); const queries = (results.queries || []).slice(0, 4); const firstProductId = products.length > 0 ? products[0].id : null; let html = ''; if (products.length > 0) { html += `
`; products.forEach(product => { html += this.renderMatchedProduct(product); }); html += ` `; } if (queries.length > 0) { html += `
Top Searches
  • ${SEARCH_ICON} ${queries.map(q => this.renderQueryItem(q)).join('')}
`; } const searchUrl = (window.Shopify?.routes?.root || '/') + `search?q=${encodeURIComponent(query)}&type=product`; html += `
View all results for “${this.escapeHtml(query)}” `; if (firstProductId) { if (preloadedRecommended && preloadedRecommended.length > 0) { html += this.renderRecommendedSection(preloadedRecommended); } else if (preloadedRecommended === null) { html += `
`; } } this.resultsContent.innerHTML = html; this.showResults(); this.bindAtcButtons(); if (firstProductId && preloadedRecommended === null) { this.fetchAndPatchRecommendations(firstProductId, query); } } renderMatchedProduct(product) { const imgUrl = product.featured_image?.url || product.image || ''; const imgSized = imgUrl ? imgUrl.replace(/(\.[a-z]+)(\?.*)?$/i, '_220x220$1$2') : ''; const price = this.formatPrice(product.price, product.price_min, product.price_max); const isSingleVariant = !product.variants || product.variants.length ${imgSized ? `${title}` : `
` }
${title}
${price ? `
${price} ` : ''} View Product `; } renderSuggestedProduct(product) { const imgUrl = product.featured_image?.src || product.featured_image?.url || product.images?.[0] || ''; const imgSized = imgUrl ? imgUrl.replace(/(\.[a-z]+)(\?.*)?$/i, '_300x300$1$2') : ''; const productUrl = this.escapeHtml(product.url || `/products/${product.handle}`); const title = this.escapeHtml(product.title || ''); return `
${imgSized ? `${title}` : `
` }
${title} `; } renderQueryItem(item) { const queryText = item.styled_text || this.escapeHtml(item.text || ''); const queryUrl = this.escapeHtml(item.url || '#'); return `
  • ${queryText} `; } renderRecommendedSection(recommended) { return `