Skip to content
Workshop#shopify-section-announcement-bar { background: #f14d38; color: #ccbebe; }

See More Shop All New Bikes

This site has limited support for your browser. We recommend switching to Edge, Chrome, Safari, or Firefox.
See More Grips & Bar-TapeBrake Spares
  • Complete WheelsBrake Rotors
    See More Brake Pads Rear SuspensionForks
  • See More
    See MoreFront Suspension
    • Open search bar Rear Suspension
    • GlovesTyres
    • ClothingTubesFinishing Kit
    • SocksTubeless
    • Saddles
    • Seat Posts & Clamps
    Pedals
  • See More
    • Maintenance
    Sell Your Bike
    • Finance Log in
  • Create account Search
  • Tubeless
  • CartTools & Maintenance
    CloseSee More
    • ProjektRide Merchandise
    • Helmets
    • GlovesHome <
    • < Clothing
    Socks
  • See More
    • Cleaners, Degreasers and Lubrication
    • Accessories
    Maintenance
  • Sell Your Bike
  • Contact UsEarly Rider
  • Create account
    Shop All Second-HandSearch
    Custom Builds for saleClose
     

      
    {"id":7639490986210,"title":"Muc-off C3 Ceramic Wet Lube 50ml","handle":"muc-off-c3-ceramic-wet-lube-50ml","description":"\u003cmeta charset=\"utf-8\"\u003e\n\u003cp data-mce-fragment=\"1\"\u003eThe secret to the C3 Ceramic Wet Chain Lube is its unique ceramic coating that provides incredible durability and long distance performance on all bicycle chains. The innovative formulation in our chain oil also uses Boron Nitride and Fluoro Polymers to ensure ultra low friction for ultimate drive chain efficiency, high performance and durability. The waterproof qualities of Muc-Off C3 Ceramic Wet Chain Lube also means that your drive chain will excel in the harshest of riding conditions.\u003c\/p\u003e\n\u003cp data-mce-fragment=\"1\"\u003eLooking for long chain oil service intervals and precision gear changes with super low friction reduction? Look no further. C3 Ceramic Wet Lube is packaged in an ergonomic bottle complete with pipette system for easy use and application. It’s also 95% biodegradable and is ideal for Road, Cyclocross and MTB.\u003c\/p\u003e\n\u003cul\u003e\n\u003cli\u003eIdeal chain lubricant for Road Cycling, Cyclocross \u0026amp; MTB\u003c\/li\u003e\n\u003cli\u003eExcels in wet, muddy conditions\u003c\/li\u003e\n\u003cli\u003eContains Fluoro Polymers \u0026amp; Boron Nitrides for efficiency\u003c\/li\u003e\n\u003cli\u003eCreates Ceramic coating for chain protection\u003c\/li\u003e\n\u003cli\u003eUltra long distance performance\u003c\/li\u003e\n\u003cli\u003eIncredible durability\u003c\/li\u003e\n\u003cli\u003ePippette system for accurate, easy application\u003c\/li\u003e\n\u003cli\u003eIncludes UV torch to check for 100% coverage\u003c\/li\u003e\n\u003c\/ul\u003e","published_at":"2022-03-09T19:44:15+00:00","created_at":"2022-03-09T19:44:14+00:00","vendor":"Muc-Off","type":"","tags":["Cleaners Degreasers and Lubrication","muc-off","spo-cs-disabled","spo-default","spo-disabled","spo-notify-me-disabled"],"price":800,"price_min":800,"price_max":800,"available":false,"price_varies":false,"compare_at_price":1150,"compare_at_price_min":1150,"compare_at_price_max":1150,"compare_at_price_varies":false,"variants":[{"id":42577956503778,"title":"Default Title","option1":"Default Title","option2":null,"option3":null,"sku":"PREA02032022.1882","requires_shipping":true,"taxable":true,"featured_image":null,"available":false,"name":"Muc-off C3 Ceramic Wet Lube 50ml","public_title":null,"options":["Default Title"],"price":800,"weight":0,"compare_at_price":1150,"inventory_management":"shopify","barcode":"5037835869002","requires_selling_plan":false,"selling_plan_allocations":[]}],"images":["\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot2022-03-09at19.39.45.png?v=1646855110"],"featured_image":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot2022-03-09at19.39.45.png?v=1646855110","options":["Title"],"media":[{"alt":null,"id":29418365714658,"position":1,"preview_image":{"aspect_ratio":0.939,"height":890,"width":836,"src":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot2022-03-09at19.39.45.png?v=1646855110"},"aspect_ratio":0.939,"height":890,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot2022-03-09at19.39.45.png?v=1646855110","width":836}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003cmeta charset=\"utf-8\"\u003e\n\u003cp data-mce-fragment=\"1\"\u003eThe secret to the C3 Ceramic Wet Chain Lube is its unique ceramic coating that provides incredible durability and long distance performance on all bicycle chains. The innovative formulation in our chain oil also uses Boron Nitride and Fluoro Polymers to ensure ultra low friction for ultimate drive chain efficiency, high performance and durability. The waterproof qualities of Muc-Off C3 Ceramic Wet Chain Lube also means that your drive chain will excel in the harshest of riding conditions.\u003c\/p\u003e\n\u003cp data-mce-fragment=\"1\"\u003eLooking for long chain oil service intervals and precision gear changes with super low friction reduction? Look no further. C3 Ceramic Wet Lube is packaged in an ergonomic bottle complete with pipette system for easy use and application. It’s also 95% biodegradable and is ideal for Road, Cyclocross and MTB.\u003c\/p\u003e\n\u003cul\u003e\n\u003cli\u003eIdeal chain lubricant for Road Cycling, Cyclocross \u0026amp; MTB\u003c\/li\u003e\n\u003cli\u003eExcels in wet, muddy conditions\u003c\/li\u003e\n\u003cli\u003eContains Fluoro Polymers \u0026amp; Boron Nitrides for efficiency\u003c\/li\u003e\n\u003cli\u003eCreates Ceramic coating for chain protection\u003c\/li\u003e\n\u003cli\u003eUltra long distance performance\u003c\/li\u003e\n\u003cli\u003eIncredible durability\u003c\/li\u003e\n\u003cli\u003ePippette system for accurate, easy application\u003c\/li\u003e\n\u003cli\u003eIncludes UV torch to check for 100% coverage\u003c\/li\u003e\n\u003c\/ul\u003e"}
    []
    { "@context": "http://schema.org/", "@type": "Product", "name": "Muc-off C3 Ceramic Wet Lube 50ml", "url": "https:\/\/projektride.co.uk\/products\/muc-off-c3-ceramic-wet-lube-50ml","image": [ "https:\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot2022-03-09at19.39.45_836x.png?v=1646855110" ],"description": "\nThe secret to the C3 Ceramic Wet Chain Lube is its unique ceramic coating that provides incredible durability and long distance performance on all bicycle chains. The innovative formulation in our chain oil also uses Boron Nitride and Fluoro Polymers to ensure ultra low friction for ultimate drive chain efficiency, high performance and durability. The waterproof qualities of Muc-Off C3 Ceramic Wet Chain Lube also means that your drive chain will excel in the harshest of riding conditions.\nLooking for long chain oil service intervals and precision gear changes with super low friction reduction? Look no further. C3 Ceramic Wet Lube is packaged in an ergonomic bottle complete with pipette system for easy use and application. It’s also 95% biodegradable and is ideal for Road, Cyclocross and MTB.\n\nIdeal chain lubricant for Road Cycling, Cyclocross \u0026amp; MTB\nExcels in wet, muddy conditions\nContains Fluoro Polymers \u0026amp; Boron Nitrides for efficiency\nCreates Ceramic coating for chain protection\nUltra long distance performance\nIncredible durability\nPippette system for accurate, easy application\nIncludes UV torch to check for 100% coverage\n","sku": "PREA02032022.1882","brand": { "@type": "Thing", "name": "Muc-Off" },"gtin8": "5037835869002","gtin13": "5037835869002","offers": [{ "@type" : "Offer","sku": "PREA02032022.1882","availability" : "http://schema.org/OutOfStock", "price" : 8.0, "priceCurrency" : "GBP", "url" : "https:\/\/projektride.co.uk\/products\/muc-off-c3-ceramic-wet-lube-50ml?variant=42577956503778" } ] } Header Image
    £0.00

    {"id":7486687477986,"title":"Altura Nevis Nightvison Mens Jacket","handle":"altura-nevis-nightvison-mens-jacket","description":"\u003cmeta charset=\"utf-8\"\u003e\u003cspan\u003eALTURA NEVIS NIGHTVISION MEN'S JACKET\u003c\/span\u003e\u003cspan\u003e\u003c\/span\u003e\n\u003cp\u003eOUR POPULAR COMMUTING AND CITY CYCLING JACKET THAT PROVIDES PROTECTION FROM THE ELEMENTS AND VISIBILITY FOR THE URBAN CYCLIST\u003c\/p\u003e\n\u003cspan\u003e\u003c\/span\u003e\n\u003cp\u003e\u003cstrong\u003eFEATURES\u003c\/strong\u003e\u003c\/p\u003e\n\u003cul\u003e\n\u003cli\u003eFully waterproof\u003c\/li\u003e\n\u003cli\u003eReflective detailing\u003c\/li\u003e\n\u003cli\u003eLarge zippered chest pocket plus 2 side-zip pockets\u003c\/li\u003e\n\u003cli\u003e10\/10 waterproof and breathability\u003c\/li\u003e\n\u003cli\u003eRelaxed fit\u003c\/li\u003e\n\u003cli\u003e100% Polyester\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cp data-mce-fragment=\"1\"\u003e\u003cstrong data-mce-fragment=\"1\"\u003eIf any more information is needed, please don't hesitate to get in touch with one of the team:\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp data-mce-fragment=\"1\"\u003e\u003cstrong data-mce-fragment=\"1\"\u003eProjektRide Bike shop Edinburgh.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp data-mce-fragment=\"1\"\u003e\u003cstrong data-mce-fragment=\"1\"\u003eedinburgh@projektride.co.uk\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp data-mce-fragment=\"1\"\u003e\u003cstrong data-mce-fragment=\"1\"\u003eT- 01313745324\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e","published_at":"2021-12-28T15:41:38+00:00","created_at":"2021-12-28T15:41:36+00:00","vendor":"Altura","type":"","tags":["Clothing","Clothing \u0026 Protection","spo-cs-disabled","spo-default","spo-disabled","spo-notify-me-disabled"],"price":6500,"price_min":6500,"price_max":6500,"available":true,"price_varies":false,"compare_at_price":6500,"compare_at_price_min":6500,"compare_at_price_max":6500,"compare_at_price_varies":false,"variants":[{"id":42211813359842,"title":"Small","option1":"Small","option2":null,"option3":null,"sku":"AL22MNEVIS2-99-S","requires_shipping":true,"taxable":true,"featured_image":null,"available":true,"name":"Altura Nevis Nightvison Mens Jacket - Small","public_title":"Small","options":["Small"],"price":6500,"weight":0,"compare_at_price":6500,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[]},{"id":42211813392610,"title":"Medium","option1":"Medium","option2":null,"option3":null,"sku":"AL22MNEVIS2-99-M","requires_shipping":true,"taxable":true,"featured_image":null,"available":true,"name":"Altura Nevis Nightvison Mens Jacket - Medium","public_title":"Medium","options":["Medium"],"price":6500,"weight":0,"compare_at_price":6500,"inventory_management":"shopify","barcode":"PREA21102021.1577","requires_selling_plan":false,"selling_plan_allocations":[]},{"id":42211813425378,"title":"Large","option1":"Large","option2":null,"option3":null,"sku":"AL22MNEVIS2-99-L","requires_shipping":true,"taxable":true,"featured_image":null,"available":true,"name":"Altura Nevis Nightvison Mens Jacket - Large","public_title":"Large","options":["Large"],"price":6500,"weight":0,"compare_at_price":6500,"inventory_management":"shopify","barcode":"PREA21102021.1577","requires_selling_plan":false,"selling_plan_allocations":[]},{"id":42211813458146,"title":"Extra Large","option1":"Extra Large","option2":null,"option3":null,"sku":"AL22MNEVIS2-99-2XL","requires_shipping":true,"taxable":true,"featured_image":null,"available":true,"name":"Altura Nevis Nightvison Mens Jacket - Extra Large","public_title":"Extra Large","options":["Extra Large"],"price":6500,"weight":0,"compare_at_price":6500,"inventory_management":"shopify","barcode":"5034948139022","requires_selling_plan":false,"selling_plan_allocations":[]},{"id":42211813490914,"title":"Extra Extra Large","option1":"Extra Extra Large","option2":null,"option3":null,"sku":"AL22MNEVIS2-99-3XL","requires_shipping":true,"taxable":true,"featured_image":null,"available":true,"name":"Altura Nevis Nightvison Mens Jacket - Extra Extra Large","public_title":"Extra Extra Large","options":["Extra Extra Large"],"price":6500,"weight":0,"compare_at_price":6500,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[]}],"images":["\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot2021-12-28at15.35.50.png?v=1640706098"],"featured_image":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot2021-12-28at15.35.50.png?v=1640706098","options":["Size"],"media":[{"alt":null,"id":28927619530978,"position":1,"preview_image":{"aspect_ratio":0.847,"height":914,"width":774,"src":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot2021-12-28at15.35.50.png?v=1640706098"},"aspect_ratio":0.847,"height":914,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot2021-12-28at15.35.50.png?v=1640706098","width":774}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003cmeta charset=\"utf-8\"\u003e\u003cspan\u003eALTURA NEVIS NIGHTVISION MEN'S JACKET\u003c\/span\u003e\u003cspan\u003e\u003c\/span\u003e\n\u003cp\u003eOUR POPULAR COMMUTING AND CITY CYCLING JACKET THAT PROVIDES PROTECTION FROM THE ELEMENTS AND VISIBILITY FOR THE URBAN CYCLIST\u003c\/p\u003e\n\u003cspan\u003e\u003c\/span\u003e\n\u003cp\u003e\u003cstrong\u003eFEATURES\u003c\/strong\u003e\u003c\/p\u003e\n\u003cul\u003e\n\u003cli\u003eFully waterproof\u003c\/li\u003e\n\u003cli\u003eReflective detailing\u003c\/li\u003e\n\u003cli\u003eLarge zippered chest pocket plus 2 side-zip pockets\u003c\/li\u003e\n\u003cli\u003e10\/10 waterproof and breathability\u003c\/li\u003e\n\u003cli\u003eRelaxed fit\u003c\/li\u003e\n\u003cli\u003e100% Polyester\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cp data-mce-fragment=\"1\"\u003e\u003cstrong data-mce-fragment=\"1\"\u003eIf any more information is needed, please don't hesitate to get in touch with one of the team:\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp data-mce-fragment=\"1\"\u003e\u003cstrong data-mce-fragment=\"1\"\u003eProjektRide Bike shop Edinburgh.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp data-mce-fragment=\"1\"\u003e\u003cstrong data-mce-fragment=\"1\"\u003eedinburgh@projektride.co.uk\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp data-mce-fragment=\"1\"\u003e\u003cstrong data-mce-fragment=\"1\"\u003eT- 01313745324\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e"}

    []

    <
    { "@context": "http://schema.org/", "@type": "Product", "name": "Altura Nevis Nightvison Mens Jacket", "url": "https:\/\/projektride.co.uk\/products\/altura-nevis-nightvison-mens-jacket","image": [ "https:\/\/projektride.co.uk\/cdn\/shop\/products\/Screenshot2021-12-28at15.35.50_774x.png?v=1640706098" ],"description": "ALTURA NEVIS NIGHTVISION MEN'S JACKET\nOUR POPULAR COMMUTING AND CITY CYCLING JACKET THAT PROVIDES PROTECTION FROM THE ELEMENTS AND VISIBILITY FOR THE URBAN CYCLIST\n\nFEATURES\n\nFully waterproof\nReflective detailing\nLarge zippered chest pocket plus 2 side-zip pockets\n10\/10 waterproof and breathability\nRelaxed fit\n100% Polyester\n\nIf any more information is needed, please don't hesitate to get in touch with one of the team:\nProjektRide Bike shop Edinburgh.\nedinburgh@projektride.co.uk\nT- 01313745324\n ","sku": "AL22MNEVIS2-99-S","brand": { "@type": "Thing", "name": "Altura" },"gtin8": "","offers": [{ "@type" : "Offer","sku": "AL22MNEVIS2-99-S","availability" : "http://schema.org/InStock", "price" : 65.0, "priceCurrency" : "GBP", "url" : "https:\/\/projektride.co.uk\/products\/altura-nevis-nightvison-mens-jacket?variant=42211813359842" }, { "@type" : "Offer","sku": "AL22MNEVIS2-99-M","availability" : "http://schema.org/InStock", "price" : 65.0, "priceCurrency" : "GBP", "url" : "https:\/\/projektride.co.uk\/products\/altura-nevis-nightvison-mens-jacket?variant=42211813392610" }, { "@type" : "Offer","sku": "AL22MNEVIS2-99-L","availability" : "http://schema.org/InStock", "price" : 65.0, "priceCurrency" : "GBP", "url" : "https:\/\/projektride.co.uk\/products\/altura-nevis-nightvison-mens-jacket?variant=42211813425378" }, { "@type" : "Offer","sku": "AL22MNEVIS2-99-2XL","availability" : "http://schema.org/InStock", "price" : 65.0, "priceCurrency" : "GBP", "url" : "https:\/\/projektride.co.uk\/products\/altura-nevis-nightvison-mens-jacket?variant=42211813458146" }, { "@type" : "Offer","sku": "AL22MNEVIS2-99-3XL","availability" : "http://schema.org/InStock", "price" : 65.0, "priceCurrency" : "GBP", "url" : "https:\/\/projektride.co.uk\/products\/altura-nevis-nightvison-mens-jacket?variant=42211813490914" } ] }
    a class="product__media product__media--featured" href="/collections/clothing-and-protection/products/hire-smith-convoy-helmet" title="Hire Lazer Compact Helmet" aria-label="Hire Lazer Compact Helmet" style="background-image: url(//projektride.co.uk/cdn/shop/files/my2023_tempo-kineticore-black_right_1400x1011800x600-removebg-preview_1_600x.png?v=1747484784)"> span class="visually-hidden">Hire Lazer Compact Helmet
    <
    > <
    <
    <
    <<<
    <

    <

    ery_exact_time":null,"delivery_after_n_intervals":null,"delivery_at":"2025-07-26T09:20:18.169Z","delivery_type":"asap","quantity_limit_text":"{{ quantity }} units available for preorder","preorder_button_description_show_shipping":true,"preorder_button_description_icons_enabled":true,"preorder_shipping_text":"Shipping: {{ date }}","shipping_applies_to_all_products":true,"shipping_text":"Estimated to ship within 2 months","payment_type":"full","billing_checkout_charge_type":"percentage","billing_checkout_charge_amount":null,"billing_checkout_charge_percentage":"100.0","pricing_type":"no_discount","pricing_amount":null,"pricing_percentage":null,"discount_text":"Save {{ discount }}","billing_title":"Full payment","billing_description":null,"enable_billing_widget":false,"inventory_provider":"stoq","preorder_badge_enabled":false,"preorder_badge_text":"Preorder","preorder_badge_text_color":"#FFFFFF","preorder_badge_background_color":"#000000","preorder_discounted_price_enabled":null,"payment_line_item_property_enab
    e to the preorder terms and conditions for this product.","disable_button_until_acknowledged":false,"preorder_min_quantity":null,"preorder_max_quantity":null,"countdown_timer_enabled":false,"countdown_timer_style":"text","countdown_timer_text_color":"#000000","countdown_timer_background_color":"#f5f5f5","countdown_timer_border_radius":8,"countdown_timer_format":"DHMS","countdown_timer_use_schedule_dates":true,"countdown_timer_custom_start_date":null,"countdown_timer_custom_end_date":null,"countdown_timer_starts_text":null,"countdown_timer_ends_text":null,"schedule_offer":false,"schedule_start_date":null,"schedule_end_date":null,"updated_at":"2025-08-19T10:05:43.042Z","allow_mixed_cart":true,"mixed_cart_error_message":"Preorders must be purchased separately from regular items. Please complete your current order first, or clear your cart to continue.","b2b_enabled":true,"preorder_progress_bar_enabled":false,"preorder_progress_bar_text":"{{ sold }} of {{ total }} claimed","preorder_progress_bar_fill_color":"#000
    '') : null; // Use cached if old array is empty/has no timestamps, or cached is newer // Parse dates for comparison to handle format differences (+00:00 vs .000Z) const cachedDate = new Date(cachedData.cached_at); const maxDate = maxUpdatedAt ? new Date(maxUpdatedAt) : null; const useCached = !maxUpdatedAt || (cachedDate && !isNaN(cachedDate) && (!maxDate || cachedDate > maxDate)); if (useCached) { if (Array.isArray(cachedData.plans)) { window._RestockRocketConfig.sellingPlans = cachedData.plans; // Only use disabled_plan_ids when using cached plans window._RestockRocketConfig.disabledSellingPlanIds = cachedData.disabled_plan_ids || []; console.debug('[RR] Using selling plans from cachedSellingPlans (cached_at: ' + cachedData.cached_at + ')'); } } else { // When using old format (stale cache), don't trust disabled_plan_ids window._RestockRocketConfig.disa
    idly removing brake dust and oil, as well as dirt and grime from all braking parts. Its unique formula has added conditioners that rehydrate your disc brake pads to dramatically reduce brake squeal, prolong the disc pad life and restore braking performance.\u003c\/p\u003e\n\u003cp data-mce-fragment=\"1\"\u003eMuc-Off Disc Brake Cleaner air-dries rapidly without leaving any residue, and it’s perfectly safe on rubber, plastic, anodized metals, carbon fibre and painted surfaces.\u003c\/p\u003e\n\u003cul\u003e\n\u003cli\u003eImproves braking performance\u003c\/li\u003e\n\u003cli\u003eTreats pads and rotors to reduce brake squeal\u003c\/li\u003e\n\u003cli\u003eProlongs disc pad and rotor life\u003c\/li\u003e\n\u003cli\u003eRapidly removes oil, grease, brake fluid and grime\u003c\/li\u003e\n\u003cli\u003eRehydrating formula to preserve braking components\u003c\/li\u003e\n\u003c\/ul\u003e","published_at":"2021-12-15T22:49:12+00:00","created_at":"2021-12-07T17:02:42+00:00","vendor":"Muc-Off","type":"","tags":["Clea
    null,"id":28806608584930,"position":1,"preview_image":{"aspect_ratio":1.0,"height":680,"width":680,"src":"\/\/projektride.co.uk\/cdn\/shop\/products\/Muc-Off-Disc-Brake-Cleaner-400ml.jpg?v=1638896563"},"aspect_ratio":1.0,"height":680,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/products\/Muc-Off-Disc-Brake-Cleaner-400ml.jpg?v=1638896563","width":680}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003cmeta charset=\"utf-8\"\u003e\n\u003cp data-mce-fragment=\"1\"\u003eOur Disc Brake Cleaner can improve braking performance by rapidly removing brake dust and oil, as well as dirt and grime from all braking parts. Its unique formula has added conditioners that rehydrate your disc brake pads to dramatically reduce brake squeal, prolong the disc pad life and restore braking performance.\u003c\/p\u003e\n\u003cp data-mce-fragment=\"1\"\u003eMuc-Off Disc Brake Cleaner air-dries rapidly without leaving any residue, and it’s perfectly safe on rubber, plastic, anodized metals, carbo
    fig.variantsShippingText = {42133857042658 : "",}; window._RestockRocketConfig.variantsShippingTextForMarket = {42133857042658 : null,}; window._RestockRocketConfig.selected_variant_id = 42133857042658; window._RestockRocketConfig.selected_variant_available = window._RestockRocketConfig.product.variants.find(function(variant) { return variant.id == window._RestockRocketConfig.selected_variant_id }).available;window._RestockRocketConfig.scriptUrlProduct = 'https://cdn.shopify.com/extensions/019cd40b-736e-74a5-adbe-431365bfd910/restockrocket-1-465/assets/restockrocket-product.js' window._RestockRocketConfig.scriptUrlCollection = 'https://cdn.shopify.com/extensions/019cd40b-736e-74a5-adbe-431365bfd910/restockrocket-1-465/assets/restockrocket-collection.js' window._RestockRocketConfig.scriptHost = window._RestockRocketConfig.scriptUrlProduct.substring(0, window._RestockRocketConfig.scriptUrlProduct.lastIndexOf('/') + 1) window._RestockRocketConfig.host = 'https://app.restockrocket.io' const S
    <
    <
    translation data in metafield // Metafield hasn't been backfilled yet - force refresh console.debug('STOQ - multi-language enabled but no translation data in cache, fetching fresh'); return null; } // Translations object exists in metafield - cache is valid // If current locale isn't translated, applyTranslations will gracefully use default locale from base fields if (window._RestockRocketConfig.normalizedLocale && !Object.prototype.hasOwnProperty.call(settings.translations, window._RestockRocketConfig.normalizedLocale)) { console.debug('STOQ - locale not explicitly translated, will use default language from cache'); } // Don't return null - continue using cache even for untranslated locales } const updatedAt = new Date(settings.updated_at); if (isNaN(updatedAt.getTime())) { console.debug('STOQ - Invalid updated_at date format in settings'); return null; } const
    <
    !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) { // No matching locale has translations; drop payload to save memory 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).forEach(function(key) { const value = translatedFields[key
    && window._RestockRocket.updateCartSellingPlans) { window._RestockRocket.updateCartSellingPlans() .then(hasUpdates => { if (hasUpdates) { console.debug('STOQ - cart selling plans updated successfully'); } else { console.debug('STOQ - no cart selling plan updates needed'); } }) .catch(error => { console.error('STOQ - error updating cart selling plans:', error); }); } }); } // First try to get settings from metafields with expiry check const cachedSettings = window._RestockRocketConfig.cachedSettings; const validCachedSettings = cachedSettings ? checkSettingsExpiry(cachedSettings) : null; if (validCachedSettings) { console.debug('STOQ - using cached settings'); initializeScripts(validCachedSettings); } else { console.debug('STOQ - fetching fresh settings'); const headers = { 'X-Shopify-Shop-Domain': window._RestockRocketConfig.shop || window.S
    hedSettings); } else { console.error('STOQ - failed to load settings:', error); } }) .catch(function(e) { console.error(e) }) } function initializeScripts(settings) { settings = applyTranslations(settings); window._RestockRocketConfig.settings = settings; console.debug(`STOQ - settings configured for ${window._RestockRocketConfig.pageType}`); // Setup cart selling plan updater BEFORE loading any scripts to avoid race conditions 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); }) if(window._RestockRocketConfig.pageType === 'collection' && (settings.show_button_on_collection || settings.preorder_collection_enabled)) { createRestockRocketScript(window._RestockRocketCon
    led for ${window._RestockRocketConfig.pageType}`); } // Dispatch custom event when app is loaded // Cart selling plan updates will be triggered by stoq:inventory-data-loaded event const 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); } }
    .restock-rocket-button,.restock-rocket-button-float{opacity:1!important;border:none!important;cursor:pointer!important;background-image:none!important;box-shadow:none!important;padding:15px 20px;font-size:16px;width:100%;font-family:inherit}@font-face{font-family:OpenSans;font-weight:200;src:url(https://d382hokyqag45a.cloudfront.net/assets/OpenSans-Light.woff)}@font-face{font-family:OpenSans;font-weight:300;src:url(https://d382hokyqag45a.cloudfront.net/assets/OpenSans-Regular.woff)}@font-face{font-family:OpenSans;font-weight:600;src:url(https://d382hokyqag45a.cloudfront.net/assets/OpenSans-SemiBold.woff)}.restock-rocket-button-container{position:relative;z-index:1;width:100%}.restock-rocket-button-container-float-right{position:fixed;z-index:123123;top:calc(50% - 200px);right:0;transform:rotate(270deg);transform-origin:bottom right}.restock-rocket-button-container-float-left{position:fixed;z-index:123123;top:calc(50% - 200px);left:40px;transform:rotate(90deg);transform-origin:top left}.restock-rocket-button-container-float-left:hover,.restock-rocket-button-container-float-right:hover,.restock-rocket-button-container:hover,.restock-rocket-button-float:hover,.restock-rocket-button:hover{opacity:.8}.restock-rocket-button{min-height:50px;margin-top:10px;margin-bottom:10px}.restock-rocket-button-collection{position:relative;font-size:13px;line-height:1;padding:7px;height:auto;z-index:3}.restock-rocket-wrapper{background-color:rgba(0,0,0,.5);z-index:123123123;width:100%;height:100%;overflow:auto;position:fixed;right:0;top:0;transition-property:all;transition-duration:.3s;display:flex;flex-direction:column;justify-content:center;}.restock-rocket-wrapper-inline{width:100%;height:100%;margin-top:20px}.restock-rocket-preorder-description{padding:10px 15px;margin-top:20px;display:flex;flex-direction:column;gap:10px;}.preorder-description-details{margin-bottom:0;display:flex;flex-direction:column;gap:10px;}.preorder-detail-item{display:flex;flex-direction:row;justify-content:start;gap:8px;align-items:center;}.restock-rocket-payment-widget{border:1px solid #ebebeb;margin-bottom:20px;}.restock-rocket-payment-option{display:flex;flex-wrap:wrap;align-items:center;gap:5px;padding:15px 20px;}.restock-rocket-payment-option:not(:last-child){border-bottom:1px solid #ebebeb;}.restock-rocket-payment-input-container{flex:1 1 auto;min-width:0}.restock-rocket-preorder-discount-badge{background:#ebebeb;height:25px;line-height:25px;padding:0 15px;border-radius:25px;font-size:0.8rem;flex:0 0 auto}.restock-rocket-payment-input{margin-right:10px;margin-top:-3px;vertical-align:middle;margin-left:0;accent-color:#202223}.restock-rocket-payment-description{margin-top:4px;flex:1 1 100%}.restock-rocket-preorder-badge{font-size:13px;line-height:1;padding:5px 13px 6px;border-radius:40px;height:auto;border:none;width:auto;z-index:2;margin:0;background:0 0}.preorder-badge-collection{position:absolute;top:10px;right:10px}.preorder-badge-product{margin-left:10px}.restock-rocket-price-strike{text-decoration:line-through;color: #666666;}.restock-rocket-discounted-price{margin-left:10px;}.restock-rocket-acknowledgement-checkbox{margin-bottom:12px;display:flex;align-items:flex-start;gap:8px;font-size:14px;line-height: 1.5;}.restock-rocket-acknowledge-checkbox-input{width:18px;height:18px;margin-top:2px;cursor:pointer;flex-shrink:0;accent-color: #0d0d0d;}.restock-rocket-acknowledge-checkbox-label{flex:1;cursor:pointer;}.restock-rocket-preorder-countdown-timer{display:flex;flex-direction:column;align-items:center;padding:16px;margin:8px 0;font-family:inherit;}.restock-rocket-preorder-countdown-timer .countdown-header{font-size:16px;margin-bottom:6px;text-align:center}.restock-rocket-preorder-countdown-timer .countdown-units{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.restock-rocket-preorder-countdown-timer .countdown-unit{display:flex;flex-direction:column;align-items:center;gap:6px}.restock-rocket-preorder-countdown-timer .countdown-box{min-width:40px;padding:10px 6px;text-align:center;font-size:20px;line-height:1}.restock-rocket-preorder-countdown-timer .countdown-label{font-size:14px;font-weight:500;text-align:center;text-transform:capitalize;opacity:.7}@media (max-width:768px){.restock-rocket-preorder-countdown-timer{padding:14px}.restock-rocket-preorder-countdown-timer .countdown-box{min-width:55px;padding:14px 10px;font-size:26px}.restock-rocket-preorder-countdown-timer .countdown-label{font-size:11px}}@media (max-width:480px){.restock-rocket-preorder-countdown-timer{padding:12px}.restock-rocket-preorder-countdown-timer .countdown-units{width:100%;gap:10px}.restock-rocket-preorder-countdown-timer .countdown-box{width:100%;min-width:50px;padding:12px 8px;font-size:24px}.restock-rocket-preorder-countdown-timer .countdown-label{font-size:10px}}.restock-rocket-toast{position:fixed;cursor:pointer;background:#fff;border:0;min-width:40px;min-height:40px;box-shadow:0 0 15px rgba(0,0,0,.1)!important;z-index:622004;padding:20px 30px;font-family:inherit;font-size:inherit;color:#000;display:flex;justify-content:center;align-items:center}.restock-rocket-toast a{text-decoration:none;font-weight:700;color:#000}.restock-rocket-toast .dismiss{margin-left:15px;z-index:1;font-size:20px;}.restock-rocket-toast-top{top:60px}.restock-rocket-toast-bottom{bottom:75px}.restock-rocket-toast-left,.restock-rocket-toast-right{-webkit-animation:.5s forwards slide;animation:.5s forwards slide}.restock-rocket-toast-left{left:0;transform:translateX(-100%);-webkit-transform:translateX(-100%);border-radius:0 10px 10px 0}.restock-rocket-toast-left.slide-out{-webkit-animation:.5s forwards slide-out-left;animation:.5s forwards slide-out-left}.restock-rocket-toast-right{right:0;transform:translateX(100%);-webkit-transform:translateX(100%);border-radius:10px 0 0 10px}.restock-rocket-toast-right.slide-out{-webkit-animation:.5s forwards slide-out-right;animation:.5s forwards slide-out-right}@keyframes slide{100%{transform:translateX(0)}}@-webkit-keyframes slide{100%{-webkit-transform:translateX(0)}}@keyframes slide-out-left{0%{transform:translateX(0)}100%{transform:translateX(-100%)}}@-webkit-keyframes slide-out-left{0%{-webkit-transform:translateX(0)}100%{-webkit-transform:translateX(-100%)}}@keyframes slide-out-right{0%{transform:translateX(0)}100%{transform:translateX(100%)}}@-webkit-keyframes slide-out-right{0%{-webkit-transform:translateX(0)}100%{-webkit-transform:translateX(100%)}}.restock-rocket-preorder-progress-bar{padding:12px 15px;margin-bottom:20px;font-family:inherit;}.restock-rocket-preorder-progress-bar .preorder-progress-text{margin-bottom:8px;}.restock-rocket-preorder-progress-bar .preorder-progress-bar-row{display:flex;align-items:center;gap:10px;}.restock-rocket-preorder-progress-bar .preorder-progress-track{flex:1;height:12px;overflow:hidden;}.restock-rocket-preorder-progress-bar .preorder-progress-fill{display:block;height:100%;min-width:2px;transition:width 0.3s ease;}.restock-rocket-preorder-progress-bar .preorder-progress-percentage{font-weight:500;min-width:35px;text-align:right;}





    <









    !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) { // No matching locale has translations; drop payload to save memory 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).forEach(function(key) { const value = translatedFields[keyc\/p\u003e\n\u003cp class=\"preFade fadeIn\"\u003eThe Columbus Cromor double-butted frame with tapered head tube and rear light mount will last longer than the test of time. So you can hit the road less travelled, wider rims improve tyre performance. You’ll also have more mounting options than to shake a fist at: top tube direct mounts, triple cage mounts on the down tube and seat tube for cargo positions of your choice, as well as underneath the down tube and rear rack mounts for those adventures that delve deep into unknown territory.\u003c\/p\u003e\n\u003cp class=\"preFade fadeIn\"\u003e \u003c\/p\u003e\n\u003ctable border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"1475\"\u003e\n\u003ccolgroup\u003e\n\u003ccol width=\"343\"\u003e\n\u003ccol width=\"1132\"\u003e\n\u003c\/colgroup\u003e\n\u003ctbody\u003e\n\u003ctr height=\"21\"\u003e\n\u003ctd height=\"21\" class=\"xl66\" width=\"343\"\u003eFork\u003c\/td\u003e\n\u003ctd class=\"xl69\" align=\"left\" width=\"1132\"\u003eSeido MGV full carbon, TA, hedSettings); } else { console.error('STOQ - failed to load settings:', error); } }) .catch(function(e) { console.error(e) }) } function initializeScripts(settings) { settings = applyTranslations(settings); window._RestockRocketConfig.settings = settings; console.debug(`STOQ - settings configured for ${window._RestockRocketConfig.pageType}`); // Setup cart selling plan updater BEFORE loading any scripts to avoid race conditions 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); }) if(window._RestockRocketConfig.pageType === 'collection' && (settings.show_button_on_collection || settings.preorder_collection_enabled)) { createRestockRocketScript(window._RestockRocketCon3e-\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr height=\"21\"\u003e\n\u003ctd height=\"21\" class=\"xl66\"\u003eRear derailleur\u003c\/td\u003e\n\u003ctd class=\"xl68\"\u003eSram Rival XPLR eTap AXS, clutch, medium cage\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr height=\"21\"\u003e\n\u003ctd height=\"21\" class=\"xl66\"\u003eFront hub\u003c\/td\u003e\n\u003ctd class=\"xl69\" align=\"left\"\u003eBombtrack Tau sealed hub, 6-bolt disc\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr height=\"23\"\u003e\n\u003ctd height=\"23\" class=\"xl66\"\u003eRear hub\u003c\/td\u003e\n\u003ctd class=\"xl70\" width=\"1132\"\u003eBombtrack Tau sealed hub, XD driver, 6-bolt disc\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr height=\"21\"\u003e\n\u003ctd height=\"21\" class=\"xl66\"\u003eThrough axle\u003c\/td\u003e\n\u003ctd class=\"xl68\"\u003e12 x 100 mm \/ 12 x 142 mm\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr height=\"21\"\u003e\n\u003ctd height=\"21\" class=\"xl66\"\u003eFront rim\u003c\/td\u003e\n\u003ctd class=\"xl68\"\u003eWT
    led for ${window._RestockRocketConfig.pageType}`); } // Dispatch custom event when app is loaded // Cart selling plan updates will be triggered by stoq:inventory-data-loaded event const 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); } } u003eWTB Ranger TCS Light \/ Fast Rolling 27.5'' x 2.0'', tubeless ready\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr height=\"21\"\u003e\n\u003ctd height=\"21\" class=\"xl66\"\u003eRear tire\u003c\/td\u003e\n\u003ctd class=\"xl68\"\u003eWTB Ranger TCS Light \/ Fast Rolling 27.5'' x 2.0'', tubeless ready\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr height=\"21\"\u003e\n\u003ctd height=\"21\" class=\"xl66\"\u003eFender\u003c\/td\u003e\n\u003ctd class=\"xl68\"\u003e-\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr height=\"21\"\u003e\n\u003ctd height=\"21\" class=\"xl66\"\u003eRack\u003c\/td\u003e\n\u003ctd class=\"xl68\"\u003e-\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr height=\"21\"\u003e\n\u003ctd height=\"21\" class=\"xl66\"\u003eKickstand\u003c\/td\u003e\n\u003ctd class=\"xl68\"\u003e-\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr height=\"21\"\u003e\n\u003ctd height=\"21\" class=\"xl66\"\u003eLight\u003c\/td\u003e\n\u003ctd class=\"xl68\"\u003e-\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr height=\"21\"\u003e\n\u
    1-465/assets/restockrocket-collection.js' window._RestockRocketConfig.scriptHost = window._RestockRocketConfig.scriptUrlProduct.substring(0, window._RestockRocketConfig.scriptUrlProduct.lastIndexOf('/') + 1) window._RestockRocketConfig.host = 'https://app.restockrocket.io' const SETTINGS_CACHE_DURATION = 15 * 60 * 1000; // 15 minutes in milliseconds const LIQUID_CACHE_MAX_AGE = 2 * 60 * 60; // 2 hours in seconds // Calculate Liquid cache freshness once at initialization const liquidRenderedAt = window._RestockRocketConfig.liquidRenderedAt; // Validate timestamp and calculate cache age if (!liquidRenderedAt || typeof liquidRenderedAt !== 'number' || isNaN(liquidRenderedAt)) { console.debug('STOQ - Invalid or missing liquidRenderedAt timestamp, assuming fresh'); window._RestockRocketConfig.isLiquidCacheFresh = true; } else { const now = Math.floor(Date.now() / 1000); // Current time in seconds const liquidCacheAge = now - liquidRenderedAt; // Age in seconds // Handle clM
    .restock-rocket-button,.restock-rocket-button-float{opacity:1!important;border:none!important;cursor:pointer!important;background-image:none!important;box-shadow:none!important;padding:15px 20px;font-size:16px;width:100%;font-family:inherit}@font-face{font-family:OpenSans;font-weight:200;src:url(https://d382hokyqag45a.cloudfront.net/assets/OpenSans-Light.woff)}@font-face{font-family:OpenSans;font-weight:300;src:url(https://d382hokyqag45a.cloudfront.net/assets/OpenSans-Regular.woff)}@font-face{font-family:OpenSans;font-weight:600;src:url(https://d382hokyqag45a.cloudfront.net/assets/OpenSans-SemiBold.woff)}.restock-rocket-button-container{position:relative;z-index:1;width:100%}.restock-rocket-button-container-float-right{position:fixed;z-index:123123;top:calc(50% - 200px);right:0;transform:rotate(270deg);transform-origin:bottom right}.restock-rocket-button-container-float-left{position:fixed;z-index:123123;top:calc(50% - 200px);left:40px;transform:rotate(90deg);transform-origin:top left}.restock-rocket-button-container-float-left:hover,.restock-rocket-button-container-float-right:hover,.restock-rocket-button-container:hover,.restock-rocket-button-float:hover,.restock-rocket-button:hover{opacity:.8}.restock-rocket-button{min-height:50px;margin-top:10px;margin-bottom:10px}.restock-rocket-button-collection{position:relative;font-size:13px;line-height:1;padding:7px;height:auto;z-index:3}.restock-rocket-wrapper{background-color:rgba(0,0,0,.5);z-index:123123123;width:100%;height:100%;overflow:auto;position:fixed;right:0;top:0;transition-property:all;transition-duration:.3s;display:flex;flex-direction:column;justify-content:center;}.restock-rocket-wrapper-inline{width:100%;height:100%;margin-top:20px}.restock-rocket-preorder-description{padding:10px 15px;margin-top:20px;display:flex;flex-direction:column;gap:10px;}.preorder-description-details{margin-bottom:0;display:flex;flex-direction:column;gap:10px;}.preorder-detail-item{display:flex;flex-direction:row;justify-content:start;gap:8px;align-items:center;}.restock-rocket-payment-widget{border:1px solid #ebebeb;margin-bottom:20px;}.restock-rocket-payment-option{display:flex;flex-wrap:wrap;align-items:center;gap:5px;padding:15px 20px;}.restock-rocket-payment-option:not(:last-child){border-bottom:1px solid #ebebeb;}.restock-rocket-payment-input-container{flex:1 1 auto;min-width:0}.restock-rocket-preorder-discount-badge{background:#ebebeb;height:25px;line-height:25px;padding:0 15px;border-radius:25px;font-size:0.8rem;flex:0 0 auto}.restock-rocket-payment-input{margin-right:10px;margin-top:-3px;vertical-align:middle;margin-left:0;accent-color:#202223}.restock-rocket-payment-description{margin-top:4px;flex:1 1 100%}.restock-rocket-preorder-badge{font-size:13px;line-height:1;padding:5px 13px 6px;border-radius:40px;height:auto;border:none;width:auto;z-index:2;margin:0;background:0 0}.preorder-badge-collection{position:absolute;top:10px;right:10px}.preorder-badge-product{margin-left:10px}.restock-rocket-price-strike{text-decoration:line-through;color: #666666;}.restock-rocket-discounted-price{margin-left:10px;}.restock-rocket-acknowledgement-checkbox{margin-bottom:12px;display:flex;align-items:flex-start;gap:8px;font-size:14px;line-height: 1.5;}.restock-rocket-acknowledge-checkbox-input{width:18px;height:18px;margin-top:2px;cursor:pointer;flex-shrink:0;accent-color: #0d0d0d;}.restock-rocket-acknowledge-checkbox-label{flex:1;cursor:pointer;}.restock-rocket-preorder-countdown-timer{display:flex;flex-direction:column;align-items:center;padding:16px;margin:8px 0;font-family:inherit;}.restock-rocket-preorder-countdown-timer .countdown-header{font-size:16px;margin-bottom:6px;text-align:center}.restock-rocket-preorder-countdown-timer .countdown-units{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.restock-rocket-preorder-countdown-timer .countdown-unit{display:flex;flex-direction:column;align-items:center;gap:6px}.restock-rocket-preorder-countdown-timer .countdown-box{min-width:40px;padding:10px 6px;text-align:center;font-size:20px;line-height:1}.restock-rocket-preorder-countdown-timer .countdown-label{font-size:14px;font-weight:500;text-align:center;text-transform:capitalize;opacity:.7}@media (max-width:768px){.restock-rocket-preorder-countdown-timer{padding:14px}.restock-rocket-preorder-countdown-timer .countdown-box{min-width:55px;padding:14px 10px;font-size:26px}.restock-rocket-preorder-countdown-timer .countdown-label{font-size:11px}}@media (max-width:480px){.restock-rocket-preorder-countdown-timer{padding:12px}.restock-rocket-preorder-countdown-timer .countdown-units{width:100%;gap:10px}.restock-rocket-preorder-countdown-timer .countdown-box{width:100%;min-width:50px;padding:12px 8px;font-size:24px}.restock-rocket-preorder-countdown-timer .countdown-label{font-size:10px}}.restock-rocket-toast{position:fixed;cursor:pointer;background:#fff;border:0;min-width:40px;min-height:40px;box-shadow:0 0 15px rgba(0,0,0,.1)!important;z-index:622004;padding:20px 30px;font-family:inherit;font-size:inherit;color:#000;display:flex;justify-content:center;align-items:center}.restock-rocket-toast a{text-decoration:none;font-weight:700;color:#000}.restock-rocket-toast .dismiss{margin-left:15px;z-index:1;font-size:20px;}.restock-rocket-toast-top{top:60px}.restock-rocket-toast-bottom{bottom:75px}.restock-rocket-toast-left,.restock-rocket-toast-right{-webkit-animation:.5s forwards slide;animation:.5s forwards slide}.restock-rocket-toast-left{left:0;transform:translateX(-100%);-webkit-transform:translateX(-100%);border-radius:0 10px 10px 0}.restock-rocket-toast-left.slide-out{-webkit-animation:.5s forwards slide-out-left;animation:.5s forwards slide-out-left}.restock-rocket-toast-right{right:0;transform:translateX(100%);-webkit-transform:translateX(100%);border-radius:10px 0 0 10px}.restock-rocket-toast-right.slide-out{-webkit-animation:.5s forwards slide-out-right;animation:.5s forwards slide-out-right}@keyframes slide{100%{transform:translateX(0)}}@-webkit-keyframes slide{100%{-webkit-transform:translateX(0)}}@keyframes slide-out-left{0%{transform:translateX(0)}100%{transform:translateX(-100%)}}@-webkit-keyframes slide-out-left{0%{-webkit-transform:translateX(0)}100%{-webkit-transform:translateX(-100%)}}@keyframes slide-out-right{0%{transform:translateX(0)}100%{transform:translateX(100%)}}@-webkit-keyframes slide-out-right{0%{-webkit-transform:translateX(0)}100%{-webkit-transform:translateX(100%)}}.restock-rocket-preorder-progress-bar{padding:12px 15px;margin-bottom:20px;font-family:inherit;}.restock-rocket-preorder-progress-bar .preorder-progress-text{margin-bottom:8px;}.restock-rocket-preorder-progress-bar .preorder-progress-bar-row{display:flex;align-items:center;gap:10px;}.restock-rocket-preorder-progress-bar .preorder-progress-track{flex:1;height:12px;overflow:hidden;}.restock-rocket-preorder-progress-bar .preorder-progress-fill{display:block;height:100%;min-width:2px;transition:width 0.3s ease;}.restock-rocket-preorder-progress-bar .preorder-progress-percentage{font-weight:500;min-width:35px;text-align:right;} <
    && window._RestockRocket.updateCartSellingPlans) { window._RestockRocket.updateCartSellingPlans() .then(hasUpdates => { if (hasUpdates) { console.debug('STOQ - cart selling plans updated successfully'); } else { console.debug('STOQ - no cart selling plan updates needed'); } }) .catch(error => { console.error('STOQ - error updating cart selling plans:', error); }); } }); } // First try to get settings from metafields with expiry check const cachedSettings = window._RestockRocketConfig.cachedSettings; const validCachedSettings = cachedSettings ? checkSettingsExpiry(cachedSettings) : null; if (validCachedSettings) { console.debug('STOQ - using cached settings'); initializeScripts(validCachedSettings); } else { console.debug('STOQ - fetching fresh settings'); const headers = { 'X-Shopify-Shop-Domain': window._RestockRocketConfig.shop || window.S445 £0.00
    Black
    Hire Ortlieb 40L Pannier Bags

    FAQ£0.00

    Questions and answers

    Hire Kryptolok Standard U-Lock & 4 foot Kryptoflex cable
    Privacy Policy
    Cookie Policy Website by .