Header Image
1
Increase quantity
> < <

Product Details
Planning

a
bikepacking
adventure
with bikes?on extra cost fully
equipped With
this
two
spacious panniers,


inner tubes, tyre levers, and a multitool, ensuring you're prepared for basic roadside repairs and maintenance while you're out exploring.bag , Whether and you're a heading frame <

<carrying everything you need for your trip. We also include essential tools and <<hire, so you’re never caught off guard. Your kit will come with <<levers , {"id":15085580878207,"title":"HIRE - BIKE PACKING BUNDLE","handle":"hire-bike-packing-bundle","description":"\u003cp data-end=\"411\" data-start=\"71\"\u003e\u003cstrong data-end=\"135\" data-start=\"71\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ePlanning \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ea \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebikepacking \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eadventure \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewith \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eone \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eof \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eour \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ehire \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebikes?\u003c\/span\u003e\u003c\/strong\u003e\u003cbr data-end=\"138\" data-start=\"135\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eChoose \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eour \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebikepacking \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ekit \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eadd-\u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eon \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eat \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eno \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eextra \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ecost \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eand \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eget \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003efully \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eequipped \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003efor \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ethe \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ejourney \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eahead. \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eWith \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ethis \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eoption, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyou’ll \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ereceive \u003c\/span\u003e\u003cstrong data-end=\"293\" data-start=\"268\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003etwo \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003espacious \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003epanniers\u003c\/span\u003e\u003c\/strong\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003e, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ea \u003c\/span\u003e\u003cstrong data-end=\"314\" data-start=\"297\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ehandlebar \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebag\u003c\/span\u003e\u003c\/strong\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003e, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ea \u003c\/span\u003e\u003cstrong data-end=\"332\" data-start=\"318\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003esaddle \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebag\u003c\/span\u003e\u003c\/strong\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003e, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eand \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ea \u003c\/span\u003e\u003cstrong data-end=\"353\" data-start=\"340\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eframe \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebag\u003c\/span\u003e\u003c\/strong\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003e – \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eperfect \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003efor \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ecarrying \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eeverything \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyou \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eneed \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003efor \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyour \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003etrip.\u003c\/span\u003e\u003c\/p\u003e\n\u003cp data-end=\"686\" data-start=\"413\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eWe \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ealso \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003einclude \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eessential \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003etools \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eand \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003espares \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewith \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eevery \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebike \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ehire, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eso \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyou’re \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003enever \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ecaught \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eoff \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eguard. \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eYour \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ekit \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewill \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ecome \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewith \u003c\/span\u003e\u003cstrong data-end=\"551\" data-start=\"536\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003einner \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003etubes\u003c\/span\u003e\u003c\/strong\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003e, \u003c\/span\u003e\u003cstrong data-end=\"568\" data-start=\"553\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003etyre \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003elevers\u003c\/span\u003e\u003c\/strong\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003e, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eand \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ea \u003c\/span\u003e\u003cstrong data-end=\"589\" data-start=\"576\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003emultitool\u003c\/span\u003e\u003c\/strong\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003e, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eensuring \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyou're \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eprepared \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003efor \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebasic \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eroadside \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003erepairs \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eand \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003emaintenance \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewhile \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyou're \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eout \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eexploring.\u003c\/span\u003e\u003c\/p\u003e\n\u003cp data-end=\"873\" data-start=\"688\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eWhether \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyou're \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eheading \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eoff \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003efor \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ea \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eweekend \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eescape \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eor \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ea \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003emulti-\u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eday \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eexpedition, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewe've \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003egot \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyour \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eback. \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eJust \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eselect \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ethe \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebikepacking \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ekit \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewhen \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebooking \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyour \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ehire, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eand \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ehit \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ethe \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eroad \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewith \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003econfidence!\u003c\/span\u003e\u003c\/p\u003e\n\u003cp data-end=\"873\" data-start=\"688\"\u003e \u003c\/p\u003e\n\u003cp data-end=\"873\" data-start=\"688\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003e\u003cspan\u003eProjektRide Bike Hire Edinburgh.\u003c\/span\u003e\u003c\/span\u003e\u003c\/p\u003e\n\u003cul\u003e\u003c\/ul\u003e\n\u003cp\u003e \u003c\/p\u003e","published_at":"2025-05-17T12:52:01+01:00","created_at":"2025-05-17T12:52:01+01:00","vendor":"ProjektRide","type":"Bike Hire - Equipment","tags":["spo-cs-disabled","spo-default","spo-disabled","spo-notify-me-disabled"],"price":0,"price_min":0,"price_max":0,"available":true,"price_varies":false,"compare_at_price":null,"compare_at_price_min":0,"compare_at_price_max":0,"compare_at_price_varies":false,"variants":[{"id":55470310752639,"title":"Default Title","option1":"Default Title","option2":null,"option3":null,"sku":"","requires_shipping":false,"taxable":true,"featured_image":null,"available":true,"name":"HIRE - BIKE PACKING BUNDLE","public_title":null,"options":["Default Title"],"price":0,"weight":0,"compare_at_price":null,"inventory_management":null,"barcode":"","requires_selling_plan":false,"selling_plan_allocations":[]}],"images":["\/\/projektride.co.uk\/cdn\/shop\/files\/Yourparagraphtext.png?v=1747481130","\/\/projektride.co.uk\/cdn\/shop\/files\/resize_width_1000_1296x_d1ffd242-63bc-4a9f-85e2-400f274532d7.jpg?v=1747481423","\/\/projektride.co.uk\/cdn\/shop\/files\/MediumBagel-1000dBlack_e93e5742-98ec-49fc-a228-4e6b779f3781_1800x1800-removebg-preview.png?v=1747481439","\/\/projektride.co.uk\/cdn\/shop\/files\/71BUhqY7apL._AC_UF894_1000_QL80_-removebg-preview.png?v=1747481437","\/\/projektride.co.uk\/cdn\/shop\/files\/1470757225-89172100.webp?v=1747481463","\/\/projektride.co.uk\/cdn\/shop\/files\/PRSBA0064.webp?v=1747481972"],"featured_image":"\/\/projektride.co.uk\/cdn\/shop\/files\/Yourparagraphtext.png?v=1747481130","options":["Title"],"media":[{"alt":null,"id":65817952059775,"position":1,"preview_image":{"aspect_ratio":1.415,"height":1587,"width":2245,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/Yourparagraphtext.png?v=1747481130"},"aspect_ratio":1.415,"height":1587,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/files\/Yourparagraphtext.png?v=1747481130","width":2245},{"alt":null,"id":65817987580287,"position":2,"preview_image":{"aspect_ratio":1.215,"height":745,"width":905,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/resize_width_1000_1296x_d1ffd242-63bc-4a9f-85e2-400f274532d7.jpg?v=1747481423"},"aspect_ratio":1.215,"height":745,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/files\/resize_width_1000_1296x_d1ffd242-63bc-4a9f-85e2-400f274532d7.jpg?v=1747481423","width":905},{"alt":null,"id":65817992954239,"position":3,"preview_image":{"aspect_ratio":1.0,"height":500,"width":500,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/MediumBagel-1000dBlack_e93e5742-98ec-49fc-a228-4e6b779f3781_1800x1800-removebg-preview.png?v=1747481439"},"aspect_ratio":1.0,"height":500,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/files\/MediumBagel-1000dBlack_e93e5742-98ec-49fc-a228-4e6b779f3781_1800x1800-removebg-preview.png?v=1747481439","width":500},{"alt":null,"id":65817992462719,"position":4,"preview_image":{"aspect_ratio":1.832,"height":369,"width":676,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/71BUhqY7apL._AC_UF894_1000_QL80_-removebg-preview.png?v=1747481437"},"aspect_ratio":1.832,"height":369,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/files\/71BUhqY7apL._AC_UF894_1000_QL80_-removebg-preview.png?v=1747481437","width":676},{"alt":null,"id":65817995739519,"position":5,"preview_image":{"aspect_ratio":1.0,"height":900,"width":900,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/1470757225-89172100.webp?v=1747481463"},"aspect_ratio":1.0,"height":900,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/files\/1470757225-89172100.webp?v=1747481463","width":900},{"alt":null,"id":65818065994111,"position":6,"preview_image":{"aspect_ratio":1.0,"height":550,"width":550,"src":"\/\/projektride.co.uk\/cdn\/shop\/files\/PRSBA0064.webp?v=1747481972"},"aspect_ratio":1.0,"height":550,"media_type":"image","src":"\/\/projektride.co.uk\/cdn\/shop\/files\/PRSBA0064.webp?v=1747481972","width":550}],"requires_selling_plan":false,"selling_plan_groups":[],"content":"\u003cp data-end=\"411\" data-start=\"71\"\u003e\u003cstrong data-end=\"135\" data-start=\"71\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ePlanning \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ea \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebikepacking \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eadventure \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewith \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eone \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eof \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eour \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ehire \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebikes?\u003c\/span\u003e\u003c\/strong\u003e\u003cbr data-end=\"138\" data-start=\"135\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eChoose \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eour \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebikepacking \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ekit \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eadd-\u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eon \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eat \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eno \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eextra \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ecost \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eand \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eget \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003efully \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eequipped \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003efor \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ethe \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ejourney \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eahead. \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eWith \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ethis \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eoption, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyou’ll \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ereceive \u003c\/span\u003e\u003cstrong data-end=\"293\" data-start=\"268\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003etwo \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003espacious \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003epanniers\u003c\/span\u003e\u003c\/strong\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003e, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ea \u003c\/span\u003e\u003cstrong data-end=\"314\" data-start=\"297\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ehandlebar \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebag\u003c\/span\u003e\u003c\/strong\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003e, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ea \u003c\/span\u003e\u003cstrong data-end=\"332\" data-start=\"318\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003esaddle \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebag\u003c\/span\u003e\u003c\/strong\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003e, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eand \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ea \u003c\/span\u003e\u003cstrong data-end=\"353\" data-start=\"340\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eframe \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebag\u003c\/span\u003e\u003c\/strong\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003e – \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eperfect \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003efor \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ecarrying \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eeverything \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyou \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eneed \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003efor \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyour \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003etrip.\u003c\/span\u003e\u003c\/p\u003e\n\u003cp data-end=\"686\" data-start=\"413\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eWe \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ealso \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003einclude \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eessential \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003etools \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eand \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003espares \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewith \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eevery \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebike \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ehire, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eso \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyou’re \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003enever \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ecaught \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eoff \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eguard. \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eYour \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ekit \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewill \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ecome \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewith \u003c\/span\u003e\u003cstrong data-end=\"551\" data-start=\"536\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003einner \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003etubes\u003c\/span\u003e\u003c\/strong\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003e, \u003c\/span\u003e\u003cstrong data-end=\"568\" data-start=\"553\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003etyre \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003elevers\u003c\/span\u003e\u003c\/strong\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003e, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eand \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ea \u003c\/span\u003e\u003cstrong data-end=\"589\" data-start=\"576\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003emultitool\u003c\/span\u003e\u003c\/strong\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003e, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eensuring \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyou're \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eprepared \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003efor \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebasic \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eroadside \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003erepairs \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eand \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003emaintenance \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewhile \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyou're \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eout \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eexploring.\u003c\/span\u003e\u003c\/p\u003e\n\u003cp data-end=\"873\" data-start=\"688\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eWhether \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyou're \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eheading \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eoff \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003efor \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ea \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eweekend \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eescape \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eor \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ea \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003emulti-\u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eday \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eexpedition, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewe've \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003egot \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyour \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eback. \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eJust \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eselect \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ethe \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebikepacking \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ekit \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewhen \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebooking \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyour \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ehire, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eand \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ehit \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ethe \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eroad \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewith \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003econfidence!\u003c\/span\u003e\u003c\/p\u003e\n\u003cp data-end=\"873\" data-start=\"688\"\u003e \u003c\/p\u003e\n\u003cp data-end=\"873\" data-start=\"688\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003e\u003cspan\u003eProjektRide Bike Hire Edinburgh.\u003c\/span\u003e\u003c\/span\u003e\u003c\/p\u003e\n\u003cul\u003e\u003c\/ul\u003e\n\u003cp\u003e \u003c\/p\u003e"}and a []multitool , ensuring { "@context": "http://schema.org/", "@type": "Product", "name": "HIRE - BIKE PACKING BUNDLE", "url": "https:\/\/projektride.co.uk\/products\/hire-bike-packing-bundle","image": [ "https:\/\/projektride.co.uk\/cdn\/shop\/files\/Yourparagraphtext_2245x.png?v=1747481130" ],"description": "Planning a bikepacking adventure with one of our hire bikes?Choose our bikepacking kit add-on at no extra cost and get fully equipped for the journey ahead. With this option, you’ll receive two spacious panniers, a handlebar bag, a saddle bag, and a frame bag – perfect for carrying everything you need for your trip.\nWe also include essential tools and spares with every bike hire, so you’re never caught off guard. Your kit will come with inner tubes, tyre levers, and a multitool, ensuring you're prepared for basic roadside repairs and maintenance while you're out exploring.\nWhether you're heading off for a weekend escape or a multi-day expedition, we've got your back. Just select the bikepacking kit when booking your hire, and hit the road with confidence!\n \nProjektRide Bike Hire Edinburgh.\n\n ","brand": { "@type": "Thing", "name": "ProjektRide" },"gtin8": "","offers": [{ "@type" : "Offer","availability" : "http://schema.org/InStock", "price" : 0.0, "priceCurrency" : "GBP", "url" : "https:\/\/projektride.co.uk\/products\/hire-bike-packing-bundle?variant=55470310752639" } ] } you're

Would you like to add on any equipment?repairs << Whether <<day the <<maintenance with

    • eIn_m1hgl_8\"\u003etrip.\u003c\/span\u003e\u003c\/p\u003e\n\u003cp data-end=\"686\" data-start=\"413\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eWe \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ealso \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003einclude \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eessential \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003etools \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eand \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003espares \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewith \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eevery \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ebike \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ehire, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eso \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyou’re \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003enever \u003c\/spa]; if (value !== null && value !== undefined && value !== '') { settings[key] = value; } }); } else { console.debug('STOQ - No translated fields found for locale:', normalizedLocale); } 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 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') function applyTranslations(settings) { try { // Skip translation logic entirely if multi-language is not enabled if (!settings ||
    • hopify.shop, 'ngrok-skip-browser-warning': 'skip' }; if (window.Shopify?.theme?.role === 'main') { headers['X-Shopify-Theme-Schema-Name'] = window.Shopify.theme.schema_name; headers['X-Shopify-Theme-Schema-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(cac]; if (value !== null && value !== undefined && value !== '') { settings[key] = value; } }); } else { console.debug('STOQ - No translated fields found for locale:', normalizedLocale); } 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._RestockRocketfig.scriptUrlCollection); } else if(window._RestockRocketConfig.pageType === 'index' && (settings.show_button_on_index || settings.preorder_index_enabled)) { createRestockRocketScript(window._RestockRocketConfig.scriptUrlCollection); } else if(window._RestockRocketConfig.pageType === 'search' && (settings.show_button_on_search || settings.preorder_search_enabled)) { createRestockRocketScript(window._RestockRocketConfig.scriptUrlCollection); } else if(window._RestockRocketConfig.pageType === 'page' && (settings.show_button_on_page || settings.preorder_page_enabled)) { createRestockRocketScript(window._RestockRocketConfig.scriptUrlCollection); } else if(window._RestockRocketConfig.pageType === 'product') { createRestockRocketScript(window._RestockRocketConfig.scriptUrlProduct); } else if(hijackIntegration) { createRestockRocketScript(window._RestockRocketConfig.scriptUrlCollection); } else { console.debug(`STOQ - no scripts enab
    3cspan class=\"_fadeIn_m1hgl_8\"\u003eexploring.\u003c\/span\u003e\u003c\/p\u003e\n\u003cp data-end=\"873\" data-start=\"688\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eWhether \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eyou're \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eheading \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eoff \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003efor \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ea \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eweekend \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eescape \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eor \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ea \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003emulti-\u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eday \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003eexpedition, \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\lass=\"_fadeIn_m1hgl_8\"\u003eroad \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003ewith \u003c\/span\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003econfidence!\u003c\/span\u003e\u003c\/p\u003e\n\u003cp data-end=\"873\" data-start=\"688\"\u003e \u003c\/p\u003e\n\u003cp data-end=\"873\" data-start=\"688\"\u003e\u003cspan class=\"_fadeIn_m1hgl_8\"\u003e\u003cspan\u003eProjektRide Bike Hire Edinburgh.\u003c\/span\u003e\u003c\/span\u003e\u003c\/p\u003e\n\u003cul\u003e\u003c\/ul\u003e\n\u003cp\u003e \u003c\/p\u003e"}; window._RestockRocketConfig.variantsInventoryPolicy = {55470310752639 : "deny",}; window._RestockRocketConfig.variantsInventoryQuantity = {55470310752639 : parseInt("-106"),}; window._RestockRocketConfig.variantsPreorderCount = {55470310752639 : parseInt(""),}; window._RestockRocketConfig.variantsPreorderCountForMarket = {55470310752639 : null,}; window._RestockRocketConfig.variantsPreorderMaxCount = {55470310752639 : parseInt(""),}; window._RestockRocketConfig.va 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
    = 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