
Share on:
Our products are made of PC plastic and can be purchased with confidence. You can check whether your water bottle is the right size before you buy, this water bottle holder is suitable for most riding water bottles. After you receive the product, if you are missing tool parts, we will be happy to solve any problem for you. WEST BIKING Bike Water Bottle Cage, Durable Ultralight Plastic Water Drink Holder Rack , Lightweight PC Water Bottle Holder for Bicycle, Cycling Bottle Holder Cages for MTB, Road Bike, Mountain BikesFound a lower price? Let us know. Although we can't match every price reported, we'll use your feedback to ensure that our prices remain competitive. Store (Offline) Store name: City: State: Please select province Please select province Price: ($) Date of the price: 01 02 03 04 05 06 07 08 09 10 11 12 / 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 / Please sign in to provide feedback. Submit Feedback P.when("A", "a-modal", "ready").execute(function (A, modal) { var $ = A.$; var instance; var title = $("#modalHeader").val(); A.declarative("pricingFeedback-modal-button", "click", function (event) { if (!instance) { var options = { name: "pricingFeedback-modal-content", dataStrategy: "preload", }; instance = modal.create(event.$target, options); } instance.update({ "header": title, "width": "550" }).lock().show(); }); }); P.when('A', 'ready').execute(function (A) { var $ = A.$; var csrf = $("#aapiCsrfToken").val(); var productPrice = $("#priceValue").val(); var hostname = $("#absoluteUrlPrefix").val(); var customerId = $("#customerId").val(); var isCustomerRecognized = ($("#isCustomerLoggedIn").val() === 'true'); var isCurrentGlOnlineOnly = ($("#isCurrentGlOnlineOnly").val() === 'true'); var asin = $("#asin").val(); var marketplaceId = $("#marketplaceId").val(); var country = $("#countryCode").val(); var offlineStoresList = $("#offlineStoresList").val(); var statesList = $("#statesList").val(); var errorMessages = { errorNoRetailerType: $("#errorNoType").val(), errorBadPrice: $("#errorBadPrice").val(), errorBadPriceShipping: $("#errorBadPriceShipping").val(), errorInvalidUrl: $("#errorInvalidUrl").val(), errorSubmission: $("#errorSubmission").val(), errorEmptyFields: $("#errorEmptyFields").val(), thankFeedback: $("#thankFeedback").val() }; var feedbackFormContent = document.querySelector('#feedbackForm'); var signUpContainer = document.querySelector('#signUpForm'); var feedbackFormFinalStateContainer = document.querySelector('#feedbackFormFinalState'); var states = JSON.parse(statesList); var offlineStores = JSON.parse(offlineStoresList); var offlineStoresEnabled = !isCurrentGlOnlineOnly; var currentDate = getCurrentDay(); var currentMonth = getCurrentMonth(); var currentYear = getCurrentYear(); if (isCustomerRecognized) { feedbackFormContent.style['display'] = 'block'; feedbackFormFinalStateContainer.style['display'] = 'block'; signUpContainer.style['display'] = 'none'; var enableOnlineStoreRadio = document.querySelector('#pricingFeedback_onlineRadio'); var enableOfflineStoreRadio = document.querySelector('#pricingFeedback_offlineRadio'); var onlineStoreInputForm = document.querySelector('#pricingFeedback_onlineInput'); var offlineStoreInputForm = document.querySelector('#pricingFeedback_offlineInput'); var offlineStateSelect = document.querySelector('#offlineState'); var offlineStoreSelect = document.querySelector('#offlineStoreNameList'); var submitButton = document.querySelector('#pricingFeedback_submit'); var onlineUrl = document.querySelector('#onlineUrl'); var onlinePriceRaw = document.querySelector('#onlinePriceRaw'); var onlineShippingRaw = document.querySelector('#onlineShippingRaw'); var onlineDay = document.querySelector('#onlineDay'); var onlineMonth = document.querySelector('#onlineMonth'); var onlineYear = document.querySelector('#onlineYear'); var onlineCalendar = document.querySelector('#onlineCalendar'); var offlineRadioContainer = document.querySelector('#offlineRadioContainer'); var offlineStoreName = document.querySelector('#offlineStoreName'); var offlineCity = document.querySelector('#offlineCity'); var offlineState = document.querySelector('#offlineState'); var offlinePriceRaw = document.querySelector('#offlinePriceRaw'); var offlineDay = document.querySelector('#offlineDay'); var offlineMonth = document.querySelector('#offlineMonth'); var offlineYear = document.querySelector('#offlineYear'); var offlineCalendar = document.querySelector('#offlineCalendar'); var thankYouDiv = document.querySelector('#pricingFeedback_thank'); var errorDiv = document.querySelector('#pricingFeedback_error'); var loadingGifDiv = document.querySelector('#loading'); setCalenderOrderBasedOnCountry(country); setInitialStates( onlineMonth, currentMonth, offlineMonth, onlineDay, currentDate, offlineDay, onlineYear, currentYear, offlineYear, onlineStoreInputForm, offlineStoreInputForm, enableOfflineStoreRadio, enableOnlineStoreRadio, onlineCalendar, offlineCalendar ); createPermalinkContainer(asin, hostname); for (let state of states) { var option = document.createElement('option'); option.setAttribute('value', state['value']); option.innerText = state['name']; offlineStateSelect.appendChild(option); } for (let store of offlineStores) { var option = document.createElement('option'); option.setAttribute('value', store); offlineStoreSelect.appendChild(option); } $("#pricingFeedback_onlineRadio").click(function () { onlineStoreInputForm.style['display'] = 'table'; offlineStoreInputForm.style['display'] = 'none'; }); $("#pricingFeedback_offlineRadio").click(function () { onlineStoreInputForm.style['display'] = 'none'; offlineStoreInputForm.style['display'] = 'table'; }); if (!offlineStoresEnabled) { offlineRadioContainer.style['display'] = 'none'; offlineStoreInputForm.style['display'] = 'none'; } $("#pricingFeedback_submit").click(function () { var feedbackSubmitted = submitFeedback( customerId, marketplaceId, asin, productPrice, onlineStoreInputForm, offlineStoreInputForm, onlineUrl.value, onlinePriceRaw.value, onlineShippingRaw.value, onlineDay.value, onlineMonth.value, offlineStoreName.value, offlineCity.value, offlineState.value, offlinePriceRaw.value, offlineDay.value, offlineMonth.value, thankYouDiv, errorDiv, submitButton, loadingGifDiv, errorMessages ); if (feedbackSubmitted !== null && !feedbackSubmitted) { errorDiv.innerHTML = getErrorDiv(errorMessages.errorSubmission); } }); A.on("a:popover:beforeHide:pricingFeedback-modal-content", function (data) { resetModalToInitialState(currentMonth, currentDate, currentYear); }); } else { feedbackFormContent.style['display'] = 'none'; feedbackFormFinalStateContainer.style['display'] = 'none'; signUpContainer.style['display'] = 'block'; var authPortalLink = getAuthenticationPageURL(asin, hostname); $("#signUpForm").one("click", function () { window.location = encodeURI(authPortalLink); }); } function setCalenderOrderBasedOnCountry(country) { var monthSections = document.getElementsByClassName('monthSection'); var daySections = document.getElementsByClassName('daySection'); var yearSections = document.getElementsByClassName('yearSection'); var firstDelimiters = document.getElementsByClassName('firstDelimiter'); var secondDelimiters = document.getElementsByClassName('secondDelimiter'); if (country === 'US') { for (let i = 0; i < 2; i++) { (monthSections[i]).style['order'] = '-1'; (firstDelimiters[i]).style['order'] = '0'; (daySections[i]).style['order'] = '1'; (secondDelimiters[i]).style['order'] = '2'; (yearSections[i]).style['order'] = '3'; } } else if (country === 'JP') { for (let i = 0; i < 2; i++) { (yearSections[i]).style['order'] = '-1'; (secondDelimiters[i]).style['order'] = '0'; (monthSections[i]).style['order'] = '1'; (firstDelimiters[i]).style['order'] = '2'; (daySections[i]).style['order'] = '3'; } } else { for (let i = 0; i < 2; i++) { (daySections[i]).style['order'] = '-1'; (firstDelimiters[i]).style['order'] = '0'; (monthSections[i]).style['order'] = '1'; (secondDelimiters[i]).style['order'] = '2'; (yearSections[i]).style['order'] = '3'; } } } function createPermalinkContainer(asin, hostname) { var permalinkHref = getPermalink(hostname, asin); var permalinkContainer = document.querySelector('#permalink'); var permalink = document.createElement('a'); permalink.setAttribute('href', permalinkHref); permalink.innerText = permalinkHref; permalinkContainer.append(permalink); } function getPermalink(server, asin) { return server + '/dp/' + asin; } function triggerPricingFeedback( customerId, marketplaceId, asin, price, retailerType, retailerUrl, retailerName, retailerCity, retailerState, retailerPrice, retailerShipping, sampleDate ) { var dataCart = { ourPrice: parseInt(price), retailer: { type: retailerType, name: retailerName, city: retailerCity, state: retailerState, price: parseInt(retailerPrice), shippingCost: parseInt(retailerShipping), url: retailerUrl }, date: sampleDate + "T00:00:00.102Z" }; return new Promise((resolve, reject) => { A.$.ajax($("#aapiEndpoint").val() + "/api/marketplaces/" + marketplaceId + "/products/" + asin + "/feedback/pricing", { type: 'POST', headers: { 'Accept-Language': 'en-US', 'Accept': 'application/vnd.com.amazon.api+json; type="product.feedback.pricing/v1"', 'Content-Type': 'application/vnd.com.amazon.api+json; type="product.feedback.pricing.request/v1"', 'x-api-csrf-token': csrf }, data: JSON.stringify(dataCart), xhrFields: { withCredentials: true }, success: function (responseContent) { $("#pricingFeedback_thankcontent").innerText = "Success! " + responseContent.toString(); resolve(); }, error: function (err) { $("#pricingFeedback_thankcontent").innerText = "Error! " + err.toString(); reject(); } }) }) } function getAuthenticationPageURL(asin, hostname) { return hostname + '/ap/signin?_encoding=UTF8&openid.assoc_handle=usflex&openid.claimed_id=http://specs.openid.net/auth/2.0/identifier_select&openid.identity=http://specs.openid.net/auth/2.0/identifier_select&openid.mode=checkid_setup&openid.ns=http://specs.openid.net/auth/2.0&openid.ns.pape=http://specs.openid.net/extensions/pape/1.0&openid.pape.max_auth_age=0&openid.return_to=https://www.amazon.com/dp//'; } function getCurrentDay() { var date = new Date(); return date.getDate().toString(); } function getCurrentMonth() { var date = new Date(); return (date.getMonth() + 1).toString(); } function getCurrentYear() { var date = new Date(); return date.getFullYear().toString(); } function setInitialStates(onlineMonth, currentMonth, offlineMonth, onlineDay, currentDate, offlineDay, onlineYear, currentYear, offlineYear, onlineStoreInputForm, offlineStoreInputForm, enableOfflineStoreRadio, enableOnlineStoreRadio, onlineCalendar, offlineCalendar) { onlineMonth.defaultValue = currentMonth; offlineMonth.defaultValue = currentMonth; onlineDay.defaultValue = currentDate; offlineDay.defaultValue = currentDate; onlineYear.defaultValue = currentYear; offlineYear.defaultValue = currentYear; var onlineMonthOption = document.querySelector('#onlineMonthOptionDefault'); onlineMonthOption.innerText = currentMonth; var onlineMonthPrompt = document.querySelector('#onlineMonthPrompt'); onlineMonthPrompt.innerText = currentMonth; var offlineMonthOption = document.querySelector('#offlineMonthOptionDefault'); offlineMonthOption.innerText = currentMonth; var offlineMonthPrompt = document.querySelector('#offlineMonthPrompt'); offlineMonthPrompt.innerText = currentMonth; var onlineDateOption = document.querySelector('#onlineDateOptionDefault'); onlineDateOption.innerText = currentDate; var onlineDayPrompt = document.querySelector('#onlineDatePrompt'); onlineDayPrompt.innerText = currentDate; var offlineDateOption = document.querySelector('#offlineDateOptionDefault'); offlineDateOption.innerText = currentDate; var offlineDayPrompt = document.querySelector('#offlineDatePrompt'); offlineDayPrompt.innerText = currentDate; var onlineYearOption = document.querySelector('#onlineYearOptionDefault'); onlineYearOption.setAttribute('href', currentYear); onlineYearOption.innerText = currentYear; var onlineYearPrompt = document.querySelector('#onlineYearPrompt'); onlineYearPrompt.innerText = currentYear; var offlineYearOption = document.querySelector('#offlineYearOptionDefault'); offlineYearOption.setAttribute('href', currentYear); offlineYearOption.innerText = currentYear; var offlineYearPrompt = document.querySelector('#offlineYearPrompt'); offlineYearPrompt.innerText = currentYear; if (onlineMonth.children && offlineMonth.children && onlineDay.children && offlineDay.children) { onlineMonth.children[currentMonth].setAttribute('selected', currentMonth); offlineMonth.children[currentMonth].setAttribute('selected', currentMonth); onlineDay.children[currentDate].setAttribute('selected', currentDate); offlineDay.children[currentDate].setAttribute('selected', currentDate); } onlineStoreInputForm.style['display'] = 'none'; offlineStoreInputForm.style['display'] = 'none'; enableOfflineStoreRadio.checked = false; enableOnlineStoreRadio.checked = false; if (onlineCalendar.style && offlineCalendar.style) { onlineCalendar.style['display'] = 'flex'; offlineCalendar.style['display'] = 'flex'; } } function submitFeedback( customerId, marketplaceId, asin, price, onlineStoreInputForm, offlineStoreInputForm, onlineUrl, onlinePriceRaw, onlineShippingRaw, onlineDay, onlineMonth, offlineStoreName, offlineCity, offlineState, offlinePriceRaw, offlineDay, offlineMonth, thankYouDiv, errorDiv, submitButton, loadingGifDiv, errorMessages ) { errorDiv.innerHTML = ''; let cleanRetailerType, cleanRetailerUrl, cleanRetailerName, cleanRetailerCity, cleanRetailerState, cleanRetailerPrice, cleanRetailerShipping, cleanSampleDate; var currentYear = getCurrentYear(); if (onlineStoreInputForm.style['display'] === 'table') { var onlineValidity = validateOnlineInputs(onlineUrl, onlinePriceRaw, onlineShippingRaw, errorMessages); if (onlineValidity.valid) { cleanRetailerType = 'ONLINE'; cleanRetailerUrl = truncate(trim(onlineUrl), 300); cleanRetailerPrice = trim(onlinePriceRaw); cleanRetailerShipping = trim(onlineShippingRaw); if (!cleanRetailerShipping) { cleanRetailerShipping = '0'; } cleanSampleDate = formatDate( currentYear, onlineDay ? onlineDay : getCurrentDay(), onlineMonth ? onlineMonth : getCurrentMonth() ); } else { if (onlineValidity.error) { errorDiv.innerHTML = getErrorDiv(onlineValidity.error); } return null; } } else if (offlineStoreInputForm.style['display'] === 'table') { var offlineValidity = validateOfflineInputs( offlineStoreName, offlineCity, offlineState, offlinePriceRaw, errorMessages ); if (offlineValidity.valid) { cleanRetailerType = 'OFFLINE'; cleanRetailerName = truncate(trim(offlineStoreName), 100); cleanRetailerCity = truncate(trim(offlineCity), 100); cleanRetailerState = truncate(trim(offlineState), 100); cleanRetailerPrice = trim(offlinePriceRaw); cleanRetailerShipping = '0'; cleanSampleDate = formatDate( currentYear, offlineDay ? offlineDay : getCurrentDay(), offlineMonth ? offlineMonth : getCurrentMonth() ); } else { if (offlineValidity.error) { errorDiv.innerHTML = getErrorDiv(offlineValidity.error); } return null; } } else { errorDiv.innerHTML = getErrorDiv(errorMessages.errorNoRetailerType); return null; } loadingGifDiv.innerHTML = getLoadingGifDiv(); if (price) price = parseFloat(price); return triggerPricingFeedback( customerId, marketplaceId, asin, price, cleanRetailerType, cleanRetailerUrl, cleanRetailerName, cleanRetailerCity, cleanRetailerState, parseFloat(cleanRetailerPrice), parseFloat(cleanRetailerShipping), cleanSampleDate ) .then(response => { errorDiv.innerHTML = ''; thankYouDiv.innerHTML = getThankYouDiv(errorMessages.thankFeedback); submitButton.style.display = 'none'; return response; }) .catch(err => { errorDiv.innerHTML = getErrorDiv(errorMessages.errorSubmission); return null; }); } function validateOnlineInputs(url, onlinePrice, onlineShipping, errorMessages) { if (isEmptyValue(url) || isEmptyValue(onlinePrice)) { return { valid: false, error: errorMessages.errorEmptyFields }; } else if (!isValidUrl(url)) { return { valid: false, error: errorMessages.errorInvalidUrl }; } else if (!isNumericPrice(onlinePrice) || (!isEmptyValue(onlineShipping) && !isNumericPrice(onlineShipping))) { return { valid: false, error: errorMessages.errorBadPriceShipping }; } return { valid: true, error: null }; } function validateOfflineInputs(offlineStoreName, offlineCity, offlineState, offlinePrice, errorMessages) { if ( isEmptyValue(offlineStoreName) || isEmptyValue(offlineCity) || isEmptyValue(offlineState) || isEmptyValue(offlinePrice) ) { return { valid: false, error: errorMessages.errorEmptyFields }; } else if (!isNumericPrice(offlinePrice)) { return { valid: false, error: errorMessages.errorBadPrice }; } return { valid: true, error: null }; } function getErrorDiv(errorMsg) { return ( '\n' + ' ' + errorMsg + '\n' + ' ' ); } function getThankYouDiv(thankMsg) { return ( '' + '' + thankMsg + '\n' + '' ); } function getLoadingGifDiv() { return ''; } function isValidUrl(url) { if (!url) { return false; } var encodedUrl = encodeURI(url); return encodedUrl.match( /^(https?:\/\/)?(([a-z0-9-]|%[A-F0-9]{2})+\.)+(([a-z]|%[A-F0-9]{2})([a-z0-9]|%[A-F0-9]{2})*)(:[0-9]+)?(\/[a-z0-9;:,~!+#@&=%\/$\.?_-]+)?$/ ); } function isNumericPrice(price) { if (!price) { return false; } return price.match(/^([0-9]+\.?[0-9]*)$|^([0-9]*\.[0-9]+)$/); } function isEmptyValue(input) { return !input || input.length === 0 || input.match(/^\s*$/); } function truncate(input, length) { if (!input) { return ''; } else { return input.substr(0, length); } } function formatDate(year, date, month) { return year + '-' + month + '-' + date; } function trim(input) { if (!input) { return ''; } else { return input.trim(); } } function resetModalToInitialState(currentMonth, currentDate, currentYear) { var enableOnlineStoreRadio = document.querySelector('#pricingFeedback_onlineRadio'); var enableOfflineStoreRadio = document.querySelector('#pricingFeedback_offlineRadio'); var onlineStoreInputForm = document.querySelector('#pricingFeedback_onlineInput'); var offlineStoreInputForm = document.querySelector('#pricingFeedback_offlineInput'); var onlineUrl = document.querySelector('#onlineUrl'); var onlinePriceRaw = document.querySelector('#onlinePriceRaw'); var onlineShippingRaw = document.querySelector('#onlineShippingRaw'); var onlineDay = document.querySelector('#onlineDay'); var onlineMonth = document.querySelector('#onlineMonth'); var onlineYear = document.querySelector('#onlineYear'); var onlineCalendar = document.querySelector('#onlineCalendar'); var offlineStoreName = document.querySelector('#offlineStoreName'); var offlineCity = document.querySelector('#offlineCity'); var offlineState = document.querySelector('#offlineState'); var offlinePriceRaw = document.querySelector('#offlinePriceRaw'); var offlineDay = document.querySelector('#offlineDay'); var offlineMonth = document.querySelector('#offlineMonth'); var offlineYear = document.querySelector('#offlineYear'); var offlineCalendar = document.querySelector('#offlineCalendar'); var thankYouDiv = document.querySelector('#pricingFeedback_thank'); var errorDiv = document.querySelector('#pricingFeedback_error'); var submitButton = document.querySelector('#pricingFeedback_submit'); var loadingGifDiv = document.querySelector('#loading'); var stateDefaultOption = document.querySelector('#stateDefaultOption'); var stateDefaultPrompt = document.querySelector('#stateDefaultPrompt'); if (thankYouDiv) { thankYouDiv.innerHTML = ''; } if (errorDiv) { errorDiv.innerHTML = ''; } if (loadingGifDiv) { loadingGifDiv.innerHTML = ''; } if (submitButton) { submitButton.style.display = 'block'; } onlineUrl.value = ''; onlinePriceRaw.value = ''; onlineShippingRaw.value = ''; offlineStoreName.value = ''; offlineCity.value = ''; offlineState.value = ''; offlinePriceRaw.value = ''; stateDefaultOption.innerHTML = $("#selectProvince").val(); stateDefaultPrompt.innerHTML = $("#selectProvince").val(); setInitialStates( onlineMonth, currentMonth, offlineMonth, onlineDay, currentDate, offlineDay, onlineYear, currentYear, offlineYear, onlineStoreInputForm, offlineStoreInputForm, enableOfflineStoreRadio, enableOnlineStoreRadio, onlineCalendar, offlineCalendar ); } }); .postpurchase-included-components-list-item { text-align: left; word-wrap: break-word; } .postpurchase-included-components-list-group { margin: 0 0 1px 18px; } .ask-product-docs-expander-content { padding-left: 0; margin-top: 0; } {} P.when('cf').execute(function() { ue.count('dp:widget:dpxSize:dpxBTFSize', 172);}); if(window.mix_csa){window.mix_csa('[cel_widget_id="highly-rated-brands-creative-desktop_DPSims_1"]', '#CardInstanceEYMgQRVlM3rXcdu9hvUcKg')('mark', 'bb')} if(window.uet){window.uet('bb','highly-rated-brands-creative-desktop_DPSims_1',{wb: 1})} ._aGlna_ad-feedback-primary-link_2bIZi{height:30px;margin-bottom:7px;margin-top:4px;min-width:75px}._aGlna_ad-feedback-text_2HjQ9{color:#555;font-family:Amazon Ember Regular,Amazon Ember,Arial;font-size:11px}._aGlna_ad-feedback-sprite_28uwB{background-color:transparent;background-image:url(https://m.media-amazon.com/images/G/01/ad-feedback/info_icon_1Xsprite.png);background-position:0 0;width:14px}._aGlna_ad-feedback-sprite-mobile_2_rj8,._aGlna_ad-feedback-sprite_28uwB{background-repeat:no-repeat;color:#969696;display:inline-block;height:12px;margin:1px 0 1px 3px;vertical-align:text-top}._aGlna_ad-feedback-sprite-mobile_2_rj8{background-image:url(https://m.media-amazon.com/images/G/01/ad-feedback/default_info_icon_3x.png);background-size:contain;width:12px}._aGlna_ad-feedback-text-desktop_q3xp_{color:#555;cursor:pointer;display:inline-block;font-family:Amazon Ember Regular,Amazon Ember,Arial;font-size:11px;right:0;top:2px}._aGlna_ad-feedback-loading-spinnner_1nmZw{margin-left:45%;margin-top:250px} ._aGlna_mbc_2fOVu{width:100%}._aGlna_enhancedMBC_O0-7x{padding:0 50px;position:relative}._aGlna_enhancedMBC_O0-7x ._aGlna_container_25a4D{max-width:calc(50% - 16px);min-width:calc(50% - 16px)}._aGlna_butNext_3JodJ,._aGlna_butPrev_38adY{position:absolute;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}._aGlna_butNext_3JodJ button,._aGlna_butPrev_38adY button{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;justify-content:center}._aGlna_butPrev_38adY{left:0}._aGlna_butPrev_38adY button{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}._aGlna_butNext_3JodJ{right:0}._aGlna_carousel_tUXj4{overflow:hidden;padding-right:2px}._aGlna_carousel_tUXj4,._aGlna_track_1b0Xr{display:-webkit-box;display:-ms-flexbox;display:flex;width:100%}._aGlna_track_1b0Xr{position:relative;-webkit-transition:-webkit-transform .3s;transition:-webkit-transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s}._aGlna_noCarousel_2Tqca{display:-webkit-box;display:-ms-flexbox;display:flex;overflow:hidden;padding-right:2px;width:100%}._aGlna_container_25a4D{border:1px solid #ccc;box-sizing:content-box;height:215px;max-width:489px;min-width:324px;width:100%}._aGlna_container_25a4D:not(:first-child){margin-left:24px}[dir=rtl] ._aGlna_container_25a4D:not(:first-child){margin-left:0;margin-right:24px}[dir=rtl] ._aGlna_carousel_tUXj4{padding-left:2px;padding-right:0}[dir=rtl] ._aGlna_butPrev_38adY{left:auto;right:0}[dir=rtl] ._aGlna_butNext_3JodJ{left:0;right:auto}._aGlna_adFeedbackWrapper_1yZaU{width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}@media (max-width:1249px){._aGlna_track_1b0Xr[data-enhanced-mbc=false] ._aGlna_container_25a4D[data-index="2"]{display:none}}@media (min-width:1350px){._aGlna_enhancedMBC_O0-7x ._aGlna_container_25a4D{max-width:calc(33.33% - 16px);min-width:calc(33.33% - 16px)}} ._aGlna_contentContainer_1e02J{display:-webkit-box;display:-ms-flexbox;display:flex;height:215px;width:100%}._aGlna_logoContainer_1FUJp{height:100%;position:relative;width:40%}._aGlna_imageContainer_1mLWy{-webkit-box-orient:vertical;-webkit-box-direction:normal;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;height:100%;position:relative;width:60%}._aGlna_imageLink_37Bzy{-webkit-box-flex:0;-ms-flex-positive:0;aspect-ratio:458/239;flex-grow:0;overflow:hidden}._aGlna_imageLink_37Bzy img{max-height:none;-o-object-fit:cover;object-fit:cover}._aGlna_brandLogoContainer_11jS0{height:80px;padding:20px 10px 0}._aGlna_brandLogoContainer_11jS0,._aGlna_followButtonContainer_2hoob{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;justify-content:center;width:100%}._aGlna_followButtonContainer_2hoob{height:46px;padding:18px 10px 0;pointer-events:all}._aGlna_averageProductRating_1c0Mv{display:block;font-size:14px;line-height:17px}._aGlna_t1Container_fcMDE{-webkit-box-align:end!important;-ms-flex-align:end!important;align-items:flex-end!important;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}._aGlna_ctaContainer_1uo7O{-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;height:89px;justify-content:center;padding:18px 10px 10px;text-align:center;width:100%}._aGlna_chevron_bZu-z{border-bottom:1px solid #768485;box-sizing:content-box;height:0;margin:auto;opacity:.4;position:relative;width:90px}._aGlna_chevron_bZu-z:after{background-color:#768485;border-radius:11px;content:"";height:11px;left:50%;position:absolute;top:0;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);width:11px}._aGlna_ratingLink_1yB0I{-webkit-box-flex:1;-ms-flex-positive:1;-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;flex-grow:1;justify-content:center;outline:none;padding:5px 14px;pointer-events:all!important;position:relative;z-index:1}._aGlna_ratingLink_1yB0I:hover ._aGlna_t1Container_fcMDE>span{color:#c7511f!important}._aGlna_reviewStars_2X1Za{font-size:15px!important;line-height:22px;padding-right:7px}[dir=rtl] ._aGlna_reviewStars_2X1Za{padding-left:7px;padding-right:inherit}._aGlna_ratingsCount_1dRTE{opacity:.8} ._aGlna_content_3Lyvz{height:100%;width:auto}._aGlna_content_3Lyvz a{position:relative!important;top:0!important}._aGlna_sponsored_27Faw{color:#555;display:inline-block;font:11px Amazon Ember Regular,Amazon Ember,Arial!important}._aGlna_sponsored_27Faw._aGlna_simulate_aoBIv:hover{color:#111;cursor:pointer;text-decoration:none}._aGlna_icon_3l1pD{background:url(https://m.media-amazon.com/images/G/01/ad-feedback/info_icon_1Xsprite.png) 0 0 no-repeat scroll transparent;display:inline-block;height:12px;margin:1px 0;vertical-align:top;width:14px}._aGlna_simulate_aoBIv:hover ._aGlna_icon_3l1pD{background-position:0 -12px} ._aGlna_image_1pfbQ{max-height:100%;max-width:100%}._aGlna_center_2savA{left:50%;position:absolute;top:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%)} ._aGlna_tint_M0L-m{background:rgba(0,0,0,.03);height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:6} ._aGlna_link_gJc5l{color:inherit;pointer-events:auto;position:relative;text-decoration:none!important;z-index:5}._aGlna_fullSize_1_hF0{display:block;height:100%;width:100%}._aGlna_hidden_L-XDK,._aGlna_hidden_L-XDK:focus{outline:none!important} ._aGlna_link_36_Co{height:100%;left:0;position:absolute;top:0;width:100%;z-index:0}._aGlna_noPointerEvents_2MRWt{pointer-events:none}._aGlna_hidden_6g_6K,._aGlna_hidden_6g_6K:focus{outline:none!important} ._aGlna_hidden_1N3Jg,[data-id*=cta-hidden]{display:none} ._aGlna_block_1vI8-{display:-webkit-box;display:-ms-flexbox;display:flex}._aGlna_inline_9N1iS{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex}._aGlna_hFull_2lnNw{height:100%}._aGlna_wFull_3f8b2{width:100%}._aGlna_wrap_17Nni{-ms-flex-wrap:wrap;flex-wrap:wrap}._aGlna_col_358pf{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}._aGlna_row_3CEm0{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}._aGlna_itemsStart_78ErH{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}._aGlna_itemsCenter_3flfN{-webkit-box-align:center;-ms-flex-align:center;align-items:center}._aGlna_itemsBaseline_3lQs7{-webkit-box-align:baseline;-ms-flex-align:baseline;align-items:baseline}._aGlna_itemsSpaceBetween_2d8Yn{-webkit-box-align:space-between;-ms-flex-align:space-between;align-items:space-between}._aGlna_itemsEnd_baqbf{-webkit-box-align:end;-ms-flex-align:end;align-items:flex-end}._aGlna_contentStart_mMBF5{-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}._aGlna_contentCenter_3BjNx{-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}._aGlna_contentBaseline_3KLkK{-webkit-box-pack:baseline;-ms-flex-pack:baseline;justify-content:baseline}._aGlna_contentSpaceBetween_2tuNA{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}._aGlna_contentEnd_3qmfH{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end} ._aGlna_content_2rsXy{pointer-events:none;position:relative;z-index:0}._aGlna_adLabelContainer_2DLr0{-webkit-box-pack:end;-ms-flex-pack:end;display:-webkit-box;display:-ms-flexbox;display:flex;height:20px;justify-content:flex-end;position:relative}._aGlna_adLabel_oyFBC{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;position:absolute;right:5px;text-align:right}[dir=rtl] ._aGlna_adLabel_oyFBC{left:5px;right:auto;text-align:left} ._aGlna_container_GMk6b{height:100%;position:relative}._aGlna_dpNoOverflow_24rve{overflow:hidden}._aGlna_cardBorderDesktop_3QeYH{border:1px solid #f5f5f5;border-radius:4px;margin-bottom:8px;padding:12px 10px 10px 12px}._aGlna_cardBorderMobile_36JeN{border:1px solid #f5f5f5;border-radius:4px;margin-bottom:8px;margin-left:8px;margin-right:8px;padding:4px}._aGlna_tabletApp_UW_Vu{padding-left:8px} #a-page ._aGlna_adLabel_1D6-W{font-size:11px!important} ._aGlna_overrideHover_1DwB9._aGlna_white_1j3GP:hover,._aGlna_white_1j3GP{color:#fff!important} ._aGlna_truncate_11Epi{display:block!important}[dir=rtl] ._aGlna_truncate_11Epi svg{-webkit-transform:scaleX(-1);-ms-transform:scaleX(-1);transform:scaleX(-1)} ._aGlna_avatar_1kl8T{border-radius:50%;overflow:hidden}.sbx-mobile ._aGlna_avatar_1kl8T{height:40px;width:40px}.sbx-desktop ._aGlna_avatar_1kl8T{height:60px;width:60px} ._aGlna_container_1DI1V{position:relative}._aGlna_tint_2otO7{background:#879596;height:100%;left:0;opacity:.07;pointer-events:none;position:absolute;top:0;width:100%;z-index:6} ._aGlna_pixel_W0EBh{position:absolute;visibility:hidden} ._aGlna_debug_1Yzz4{display:none} ._aGlna_pSmall_3aIxm{padding-left:8px;padding-right:8px} Highly rated brandsSponsored (function (w, id) {if (w && id && Date) {w.sbxGwentClient = w.sbxGwentClient || {}; w.sbxGwentClient[id] = Date.now(); } })(window, 'I9vDHnmuLwCedJsgbfjPLA');Shop the Delta Cycle Corp StoreAverage product rating:4.1 stars30,909 ratings(function (w, id) {if (w && id && Date) {w.sbxGwentClient = w.sbxGwentClient || {}; w.sbxGwentClient[id] = Date.now(); } })(window, 't.rkZbCqlSmq5JeaUHeX2w');Shop the N+1 StoreAverage product rating:4.2 stars922 ratings(function (w, id) {if (w && id && Date) {w.sbxGwentClient = w.sbxGwentClient || {}; w.sbxGwentClient[id] = Date.now(); } })(window, '4wMTlo2HZA.Jn4na.Nj3NQ');Shop the PRO BIKE TOOL StoreAverage product rating:4.4 stars110,771 ratingsif(window.mix_csa){window.mix_csa('[cel_widget_id="highly-rated-brands-creative-desktop_DPSims_1"]', '#CardInstanceEYMgQRVlM3rXcdu9hvUcKg')('mark', 'be')} if(window.uet){window.uet('be','highly-rated-brands-creative-desktop_DPSims_1',{wb: 1})} if(window.mixTimeout){window.mixTimeout('highly-rated-brands-creative-desktop', 'CardInstanceEYMgQRVlM3rXcdu9hvUcKg', 90000)}; P.when('mix:@amzn/mix.client-runtime', 'mix:highly-rated-brands-creative-desktop__-TyY7_ut').execute(function (runtime, cardModule) {runtime.registerCardFactory('CardInstanceEYMgQRVlM3rXcdu9hvUcKg', cardModule).then(function(){if(window.mix_csa){window.mix_csa('[cel_widget_id="highly-rated-brands-creative-desktop_DPSims_1"]', '#CardInstanceEYMgQRVlM3rXcdu9hvUcKg')('mark', 'functional')}if(window.uex){window.uex('ld','highly-rated-brands-creative-desktop_DPSims_1',{wb: 1})}});}); P.load.js('https://images-na.ssl-images-amazon.com/images/I/41fCDMlivzL.js?xcp'); (window.AmazonUIPageJS ? AmazonUIPageJS : P).load.js('https://images-na.ssl-images-amazon.com/images/I/31WkIngSZbL._RC|61ibSbmm7mL.js_.js?AUIClients/AskAuiAssets&M9f0k3jL#536927-T3.536938-T1'); (function(f) {var _np=(window.P._namespace("AskAuiAssets"));if(_np.guardFatal){_np.guardFatal(f)(_np);}else{f(_np);}}(function(P) { if (typeof P !== 'undefined') { P.when('askBrowseWidgetContentAjax').execute(function(askBrowseWidgetContentAjax) { askBrowseWidgetContentAjax.startLazyLoading(); }); } })); Looking for specific info? See questions and answers (window.AmazonUIPageJS ? AmazonUIPageJS : P).load.js('https://images-na.ssl-images-amazon.com/images/I/41PgtBPkB8L._RC|01HLxsL-v8L.js,11KGVmb0nxL.js,41uK3DtcmfL.js,31QxfHPL6DL.js,01qxGoNdvEL.js_.js?AUIClients/DesktopMedleyFilteringMetaAsset&puKwYNyZ#386124-T1'); Customer reviews4.3 out of 5 stars4.3 out of 5 690 global ratings 5 star 65% 4 star 16% 3 star 10% 2 star 3% 1 star 6% How customer reviews and ratings work Customer Reviews, including Product Star Ratings help customers to learn more about the product and decide whether it is the right product for them. To calculate the overall star rating and percentage breakdown by star, we don’t use a simple average. Instead, our system considers things like how recent a review is and if the reviewer bought the item on Amazon. It also analyzed reviews to verify trustworthiness.







