Skip to content
Essentials
See More
Cleaners, Degreasers and Lubrication
Close
Accessories
Home
Maintenance
Hire
Bikes
Sell Your Bike
See More
Contact Us
New BikesFinance
See More
Shop All New Bikes
Road / Gravel / Touring Bikes
Log in
Hybrid / City Bikes
Mountain BikesCreate account
Electric Bikes
Kids BikesSearchArundel Looney Bin Bottle Cage – ProjektRide
New Bikes
See More
Shop All New Bikes
Road / Gravel / Touring Bikes
Gloria
Trek
Amflow
Velduro
Yeti
Ridgeback
BrotherCameroon (XAFCFA)
Genesis
Cape Verde (CVE$)
Services
Singular
See More
Central African Republic (XAFCFA)
Enigma
WorkshopFrogChad (XAFCFA)
See More
Kona
Comoros (KMFFr)
Workshop PricesSurly
Congo - Brazzaville (XAFCFA)
Book a ServiceUTO (ex Eovolt)
Track Your ServiceEarly RiderCongo - Kinshasa (CDFFr)
Argon 18
Other Côte d’Ivoire (XOFFr)
Custom Build - Brothers Cycles Kepler Touring / Gravel – ProjektRide
See More
Egypt (EGPج.م)
Equatorial Guinea (XAFCFA)
See More
Front Suspension
Rear Suspension
Finishing Kit
See More
Workshop Prices
Lithuania (EUR€)
Add order notes
Special instructions for seller
Your cart is currently empty.
.cart-collection__title { --text: #ffffff; }
Somalia (GBP£)
South Africa (GBP£)
Items
Free
South Sudan (GBP£)
Spain (EUR€)
Checkout
Free
St. Helena (SHP£)
Sudan (GBP£)
 
 
Svalbard & Jan Mayen (GBP£)
Sweden (SEKkr)
Shipping & taxes calculated at checkout
Switzerland (CHFCHF)
Tanzania (TZSSh)
:root { --header-height: 60px; --header-sticky-height: 60px; --header-background-height: 60px; } :root { --full-height: calc(100vh - var(--header-sticky-height)); } .main-content > .shopify-section.supports-transparent-header:first-child [data-prevent-transparent-header] { --full-height: var(--content-full); } .site-header--has-border { --border-color: currentcolor; --border-opacity: 0.0; }
Togo (XOFFr)
Open navigation menuTristan da Cunha (GBP£)
.logo__image-link { width: 100px; height: 28px; } .has-scrolled .logo__image-link { width: 100px; height: 28px; }
Tunisia (GBP£)
Open search barTürkiye (GBP£)
Uganda (UGXUSh)
Search for products on our site
Ukraine (UAH₴)
United Kingdom (GBP£)
United States (GBP£)
Vatican City (EUR€)
Suggested search terms
Western Sahara (MADد.م.)
About Us
Bikes
Zambia (GBP£)
Contact Us
New Bikes
Sorry, looks like we don't have enough of this product.
Shop All New BikesBlogZimbabwe (USD$)
Road / Gravel / Touring BikesTrack Service Progress
Hybrid / City BikesBuilding Your Bike From the Box
Mountain BikesInsure Your Bike Add order notes
Electric BikesPrivacy PolicyShop All
Special instructions for seller
Kids BikesCookie Policy
Electric Bikes
Kids Bikes
Frames
Shop by Brand
Gloria
Trek
Amflow
Velduro
Yeti
Ridgeback
Brother
Genesis
Singular
Enigma
Frog
Kona
Surly
UTO (ex Eovolt)
Early Rider
Argon 18
Second-Hand Bikes
Shop All Second-Hand
Custom Builds
Custom Builds for sale
Custom Build Inspiration
Services
Workshop
Contact Us
Finance
Open search bar
Search for products on our site
My Account
Tubeless
Tools & Maintenance
Clothing and Protection
ProjektRide MerchandiseOpen cart
Helmets
Open search bar
#Accordions--template--26482384994687__section_accordions_with_images_kprcYa { --PT: 60px; --PB: 60px; --border-opacity: 0; --border-width: 1px; --MB: 10px; --padding-left: 0; --bg-padded-line: var(--bg); } #Accordions--template--26482384994687__section_accordions_with_images_kprcYa .section__heading { --heading-size: calc(var(--adjust-heading) * 1.2); } #AccordionShop by Brand
Privacy Policy
Cookie Policy
Home
Terms of Service
Hire
Refund policy
Bikes
See More
My Account
New Bikes
See More
Shop All New Bikes
Road / Gravel / Touring Bikes
Hybrid / City Bikes
Mountain Bikes
Electric Bikes
Kids Bikes
Frames
Shop by Brand
See More
Gloria
Trek
Amflow
Velduro
Yeti
Ridgeback
Brother
Genesis
Singular
Enigma
Frog
Kona
Sun: Closed
0131 374 5324
Newington Road
Edinburgh
EH9 1QN
[email protected]
await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.shop-follow-button.en.esm.js");
Country
GBP£
Bulgaria (EUR€)
Burkina Faso (XOFFr)
Burundi (BIFFr)
Cameroon (XAFCFA)
Cape Verde (CVE$)
Central African Republic (XAFCFA)
Chad (XAFCFA)
Comoros (KMFFr)
Congo - Brazzaville (XAFCFA)
Congo - Kinshasa (CDFFr)
Côte d’Ivoire (XOFFr)
Croatia (EUR€)
Cyprus (EUR€)
Tubeless
Saddles
Seat Posts & Clamps
Pedals
Gears & Drivetrain
See More
Components
E-bike Batteries and chargers
Wheels
See More
Complete Wheels
Tubeless
Tools & Maintenance
Clothing and Protection
See More
ProjektRide Merchandise
Helmets
Gloves
Clothing
Socks
Essentials
See More
Cleaners, Degreasers and Lubrication
Accessories
Maintenance
Guinea-Bissau (XOFFr)
Finishing Kit
Algeria (DZDد.ج)
See More Sell Your Bike
Hungary (HUFFt)
Andorra (EUR€) Contact Us
Tyres
Iceland (ISKkr)
Finance
Angola (GBP£) Tubes
Ireland (EUR€)
Tubeless
Armenia (AMDդր.)
SaddlesIsle of Man (GBP£)
Ascension Island (SHP£)
Seat Posts & Clamps
Italy (EUR€) Log in
Austria (EUR€) Pedals
Jersey (GBP£) Create account
Belarus (GBP£)
Kenya (KESKSh)
Gears & Drivetrain
Belgium (EUR€) Search
See More
Kosovo (EUR€)
Benin (XOFFr)
Components
Latvia (EUR€) Country
Bosnia & Herzegovina (BAMКМ) E-bike Batteries and chargers
GBP£
Lesotho (GBP£)
Botswana (BWPP)
Åland Islands (EUR€)
Liberia (GBP£)
Wheels
British Indian Ocean Territory (USD$)
See More Albania (ALLL)
Libya (GBP£)
Bulgaria (EUR€)
Complete Wheels Algeria (DZDد.ج)
Liechtenstein (CHFCHF)
Burkina Faso (XOFFr)
Andorra (EUR€)
Lithuania (EUR€)
Burundi (BIFFr) Tubeless
Angola (GBP£)
Luxembourg (EUR€)
Cameroon (XAFCFA)
Armenia (AMDդր.)
Tools & MaintenanceMadagascar (GBP£)
Cape Verde (CVE$)
Ascension Island (SHP£)
Malawi (MWKMK)
Central African Republic (XAFCFA) Clothing and Protection
Austria (EUR€)
See MoreMali (XOFFr)
Chad (XAFCFA)
Belarus (GBP£)
ProjektRide MerchandiseMalta (EUR€)
Comoros (KMFFr)
Helmets Belgium (EUR€)
Mauritania (GBP£)
Congo - Brazzaville (XAFCFA) Gloves
Benin (XOFFr)
Mauritius (MUR₨)
Clothing
Congo - Kinshasa (CDFFr)
Bosnia & Herzegovina (BAMКМ)
SocksMayotte (EUR€)
Côte d’Ivoire (XOFFr)
Botswana (BWPP)
Moldova (MDLL)
Croatia (EUR€)
Essentials British Indian Ocean Territory (USD$)
Monaco (EUR€)
See More
Cyprus (EUR€)
Bulgaria (EUR€)
Montenegro (EUR€)
Cleaners, Degreasers and Lubrication
Czechia (CZKKč)
Burkina Faso (XOFFr)
Accessories Morocco (MADد.م.)
Denmark (DKKkr.)
MaintenanceBurundi (BIFFr)
Mozambique (GBP£)
Djibouti (DJFFdj)
Cameroon (XAFCFA)
Namibia (GBP£)
Sell Your Bike
Egypt (EGPج.م)
Cape Verde (CVE$)
Contact Us Netherlands (EUR€)
Equatorial Guinea (XAFCFA)
FinanceCentral African Republic (XAFCFA)
Niger (XOFFr)
Eritrea (GBP£)
Chad (XAFCFA)
Nigeria (NGN₦)
Estonia (EUR€)
Comoros (KMFFr)
North Macedonia (MKDден)
Eswatini (GBP£) Log in
Congo - Brazzaville (XAFCFA)
Norway (GBP£)
Ethiopia (ETBBr) Create account
Congo - Kinshasa (CDFFr)
Poland (PLNzł)
Faroe Islands (DKKkr.)
Côte d’Ivoire (XOFFr)
Search
Croatia (EUR€)
Country
Cyprus (EUR€)
GBP£
Czechia (CZKKč)
Åland Islands (EUR€)
Denmark (DKKkr.)
Albania (ALLL)
Djibouti (DJFFdj)
Algeria (DZDد.ج)
Egypt (EGPج.م)
Andorra (EUR€)
Equatorial Guinea (XAFCFA)
Angola (GBP£)
Eritrea (GBP£)
Armenia (AMDդր.)
Estonia (EUR€)
Ascension Island (SHP£)
Eswatini (GBP£)
Austria (EUR€)
Ethiopia (ETBBr)
Belarus (GBP£)
Faroe Islands (DKKkr.)
Belgium (EUR€)
Finland (EUR€)
Benin (XOFFr)
France (EUR€)
Eritrea (GBP£)
© 2026,
ProjektRide
.Estonia (EUR€)
Powered by
Shopify
.Eswatini (GBP£)
American ExpressEthiopia (ETBBr)
Apple Pay
Faroe Islands (DKKkr.)
Diners Club
Finland (EUR€) Discover
Google Pay
France (EUR€)
Klarna
Maestro
French Southern Territories (EUR€)
Mastercard
Gabon (XOFFr) PayPal
Shop Pay
Gambia (GMDD)
Union Pay
Visa
Georgia (GBP£)
Germany (EUR€)
Ghana (GBP£)
Gibraltar (GBP£)
Luxembourg (EUR€)
Madagascar (GBP£)
Sierra Leone (SLLLe) <
Togo (XOFFr) & !Object.prototype.hasOwnProperty.call(settings.translations, window._RestockRocketConfig.normalizedLocale)) { console.debug('STOQ - locale not explicitly translated, will use default language from cache'); } } const updatedAt = new Date(settings.updated_at); if (isNaN(updatedAt.getTime())) { console.debug('STOQ - Invalid updated_at date format in settings'); return null; } const age = Date.now() - updatedAt.getTime(); if (age
SETTINGS_CACHE_DURATION) { console.debug('STOQ - settings changed recently, skipping cache'); return null; } return settings; } catch (error) { console.debug('STOQ - Error checking settings cache:', error); return null; } } function createRestockRocketContainer() { const restockRocketContainer = document.createElement('div'); restockRocketContainer.id = 'restock-rocket'; document.body.appendChild(restockRocketContainer); } function createRestockRocketScript(scriptUrl) { const restockRocketScriptElement = document.createElement('script'); restockRocketScriptElement.setAttribute('defer', 'defer'); restockRocketScriptElement.src = scriptUrl; document.body.appendChild(restockRocketScriptElement); } createRestockRocketContainer() console.debug('STOQ - extension activated') try { const _stoqInitConfig = window._RestockRocketConfig; const _stoqDetectedVariantIds = (_stoqInitConfig.product && Array.isArray(_stoqI Slovakia (EUR€) liquid_cache_age: _stoqInitConfig.liquidCacheAge, inventory_policy: (_stoqInitConfig.variantsInventoryPolicy || {})[_stoqSelectedVariantId] || '', inventory_quantity: (_stoqInitConfig.variantsInventoryQuantity || {})[_stoqSelectedVariantId], }); } catch (e) { console.debug('STOQ - stoq_initialized publish failed:', e); } try { var _sqTrack = window._RestockRocketConfig; if (_sqTrack.preordersConfigured) { document.addEventListener('click', function (e) { try { var t = e.target; if (!t || !t.closest) return; var host = t.closest('.shopify-payment-button, shopify-payment-terms'); if (!host) return; var channel = host.matches && host.matches('shopify-payment-terms') ? 'shop_pay_installments' : 'buy_now'; var form = host.closest('form'); var vidEl = form && form.querySelector('[name="id"]'); var variantId = (vidEl && vidEl.value) || _sqTrack.selected_variant_id || '';
ck.product.id) || '', channel: channel, market_id: _sqTrack.marketId || '', country_code: _sqTrack.countryIsoCode || '', page_type: _sqTrack.pageType || '', cart_token: _sqTrack.cartToken || '', page_url: (window.location && window.location.href) || '', properties: { is_preorder_variant: (function () { var vid = Number(variantId); var has = function (a) { return Array.isArray(a) && a.indexOf(vid) !== -1; }; return has(_sqTrack.preorderVariantIds) || has(_sqTrack.cachedPreorderVariantIds && _sqTrack.cachedPreorderVariantIds.preorder_variant_ids); })(), in_enabled_plan: !!_sqPlan, is_instock_variant: (function () { var has = function (a) { return Array.isArray(a) && a.indexOf(_sqVidNum) !== -1; }; return has(_sqTrack.inStockVariantIds) || hMali (XOFFr)
Tristan da Cunha (GBP£) }); } catch (err) { } }, true); } } catch (e) { } function applyTranslations(settings) { try { if (!settings || !settings.multi_language_enabled) { return settings; } if (!settings.translations) { console.debug('STOQ - No translations found, skipping translation'); return settings; } const normalizedLocale = window._RestockRocketConfig.normalizedLocale; const translations = settings.translations; if (!normalizedLocale) { console.debug('STOQ - No matching locale for translations. Available:', Object.keys(translations || {})); delete settings.translations; return settings; } console.debug(`STOQ - Applying translations for normalized locale: ${normalizedLocale} (original: ${window._RestockRocketConfig.locale})`); const translatedFields = translations[normalizedLocale]; if (translatedFields && typeof translatedFields === 'object') { Object.keys(translatedFields)
g('STOQ - no cart selling plan updates needed'); } }) .catch(error => { console.error('STOQ - error updating cart selling plans:', error); }); } }); } function storefrontGraphql(query, variables) { const cfg = window._RestockRocketConfig; if (!cfg.storefrontAccessToken || cfg.disableStorefrontApi === true) { return Promise.reject(new Error('Storefront API unavailable')); } return fetch( `https://${cfg.shop}/api/${cfg.storefrontApiVersion}/graphql.json`, { method: 'POST', headers: { 'Content-Type': 'application/json', 'X-Shopify-Storefront-Access-Token': cfg.storefrontAccessToken, }, body: JSON.stringify({ query: query, variables: variables }), } ) .then(function(response) { if (!response.ok) { throw new Error('Storefront API HTTP ' + response.status); } return response.json(); }) .then(function(body) { if (body && body
Slovenia (EUR€) return JSON.parse(value); }); } (function loadStorefrontSettings() { const cfg = window._RestockRocketConfig; if (!cfg.storefrontAccessToken || cfg.disableStorefrontApi === true) return; function run() { // The live-settings read is one more shop-level metafield fetch, so it // shares fetchStorefrontShopMetafield with the integrations/selling_plans // reads rather than re-issuing the same query + parse. fetchStorefrontShopMetafield('settings') .then(function(settings) { cfg.storefrontSettings = settings; console.debug('STOQ - stored live settings from Storefront API on config.storefrontSettings'); }) .catch(function(e) { console.debug('STOQ - Storefront settings fetch failed (non-fatal):', e && e.message); }); } if (typeof window.requestIdleCallback === 'function') { window.requestIdleCallback(run, { timeout: 5000 }); } else { setTimeout(run, 0); } })(); const cachedSettings = window._R
Error('Network response was not ok'); } return response.json(); }) .then(function(settings) { initializeScripts(settings); }) .catch(function(error) { if (cachedSettings) { console.debug('STOQ - using expired cached settings as fallback'); initializeScripts(cachedSettings); } else { console.error('STOQ - failed to load settings:', error); } }) .catch(function(e) { console.error(e) }) } function fetchEmbedConfig(endpoint, apply) { return fetch( `${window._RestockRocketConfig.host}/api/v1/embed/${endpoint}.json`, { headers: { 'X-Shopify-Shop-Domain': window._RestockRocketConfig.shop || window.Shopify.shop, 'ngrok-skip-browser-warning': 'skip' } } ) .then(function(response) { if (!response.ok) throw new Error(`Failed to fetch ${endpoint}`); return response.json(); }) .then(function(data) { try { apply(data); } Malta (EUR€)
Tunisia (GBP£) oint + ' read failed, using embed:', error.message); return viaEmbed(); }); } function refreshIntegrations() { const cfg = window._RestockRocketConfig; return refreshShopConfig({ endpoint: 'integrations', metafieldKey: 'integrations', flag: 'enable_storefront_integrations_read', isValid: function(value) { return Array.isArray(value); }, apply: function(data) { cfg.integrations = data; } }); } function refreshSellingPlans(embedOnly) { const cfg = window._RestockRocketConfig; return refreshShopConfig({ embedOnly: embedOnly === true, endpoint: 'selling_plans', metafieldKey: 'cachedSellingPlans', flag: 'enable_storefront_selling_plans_read', isValid: function(value) { return !!value && Array.isArray(value.plans); }, apply: function(data) { cfg.sellingPlans = data.plans; cfg.disabledSellingPlanIds = data.disabled_plan_ids || []; if (data && data.read_flags && typeof data
]).then(function() { loadScripts(settings); }); return; } loadScripts(settings); } function loadScripts(settings) { setupCartSellingPlanUpdater(settings); if(settings.enable_app) { const hijackIntegration = window._RestockRocketConfig.integrations.find(function(integration) { return integration.type === 'hijack' && integration.enabled && integration.page_types.includes(window._RestockRocketConfig.pageType); }) const hasEnabledOffer = Array.isArray(window._RestockRocketConfig.sellingPlans) && window._RestockRocketConfig.sellingPlans.some(function(plan) { return plan && plan.enabled; }); const hasDisabledPlanIds = Array.isArray(window._RestockRocketConfig.disabledSellingPlanIds) && window._RestockRocketConfig.disabledSellingPlanIds.length > 0; const usePreorderBuild = settings.preorder_enabled || hasEnabledOffer || hasDisabledPlanIds; const collectionScriptUrl = usePreorderBuild ? window._RestockRocketConfig
Somalia (GBP£) appLoadedEvent = new CustomEvent('stoq:loaded', { detail: { pageType: window._RestockRocketConfig.pageType, enabled: settings.enable_app, settings: settings, preorderEnabled: settings.preorder_enabled } }); console.debug('STOQ - dispatching app loaded event'); window.dispatchEvent(appLoadedEvent); } }
html.stoq-buy-now-pending .shopify-payment-button{pointer-events:none!important}Mauritania (GBP£)
South Africa (GBP£)
South Sudan (GBP£)
Spain (EUR€)
BUY
SELLSt. Helena (SHP£)
RIDE CONFIDENT
Sudan (GBP£)
Svalbard & Jan Mayen (GBP£)
#productTemplate--template--26482384994687__main { --PT: 60px; --PB: 30px; }
Sweden (SEKkr)
Switzerland (CHFCHF)
Tanzania (TZSSh)
Home
/Togo (XOFFr)
Accessories
/
Arundel Looney Bin Bottle Cage
Arundel Looney Bin Bottle CageTristan da Cunha (GBP£)
Tunisia (GBP£)
Home
/Quantity
Accessories
/ Türkiye (GBP£)
Brooks Brick Lane Panniers1
Brooks Brick Lane Panniers
Uganda (UGXUSh)
1
Ukraine (UAH₴)
Color
2
United Kingdom (GBP£)
Black3 United States (GBP£)
Vatican City (EUR€)
4
Grey Western Sahara (MADد.م.)
5
Zambia (GBP£)
Show more6
Zimbabwe (USD$)
Show less
7
Quantity8
9
10 +
Quantity
Spain (EUR€)
St. Helena (SHP£)
Sudan (GBP£)
Svalbard & Jan Mayen (GBP£)
Sweden (SEKkr)
Close
Switzerland (CHFCHF)
Tanzania (TZSSh)