Header ImageTogo (XOFFr)
Tristan da Cunha (GBP£) Tunisia (GBP£)
    Türkiye (GBP£)
  • Uganda (UGXUSh)
Ukraine (UAH₴)
United States (GBP£)

© 2026,

ProjektRide
.
Powered by Italy (EUR€) Shopify
. Jersey (GBP£)
American Express Kenya (KESKSh) Latvia (EUR€)
Liechtenstein (CHFCHF)
Lithuania (EUR€) Jersey (GBP£) Madagascar (GBP£) Malawi (MWKMK) Malta (EUR€) Mauritania (GBP£) Liberia (GBP£) Libya (GBP£)
Mayotte (EUR€)
Liechtenstein (CHFCHF)
Luxembourg (EUR€) 9,56386101051775,56386101084543,56386101117311,56386101150079,56393228648831,56393228812671,56393231630719,56393231761791,56393231991167,56393232155007,56393232220543,56393232384383,56393232449919,56393232580991,56393232777599,56393232875903,56393232974207,56393233236351,56393233367423,56393233629567,56393233760639,56393234088319,56393234252159,56393234350463,56393234481535,56393234678143,56393235759487,56393238774143,56393238872447,56393239003519,56393239789951,56393240019327,56393240150399,56430641021311,56430641054079,56430641086847,56430641119615,56430641152383,56430641185151,56479895421311,56479895454079,56479895486847,56479895519615,56479895552383,56479895585151,56479930974591,56479931007359,56479931040127,56479931072895,56479931105663,56479931138431,56490205643135,56494084981119,56494085013887,56494085046655,56494085079423,56494085112191,56494085144959,56494085177727,56494085210495,56494085243263,56494085276031,56494085308799,56494085341567,56494085374335,56494085407103,56494085439871,56494085472639,56
22243455,56504950489471,56504950522239,56504950555007,56504950587775,56504950620543,56504950653311,56504950686079,56504950718847,56504950751615,56504961139071,56504961171839,56504961204607,56504961237375,56504961270143,56504961302911,56504961335679,56504961368447,56504961401215,56505064489343,56505064522111,56505064554879,56505064587647,56505064620415,56505064653183,56505064685951,56505064718719,56505064751487,56505064784255,56505064817023,56505064849791,56505064882559,56505064915327,56505064948095,56505064980863,56505065013631,56505065046399,56518714524031,56518714556799,56518714589567,56518714622335,56518716031359,56518716064127,56518716096895,56518716129663,56518716162431,56518716195199,56518716227967,56518716260735,56518716293503,56518716326271,56518716359039,56518716391807,56518716424575,56518716457343,56518716490111,56518716522879,56518716785023,56518716817791,56518716850559,56518716883327,56518716916095,56518716948863,56518716981631,56518717014399,56518717047167,56518717079935,56518717112703,5651871714 Namibia (GBP£)
,57284690051455,57284690084223,57284690116991,57284690149759,57284690182527,57284690215295,57284690248063,57284690313599,57284690346367,57284690379135,57284690411903,57311934513535,57311934546303,57311934579071,57311934611839,57318991724927,57318991790463,57318991823231,57319008797055,57319008829823,57319008862591,57319008895359,57392715465087,57392715497855,57392715530623,57392715563391,57392715596159,57578627137919,57578627170687,57579681808767,57579681841535,57579681874303,57579681907071,57579681939839,57579773362559,57579773395327,57579773428095,57579773460863,57579773493631,57579861377407,57579861410175,57579861442943,57579861475711,57579861508479,57581101154687,57581101187455,57581101220223,57581101252991,57581101285759,57582419149183,57582419181951,57582419214719,57582419247487,57582419280255,57596170535295,57596170568063,57596170600831,57596170633599,57596170666367,57596170699135,57596170731903,57596170764671,57596170797439,57596170830207,57596170862975,57596170895743,57596171092351,57596171125119,575 RestockRocketConfig.cachedVariantPreorderLimitsMarketKey = "variant_preorder_limits_for_market_382140642";window._RestockRocketConfig.cachedVariantShippingTexts = {"variant_shipping_texts":{},"updated_at":"2026-06-19T07:53:10Z","shopify_market_id":382140642,"market_locations_enabled":false}; window._RestockRocketConfig.cachedVariantShippingTextsMarketKey = "variant_shipping_texts_for_market_382140642";window._RestockRocketConfig.sellingPlans = [{"shopify_selling_plan_group_id":98590196095,"shopify_selling_plan_id":713071886719,"enabled":true,"variant_ids":[55569712382335,55569712415103,55569712480639,55570017616255,55570017550719,55569712447871,55570017583487],"product_variants_source":"custom","name":"Preorder","preorder_button_text":"Preorder","preorder_button_description":"Note: This is a preorder. Items will ship based on the estimated delivery date.","preorder_button_description_enabled":true,"preorder_button_description_background_color":"#ebebeb","preorder_button_description_text_color":"#000000"," g_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_enabled":false,"shipping_line_item_property_enabled":true,"custom_line_item_property_text":null,"preorder_button_text_color":"#ffffff","preorder_button_background_color":"#565557","preorder_button_colors_enabled":true,"markets_enabled":false,"market_id":13779632354,"shopify_market_ids":[],"use_shopify_selling_plan":true,"use_simplified_shipping_text":false,"translations":{},"payment_options":[{"billing_type":"no_remaining_balance","billing_checkout_charge_type":"percentage","billing_checkout_charge_amount":null,"billing_checkout_charge_percentage":"100.0","billing_at":"2025-07-26T09:20:38.472Z","billing_after_n_intervals":7,"billing_after_interval_type":"day","pricing_type":"no_discount","pricing_amount":null,"pricing_perSan Marino (EUR€) 610939089122,45610939121890,45610939154658,45610939187426,45610939220194,45610939252962,45610952196322,45610952229090,45610952261858,45610952294626,45610952327394,45610952360162,45610963206370,45610963239138,45610963271906,45610963304674,45610963337442,45610963370210,45661684203746,45661712974050,45661713006818,45661753213154,45661771923682,45661795647714,45661795680482,45661809443042,45662670389474,45662670422242,45662670455010,45662670487778,45662687166690,45662691066082,45662746804450,45662746837218,45662746869986,45662746902754,45662746935522,45662746968290,45662747001058,45662747033826,45662747066594,45662747099362,45662747132130,45662747164898,45662747197666,45662784782562,45662784815330,45662784848098,45662784880866,45662784913634,45662788518114,45662788550882,45662788583650,45662788616418,45662788649186,45662860017890,45662860050658,45662860083426,45662860116194,45662860148962,45662860181730,45662860214498,45662860247266,45662860280034,45662860312802,45662860345570,45662860378338,45662860411106,456629 "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":"#000000","preorder_progress_bar_background_color":"#e5e5e5","preorder_progress_bar_text_color":"#FFFFFF","preorder_progress_bar_border_radius":4,"preorder_progress_bar_show_percentage":false}],"disabled_plan_ids":[713813721471,713176482175,714631872895],"cached_at":"2026-04-09T09:16:46Z"}; if (cachedData && typeof cachedData === 'object' && cachedData.cached_at) { // Find the maximum updated_at from all items in old array const oldPlans = window._RestockRocketConfig.sellingPlans; const maxUpdatedAt = Array.isArray(oldPlans) && oldPlans.length > 0 ? oldPlans.reduce(function(max, plan) { // Parse dates for proper comparison (handles mixed ISO formats) if ( 3234,45694293836002,45696083656930,45696083689698,45696083722466,45760534937826,45760534970594,45760537592034,45760542507234,45760550535394,45760552730850,45760558137570,45760558268642,45760558596322,45764606394594,45764607803618,45764613308642,45764615897314,45764617928930,45764620157154,45764621664482,45764621697250,45767010451682,45767010517218,45767010549986,45767010746594,45767270531298,45767273513186,45767291371746,45767298482402,45767298711778,45767301726434,45767307264226,45767310868706,45767318601954,45817747276002,45817747308770,45817747341538,45817749111010,45817749143778,45817751470306,45817751503074,45817751535842,45817751568610,45817765986530,45817766117602,45817769459938,45817769525474,45817769591010,45817770279138,45817770311906,45817770344674,45817770377442,45817770410210,45817773261026,45817776177378,45817776210146,45817780601058,45817780633826,45817780666594,45817780732130,45820457779426,45820457812194,45820457844962,45820457877730,45820457910498,45820457943266,45820457976034,45820458008802 parseInt(""),}; window._RestockRocketConfig.variantsPreorderCountForMarket = {56230818709887 : null,}; window._RestockRocketConfig.variantsPreorderMaxCount = {56230818709887 : parseInt(""),}; window._RestockRocketConfig.variantsPreorderMaxCountForMarket = {56230818709887 : null,}; window._RestockRocketConfig.variantsShippingText = {56230818709887 : "",}; window._RestockRocketConfig.variantsShippingTextForMarket = {56230818709887 : null,}; window._RestockRocketConfig.selected_variant_id = 56230818709887; 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/019ecfe3-4ce2-7592-b7ce-9ed4a1b98146/restockrocket-1-530/assets/restockrocket-product.js' window._RestockRocketConfig.scriptUrlCollection = 'https://cdn.shopify.com/extensions/019ecfe3-4ce2-759São Tomé & Príncipe (STDDb) 4798687458,45824798720226,45824798752994,45824798785762,45824798818530,45824798851298,45824798884066,45824798916834,45824798949602,45824798982370,45824799015138,45824799047906,45824799080674,45824799113442,45824799146210,45824799178978,45824799211746,45824799244514,45824799277282,45824799310050,45824799342818,45824799375586,45824799408354,45824799441122,45824799473890,45824799506658,45824799539426,45824799572194,45824799604962,45824799637730,45824815366370,45824815399138,45824821952738,45824831389922,45824831422690,45824831455458,45824831488226,45824831520994,45824831553762,45828849008866,45828849041634,45828849074402,45828849107170,45828849139938,45828849172706,45828849205474,45828849238242,45828849271010,45828849303778,45828849336546,45828849369314,45828849402082,45828849434850,45828849467618,45828849500386,45828849533154,45828849565922,45828849598690,45828849631458,45828849664226,45828849696994,45828849729762,45828849762530,45828849795298,45828849828066,45828849860834,45828849893602,45828849926370,45828849 < 02,45843616006370,45843616039138,45843616071906,45843616104674,45843616137442,45843616170210,45843616202978,45843616235746,45843616268514,45843656442082,45843656474850,45843656507618,45843656540386,45843833553122,45843858587874,45843858620642,45843858686178,45843858718946,45843858751714,45843858817250,45843858981090,45843859013858,45843859079394,45843893190882,45843893223650,45843893256418,45843893289186,45843893321954,45843893354722,45843893387490,45843893420258,45843893453026,45843893485794,45843893518562,45843893551330,45843893584098,45843893616866,45843893649634,45843893682402,45843893715170,45843893747938,45843893780706,45843893813474,45843893846242,45843893879010,45843893911778,45843893944546,45843974062306,45844333854946,45844333887714,45844355809506,45844355842274,45844355907810,45844355940578,45844547043554,45844547076322,45844547109090,45844547141858,45856716652770,45856716685538,45856716718306,45856731791586,45856731824354,45856731889890,45856739131618,45856739164386,45856739197154,45856739229922,4 < 021987554,46016025854178,46016027492578,46016029753570,46016029786338,46016029819106,46016030965986,46021694849250,46021694882018,46021694914786,46021694947554,46021694980322,46021695013090,46021759271138,46021759303906,46021759336674,46021759369442,46021759402210,46021759434978,46021761368290,46021761401058,46021761466594,46021761499362,46021765923042,46021765955810,46021766021346,46021766054114,46021766086882,46021766185186,46021766217954,46021766283490,46021766316258,46021766349026,46021766414562,46021766480098,46021766512866,46022007226594,46022316818658,46022373966050,46022374097122,46022374228194,46022404931810,46022421217506,46022851264738,46022883148002,46022883311842,46022883377378,46022883442914,46022883475682,46022883770594,46025308045538,46025308274914,46025324757218,46025324789986,46025324822754,46025324921058,46025324953826,46025324986594,46025325019362,46025325052130,46025325084898,46025325117666,46025328951522,46025358541026,46025358573794,46025371746530,46025371910370,46025372008674,460253720Nigeria (NGN₦)
< 2,46038088843490,46038088876258,46038088909026,46038088941794,46038088974562,46038089007330,46038203236578,46038203269346,46038229549282,46038229582050,46038232137954,46038232170722,46038232203490,46038232236258,46038232957154,46038232989922,46038233022690,46038233055458,46038233088226,46038233120994,46038233153762,46038233186530,46038233219298,46038245540066,46038245671138,46038245736674,46038245867746,46038245933282,46038246064354,46041328025826,46042261291234,46042261324002,46042261356770,46044399927522,46044399993058,46044400025826,46044400058594,46044411592930,46044414509282,46044465627362,46044465660130,46044617867490,46044618064098,46044618096866,46044618129634,46044618326242,46044618784994,46044618817762,46044618850530,46044618883298,46044618916066,46044637495522,46044640149730,46044661350626,46044661481698,46044661612770,46044661743842,46044916842722,46044917956834,46044918022370,46046671077602,46046671175906,46046725374178,46046725406946,46046791434466,46046797856994,46046806573282,46047079465186,46
che age if (!liquidRenderedAt || typeof liquidRenderedAt !== 'number' || isNaN(liquidRenderedAt)) { console.debug('STOQ - Invalid or missing liquidRenderedAt timestamp, assuming fresh'); window._RestockRocketConfig.isLiquidCacheFresh = true; window._RestockRocketConfig.liquidCacheAge = null; } else { const now = Math.floor(Date.now() / 1000); // Current time in seconds const liquidCacheAge = now - liquidRenderedAt; // Age in seconds // Surfaced into funnel events: a stale cache means the app rendered with // outdated inventory/selling-plan data — a real "had the opportunity but // failed" cause. Negative (client clock ahead) clamps to 0. window._RestockRocketConfig.liquidCacheAge = Math.max(0, liquidCacheAge); // Handle client clock ahead of server if (liquidCacheAge Senegal (XOFFr) 90183295,54945190216063,54945190248831,54945190281599,54945190314367,54945190347135,54945190379903,54945190412671,54945190445439,54945190478207,54945198080383,54945198113151,54945198145919,54945198178687,54945198211455,54945198244223,54945198276991,54945198309759,54945198342527,54945198375295,54945198408063,54945198440831,54945216364927,54945216397695,54945216430463,54945216463231,54945216495999,54945216528767,54945225310591,54945225343359,54945225376127,54945225408895,54945225441663,54945225474431,54945261224319,54945261257087,54945261289855,54945261322623,54945261355391,54945261388159,54945261420927,54945261453695,54945261486463,54945261519231,54945261551999,54945261584767,54945261617535,54945261650303,54945261683071,54945261715839,54945261748607,54945261781375,54945261814143,54945261846911,54945261879679,54945261912447,54945261945215,54945261977983,54945267483007,54945267515775,54945292878207,54945292910975,54945292943743,54945292976511,54945293009279,54945301037439,54945301070207,54945311326591,5494531135 0) { console.debug(`STOQ - Client clock appears ahead of server by ${Math.abs(Math.round(liquidCacheAge / 60))} minutes, assuming cache fresh`); window._RestockRocketConfig.isLiquidCacheFresh = true; } else if (liquidCacheAge ,54945436762495,54945436795263,54945436828031,54945453048191,54945453080959,54945453113727,54945453146495,54945483260287,54945483293055,54945483325823,54945483358591,54945483391359,54945483424127,54945483456895,54945483489663,54945483522431,54945483555199,54945483587967,54945483620735,54945485029759,54945485062527,54945485095295,54945485128063,54945487389055,54945487421823,54945487454591,54945489486207,54945489518975,54945489551743,54945489617279,54945489650047,54945489682815,54945489715583,54945489781119,54945489813887,54945489846655,54945489879423,54945489912191,54945489944959,54945489977727,54945491353983,54945491386751,54945491419519,54945491452287,54945491485055,54945491517823,54945491550591,54945491583359,54945491616127,54945491648895,54945491681663,54945491714431,54945491747199,54945491779967,54945491812735,54945491845503,54945493647743,54945493713279,54945493746047,54945520058751,54945520091519,54945520124287,54945520157055,54945520189823,54945520222591,54945520255359,54945520288127,54945520320895,549
= LIQUID_CACHE_MAX_AGE) { console.debug(`STOQ - Liquid cache is fresh (${Math.round(liquidCacheAge / 60)} minutes old)`); window._RestockRocketConfig.isLiquidCacheFresh = true; } else { console.debug(`STOQ - Liquid cache is stale (${Math.round(liquidCacheAge / 60)} minutes old, max ${Math.round(LIQUID_CACHE_MAX_AGE / 60)} minutes)`); window._RestockRocketConfig.isLiquidCacheFresh = false; } } function checkSettingsExpiry(settings) { try { if (!settings || !settings.updated_at) { console.debug('STOQ - Invalid settings data structure'); return null; } if (!settings.cache) { console.debug('STOQ - settings caching disabled'); return null; } // Check if translations are enabled but missing from cache // This handles the backfill period where DB has translations but metafield doesn't if (settings.multi_language_enabled) { if (!settings.translations) { // Translations enabled but no 8414591,55196408447359,55196409364863,55196409397631,55196409430399,55196409463167,55196409495935,55196409528703,55196409561471,55196409594239,55196409627007,55196410413439,55196410446207,55196410478975,55196410511743,55196410544511,55196410577279,55196410610047,55196410642815,55196410675583,55196411330943,55196411363711,55196411396479,55196411429247,55196411462015,55196411494783,55196411527551,55196411560319,55196411593087,55196411625855,55196411658623,55196411691391,55196412084607,55196412117375,55196412150143,55196412182911,55211128848767,55211128881535,55211128914303,55211128947071,55211128979839,55211129012607,55211129045375,55211129078143,55211129110911,55211129143679,55239586152831,55239586185599,55239586447743,55239659094399,55239659127167,55239659192703,55239659258239,55239659323775,55239683735935,55239683834239,55239703953791,55239703986559,55239704019327,55239704052095,55239704084863,55239704117631,55239704150399,55239704183167,55239704215935,55239704281471,55239704314239,55239704347007,55239714374North Macedonia (MKDден)
age = Date.now() - updatedAt.getTime(); if (age 55333738283391,55333738316159,55333738348927,55333738381695,55333752865151,55372770935167,55464695333247,55464695366015,55464695398783,55464695431551,55464786264447,55464786297215,55464786329983,55464786362751,55464786395519,55464786428287,55464801927551,55464801960319,55464801993087,55464802025855,55464813035903,55464813068671,55464813101439,55464813134207,55464813166975,55464813199743,55482461389183,55482461421951,55482461454719,55482461487487,55482461520255,55482461553023,55482489176447,55482489209215,55482489241983,55482489274751,55482489307519,55482489340287,55482515620223,55482515652991,55482515685759,55482515718527,55482526794111,55482526826879,55482526859647,55482526892415,55482526925183,55482526957951,55482539016575,55482539049343,55482539082111,55482539114879,55482539147647,55482539180415,55482573554047,55482573586815,55482573619583,55482573652351,55482573685119,55482573717887,55482589643135,55482589675903,55482589708671,55482589741439,55482589774207,55482589806975,55482603536767,55482603569535,5548 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') // Fire stoq_initialized once per page load so the funnel pipeline has a definitive // "our code ran on this page" signal independent of any cusSerbia (RSDРСД) 932479,56166204965247,56166204998015,56189671768447,56189671801215,56189671833983,56189672456575,56189672489343,56189672522111,56189672554879,56189672620415,56189672653183,56189672685951,56189673177471,56189673243007,56189673275775,56189673472383,56189673537919,56189673570687,56189673734527,56266456596863,56266456629631,56266456662399,56266456695167,56266468819327,56266468852095,56266468884863,56266468917631,56266488480127,56277227274623,56277238088063,56277238120831,56277238153599,56279228547455,56279228612991,56300214583679,56300214616447,56300214649215,56300214681983,56300214714751,56385022361983,56385022460287,56385022558591,56385023345023,56385023476095,56385023574399,56385024295295,56385024360831,56385024393599,56385024426367,56385024459135,56385024491903,56385027768703,56385027867007,56385027932543,56385027965311,56385028030847,56385028063615,56385028129151,56385204388223,56385204420991,56385204453759,56385204486527,56385205797247,56385205862783,56385205895551,56385205928319,56386096628095,563860966608
ctedVariantId || '', liquid_rendered_at: _stoqInitConfig.liquidRenderedAt || 0, app_version: _stoqInitConfig.appVersion || '', liquid_cache_age: _stoqInitConfig.liquidCacheAge, // Selected variant's stock posture as our app saw it at render — explains // whether we *should* have treated it as a preorder candidate. inventory_policy: (_stoqInitConfig.variantsInventoryPolicy || {})[_stoqSelectedVariantId] || '', inventory_quantity: (_stoqInitConfig.variantsInventoryQuantity || {})[_stoqSelectedVariantId], }); } catch (e) { console.debug('STOQ - stoq_initialized publish failed:', e); } function applyTranslations(settings) { try { // Skip translation logic entirely if multi-language is not enabled if (!settings || !settings.multi_language_enabled) { return settings; } if (!settings.translations) { console.debug('STOQ - No translations found, skipping translation'); return settings; } const n 6393234350463,56393234481535,56393234678143,56393235759487,56393238774143,56393238872447,56393239003519,56393239789951,56393240019327,56393240150399,56430641021311,56430641054079,56430641086847,56430641119615,56430641152383,56430641185151,56479895421311,56479895454079,56479895486847,56479895519615,56479895552383,56479895585151,56479930974591,56479931007359,56479931040127,56479931072895,56479931105663,56479931138431,56490205643135,56494084981119,56494085013887,56494085046655,56494085079423,56494085112191,56494085144959,56494085177727,56494085210495,56494085243263,56494085276031,56494085308799,56494085341567,56494085374335,56494085407103,56494085439871,56494085472639,56494085505407,56494085538175,56494085570943,56494085636479,56494085702015,56494085767551,56494085800319,56494085833087,56494085865855,56494085898623,56494085931391,56494086095231,56494086160767,56494086226303,56494086259071,56494086291839,56494086324607,56494086357375,56494086422911,56494086455679,56494086488447,56494086521215,56494086553983,56494
ocale); } delete settings.translations; return settings; } catch (e) { console.debug('STOQ - error applying translations:', e); return settings; } } // Setup event listener for cart selling plan updates // This must be called before any scripts are loaded to avoid race conditions function setupCartSellingPlanUpdater(settings) { // Setup listener regardless - updateCartSellingPlans has its own guards // This ensures cleanup happens even when preorders are disabled globally // Listen for stoq:inventory-data-loaded event dispatched by api.js window.addEventListener('stoq:inventory-data-loaded', function(event) { console.debug('STOQ - Inventory data loaded, updating cart selling plans'); if (window._RestockRocket && window._RestockRocket.updateCartSellingPlans) { window._RestockRocket.updateCartSellingPlans() .then(hasUpdates => { if (hasUpdates) { console.debug('STOQ - cart selling plans update 20415,56505064653183,56505064685951,56505064718719,56505064751487,56505064784255,56505064817023,56505064849791,56505064882559,56505064915327,56505064948095,56505064980863,56505065013631,56505065046399,56518714524031,56518714556799,56518714589567,56518714622335,56518716031359,56518716064127,56518716096895,56518716129663,56518716162431,56518716195199,56518716227967,56518716260735,56518716293503,56518716326271,56518716359039,56518716391807,56518716424575,56518716457343,56518716490111,56518716522879,56518716785023,56518716817791,56518716850559,56518716883327,56518716916095,56518716948863,56518716981631,56518717014399,56518717047167,56518717079935,56518717112703,56518717145471,56518717374847,56518717407615,56518717440383,56518717473151,56518717538687,56518717571455,56518717604223,56518717636991,56518717669759,56518717833599,56518717866367,56518717899135,56518717931903,56518717964671,56518717997439,56518718030207,56518718062975,56518718095743,56518718128511,56518718161279,56518718194047,56518790545791,5651879057855Norway (GBP£)
ma-Version'] = window.Shopify.theme.schema_version; headers['X-Shopify-Theme-Store-Id'] = window.Shopify.theme.theme_store_id; } fetch( `${window._RestockRocketConfig.host}/api/v1/setting.json?translation_locale=${window._RestockRocketConfig.normalizedLocale}`, { headers } ) .then(function(response) { if (!response.ok) { throw new Error('Network response was not ok'); } return response.json(); }) .then(function(settings) { initializeScripts(settings); }) .catch(function(error) { // If request failed and we have cached settings (even if expired), use them as fallback 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 fet 392715497855,57392715530623,57392715563391,57392715596159,57578627137919,57578627170687,57579681808767,57579681841535,57579681874303,57579681907071,57579681939839,57579773362559,57579773395327,57579773428095,57579773460863,57579773493631,57579861377407,57579861410175,57579861442943,57579861475711,57579861508479,57581101154687,57581101187455,57581101220223,57581101252991,57581101285759,57582419149183,57582419181951,57582419214719,57582419247487,57582419280255,57596170535295,57596170568063,57596170600831,57596170633599,57596170666367,57596170699135,57596170731903,57596170764671,57596170797439,57596170830207,57596170862975,57596170895743,57596171092351,57596171125119,57596171157887,57596171190655,57596171223423,57596171256191,57596171288959,57596171321727,57596171354495,57596171387263,57596171420031,57596171452799,57596175384959,57596175417727,57596175450495,57596175483263,57596176138623,57596176171391,57596176204159,57596176236927,57596176269695,57596176302463,57596176335231,57596176367999,57596176662911,575961
); } function initializeScripts(settings) { settings = applyTranslations(settings); window._RestockRocketConfig.settings = settings; console.debug(`STOQ - settings configured for ${window._RestockRocketConfig.pageType}`); // Stale-Liquid resilience (default-on, per-shop opt-out via the // `disable_refresh_on_stale_liquid` Toggle, surfaced as the negative // `disable_refresh_on_stale_liquid` flag in settings.json so that // `undefined` -- in CDN-cached metafield payloads that predate this // key -- reads as `!undefined === true` and gets default-on behavior // immediately, no metafield rewrite required). // When the Liquid CDN cache is older than LIQUID_CACHE_MAX_AGE the in-page // selling_plans / integrations metafields can be wrong; refresh both from // the API before launching scripts. Race against a 1000ms timeout so a slow // API can't block init indefinitely. If the timeout wins, the in-flight // fetches still complete and update window._RestoSeychelles (GBP£) 1215,57602996633983,57602996666751,57602996699519,57602996732287,57602996765055,57602996797823,57602996830591,57602996863359,57602996928895,57602996961663,57602996994431,57602997027199,57602997059967,57602997092735,57602997223807,57602997256575,57602997289343,57602997322111,57602997354879,57602997387647,57602997420415,57602997453183,57602997485951,57602997518719,57602997715327,57602997879167,57602998075775,57602998206847,57602998239615,57602998337919,57602998370687,57602998403455,57602998501759,57602998534527,57602998600063,57602998894975,57602998960511,57602999026047,57602999124351,57602999157119,57602999189887,57602999222655,57603001090431,57603001123199,57603001155967,57603001188735,57603001221503,57603001254271,57603001287039,57603001614719,57603001647487,57603001680255,57603001713023,57603001745791,57603001778559,57603001844095,57603001876863,57603001942399,57603002007935,57603002040703,57603002073471,57603002106239,57603002204543,57603002237311,57603002270079,57603002302847,57603002335615,57603002368383 ge":{"aspect_ratio":1.004,"height":1530,"width":1536,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/Screenshot2023-04-29at11.38.04.png?v=1682764728"},"aspect_ratio":1.004,"height":1530,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/files\/Screenshot2023-04-29at11.38.04.png?v=1682764728","width":1536},{"alt":null,"id":31825538810082,"position":3,"preview_image":{"aspect_ratio":1.004,"height":1530,"width":1536,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/Screenshot2023-04-29at11.38.13.png?v=1682764728"},"aspect_ratio":1.004,"height":1530,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/files\/Screenshot2023-04-29at11.38.13.png?v=1682764728","width":1536}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003cmeta charset=\"utf-8\"\u003e\n\u003cp\u003eThe lightweight tube for road.\u003c\/p\u003e\n\u003cul\u003e\n\u003cli\u003eSuitable for disc and rim brakes\u003c\/li\u003e\n\u003cli\u003eWeight: 38g\u003c\/li\u003e\n\u003cli\u003eNew size: 700x18-32mm\u003c\/li
907327714 : parseInt(""),44052907360482 : parseInt(""),44052907393250 : parseInt(""),44052907426018 : parseInt(""),44052907458786 : parseInt(""),44052907491554 : parseInt(""),}; window._RestockRocketConfig.variantsPreorderCountForMarket = {44052907327714 : null,44052907360482 : null,44052907393250 : null,44052907426018 : null,44052907458786 : null,44052907491554 : null,}; window._RestockRocketConfig.variantsPreorderMaxCount = {44052907327714 : parseInt(""),44052907360482 : parseInt(""),44052907393250 : parseInt(""),44052907426018 : parseInt(""),44052907458786 : parseInt(""),44052907491554 : parseInt(""),}; window._RestockRocketConfig.variantsPreorderMaxCountForMarket = {44052907327714 : null,44052907360482 : null,44052907393250 : null,44052907426018 : null,44052907458786 : null,44052907491554 : null,}; window._RestockRocketConfig.variantsShippingText = {44052907327714 : "",44052907360482 : "",44052907393250 : "",44052907426018 : "",44052907458786 : "",44052907491554 : "",}; window._Restock
onfig.scriptUrlCollectionBis = 'https://cdn.shopify.com/extensions/019ecfe3-4ce2-7592-b7ce-9ed4a1b98146/restockrocket-1-530/assets/restockrocket-collection-bis.js' window._RestockRocketConfig.scriptHost = window._RestockRocketConfig.scriptUrlProduct.substring(0, window._RestockRocketConfig.scriptUrlProduct.lastIndexOf('/') + 1) window._RestockRocketConfig.host = 'https://app.restockrocket.io' // Deployed extension build number, read from the CDN asset host Shopify generates: // https://cdn.shopify.com/extensions/ uuid>/Slovenia (EUR€)
< Rwanda (RWFFRw) tomer interaction. // Detected variants: the variants present in this page's Liquid context (product page has them; // collection/index/etc. don't expose variants from Liquid). Used to disambiguate "embed didn't // load" vs "embed loaded but the variant wasn't a preorder/BIS candidate" in order debug. try { const _stoqInitConfig = window._RestockRocketConfig; const _stoqDetectedVariantIds = (_stoqInitConfig.product && Array.isArray(_stoqInitConfig.product.variants)) ? _stoqInitConfig.product.variants.map(function(v) { return v.id }) : []; const _stoqSelectedVariantId = _stoqInitConfig.selected_variant_id; Shopify?.analytics?.publish?.('stoq_initialized', { cart_token: _stoqInitConfig.cartToken || '', page_url: window.location.href, page_type: _stoqInitConfig.pageType || '', shop_domain: _stoqInitConfig.shop || '', market_id: _stoqInitConfig.marketId || '', detected_variant_ids: _stoqDetectedVariantIds, selected_variant_id: _stoqSele
ormalizedLocale = 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;South Africa (GBP£)
s) { // Setup listener regardless - updateCartSellingPlans has its own guards // This ensures cleanup happens even when preorders are disabled globally // Listen for stoq:inventory-data-loaded event dispatched by api.js window.addEventListener('stoq:inventory-data-loaded', function(event) { console.debug('STOQ - Inventory data loaded, updating cart selling plans'); if (window._RestockRocket && 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 = hrow new Error('Network response was not ok'); } return response.json(); }) .then(function(settings) { initializeScripts(settings); }) .catch(function(error) { // If request failed and we have cached settings (even if expired), use them as fallback 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}`); San Marino (EUR€)
negative // `disable_refresh_on_stale_liquid` flag in settings.json so that // `undefined` -- in CDN-cached metafield payloads that predate this // key -- reads as `!undefined === true` and gets default-on behavior // immediately, no metafield rewrite required). // When the Liquid CDN cache is older than LIQUID_CACHE_MAX_AGE the in-page // selling_plans / integrations metafields can be wrong; refresh both from // the API before launching scripts. Race against a 1000ms timeout so a slow // API can't block init indefinitely. If the timeout wins, the in-flight // fetches still complete and update window._RestockRocketConfig — the // bundle re-reads sellingPlans/integrations on every interaction, so the // late-arriving values benefit subsequent renders even though the first // paint may use the Liquid-cached values. On any failure the existing // Liquid-loaded values stay in place via fetchEmbedConfig's catch. if (!window._RestockRocketConfig.isLiquidCac South Sudan (GBP£) anUpdater(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); }) // STOQ-1520: serve the lean back-in-stock-only build (no preorder/hijack code) // only to shops with NO preorder plans. Use the full build if preorder is on, // an enabled offer exists, or a disabled-but-kept plan id remains (cart sweep // must still strip those). Rationale in the PR. 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.p
ctions: full build so the cart sweep runs. createRestockRocketScript(window._RestockRocketConfig.scriptUrlCollection); } else { console.debug(`STOQ - no scripts enabled for ${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); } }
São Tomé & Príncipe (STDDb) Spain (EUR€) .stoq-hide-buy-now .shopify-payment-button{display:none!important}.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;}
Senegal (XOFFr)

 

St. Helena (SHP£)
Serbia (RSDРСД)
Sudan (GBP£)
Seychelles (GBP£)

We said it already knows. And now it knows better. Proven worthy time and again at Rampage, reconfigured to fit the bill as Zero-Hesitation Go-To for whatever your pleasure. Un-rack it for all the park laps, pedal it on character-building epics, push it up spooky steep darksides nobody knows about. Whatever the question, unhard your decisions.Svalbard & Jan Mayen (GBP£)   YOU ASK. IT GIVES. Sierra Leone (SLLLe) .

Sweden (SEKkr)
Slovakia (EUR€)
Switzerland (CHFCHF)

165 MM Slovenia (EUR€)

FRAME TRAVELTanzania (TZSSh)

Somalia (GBP£)

170Togo (XOFFr) MM

South Africa (GBP£)

FORK TRAVEL

Tristan da Cunha (GBP£)
South Sudan (GBP£)

29"

Tunisia (GBP£)

FRONT WHEEL SIZE

Spain (EUR€)
Türkiye (GBP£)

27.5"

St. Helena (SHP£)

REAR WHEEL SIZE

Uganda (UGXUSh)
Sudan (GBP£)

63.5°

Ukraine (UAH₴)

HEAD TUBE ANGLE

Svalbard & Jan Mayen (GBP£)
United Kingdom (GBP£)

76.9°

Sweden (SEKkr)

EFF. SEAT ANGLE

United States (GBP£)
Switzerland (CHFCHF)
Vatican City (EUR€)

HIGHLIGHTS

Tanzania (TZSSh)
  • Fox Factory 38 Grip 2 and Fox Factory DHX2 shockWestern Sahara (MADد.م.)
  • Fox Transfer dropper post Togo (XOFFr)
  • MX DT Swiss EX1700 custom wheelsetZambia (GBP£)
  • 4 piston brakesTristan da Cunha (GBP£)
  • ODI Elite Pro grips Zimbabwe (USD$)
  • 220mm front and 200mm rear rotorsTunisia (GBP£)
  • Maxxis Assegai 2.5 and DHR II 2.4 EXO+ tyres
  • SLS Coil Spring on frame onlyTürkiye (GBP£)
Uganda (UGXUSh) © 2026,
ProjektRide
.

FRAME HIGHLIGHTS

Ukraine (UAH₴) Powered by
    Shopify

American ExpressApple Pay Maestro Mastercard PayPal
KlarnaMEDIUM 5'5" - 5'11"
LARGEShop Pay

  • e\n\u003ctr\u003e\n\u003cth\u003eSeatpost\u003c\/th\u003e\n\u003ctd\u003eNewmen Advanced, Carbon, 27.2mm\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eSeat post = dropper Yes\/No\u003c\/th\u003e\n\u003ctd\u003eNO\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eFront light\u003c\/th\u003e\n\u003ctd\u003eACID Front Light PRO-E 150 X-Connect, 12V, DC\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eRear light\u003c\/th\u003e\n\u003ctd\u003eACID Mudguard Rear Light PRO-E, 12V, DC\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eKickstand\u003c\/th\u003e\n\u003ctd\u003eACID FM Pure Kickstand\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eMudguard\u003c\/th\u003e\n\u003ctd\u003eACID 60 BB-Mount\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eBell\u003c\/th\u003e\n\u003ctd\u003eKnog Oi\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eCarrier\u003c\/th\u003e\n\u003ctd\u003eACID Gravel\u003c\/td\u003e \n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eEngine\u003c\/th\u003e\n\u003ctd\u003eBosch Drive Unit Performance SX max. 60Nm (BDU31)\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eBattery\u003c\/th\u003e\n\u003ctd\u003eBosch CompactTube 400\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eCharger\u003c\/th\u003e\n\u003ctd\u003eBosch 2A\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eRemote\u003c\/th\u003e\n\u003ctd\u003eBosch System Control, incl. Mini Remote\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eNet weight (kg)\u003c\/th\u003e\n\u003ctd\u003e15.6\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eGross weight (kg)\u003c\/th\u003e\n\u003ctd\u003e15.62\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eMax. system weight (kg)\u003c\/th\u003e\n\u003ctd\u003e130\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eMax. rider weight (kg)\u003c\/th\u003e\n\u003ctd\u003e100\u003c\/td\u003e\n\u0
    03c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eBody size\u003c\/th\u003e\n\u003ctd\u003e1.77m - 1.87m\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eAccessories\u003c\/th\u003e\n\u003ctd\u003e93995,93335,93364,93490\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\u003c\/table\u003e","published_at":"2026-06-13T11:49:15+01:00","created_at":"2026-06-13T11:49:15+01:00","vendor":"CUBE","type":"Hybrid Gravel","tags":["Bosch CompactTube 400","Bosch Drive Unit Performance SX max. 60Nm (BDU31)","CUBE","Electric Bike","Hybrid Gravel","NUROAD HYBRID C:62","spo-cs-disabled","spo-default","spo-disabled","spo-notify-me-disabled","SWITCH"],"price":389900,"price_min":389900,"price_max":389900,"available":false,"price_varies":false,"compare_at_price":null,"compare_at_price_min":0,"compare_at_price_max":0,"compare_at_price_varies":false,"variants":[{"id":57747171541375,"title":"Step-over \/ reedbeige\/black \/ L","option1":"Step-over","option2":"reedbeige\/black","option3":"L","sku":"117210L","requires_s hipping":true,"taxable":true,"featured_image":{"id":84875931091327,"product_id":15720153022847,"position":1,"created_at":"2026-06-13T11:49:15+01:00","updated_at":"2026-06-13T11:49:18+01:00","alt":"CUBE NUROAD HYBRID C:62 RACE 400X FE REEDBEIGE\/BLACK","width":2000,"height":1135,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/117210.jpg?v=1781347758","variant_ids":[57747171541375,57747171574143,57747171606911,57747171639679,57747171672447]},"available":false,"name":"CUBE NUROAD HYBRID C:62 RACE 400X FE REEDBEIGE\/BLACK - Step-over \/ reedbeige\/black \/ L","public_title":"Step-over \/ reedbeige\/black \/ L","options":["Step-over","reedbeige\/black","L"],"price":389900,"weight":15620,"compare_at_price":null,"inventory_management":"shopify","barcode":"4054571500052","featured_media":{"alt":"CUBE NUROAD HYBRID C:62 RACE 400X FE REEDBEIGE\/BLACK","id":71336079950207,"position":1,"preview_image":{"aspect_ratio":1.762,"height":1135,"width":2000,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/117210.jpg?v=1781347758"
}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":57747171574143,"title":"Step-over \/ reedbeige\/black \/ M","option1":"Step-over","option2":"reedbeige\/black","option3":"M","sku":"117210M","requires_shipping":true,"taxable":true,"featured_image":{"id":84875931091327,"product_id":15720153022847,"position":1,"created_at":"2026-06-13T11:49:15+01:00","updated_at":"2026-06-13T11:49:18+01:00","alt":"CUBE NUROAD HYBRID C:62 RACE 400X FE REEDBEIGE\/BLACK","width":2000,"height":1135,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/117210.jpg?v=1781347758","variant_ids":[57747171541375,57747171574143,57747171606911,57747171639679,57747171672447]},"available":false,"name":"CUBE NUROAD HYBRID C:62 RACE 400X FE REEDBEIGE\/BLACK - Step-over \/ reedbeige\/black \/ M","public_title":"Step-over \/ reedbeige\/black \/ M","options":["Step-over","reedbeige\/black","M"],"price":389900,"weight":15620,"compare_at_price":null,"inventory_management":"shopify","ba rcode":"4054571500045","featured_media":{"alt":"CUBE NUROAD HYBRID C:62 RACE 400X FE REEDBEIGE\/BLACK","id":71336079950207,"position":1,"preview_image":{"aspect_ratio":1.762,"height":1135,"width":2000,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/117210.jpg?v=1781347758"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":57747171606911,"title":"Step-over \/ reedbeige\/black \/ S","option1":"Step-over","option2":"reedbeige\/black","option3":"S","sku":"117210S","requires_shipping":true,"taxable":true,"featured_image":{"id":84875931091327,"product_id":15720153022847,"position":1,"created_at":"2026-06-13T11:49:15+01:00","updated_at":"2026-06-13T11:49:18+01:00","alt":"CUBE NUROAD HYBRID C:62 RACE 400X FE REEDBEIGE\/BLACK","width":2000,"height":1135,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/117210.jpg?v=1781347758","variant_ids":[57747171541375,57747171574143,57747171606911,57747171639679,57747171672447]},"available":false,"name":"CUBE NUR
OAD HYBRID C:62 RACE 400X FE REEDBEIGE\/BLACK - Step-over \/ reedbeige\/black \/ S","public_title":"Step-over \/ reedbeige\/black \/ S","options":["Step-over","reedbeige\/black","S"],"price":389900,"weight":15620,"compare_at_price":null,"inventory_management":"shopify","barcode":"4054571500038","featured_media":{"alt":"CUBE NUROAD HYBRID C:62 RACE 400X FE REEDBEIGE\/BLACK","id":71336079950207,"position":1,"preview_image":{"aspect_ratio":1.762,"height":1135,"width":2000,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/117210.jpg?v=1781347758"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":57747171639679,"title":"Step-over \/ reedbeige\/black \/ XL","option1":"Step-over","option2":"reedbeige\/black","option3":"XL","sku":"117210XL","requires_shipping":true,"taxable":true,"featured_image":{"id":84875931091327,"product_id":15720153022847,"position":1,"created_at":"2026-06-13T11:49:15+01:00","updated_at":"2026-06-13T11:49:18+01:00","alt":"CUBE NUROAD HYBRID C:62 RACE 400X FE REEDBEIGE\/BLACK","width":2000,"height":1135,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/117210.jpg?v=1781347758","variant_ids":[57747171541375,57747171574143,57747171606911,57747171639679,57747171672447]},"available":false,"name":"CUBE NUROAD HYBRID C:62 RACE 400X FE REEDBEIGE\/BLACK - Step-over \/ reedbeige\/black \/ XL","public_title":"Step-over \/ reedbeige\/black \/ XL","options":["Step-over","reedbeige\/black","XL"],"price":389900,"weight":15620,"compare_at_price":null,"inventory_management":"shopify","barcode":"4054571500069","featured_media":{"alt":"CUBE NUROAD HYBRID C:62 RACE 400X FE REEDBEIGE\/BLACK","id":71336079950207,"position":1,"preview_image":{"aspect_ratio":1.762,"height":1135,"width":2000,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/117210.jpg?v=1781347758"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}},{"id":57747171672447,"title":"Step-over \/ reedbeige\/black \/ XS","option1":"Step-o
ver","option2":"reedbeige\/black","option3":"XS","sku":"117210XS","requires_shipping":true,"taxable":true,"featured_image":{"id":84875931091327,"product_id":15720153022847,"position":1,"created_at":"2026-06-13T11:49:15+01:00","updated_at":"2026-06-13T11:49:18+01:00","alt":"CUBE NUROAD HYBRID C:62 RACE 400X FE REEDBEIGE\/BLACK","width":2000,"height":1135,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/117210.jpg?v=1781347758","variant_ids":[57747171541375,57747171574143,57747171606911,57747171639679,57747171672447]},"available":false,"name":"CUBE NUROAD HYBRID C:62 RACE 400X FE REEDBEIGE\/BLACK - Step-over \/ reedbeige\/black \/ XS","public_title":"Step-over \/ reedbeige\/black \/ XS","options":["Step-over","reedbeige\/black","XS"],"price":389900,"weight":15620,"compare_at_price":null,"inventory_management":"shopify","barcode":"4054571500021","featured_media":{"alt":"CUBE NUROAD HYBRID C:62 RACE 400X FE REEDBEIGE\/BLACK","id":71336079950207,"position":1,"preview_image":{"aspect_ratio":1.762,"height":1135,"widt h":2000,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/117210.jpg?v=1781347758"}},"requires_selling_plan":false,"selling_plan_allocations":[],"quantity_rule":{"min":1,"max":null,"increment":1}}],"images":["\/\/projektride.co.uk\/cdn\/shop\/files\/117210.jpg?v=1781347758","\/\/projektride.co.uk\/cdn\/shop\/files\/117210_D_00.jpg?v=1781347758","\/\/projektride.co.uk\/cdn\/shop\/files\/117210_D_01.jpg?v=1781347758","\/\/projektride.co.uk\/cdn\/shop\/files\/117210_D_02.jpg?v=1781347758","\/\/projektride.co.uk\/cdn\/shop\/files\/117210_D_03.jpg?v=1781347758","\/\/projektride.co.uk\/cdn\/shop\/files\/117210_D_04.jpg?v=1781347758"],"featured_image":"\/\/projektride.co.uk\/cdn\/shop\/files\/117210.jpg?v=1781347758","options":["Frame Style","Colour","Size"],"media":[{"alt":"CUBE NUROAD HYBRID C:62 RACE 400X FE REEDBEIGE\/BLACK","id":71336079950207,"position":1,"preview_image":{"aspect_ratio":1.762,"height":1135,"width":2000,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/117210.jpg?v=1781347758"},"aspect_ratio":1.762
e\n\u003cth\u003eEngine\u003c\/th\u003e\n\u003ctd\u003eBosch Drive Unit Performance Line CX max. 120Nm (BDU38)\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eEngine ready for the Bosch 120 Nm update?\u003c\/th\u003e\n\u003ctd\u003eYES\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eBattery\u003c\/th\u003e\n\u003ctd\u003eBosch PowerTube 800\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eCharger\u003c\/th\u003e\n\u003ctd\u003eBosch 4A\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eRemote\u003c\/th\u003e\n\u003ctd\u003eBosch Mini Remote\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eDisplay\u003c\/th\u003e\n\u003ctd\u003eBosch Kiox 400C\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eNet weight (kg)\u003c\/th\u003e\n\u003ctd\u003e24.8\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eGross weight (kg)\u003c\/th\u003e\n\u003ctd\u003e28.7\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003c th\u003eMax. system weight (kg)\u003c\/th\u003e\n\u003ctd\u003e160\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eMax. rider weight (kg)\u003c\/th\u003e\n\u003ctd\u003e125\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eBody size\u003c\/th\u003e\n\u003ctd\u003e1.77m - 1.87m\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth\u003eAccessories\u003c\/th\u003e\n\u003ctd\u003e93250,93468,93362,93469,93470,93490\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\u003c\/table\u003e","published_at":"2026-06-13T11:52:01+01:00","created_at":"2026-06-13T11:52:02+01:00","vendor":"CUBE","type":"Hybrid MTB","tags":["Bosch Drive Unit Performance Line CX max. 120Nm (BDU38)","Bosch PowerTube 800","CUBE","Electric Bike","Hybrid MTB","NEW 2026","spo-cs-disabled","spo-default","spo-disabled","spo-notify-me-disabled","STEREO HYBRID ONE44 HPC"],"price":519900,"price_min":519900,"price_max":519900,"available":false,"price_varies":false,"compare_at_price":null,"compare_at_price_min":0,