{"product_id":"bbq-lab-mix-match-any-2-rubs","title":"BBQ LAB: Mix \u0026 Match","description":"\u003cdiv id=\"rh-mm-bbqlab-7952733798442\" class=\"rh-mm\"\u003e\n  \u003cdiv class=\"rh-mm__title\"\u003eBuild your pair — pick 2 rubs\u003c\/div\u003e\n  \u003cdiv class=\"rh-mm__sub\"\u003eChoose any two different BBQ Lab signature rubs.\u003c\/div\u003e\n  \u003cdiv class=\"rh-mm__fields\"\u003e\n    \u003cdiv class=\"rh-mm__field\"\u003e\n      \u003clabel for=\"rh-mm-bbqlab-7952733798442-1\"\u003eRub 1\u003c\/label\u003e\n      \u003cselect id=\"rh-mm-bbqlab-7952733798442-1\" name=\"properties[Rub 1]\" required\u003e\n\n        \u003coption value=\"\" disabled selected\u003eChoose a rub…\u003c\/option\u003e\n        \u003coption value=\"Black Gold\"\u003eBlack Gold\u003c\/option\u003e\n        \u003coption value=\"Island Smoke\"\u003eIsland Smoke\u003c\/option\u003e\n        \u003coption value=\"True Blend\"\u003eTrue Blend\u003c\/option\u003e\n      \u003c\/select\u003e\n    \u003c\/div\u003e\n    \u003cdiv class=\"rh-mm__field\"\u003e\n      \u003clabel for=\"rh-mm-bbqlab-7952733798442-2\"\u003eRub 2\u003c\/label\u003e\n      \u003cselect id=\"rh-mm-bbqlab-7952733798442-2\" name=\"properties[Rub 2]\" required\u003e\n\n        \u003coption value=\"\" disabled selected\u003eChoose a rub…\u003c\/option\u003e\n        \u003coption value=\"Black Gold\"\u003eBlack Gold\u003c\/option\u003e\n        \u003coption value=\"Island Smoke\"\u003eIsland Smoke\u003c\/option\u003e\n        \u003coption value=\"True Blend\"\u003eTrue Blend\u003c\/option\u003e\n      \u003c\/select\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n  \u003cnoscript\u003e\u003cp class=\"rh-mm__noscript\"\u003ePlease enable JavaScript to build your pair and add it to your cart.\u003c\/p\u003e\u003c\/noscript\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n  .rh-mm{border:1px solid #a62e2a;border-radius:10px;padding:16px 18px;margin:0 0 20px;background:#1a1a1a;color:#fcfcfc;}\n  .rh-mm__title{font-weight:700;font-size:16px;margin-bottom:4px;}\n  .rh-mm__sub{font-size:13px;color:#cfcfcf;margin-bottom:14px;}\n  .rh-mm__fields{display:flex;flex-wrap:wrap;gap:12px;}\n  .rh-mm__field{flex:1 1 150px;display:flex;flex-direction:column;gap:6px;}\n  .rh-mm__field label{font-size:12px;font-weight:600;color:#fcfcfc;text-transform:uppercase;letter-spacing:.03em;}\n  .rh-mm__field select{padding:10px 12px;border-radius:6px;border:1px solid #555;background:#0f0f0f;color:#fcfcfc;font-size:14px;width:100%;}\n  .rh-mm__field select option:disabled{color:#777;}\n  .rh-mm__noscript{color:#e95144;font-size:13px;margin:10px 0 0;}\n  .rh-mm__error{display:none;color:#e95144;font-size:13px;margin-top:10px;font-weight:600;}\n  .rh-mm-disabled{opacity:.55;cursor:not-allowed;}\n  @media (max-width:600px){.rh-mm__fields{flex-direction:column;}}\n\u003c\/style\u003e\n\u003cscript\u003e\n(function(){\n  function init(){\n    var widget = document.getElementById('rh-mm-bbqlab-7952733798442');\n    if(!widget || widget.getAttribute('data-rh-mm-init')) return;\n    widget.setAttribute('data-rh-mm-init','1');\n    var forms = Array.prototype.slice.call(document.querySelectorAll('form[action*=\"\/cart\/add\"][data-type=\"add-to-cart-form\"]'));\n    if(!forms.length){ return; }\n    var primary = forms[0];\n    primary.insertBefore(widget, primary.firstElementChild);\n    var selects = Array.prototype.slice.call(widget.querySelectorAll('select'));\n    var errorEl = document.createElement('div');\n    errorEl.className = 'rh-mm__error';\n    widget.appendChild(errorEl);\n\n    function otherSelect(sel){\n      return selects[0] === sel ? selects[1] : selects[0];\n    }\n    function syncExclusions(){\n      selects.forEach(function(sel){\n        var other = otherSelect(sel);\n        Array.prototype.forEach.call(sel.querySelectorAll('option[value]:not([value=\"\"])'), function(opt){\n          opt.disabled = (other.value !== '' \u0026\u0026 opt.value === other.value);\n        });\n      });\n    }\n    function allValid(){\n      var vals = selects.map(function(s){ return s.value; });\n      return vals.every(function(v){ return !!v; }) \u0026\u0026 vals[0] !== vals[1];\n    }\n    function buttonsOf(form){\n      return Array.prototype.slice.call(form.querySelectorAll('button[type=\"submit\"], [name=\"add\"], input[type=\"submit\"]'));\n    }\n    function syncHiddenInputs(form){\n      if (form === primary) return;\n      selects.forEach(function(s){\n        var propName = s.getAttribute('name');\n        var input = form.querySelector('input[name=\"' + propName.replace(\/\"\/g,'\\\\\"') + '\"]');\n        if(!input){\n          input = document.createElement('input');\n          input.type = 'hidden';\n          input.name = propName;\n          form.appendChild(input);\n        }\n        input.value = s.value;\n      });\n    }\n\n    var lastValid = null;\n    function refresh(){\n      syncExclusions();\n      var valid = allValid();\n      if (valid === lastValid) { \n        if(valid){ errorEl.style.display = 'none'; selects.forEach(function(s){ s.style.borderColor = ''; }); }\n        return;\n      }\n      lastValid = valid;\n      forms.forEach(function(f){\n        buttonsOf(f).forEach(function(btn){\n          btn.disabled = !valid;\n          btn.classList.toggle('rh-mm-disabled', !valid);\n        });\n      });\n      if (valid){\n        errorEl.style.display = 'none';\n        selects.forEach(function(s){ s.style.borderColor = ''; });\n        forms.forEach(syncHiddenInputs);\n      }\n    }\n\n    function guard(e){\n      syncExclusions();\n      if(!allValid()){\n        e.preventDefault();\n        if(e.stopImmediatePropagation) e.stopImmediatePropagation();\n        var bothChosen = selects.every(function(s){ return !!s.value; });\n        errorEl.textContent = bothChosen\n          ? 'Please choose two different rubs before adding to cart.'\n          : 'Please choose 2 rubs before adding to cart.';\n        errorEl.style.display = 'block';\n        selects.forEach(function(s){ if(!s.value){ s.style.borderColor = '#e95144'; } });\n        widget.scrollIntoView({behavior:'smooth', block:'center'});\n        return false;\n      }\n      forms.forEach(syncHiddenInputs);\n    }\n    document.addEventListener('submit', function(e){\n      if (forms.indexOf(e.target) !== -1) guard(e);\n    }, true);\n    document.addEventListener('click', function(e){\n      var btn = e.target.closest \u0026\u0026 e.target.closest('button[type=\"submit\"], [name=\"add\"], input[type=\"submit\"]');\n      if (!btn) return;\n      var f = btn.closest('form');\n      if (!f || forms.indexOf(f) === -1) return;\n      guard(e);\n    }, true);\n\n    selects.forEach(function(s){ s.addEventListener('change', refresh); });\n    refresh();\n  }\n  if(document.readyState === 'loading'){\n    document.addEventListener('DOMContentLoaded', init);\n  } else {\n    init();\n  }\n})();\n\u003c\/script\u003e\n\n\u003cdiv style=\"border:1px solid #ccc;border-radius:8px;padding:14px 16px;margin:0 0 18px;\"\u003e\n\u003cp style=\"margin:0 0 6px;\"\u003e\u003cstrong\u003eAt a glance\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp style=\"margin:4px 0;\"\u003e\u003cstrong\u003eType:\u003c\/strong\u003e Bundle — any 2 BBQ Lab rubs\u003c\/p\u003e\n\u003cp style=\"margin:4px 0;\"\u003e\u003cstrong\u003eIncludes:\u003c\/strong\u003e Your choice of any two of the three signature rubs\u003c\/p\u003e\n\u003cp style=\"margin:4px 0;\"\u003e\u003cstrong\u003ePrice:\u003c\/strong\u003e 10% off buying two singly. Pick your pair above\u003c\/p\u003e\n\u003cp style=\"margin:4px 0;\"\u003e\u003cstrong\u003eOrigin:\u003c\/strong\u003e Made in Australia — small-batch, hand-blended\u003c\/p\u003e\n\u003cp style=\"margin:4px 0;\"\u003e\u003cstrong\u003eBest for:\u003c\/strong\u003e Tasting the range, or gifting a mate\u003c\/p\u003e\n\u003c\/div\u003e\n\n\u003ch2\u003eTwo rubs, your call\u003c\/h2\u003e\n\u003cp\u003ePick any two of BBQ Lab's signature small-batch rubs and save 10%. Can't decide between them, or sorting a gift for the backyard cook in your life? Mix \u0026amp; Match lets you build your own pair — just choose your combo above.\u003c\/p\u003e\n\n\u003ch2\u003eChoose your two\u003c\/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003ca href=\"\/en-nz\/products\/bbq-lab-black-gold-coffee-amp-peanut-butter-bbq-rub-for-red-meat-190g\"\u003eBlack Gold\u003c\/a\u003e — coffee \u0026amp; peanut butter, built for red meat\u003c\/li\u003e\n\u003cli\u003e\n\u003ca href=\"\/en-nz\/products\/bbq-lab-island-smoke-sweet-smoky-amp-citrus-bbq-rub-190g\"\u003eIsland Smoke\u003c\/a\u003e — sweet, smoky \u0026amp; citrus\u003c\/li\u003e\n\u003cli\u003e\n\u003ca href=\"\/en-nz\/products\/bbq-lab-true-blend-all-purpose-seasoning-salt\"\u003eTrue Blend\u003c\/a\u003e — the all-purpose seasoning salt \u0026amp; rub\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003ch2\u003eWhy you'll love it\u003c\/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTwo full-size jars of genuine small-batch, hand-blended rub.\u003c\/li\u003e\n\u003cli\u003eMix a headliner with the True Blend all-rounder, or run two big flavours side by side.\u003c\/li\u003e\n\u003cli\u003eMade in Australia — bold, authentic flavour with no filler.\u003c\/li\u003e\n\u003cli\u003eReady-to-gift, or the perfect way to find your favourite.\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003ch2\u003eThe Rub Smuggler's Verdict\u003c\/h2\u003e\n\u003cdiv style=\"margin-top:10px;overflow:hidden;\"\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0565\/8568\/2986\/files\/667_point-two-shakers.png?width=440\" alt=\"Darryl Rubb, The Rub Smuggler\" width=\"220\" height=\"220\" loading=\"lazy\" style=\"width:220px;height:220px;float:right;margin:0;\"\u003e\n\u003cp style=\"margin:0;\"\u003e\"Two jars, half the arguing,\" grins the Smuggler. His pick: run Black Gold on a steak and True Blend on the spuds, same cook. Finish the plate with a splash of \u003ca href=\"\/en-nz\/products\/rum-and-que-meat-juice\"\u003eRum and Que Meat Juice\u003c\/a\u003e and, if there's chook, a drizzle of \u003ca href=\"\/en-nz\/products\/atomic-chicken-honey-mango-bbq-sauce-250ml\"\u003eAtomic Chicken Honey Mango\u003c\/a\u003e. Sorted.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv style=\"border:1px dashed #E8340A;border-radius:8px;padding:14px 16px;margin:24px 0 18px;clear:both;\"\u003e\n\u003cp style=\"margin:0 0 6px;\"\u003e\u003cstrong\u003e🏴‍☠️ Darryl's Secret: Two-Jar Steak and Spuds\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp style=\"margin:0 0 10px;\"\u003e\u003cem\u003eTwo jars, one plate, no arguments.\u003c\/em\u003e\u003c\/p\u003e\n\u003cp style=\"margin:0 0 4px;\"\u003e\u003cstrong\u003eYou'll need:\u003c\/strong\u003e 2 rump steaks; 2 tbsp Black Gold; 800g potatoes, cut into chunks; 1 tbsp True Blend; 2 tbsp olive oil.\u003c\/p\u003e\n\u003cp style=\"margin:8px 0 4px;\"\u003e\u003cstrong\u003eDo this:\u003c\/strong\u003e\u003c\/p\u003e\n\u003col style=\"margin:0 0 4px 20px;\"\u003e\n\u003cli\u003eToss the potatoes in oil and True Blend and roast at 220°C for 40 minutes, turning once.\u003c\/li\u003e\n\u003cli\u003eCoat the steaks with Black Gold and rest 20 minutes while the spuds cook.\u003c\/li\u003e\n\u003cli\u003eSear the steaks over high heat for 3–4 minutes a side, rest 5 minutes, and serve with the potatoes.\u003c\/li\u003e\n\u003c\/ol\u003e\n\u003cp style=\"margin:8px 0 0;\"\u003e\u003cstrong\u003eWhy it works:\u003c\/strong\u003e Two different rubs on one plate gives you contrast without any extra effort.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003ch2 style=\"clear:both;margin-top:32px;\"\u003eFAQ\u003c\/h2\u003e\n\u003cp\u003e\u003cstrong\u003eHow does Mix \u0026amp; Match work?\u003c\/strong\u003e\u003cbr\u003eChoose your two-rub combo from the options above, add to cart, and we'll pack that pair.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eWhich rubs can I choose from?\u003c\/strong\u003e\u003cbr\u003eAny two of the three BBQ Lab signature rubs: Black Gold, Island Smoke and True Blend.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eIs it cheaper than buying singly?\u003c\/strong\u003e\u003cbr\u003eYes — two jars together are a straight 10% off buying them separately in one easy pack.\u003c\/p\u003e\n\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\": \"https:\/\/schema.org\", \"@type\": \"FAQPage\", \"mainEntity\": [{\"@type\": \"Question\", \"name\": \"How does Mix \u0026 Match work?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Choose your two-rub combo from the options above, add to cart, and we'll pack that pair.\"}}, {\"@type\": \"Question\", \"name\": \"Which rubs can I choose from?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Any two of the three BBQ Lab signature rubs: Black Gold, Island Smoke and True Blend.\"}}, {\"@type\": \"Question\", \"name\": \"Is it cheaper than buying singly?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Yes — two jars together are a straight 10% off buying them separately.\"}}]}\u003c\/script\u003e","brand":"BBQ LAB","offers":[{"title":"Default Title","offer_id":44575836176426,"sku":"BBQLMM-2PK","price":46.0,"currency_code":"NZD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0565\/8568\/2986\/files\/bbq-lab-mix-and-match-2-rubs.jpg?v=1784025321","url":"https:\/\/www.therubhub.com.au\/en-nz\/products\/bbq-lab-mix-match-any-2-rubs","provider":"THE RUB HUB","version":"1.0","type":"link"}