(function(){var bar=document.querySelector(‘.fusion-main-menu’);var panel=document.getElementById(‘bs-menu’);if(!bar||!panel||document.getElementById(‘bs-menu-open’))return;document.body.appendChild(panel);var b=document.createElement(‘button’);b.id=’bs-menu-open’;b.type=’button’;b.innerHTML=’☰ Menu’;var ul=bar.querySelector(‘ul’);var li=document.createElement(‘li’);li.className=’bs-menu-slot’;li.appendChild(b);if(ul){ul.insertBefore(li,ul.firstChild);}else{bar.insertBefore(b,bar.firstChild);}var bsIn=document.body.classList.contains(“logged-in”);var bsAcc=document.createElement(“li”);bsAcc.className=”fusion-custom-menu-item bs-account-slot”;var bsA=document.createElement(“a”);bsA.className=”bs-account”;bsA.href=”/my-account/”;bsA.setAttribute(“aria-label”,bsIn?”My account”:”Log in or sign up”);var bsT=document.createElement(“span”);bsT.className=”menu-text”;bsT.textContent=bsIn?”Account”:”Log in”;bsA.appendChild(bsT);bsAcc.appendChild(bsA);var bsCart=ul&&ul.querySelector(“.fusion-main-menu-cart”);if(bsCart){ul.insertBefore(bsAcc,bsCart);}else if(ul){ul.appendChild(bsAcc);}var bsPl=document.getElementById(“bs-acc-link”);if(bsPl&&bsIn){bsPl.textContent=”My account”;}function open(){panel.hidden=false;document.body.classList.add(‘bs-nav-open’);}function close(){panel.hidden=true;document.body.classList.remove(‘bs-nav-open’);}b.addEventListener(‘click’,open);document.getElementById(‘bs-menu-close’).addEventListener(‘click’,close);panel.addEventListener(‘click’,function(e){if(e.target===panel)close();});})();body.logged-in .bs-acc-intro{display:none!important}(function(){var root=document.querySelector(“.avada-myaccount-user”);if(!root)return;var msgs=root.querySelectorAll(“.msg”);for(var i=0;i
var L=[[“road”,”Road bikes”],[“off-road”,”Off-road bikes”],[“atv”,”ATVs”],[“quad”,”Quads”],[“side-by-side”,”Side-by-sides”],[“scooter”,”Scooters”]];
var T={O:[“off-road”],D:[“road”,”off-road”],A:[“atv”],Q:[“quad”],X:[“side-by-side”],S:[“scooter”],R:[“road”]};
var C={};function S(b,k){var key=b+”|”+k;if(!C[key]){var o={};if(V[b]&&V[b][k])V[b][k].split(“|”).forEach(function(m){o[m]=1});C[key]=o}return C[key]}
function gs(m){for(var i=0;i-1}
function has(b,t){var v=V[b];if(!v)return t===”road”;if(t===”road”)return!!v.r;if(t===”off-road”)return!!(v.O||v.D);return!!v[{atv:”A”,quad:”Q”,”side-by-side”:”X”,scooter:”S”}[t]]}
function gt(){try{return sessionStorage.getItem(“bs_vtype”)||””}catch(e){return””}}
function st(v){try{sessionStorage.setItem(“bs_vtype”,v)}catch(e){}}
function opt(s,v,t){var o=document.createElement(“option”);o.value=v;o.textContent=t;s.appendChild(o)}
function setup(f){var bs=f.querySelector(“.bikesense-bike-brand-select”),ms=f.querySelector(“.bikesense-bike-model-select”);
if(!bs||!ms||f.querySelector(“.bs-vtype-select”))return;
var all=[];for(var i=0;i=0;i–){var o=ms.options[i];if(o.value&&!fits(b,o.value,t))ms.removeChild(o)}}
var b0=bs.value,m0=ms.value,t0=gt();
if(b0&&!(t0&&(m0?fits(b0,m0,t0):has(b0,t0)))){t0=””;if(m0)t0=types(b0,m0)[0];else for(var j=0;j
ts.addEventListener("change",function(){st(ts.value);brands(ts.value,false);bs.dispatchEvent(new Event("change"))});
bs.addEventListener("change",models)}
function init(){var fs=document.querySelectorAll(".bikesense-bike-selector-form");for(var i=0;i
Hi there! How can we help with parts for your bike?
Continues in WhatsApp · 079 231 2573
(function(){var a=document.getElementById(“bs-wa-float”);var p=document.getElementById(“bs-wa-panel”);if(!a){return;}if(!p){return;}document.body.appendChild(a);document.body.appendChild(p);var NUM=”27792312573″;var msg=”Hi Bike Sense, Iu2019d like to ask about your products.”;if(document.body.classList.contains(“single-product”)){var h=document.querySelector(“.product_title, .product h1, h1.entry-title”);var n=h?h.textContent.trim():document.title.split(/s[-|u2013u2014]s/)[0].trim();if(n){msg=”Hi Bike Sense, Iu2019m interested in “+n+” “+location.origin+location.pathname;}}var link=function(t){return “https://wa.me/”+NUM+”?text=”+encodeURIComponent(t);};a.href=link(msg);var ta=document.getElementById(“bs-wa-text”);var x=p.querySelector(“.bs-wa-x”);var send=p.querySelector(“.bs-wa-send”);var stat=document.getElementById(“bs-wa-stat”);var off=document.getElementById(“bs-wa-off”);var tm=document.getElementById(“bs-wa-time”);ta.value=msg;var timer=null;var now=function(){var hh=-1,mm=0;try{var parts=new Intl.DateTimeFormat(“en-GB”,{timeZone:”Africa/Johannesburg”,hour:”2-digit”,minute:”2-digit”,hourCycle:”h23″}).formatToParts(new Date());parts.forEach(function(q){if(q.type===”hour”){hh=parseInt(q.value,10)%24;}if(q.type===”minute”){mm=parseInt(q.value,10);}});}catch(e){}if(hh===-1){var d=new Date();hh=(d.getUTCHours()+2)%24;mm=d.getUTCMinutes();}return {h:hh,m:mm};};var pad=function(v){return (v>9?””:”0″)+v;};var refresh=function(){var t=now();var mins=t.h*60+t.m;var open=mins>=480?!(mins>=960):false;tm.textContent=pad(t.h)+”:”+pad(t.m);if(open){p.classList.remove(“bs-wa-closed”);stat.textContent=”Online u00b7 open until 16:00″;off.hidden=true;off.textContent=””;}else{p.classList.add(“bs-wa-closed”);stat.textContent=”Away u00b7 opens at 08:00″;off.textContent=”Weu2019re closed right now, but you can still send us a message. Weu2019ll reply when we open at 08:00.”;off.hidden=false;}};var grow=function(){ta.style.height=”auto”;ta.style.height=Math.min(ta.scrollHeight,120)+”px”;};var isOpen=function(){return !p.hidden;};var openP=function(){if(timer){clearTimeout(timer);timer=null;}refresh();p.hidden=false;void p.offsetWidth;p.classList.add(“bs-wa-open”);a.classList.add(“bs-wa-away”);a.setAttribute(“aria-expanded”,”true”);grow();var fine=window.matchMedia?window.matchMedia(“(pointer:fine)”).matches:true;if(fine){ta.focus();var L=ta.value.length;try{ta.setSelectionRange(L,L);}catch(e){}}else{p.focus();}};var closeP=function(){if(!isOpen()){return;}p.classList.remove(“bs-wa-open”);a.classList.remove(“bs-wa-away”);a.setAttribute(“aria-expanded”,”false”);var rm=window.matchMedia?window.matchMedia(“(prefers-reduced-motion: reduce)”).matches:false;timer=setTimeout(function(){p.hidden=true;timer=null;},rm?0:200);a.focus();};var go=function(){var t=ta.value.trim();if(!t){t=msg;}var u=link(t);var w=window.open(u,”_blank”);if(w){try{w.opener=null;}catch(e){}}else{location.href=u;}};a.addEventListener(“click”,function(e){if(e.ctrlKey){return;}if(e.metaKey){return;}if(e.shiftKey){return;}if(e.button===1){return;}e.preventDefault();if(isOpen()){closeP();}else{openP();}});x.addEventListener(“click”,closeP);send.addEventListener(“click”,go);ta.addEventListener(“input”,grow);ta.addEventListener(“keydown”,function(e){if(e.key===”Enter”){if(!e.shiftKey){if(!e.isComposing){e.preventDefault();go();}}}});document.addEventListener(“keydown”,function(e){if(e.key===”Escape”){if(isOpen()){closeP();}}});})();.bs-wa-pdp{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;box-sizing:border-box;margin:12px 0 4px;padding:14px 18px;border-radius:6px;background:#25D366;color:#fff!important;font:700 16px/1.2 Barlow,sans-serif;text-decoration:none!important;transition:background .2s ease}.bs-wa-pdp:hover{background:#1DA851}.bs-wa-pdp:focus-visible{outline:3px solid #11161C;outline-offset:2px}.bs-wa-pdp svg{width:22px;height:22px;fill:#fff;flex:0 0 22px;display:block}.bs-wa-pdp[hidden]{display:none!important}Ask about this on WhatsApp(function(){var b=document.getElementById(“bs-wa-pdp”);if(!b){return;}if(!document.body.classList.contains(“single-product”)){b.parentNode.removeChild(b);return;}var h=document.querySelector(“.product_title”);var n=h?h.textContent.trim():””;if(!n){return;}var u=location.origin+location.pathname;var c=document.querySelector(“link[rel=canonical]”);if(c){if(c.href){u=c.href;}}var href=”https://wa.me/27792312573?text=”+encodeURIComponent(“Hi Bike Sense, Iu2019m interested in “+n+” “+u);Array.prototype.forEach.call(document.querySelectorAll(“.bs-pdp-help-links a”),function(l){if(l.href.indexOf(“wa.me/”)!==-1){l.href=href;}});b.href=href;b.setAttribute(“aria-label”,”Ask Bike Sense about “+n+” on WhatsApp”);var cart=document.querySelector(“.bs-pdp-cart”);var help=document.querySelector(“.bs-pdp-help”);if(cart){cart.parentNode.insertBefore(b,cart.nextSibling);}else{if(help){help.parentNode.insertBefore(b,help);}else{return;}}b.hidden=false;})();body.post-type-archive-product #sidebar{display:none!important}body.tax-product_cat #sidebar{display:none!important}body.tax-product_tag #sidebar{display:none!important}body.search #sidebar{display:none!important}body.search #content{width:100%!important;float:none!important;margin:0!important}body.post-type-archive-product #content,body.tax-product_cat #content,body.tax-product_tag #content{width:100%!important;float:none!important;margin:0!important}.show_details_button,.bikesense-archive-buy-button,.bikesense-archive-quote-button{display:none!important}.fusion-logo img{max-height:78px!important;width:auto!important}.fusion-header,.fusion-header-sticky-height{height:auto!important}.fusion-logo{margin-top:10px!important;margin-bottom:10px!important}/* bs-oos-card: out-of-stock product cards offer Request Quote only (no Buy Now / Pay later). The buttons come from theme PHP on every card; remove this block once the PHP skips Buy Now for out-of-stock products. */html body ul.products li.product.outofstock .bikesense-product-card-actions a.button.bikesense-archive-buy-button,html body ul.products li.product.outofstock .product-buttons a.add_to_cart_button{display:none!important}html body ul.products li.product.outofstock .bikesense-product-card-actions::after{content:none!important;display:none!important}/* Shop page and other non-category grids: show Request Quote on out-of-stock cards, styled like the category cards. */html body:not(.tax-product_cat):not(.tax-product_brand) ul.products li.product.outofstock .bikesense-product-card-actions{display:flex!important;flex-direction:column;gap:6px;padding:10px 12px 12px!important;margin:auto 0 0!important;border:0!important}html body:not(.tax-product_cat):not(.tax-product_brand) ul.products li.product.outofstock .bikesense-product-card-actions a.button.bikesense-archive-quote-button{display:block!important;width:100%!important;margin:0!important;padding:4px!important;background:transparent!important;color:#3D4651!important;border:0!important;box-shadow:none!important;font-family:”Barlow”,sans-serif!important;font-weight:600!important;font-size:13px!important;letter-spacing:0!important;text-transform:none!important;text-align:center;text-decoration:underline!important;text-underline-offset:2px}html body:not(.tax-product_cat):not(.tax-product_brand) ul.products li.product.outofstock .bikesense-product-card-actions a.button.bikesense-archive-quote-button:hover{color:#C81016!important}
.bs-pjn-link{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;max-width:100%;min-height:44px;padding:12px 22px;border:0;border-radius:4px;background:#c81016;color:#fff!important;font-family:”Barlow Condensed”,sans-serif!important;font-weight:600;font-size:17px;line-height:1.2;letter-spacing:.03em;text-transform:none;text-align:center;text-decoration:none!important;transition:background-color .15s ease}.bs-pjn-link:hover,.bs-pjn-link:focus-visible{background:#a50d12;color:#fff!important}.bs-pjn-link:focus-visible{outline:2px solid #fff;outline-offset:2px;box-shadow:0 0 0 4px #11161c}.bs-pjn-link–block{display:flex;width:100%}.bs-pjn-link–sm{font-size:15px;padding:10px 16px}.bs-pjn-link–light{background:#fff;color:#11161c!important}.bs-pjn-link–light:hover,.bs-pjn-link–light:focus-visible{background:#e7ebef;color:#11161c!important}.bs-pjn-help{display:block;margin:8px 0 0;font-family:Barlow,sans-serif;font-weight:400;font-size:14px;line-height:1.5;letter-spacing:0;text-transform:none}.bs-pjn-cta{margin:16px 0 0}.bs-pjn-prod{margin:12px 0 0}.bs-pjn-prod .bs-pjn-help{color:#4a5560}.product.outofstock .bs-pjn-prod{display:none!important}body:has(#content>.product.outofstock) .bs-pjn-foot{display:none!important}.bs-pjn-foot{display:block;margin:14px 0 0;max-width:340px;line-height:1.5}.bs-pjn-foot .bs-pjn-help{color:#b8c0c6;font-size:13px}@media (max-width:640px){.bs-pjn-link{display:flex;width:100%}}/* bs-pjn-link v2: primary red button, secondary outlined ‘How Pay in 3 works’, spacing */.bs-pjn-link{min-height:48px;font-weight:700;font-size:16px;letter-spacing:.04em;text-transform:uppercase;text-wrap:balance}.bs-pjn-link–sm{font-size:15px;padding:10px 18px}.fusion-text>.bs-pjn-cta:first-child{margin-top:0}.fusion-text>.bs-pjn-cta:last-child{margin-bottom:0}.fusion-layout-column:has(.bs-pjn-cta) .fusion-column-wrapper{gap:14px}.fusion-layout-column:has(.bs-pjn-cta) .fusion-column-wrapper>div:has(>.fusion-button[href*=”payment-methods”]){order:2}.fusion-layout-column:has(.bs-pjn-cta) .fusion-button[href*=”payment-methods”]{min-height:48px;padding:10px 22px!important;background:transparent!important;border:2px solid #c81016!important;border-radius:4px!important;box-sizing:border-box}.fusion-layout-column:has(.bs-pjn-cta) .fusion-button[href*=”payment-methods”] .fusion-button-text{color:#c81016!important;font-family:”Barlow Condensed”,sans-serif;font-weight:700;font-size:16px;letter-spacing:.04em}.fusion-layout-column:has(.bs-pjn-cta) .fusion-button[href*=”payment-methods”]:hover,.fusion-layout-column:has(.bs-pjn-cta) .fusion-button[href*=”payment-methods”]:focus-visible{background:#c81016!important}.fusion-layout-column:has(.bs-pjn-cta) .fusion-button[href*=”payment-methods”]:hover .fusion-button-text,.fusion-layout-column:has(.bs-pjn-cta) .fusion-button[href*=”payment-methods”]:focus-visible .fusion-button-text{color:#fff!important}.fusion-tb-footer .fusion-text a.bs-foot-pjn{display:inline-flex;align-items:center;min-height:40px;box-sizing:border-box;padding:8px 16px;border-width:2px;border-radius:4px;font-size:14px}/* bs-button-consistency: gaps, corners and fonts for buttons sitewide */.single-product .bikesense-request-quote-wrap{margin-top:12px}#main .fusion-button{border-radius:4px!important}body.page-id-8954 #main p>a[style*=”border-radius:4px”]{display:inline-flex!important;align-items:center;text-align:center;justify-content:center;box-sizing:border-box;min-height:48px;padding:10px 22px!important;font-family:”Barlow Condensed”,sans-serif!important;font-weight:800!important;font-size:17px!important;line-height:1.2!important;letter-spacing:.04em!important;text-transform:uppercase!important;vertical-align:middle}body.page-id-8954 #main p>a[style*=”border-radius:4px”]:not([style*=”border:”]){border:2px solid transparent}body.page-id-8954 #main p>a[href^=”mailto:”][style*=”border-radius:4px”]{text-transform:none!important;letter-spacing:.02em!important}.wc-block-cart__submit-button,.wc-block-components-checkout-place-order-button{min-height:52px;border-radius:4px!important;font-family:”Barlow Condensed”,sans-serif!important;font-weight:800!important;font-size:17px!important;letter-spacing:.04em;text-transform:uppercase}@media (max-width:640px){.single-product form.cart .fusion-button-wrapper,.single-product .woocommerce-variation-add-to-cart{display:flex;flex-wrap:wrap;gap:12px}.single-product form.cart .single_add_to_cart_button{flex:1 1 100%!important;width:100%!important;max-width:none!important;margin:0!important}body.page-id-8954 #main p>a[style*=”border-radius:4px”]{display:flex!important;width:100%;margin-right:0!important}.bs-pdp-pay-label+.fusion-builder-row-inner{gap:12px 16px;margin-left:0!important;margin-right:0!important}.bs-pdp-pay-label+.fusion-builder-row-inner>.fusion-layout-column{width:auto!important;flex:0 0 auto!important;margin:0!important;padding:0!important}.bs-pdp-pay-label+.fusion-builder-row-inner>.fusion-layout-column .fusion-column-wrapper{padding:0!important;margin:0!important}.bs-pdp-pay-label+.fusion-builder-row-inner img{width:auto;height:32px;max-width:none}}/* bikesense-retail: header logo size, full-width shop/category/tag/search layout, hide legacy details button. Moved 8 Oct 2026 out of the footer Bike Sense text block, where WordPress stripped every rule body (no styles applied). Parked, NOT active because they would change the current live look: (1) .fusion-main-menu>ul>li>a padding-left/right 14px; (2) ul.products li.product .add_to_cart_button font-size 0 with ::after content “Add to cart” (replaces the Pay later wording); (3) .bikesense-archive-buy-button,.bikesense-archive-quote-button display:none (conflicts with bs-oos-card Request Quote buttons). */.fusion-logo img{max-height:78px!important;width:auto!important}.fusion-header,.fusion-header-sticky-height{height:auto!important}.fusion-logo{margin-top:10px!important;margin-bottom:10px!important}body.post-type-archive-product #sidebar,body.tax-product_cat #sidebar,body.tax-product_tag #sidebar{display:none!important}body.search #sidebar{display:none!important}body.search #content{width:100%!important;float:none!important;margin:0!important}body.post-type-archive-product #content,body.tax-product_cat #content,body.tax-product_tag #content{width:100%!important;float:none!important;margin-left:0!important;margin-right:0!important}.show_details_button{display:none!important}
Bike people helping South African riders. Parts matched to your brand, model and year.
Pay in 3 with PayJustNow · 0% interestPay with PayJustNow – 3 interest-free paymentsConfirm your price with us first. Then log in or sign up with PayJustNow, pay the agreed amount and send us your reference on WhatsApp.
Send us your bike and a photo of the part, and we’ll match it before you order. Open every day, 08:00 to 16:00.
Phone:
079 231 2573
Email:
info@bikesense.co.za
Copyright 2026 Bike Sense. All rights reserved.