and authorize you to charge my payment method at the prices, frequency and dates listed on this page until my order is fulfilled or I cancel, if permitted. Singular
This item is a deferred, subscription, or recurring purchase. By continuing, I agree to the cancellation policy
and authorize you to charge my payment method at the prices, frequency and dates listed on this page until my order is fulfilled or I cancel, if permitted.
window.appBlockPlacements ||= [];
if (window.klarnaAppBlocksManager) {
window.klarnaAppBlocksManager.push({
productVariants: [{"id":56189672259967,"title":"Blue \/ Small","option1":"Blue","option2":"Small","option3":null,"sku":null,"requires_shipping":true,"taxable":true,"featured_image":null,"available":false,"name":"Marin Alpine Trail XR - Blue \/ Small","public_title":"Blue \/ Small","options":["Blue","Small"],"price":240350,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[]},{"id":56189672292735,"title":"Blue \/ Medium","option1":"Blue","option2":"Medium","option3":null,"sku":"735967002","requires_shipping":true,"taxable":true,"featured_image":null,"available":false,"name":"Marin Alpine Trail XR - Blue \/ Medium","public_title":"Blue \/ Medium","options":["Blue","Medium"],"price":240350,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[]},{"id":56189672325503,"title":"Blue \/ Large","option1":"Blue","option2":"Large","option3":null,"sku":null,"requires_shipping":true,"taxable":true,"featured_image":null,"available":false,"name":"Marin Alpine Trail XR - Blue \/ Large","public_title":"Blue \/ Large","options":["Blue","Large"],"price":240350,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[]},{"id":56189672358271,"title":"Blue \/ Extra Large","option1":"Blue","option2":"Extra Large","option3":null,"sku":"735967004","requires_shipping":true,"taxable":true,"featured_image":null,"available":false,"name":"Marin Alpine Trail XR - Blue \/ Extra Large","public_title":"Blue \/ Extra Large","options":["Blue","Extra Large"],"price":240350,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[]},{"id":56189672391039,"title":"White \/ Small","option1":"White","option2":"Small","option3":null,"sku":"737520001","requires_shipping":true,"taxable":true,"featured_image":null,"available":false,"name":"Marin Alpine Trail XR - White \/ Small","public_title":"White \/ Small","options":["White","Small"],"price":449900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[]},{"id":56189672423807,"title":"White \/ Medium","option1":"White","option2":"Medium","option3":null,"sku":"737520002","requires_shipping":true,"taxable":true,"featured_image":null,"available":false,"name":"Marin Alpine Trail XR - White \/ Medium","public_title":"White \/ Medium","options":["White","Medium"],"price":449900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[]},{"id":56189672456575,"title":"White \/ Large","option1":"White","option2":"Large","option3":null,"sku":"737520003","requires_shipping":true,"taxable":true,"featured_image":null,"available":true,"name":"Marin Alpine Trail XR - White \/ Large","public_title":"White \/ Large","options":["White","Large"],"price":449900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[]},{"id":56189672489343,"title":"White \/ Extra Large","option1":"White","option2":"Extra Large","option3":null,"sku":"737520004","requires_shipping":true,"taxable":true,"featured_image":null,"available":true,"name":"Marin Alpine Trail XR - White \/ Extra Large","public_title":"White \/ Extra Large","options":["White","Extra Large"],"price":449900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[]}],
templateName: 'product',
dataKey: 'top-strip-promotion-badge',
storefrontCurrency: 'GBP',
storefrontCountry: 'GB',
storefrontLanguage: 'en',
shopLocale: 'en',
shopDomain: 'projektride.co.uk',
variantPrice: '449900',
cartPrice: '0',
selector: 'shopify-osm-AZkxmY3VSTnFmNnNiW__klarna_on_site_messaging_app_block_k6rYHt',
topPadding: '0',
bottomPadding: '0',
});
} else {
window.appBlockPlacements.push({
productVariants: [{"id":56189672259967,"title":"Blue \/ Small","option1":"Blue","option2":"Small","option3":null,"sku":null,"requires_shipping":true,"taxable":true,"featured_image":null,"available":false,"name":"Marin Alpine Trail XR - Blue \/ Small","public_title":"Blue \/ Small","options":["Blue","Small"],"price":240350,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[]},{"id":56189672292735,"title":"Blue \/ Medium","option1":"Blue","option2":"Medium","option3":null,"sku":"735967002","requires_shipping":true,"taxable":true,"featured_image":null,"available":false,"name":"Marin Alpine Trail XR - Blue \/ Medium","public_title":"Blue \/ Medium","options":["Blue","Medium"],"price":240350,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[]},{"id":56189672325503,"title":"Blue \/ Large","option1":"Blue","option2":"Large","option3":null,"sku":null,"requires_shipping":true,"taxable":true,"featured_image":null,"available":false,"name":"Marin Alpine Trail XR - Blue \/ Large","public_title":"Blue \/ Large","options":["Blue","Large"],"price":240350,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[]},{"id":56189672358271,"title":"Blue \/ Extra Large","option1":"Blue","option2":"Extra Large","option3":null,"sku":"735967004","requires_shipping":true,"taxable":true,"featured_image":null,"available":false,"name":"Marin Alpine Trail XR - Blue \/ Extra Large","public_title":"Blue \/ Extra Large","options":["Blue","Extra Large"],"price":240350,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[]},{"id":56189672391039,"title":"White \/ Small","option1":"White","option2":"Small","option3":null,"sku":"737520001","requires_shipping":true,"taxable":true,"featured_image":null,"available":false,"name":"Marin Alpine Trail XR - White \/ Small","public_title":"White \/ Small","options":["White","Small"],"price":449900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[]},{"id":56189672423807,"title":"White \/ Medium","option1":"White","option2":"Medium","option3":null,"sku":"737520002","requires_shipping":true,"taxable":true,"featured_image":null,"available":false,"name":"Marin Alpine Trail XR - White \/ Medium","public_title":"White \/ Medium","options":["White","Medium"],"price":449900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[]},{"id":56189672456575,"title":"White \/ Large","option1":"White","option2":"Large","option3":null,"sku":"737520003","requires_shipping":true,"taxable":true,"featured_image":null,"available":true,"name":"Marin Alpine Trail XR - White \/ Large","public_title":"White \/ Large","options":["White","Large"],"price":449900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[]},{"id":56189672489343,"title":"White \/ Extra Large","option1":"White","option2":"Extra Large","option3":null,"sku":"737520004","requires_shipping":true,"taxable":true,"featured_image":null,"available":true,"name":"Marin Alpine Trail XR - White \/ Extra Large","public_title":"White \/ Extra Large","options":["White","Extra Large"],"price":449900,"weight":0,"compare_at_price":null,"inventory_management":"shopify","barcode":"","requires_selling_plan":false,"selling_plan_allocations":[]}],
templateName: 'product',
shopLocale: 'en',
dataKey: 'top-strip-promotion-badge',
storefrontCurrency: 'GBP',
storefrontCountry: 'GB',
storefrontLanguage: 'en',
shopDomain: 'projektride.co.uk',
variantPrice: '449900',
cartPrice: '0',
selector: 'shopify-osm-AZkxmY3VSTnFmNnNiW__klarna_on_site_messaging_app_block_k6rYHt',
topPadding: '0',
bottomPadding: '0',
});
}
BIG ALL-MOUNTAIN DAYS WHERE TRAVEL AND GEOMETRY MATTER MOST
m, Wet\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eCornering Control\u003cspan\u003e \u003c\/span\u003e\u003c\/strong\u003e: 1 2 3 [4]\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eRolling Efficiency\u003cspan\u003e \u003c\/span\u003e\u003c\/strong\u003e: 1 2 [3] 4\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eCompound\u003c\/strong\u003e: Dual Compound \u0026amp; MaxxTerra Technology\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eBreaker\u003c\/strong\u003e: EXO or EXO+ Puncture Protection\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eMax PSI\u003c\/strong\u003e: 50\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eBead Type\u003c\/strong\u003e: Folding\u003c\/li\u003e\n\u003cli\u003e\u003cstrong\u003eTubeless Tyre\u003c\/strong\u003e\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eTPI\u003c\/strong\u003e: 60\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cbr\u003e\n\u003cli\u003e\u003cstrong\u003eDual Compound\u003c\/strong\u003e\u003c\/li\u003e\n\u003cspan\u003eTwo compounds used wu003eEXO+\u003c\/strong\u003e\u003c\/li\u003e\n\u003cspan\u003eOur EXO+ construction combines two of our best puncture protection materials: SilkShield and EXO. The SilkShield layer runs from bead-to-bead with a layer of EXO along the sidewalls. Combined, these two materials create EXO+ which improves tread puncture protection by 27%; sidewall durability by 51%; and resistance to pinch flats by 28%\u003c\/span\u003e\u003cbr\u003e\u003cbr\u003e\n\u003cli\u003e\u003cstrong\u003eTubeless Ready\u003c\/strong\u003e\u003c\/li\u003e\n\u003cspan\u003eTubeless tyres provide the rider with many benefits: the ability to run lower air pressures, which improves traction; lower rolling resistance when compared to a tube-type tyre; and less chance of flatting since there is no tube. Liquid sealants should only be used in the following types of tyres: Tubeless Road, Tubular, and Tubeless Ready. The use of liquid sealants in any other Maxxis tyre will void the warranty\u003c\/span\u003e\u003cbr\u003e\u003cbr\u003e\n\u003cli\u03e\n\u003cdiv class=\"label\"\u003eProduct Type\u003c\/div\u003e\n\u003cdiv class=\"value\"\u003eBicycle Tyre\u003c\/div\u003e\n\u003c\/li\u003e\n\u003c\/ul\u003e"};
window._RestockRocketConfig.variantsInventoryPolicy = {42207174328546 : "deny",42207174361314 : "deny",42207174394082 : "deny",42207174426850 : "deny",};
window._RestockRocketConfig.variantsInventoryQuantity = {42207174328546 : parseInt("0"),42207174361314 : parseInt("0"),42207174394082 : parseInt("0"),42207174426850 : parseInt("0"),};
window._RestockRocketConfig.variantsPreorderCount = {42207174328546 : parseInt(""),42207174361314 : parseInt(""),42207174394082 : parseInt(""),42207174426850 : parseInt(""),};
window._RestockRocketConfig.variantsPreorderCountForMarket = {42207174328546 : null,42207174361314 : null,42207174394082 : null,42207174426850 : null,};
window._RestockRocketConfig.variantsPreorderMaxCount = {42207174328546 : parseInt(""),42207174361314 : parseInt(""),42207174394082 : parseInt(""),42207174426850 : parseIn
f2-bacb-5853de1a7cf8/restockrocket-1-475/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;
<<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.ShedSettings);
} 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);
}
}
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}];(function() {
const cachedData = {"plans":[{"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_background_color":"#ebebeb","preorder_button_description_text_color":"#000000","preorder_button_description_border_radius":10,"preorder_button_description_show_quantity_limit":false,"preorder_button_description_quantity_limit_suffix":" units available for preorder",
"preorder_button_description_shipping_text_prefix":"Shipping: ","delivery_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","pr
eorder_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_percentage":null,"billing_title":"Full payment","billing_description":null,"discount_text":"Save {{ discount }}","shopify_selling_plan_id":713071886719,"is_default":true,"type":"full","translations":{}}],"require_preorder_acknowle
dgement":false,"preorder_acknowledgement_text":"I acknowledge and agree 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":"{{ so
ld }} 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],"cached_at":"2026-02-18T08:36:42Z"};
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 (plan.updated_at) {
const planDate = new Date(plan.updated_at);
const maxDate = max ? new Date(max) : null;
return (!maxDate || (planDate && !isNaN(planDate) && planDate > maxDate)) ? plan.upda
ted_at : max;
}
return max;
}, '')
: 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), do
Belgium (EUR€)
n't trust disabled_plan_ids
window._RestockRocketConfig.disabledSellingPlanIds = [];
console.debug('[RR] Using selling plans from old format (max updated_at: ' + maxUpdatedAt + ')');
}
}
})();window._RestockRocketConfig.enabledNotifyMeVariantIds = [];window._RestockRocketConfig.disabledNotifyMeVariantIds = [];window._RestockRocketConfig.backInStockTemplates = [];window._RestockRocketConfig.restockNotes = {};window._RestockRocketConfig.integrations = [{"id":"15c94526-b6b8-4de1-9bc1-23b1ca52ddb0","shop_id":38436,"enabled":true,"page_types":["product","collection","index","search","page","cart","list-collections","article","blog"],"configuration":{"toastDuration":10000,"toastPosition":"bottom-right","enableXHRHijack":true,"enableFetchHijack":true,"quantityLimitDisabled":false},"type":"hijack","css_config":null,"js_config":null,"created_at":"2025-07-26T09:16:04.076Z","updated_at":"2025-07-26T09:16:04.076Z"}];window._RestockRocketConfig.obfuscateInventoryQuantity = false;windo
w._RestockRocketConfig.product = {"id":15327697633663,"title":"Marin Alpine Trail XR","handle":"marin-alpine-trail-xr","description":"\u003cp\u003eBIG ALL-MOUNTAIN DAYS WHERE TRAVEL AND GEOMETRY MATTER MOST\u003c\/p\u003e\n\u003cp\u003eBUILT FOR ABUSE AND ROWDY RIDING\u003c\/p\u003e\n\u003cp\u003eENDURO-STYLE RIDING AND RACING\u003c\/p\u003e\n\u003cp\u003eBIG BIKE, BIG WHEELS, BIG FUN\u003c\/p\u003e\n\u003cp\u003eThe Alpine Trail is a 29” wheeled full suspension bike built for the all day enduro rider that earns their downhill fun.\u003c\/p\u003e\n\u003ch3 class=\"specifications__title\"\u003eSpecifications\u003c\/h3\u003e\n\u003cul class=\"specifications__list\"\u003e\n\u003cli\u003e\n\u003cdiv\u003e\n\u003ch4\u003eFrame\u003c\/h4\u003e\n\u003cp\u003eSeries 4 6061 Aluminum, 29” Wheels, 150mm Travel MultiTrac Suspension Platform, Internal Dropper Post and Rear Derailleur Routing, Chainstay Mounted Post Mount Disc Brake, 148x12mm Boost Thru- Axle, 73mm Threaded BB w\/ ISCG05 Tabs\u003c\/p\u003e\n\u003c\/di
v\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cdiv\u003e\n\u003ch4\u003eFront Suspension\u003c\/h4\u003e\n\u003cp\u003eMarzocchi Z1 Coil, 160mm Travel, Sweep Adjust Damper, Rebound Adjustment, Black Stanchions, 110x15 Kabolt, 44mm Offset, Medium spring rate\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cdiv\u003e\n\u003ch4\u003eRear Suspension\u003c\/h4\u003e\n\u003cp\u003eMarzocchi CR Coil, Compression and Rebound Adjustment, 205x65mm, Trunnion Upper Mount, M8x25mm Lower Mount, S\/M 350lb Spring, L\/XL 450lb Spring\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cdiv\u003e\n\u003ch4\u003eRims\u003c\/h4\u003e\n\u003cp\u003eMarin Aluminum Double Wall, 29mm Inner, Sleeved Joint, Disc Specific, Tubeless Compatible\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cdiv\u003e\n\u003ch4\u003eHub, Rear\u003c\/h4\u003e\n\u003cp\u003eForged Aluminum, 148x12mm, Disc, Microspline Freehub Body\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u00