{"title":"TAILDRAGGER SYNDICATE","description":"","products":[{"product_id":"taildragger-syndicate-36-ford-graphic-tee","title":"TAILDRAGGER SYNDICATE 36 FORD GRAPHIC TEE","description":"\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003eClassic Short Sleeve Tee.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003e6 oz. Open-End Cotton.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e100% Cotton\u003c\/strong\u003e\u003cstrong\u003e.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003eFit: Classic.\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e\n\u003cspan style=\"font-size: 1.75rem;\"\u003e✅ \u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong style=\"font-size: 1.75rem;\"\u003e48 Minimum Total Quantity to Place Order\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eDiscounts Applied Automatically\u003c\/strong\u003e at quantity breaks: 72, 144, 288, 576\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003ePricing includes \u003cmeta charset=\"utf-8\"\u003e\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eLogos Screen Print on Front and Back.  Custom Neck Labels, Individually Folded, Bagged\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e. Small through X-Large.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e\n\u003cstrong\u003eNote:\u003c\/strong\u003e 2XL add $2.00   |   3XL add $3.00\u003cmeta charset=\"utf-8\"\u003e\n\u003c\/h3\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e4XL add $4.00   |   5XL add 5.00 \u003c\/h3\u003e\n\u003ctable style=\"width: 90.121%; border-collapse: collapse; font-size: 1.5rem;\" height=\"200\"\u003e\n\u003cthead\u003e\n\u003ctr style=\"background-color: #f0f0f0;\"\u003e\n\u003cth style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003eQuantity Range\u003c\/th\u003e\n\u003cth style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003eCost Per\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e48–71\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$13.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e72–143\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$11.50\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e144–287\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$10.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e288–575\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$9.20\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003e576+\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003e$8.10\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cdiv style=\"margin: 16px 0;\" data-server-epoch=\"{{ server_epoch }}\" id=\"sched-widget\"\u003e\n\u003cdiv style=\"color: #b00020; margin-top: 8px; display: none;\" role=\"alert\" id=\"sched-error\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cp\u003e\u003cscript\u003e\n(function(){\n  var DAYS_OUT = 15;\n  var widget = document.getElementById('sched-widget');\n  if (!widget) return;\n\n  var input = document.getElementById('scheduled_date');\n  var err = document.getElementById('sched-error');\n\n  var serverEpoch = parseInt(widget.getAttribute('data-server-epoch') || \"0\", 10);\n  var base = new Date(serverEpoch * 1000);\n  if (isNaN(base.getTime())) base = new Date();\n  base.setHours(0,0,0,0);\n\n  function nextWeekday(d){\n    var c = new Date(d.getTime());\n    while (c.getDay() === 0 || c.getDay() === 6) { \/\/ 0 Sun, 6 Sat\n      c.setDate(c.getDate() + 1);\n    }\n    return c;\n  }\n\n  function isoDate(d){\n    var mm = String(d.getMonth()+1).padStart(2,'0');\n    var dd = String(d.getDate()).padStart(2,'0');\n    return d.getFullYear() + '-' + mm + '-' + dd;\n  }\n\n  \/\/ compute min (server time) + DAYS_OUT, bump to next weekday if needed\n  var minDate = new Date(base);\n  minDate.setDate(minDate.getDate() + DAYS_OUT);\n  minDate = nextWeekday(minDate);\n\n  input.min = isoDate(minDate);\n  input.value = isoDate(minDate);\n\n  function validate(dateStr){\n    if(!dateStr) return { ok:false, msg: 'Please select a Scheduled In-Hands Date.' };\n    var sel = new Date(dateStr + 'T00:00:00');\n    if(isNaN(sel.getTime())) return { ok:false, msg: 'Selected date is invalid.' };\n    sel.setHours(0,0,0,0);\n    if(sel \u003c minDate) return { ok:false, msg: 'Selected date is earlier than the earliest available: ' + isoDate(minDate) + '.' , corrected: minDate };\n    if(sel.getDay() === 0 || sel.getDay() === 6) return { ok:false, msg: 'Weekends not allowed. Next business day: ' + isoDate(nextWeekday(sel)) + '.', corrected: nextWeekday(sel) };\n    return { ok:true };\n  }\n\n  function showError(message){\n    err.textContent = message;\n    err.style.display = 'block';\n  }\n  function hideError(){\n    err.textContent = '';\n    err.style.display = 'none';\n  }\n\n  function handleChange(){\n    var res = validate(input.value);\n    if(!res.ok){\n      showError(res.msg);\n      if(res.corrected) input.value = isoDate(res.corrected);\n    } else {\n      hideError();\n    }\n  }\n\n  input.addEventListener('change', handleChange);\n  input.addEventListener('blur', handleChange);\n\n  \/\/ Ensure validation blocks form submit (works with your existing Add to Cart)\n  var parentForm = input.closest('form');\n  if(parentForm){\n    parentForm.addEventListener('submit', function(e){\n      var res = validate(input.value);\n      if(!res.ok){\n        e.preventDefault();\n        showError(res.msg);\n        if(res.corrected) input.value = isoDate(res.corrected);\n        input.focus();\n        return false;\n      }\n    }, { capture:true });\n  }\n\n})();\n\u003c\/script\u003e \u003cscript\u003e\ndocument.addEventListener('DOMContentLoaded', function() {\n\n  const dateInput = document.getElementById('scheduled_date');\n  if (!dateInput) return;\n\n  \/\/ Detect any AJAX add-to-cart click\n  document.querySelectorAll('.product-form__submit, [data-add-to-cart], button[type=\"submit\"]').forEach(btn =\u003e {\n    btn.addEventListener('click', function(e) {\n\n      const selected = dateInput.value;\n      if (!selected) {\n        e.preventDefault();\n        alert(\"Please select your REQUIRED Scheduled In-Hands Date before continuing.\");\n        dateInput.focus();\n        return false;\n      }\n\n      \/\/ Intercept Shopify AJAX\n      document.addEventListener('cart:request-start', function(ev) {\n        if (!ev.detail || !ev.detail.body) return;\n\n        try {\n          let data = ev.detail.body;\n\n          \/\/ Inject the line item property\n          data.set(\"properties[Scheduled Date In-Hand]\", selected);\n\n        } catch (err) {\n          console.warn(\"Unable to inject Scheduled Date:\", err);\n        }\n      }, { once: true });\n\n    });\n  });\n\n});\n\u003c\/script\u003e\u003c\/p\u003e","brand":"Color Tech","offers":[{"title":"Default Title","offer_id":43334939541710,"sku":null,"price":11.5,"currency_code":"USD","in_stock":true},{"title":"Default_cpc_F624FDA9C45A4","offer_id":43335433093326,"sku":null,"price":624.0,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0618\/5562\/9518\/files\/MOCKUP_BACK_36_FORD_TS.png?v=1767722528"},{"product_id":"taildragger-syndicate-39-zephyr-graphic-tee","title":"TAILDRAGGER SYNDICATE 39 ZEPHYR GRAPHIC TEE","description":"\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003eClassic Short Sleeve Tee.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003e6 oz. Open-End Cotton.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e100% Cotton\u003c\/strong\u003e\u003cstrong\u003e.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003eFit: Classic.\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e\n\u003cspan style=\"font-size: 1.75rem;\"\u003e✅ \u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong style=\"font-size: 1.75rem;\"\u003e48 Minimum Total Quantity to Place Order\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eDiscounts Applied Automatically\u003c\/strong\u003e at quantity breaks: 72, 144, 288, 576\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003ePricing includes \u003cmeta charset=\"utf-8\"\u003e\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eLogos Screen Print on Front and Back.  Custom Neck Labels, Individually Folded, Bagged\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e. Small through X-Large.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e\n\u003cstrong\u003eNote:\u003c\/strong\u003e 2XL add $2.00   |   3XL add $3.00\u003cmeta charset=\"utf-8\"\u003e\n\u003c\/h3\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e4XL add $4.00   |   5XL add 5.00 \u003c\/h3\u003e\n\u003ctable style=\"width: 90.121%; border-collapse: collapse; font-size: 1.5rem;\" height=\"200\"\u003e\n\u003cthead\u003e\n\u003ctr style=\"background-color: #f0f0f0;\"\u003e\n\u003cth style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003eQuantity Range\u003c\/th\u003e\n\u003cth style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003eCost Per\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e48–71\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$13.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e72–143\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$11.50\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e144–287\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$10.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e288–575\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$9.20\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003e576+\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003e$8.10\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cdiv style=\"margin: 16px 0;\" data-server-epoch=\"{{ server_epoch }}\" id=\"sched-widget\"\u003e\n\u003cdiv style=\"color: #b00020; margin-top: 8px; display: none;\" role=\"alert\" id=\"sched-error\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cp\u003e\u003cscript\u003e\n(function(){\n  var DAYS_OUT = 15;\n  var widget = document.getElementById('sched-widget');\n  if (!widget) return;\n\n  var input = document.getElementById('scheduled_date');\n  var err = document.getElementById('sched-error');\n\n  var serverEpoch = parseInt(widget.getAttribute('data-server-epoch') || \"0\", 10);\n  var base = new Date(serverEpoch * 1000);\n  if (isNaN(base.getTime())) base = new Date();\n  base.setHours(0,0,0,0);\n\n  function nextWeekday(d){\n    var c = new Date(d.getTime());\n    while (c.getDay() === 0 || c.getDay() === 6) { \/\/ 0 Sun, 6 Sat\n      c.setDate(c.getDate() + 1);\n    }\n    return c;\n  }\n\n  function isoDate(d){\n    var mm = String(d.getMonth()+1).padStart(2,'0');\n    var dd = String(d.getDate()).padStart(2,'0');\n    return d.getFullYear() + '-' + mm + '-' + dd;\n  }\n\n  \/\/ compute min (server time) + DAYS_OUT, bump to next weekday if needed\n  var minDate = new Date(base);\n  minDate.setDate(minDate.getDate() + DAYS_OUT);\n  minDate = nextWeekday(minDate);\n\n  input.min = isoDate(minDate);\n  input.value = isoDate(minDate);\n\n  function validate(dateStr){\n    if(!dateStr) return { ok:false, msg: 'Please select a Scheduled In-Hands Date.' };\n    var sel = new Date(dateStr + 'T00:00:00');\n    if(isNaN(sel.getTime())) return { ok:false, msg: 'Selected date is invalid.' };\n    sel.setHours(0,0,0,0);\n    if(sel \u003c minDate) return { ok:false, msg: 'Selected date is earlier than the earliest available: ' + isoDate(minDate) + '.' , corrected: minDate };\n    if(sel.getDay() === 0 || sel.getDay() === 6) return { ok:false, msg: 'Weekends not allowed. Next business day: ' + isoDate(nextWeekday(sel)) + '.', corrected: nextWeekday(sel) };\n    return { ok:true };\n  }\n\n  function showError(message){\n    err.textContent = message;\n    err.style.display = 'block';\n  }\n  function hideError(){\n    err.textContent = '';\n    err.style.display = 'none';\n  }\n\n  function handleChange(){\n    var res = validate(input.value);\n    if(!res.ok){\n      showError(res.msg);\n      if(res.corrected) input.value = isoDate(res.corrected);\n    } else {\n      hideError();\n    }\n  }\n\n  input.addEventListener('change', handleChange);\n  input.addEventListener('blur', handleChange);\n\n  \/\/ Ensure validation blocks form submit (works with your existing Add to Cart)\n  var parentForm = input.closest('form');\n  if(parentForm){\n    parentForm.addEventListener('submit', function(e){\n      var res = validate(input.value);\n      if(!res.ok){\n        e.preventDefault();\n        showError(res.msg);\n        if(res.corrected) input.value = isoDate(res.corrected);\n        input.focus();\n        return false;\n      }\n    }, { capture:true });\n  }\n\n})();\n\u003c\/script\u003e \u003cscript\u003e\ndocument.addEventListener('DOMContentLoaded', function() {\n\n  const dateInput = document.getElementById('scheduled_date');\n  if (!dateInput) return;\n\n  \/\/ Detect any AJAX add-to-cart click\n  document.querySelectorAll('.product-form__submit, [data-add-to-cart], button[type=\"submit\"]').forEach(btn =\u003e {\n    btn.addEventListener('click', function(e) {\n\n      const selected = dateInput.value;\n      if (!selected) {\n        e.preventDefault();\n        alert(\"Please select your REQUIRED Scheduled In-Hands Date before continuing.\");\n        dateInput.focus();\n        return false;\n      }\n\n      \/\/ Intercept Shopify AJAX\n      document.addEventListener('cart:request-start', function(ev) {\n        if (!ev.detail || !ev.detail.body) return;\n\n        try {\n          let data = ev.detail.body;\n\n          \/\/ Inject the line item property\n          data.set(\"properties[Scheduled Date In-Hand]\", selected);\n\n        } catch (err) {\n          console.warn(\"Unable to inject Scheduled Date:\", err);\n        }\n      }, { once: true });\n\n    });\n  });\n\n});\n\u003c\/script\u003e\u003c\/p\u003e","brand":"Color Tech","offers":[{"title":"Default Title","offer_id":43334940721358,"sku":null,"price":11.5,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0618\/5562\/9518\/files\/MOCKUP_BACK_39_ZEPHYR_TS.png?v=1767736042"},{"product_id":"taildragger-syndicate-41-chevy-graphic-tee","title":"TAILDRAGGER SYNDICATE 41 CHEVY GRAPHIC TEE","description":"\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003eClassic Short Sleeve Tee.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003e6 oz. Open-End Cotton.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e100% Cotton\u003c\/strong\u003e\u003cstrong\u003e.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003eFit: Classic.\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e\n\u003cspan style=\"font-size: 1.75rem;\"\u003e✅ \u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong style=\"font-size: 1.75rem;\"\u003e48 Minimum Total Quantity to Place Order\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eDiscounts Applied Automatically\u003c\/strong\u003e at quantity breaks: 72, 144, 288, 576\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003ePricing includes \u003cmeta charset=\"utf-8\"\u003e\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eLogos Screen Print on Front and Back.  Custom Neck Labels, Individually Folded, Bagged\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e. Small through X-Large.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e\n\u003cstrong\u003eNote:\u003c\/strong\u003e 2XL add $2.00   |   3XL add $3.00\u003cmeta charset=\"utf-8\"\u003e\n\u003c\/h3\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e4XL add $4.00   |   5XL add 5.00 \u003c\/h3\u003e\n\u003ctable style=\"width: 90.121%; border-collapse: collapse; font-size: 1.5rem;\" height=\"200\"\u003e\n\u003cthead\u003e\n\u003ctr style=\"background-color: #f0f0f0;\"\u003e\n\u003cth style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003eQuantity Range\u003c\/th\u003e\n\u003cth style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003eCost Per\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e48–71\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$13.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e72–143\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$11.50\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e144–287\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$10.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e288–575\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$9.20\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003e576+\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003e$8.10\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cdiv style=\"margin: 16px 0;\" data-server-epoch=\"{{ server_epoch }}\" id=\"sched-widget\"\u003e\n\u003cdiv style=\"color: #b00020; margin-top: 8px; display: none;\" role=\"alert\" id=\"sched-error\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cp\u003e\u003cscript\u003e\n(function(){\n  var DAYS_OUT = 15;\n  var widget = document.getElementById('sched-widget');\n  if (!widget) return;\n\n  var input = document.getElementById('scheduled_date');\n  var err = document.getElementById('sched-error');\n\n  var serverEpoch = parseInt(widget.getAttribute('data-server-epoch') || \"0\", 10);\n  var base = new Date(serverEpoch * 1000);\n  if (isNaN(base.getTime())) base = new Date();\n  base.setHours(0,0,0,0);\n\n  function nextWeekday(d){\n    var c = new Date(d.getTime());\n    while (c.getDay() === 0 || c.getDay() === 6) { \/\/ 0 Sun, 6 Sat\n      c.setDate(c.getDate() + 1);\n    }\n    return c;\n  }\n\n  function isoDate(d){\n    var mm = String(d.getMonth()+1).padStart(2,'0');\n    var dd = String(d.getDate()).padStart(2,'0');\n    return d.getFullYear() + '-' + mm + '-' + dd;\n  }\n\n  \/\/ compute min (server time) + DAYS_OUT, bump to next weekday if needed\n  var minDate = new Date(base);\n  minDate.setDate(minDate.getDate() + DAYS_OUT);\n  minDate = nextWeekday(minDate);\n\n  input.min = isoDate(minDate);\n  input.value = isoDate(minDate);\n\n  function validate(dateStr){\n    if(!dateStr) return { ok:false, msg: 'Please select a Scheduled In-Hands Date.' };\n    var sel = new Date(dateStr + 'T00:00:00');\n    if(isNaN(sel.getTime())) return { ok:false, msg: 'Selected date is invalid.' };\n    sel.setHours(0,0,0,0);\n    if(sel \u003c minDate) return { ok:false, msg: 'Selected date is earlier than the earliest available: ' + isoDate(minDate) + '.' , corrected: minDate };\n    if(sel.getDay() === 0 || sel.getDay() === 6) return { ok:false, msg: 'Weekends not allowed. Next business day: ' + isoDate(nextWeekday(sel)) + '.', corrected: nextWeekday(sel) };\n    return { ok:true };\n  }\n\n  function showError(message){\n    err.textContent = message;\n    err.style.display = 'block';\n  }\n  function hideError(){\n    err.textContent = '';\n    err.style.display = 'none';\n  }\n\n  function handleChange(){\n    var res = validate(input.value);\n    if(!res.ok){\n      showError(res.msg);\n      if(res.corrected) input.value = isoDate(res.corrected);\n    } else {\n      hideError();\n    }\n  }\n\n  input.addEventListener('change', handleChange);\n  input.addEventListener('blur', handleChange);\n\n  \/\/ Ensure validation blocks form submit (works with your existing Add to Cart)\n  var parentForm = input.closest('form');\n  if(parentForm){\n    parentForm.addEventListener('submit', function(e){\n      var res = validate(input.value);\n      if(!res.ok){\n        e.preventDefault();\n        showError(res.msg);\n        if(res.corrected) input.value = isoDate(res.corrected);\n        input.focus();\n        return false;\n      }\n    }, { capture:true });\n  }\n\n})();\n\u003c\/script\u003e \u003cscript\u003e\ndocument.addEventListener('DOMContentLoaded', function() {\n\n  const dateInput = document.getElementById('scheduled_date');\n  if (!dateInput) return;\n\n  \/\/ Detect any AJAX add-to-cart click\n  document.querySelectorAll('.product-form__submit, [data-add-to-cart], button[type=\"submit\"]').forEach(btn =\u003e {\n    btn.addEventListener('click', function(e) {\n\n      const selected = dateInput.value;\n      if (!selected) {\n        e.preventDefault();\n        alert(\"Please select your REQUIRED Scheduled In-Hands Date before continuing.\");\n        dateInput.focus();\n        return false;\n      }\n\n      \/\/ Intercept Shopify AJAX\n      document.addEventListener('cart:request-start', function(ev) {\n        if (!ev.detail || !ev.detail.body) return;\n\n        try {\n          let data = ev.detail.body;\n\n          \/\/ Inject the line item property\n          data.set(\"properties[Scheduled Date In-Hand]\", selected);\n\n        } catch (err) {\n          console.warn(\"Unable to inject Scheduled Date:\", err);\n        }\n      }, { once: true });\n\n    });\n  });\n\n});\n\u003c\/script\u003e\u003c\/p\u003e","brand":"Color Tech","offers":[{"title":"Default Title","offer_id":43334937313486,"sku":null,"price":11.5,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0618\/5562\/9518\/files\/MOCKUP_BACK_41_CHEVY_TS.png?v=1767737185"},{"product_id":"taildragger-syndicate-41-chevy-graphic-tee-copy","title":"TAILDRAGGER SYNDICATE 40 FORD GRAPHIC TEE","description":"\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003eClassic Short Sleeve Tee.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003e6 oz. Open-End Cotton.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e100% Cotton\u003c\/strong\u003e\u003cstrong\u003e.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003eFit: Classic.\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e\n\u003cspan style=\"font-size: 1.75rem;\"\u003e✅ \u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong style=\"font-size: 1.75rem;\"\u003e48 Minimum Total Quantity to Place Order\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eDiscounts Applied Automatically\u003c\/strong\u003e at quantity breaks: 72, 144, 288, 576\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003ePricing includes \u003cmeta charset=\"utf-8\"\u003e\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eLogos Screen Print on Front and Back.  Custom Neck Labels, Individually Folded, Bagged\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e. Small through X-Large.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e\n\u003cstrong\u003eNote:\u003c\/strong\u003e 2XL add $2.00   |   3XL add $3.00\u003cmeta charset=\"utf-8\"\u003e\n\u003c\/h3\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e4XL add $4.00   |   5XL add 5.00 \u003c\/h3\u003e\n\u003ctable style=\"width: 90.121%; border-collapse: collapse; font-size: 1.5rem;\" height=\"200\"\u003e\n\u003cthead\u003e\n\u003ctr style=\"background-color: #f0f0f0;\"\u003e\n\u003cth style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003eQuantity Range\u003c\/th\u003e\n\u003cth style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003eCost Per\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e48–71\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$13.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e72–143\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$11.50\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e144–287\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$10.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e288–575\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$9.20\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003e576+\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003e$8.10\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cdiv style=\"margin: 16px 0;\" data-server-epoch=\"{{ server_epoch }}\" id=\"sched-widget\"\u003e\n\u003cdiv style=\"color: #b00020; margin-top: 8px; display: none;\" role=\"alert\" id=\"sched-error\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cp\u003e\u003cscript\u003e\n(function(){\n  var DAYS_OUT = 15;\n  var widget = document.getElementById('sched-widget');\n  if (!widget) return;\n\n  var input = document.getElementById('scheduled_date');\n  var err = document.getElementById('sched-error');\n\n  var serverEpoch = parseInt(widget.getAttribute('data-server-epoch') || \"0\", 10);\n  var base = new Date(serverEpoch * 1000);\n  if (isNaN(base.getTime())) base = new Date();\n  base.setHours(0,0,0,0);\n\n  function nextWeekday(d){\n    var c = new Date(d.getTime());\n    while (c.getDay() === 0 || c.getDay() === 6) { \/\/ 0 Sun, 6 Sat\n      c.setDate(c.getDate() + 1);\n    }\n    return c;\n  }\n\n  function isoDate(d){\n    var mm = String(d.getMonth()+1).padStart(2,'0');\n    var dd = String(d.getDate()).padStart(2,'0');\n    return d.getFullYear() + '-' + mm + '-' + dd;\n  }\n\n  \/\/ compute min (server time) + DAYS_OUT, bump to next weekday if needed\n  var minDate = new Date(base);\n  minDate.setDate(minDate.getDate() + DAYS_OUT);\n  minDate = nextWeekday(minDate);\n\n  input.min = isoDate(minDate);\n  input.value = isoDate(minDate);\n\n  function validate(dateStr){\n    if(!dateStr) return { ok:false, msg: 'Please select a Scheduled In-Hands Date.' };\n    var sel = new Date(dateStr + 'T00:00:00');\n    if(isNaN(sel.getTime())) return { ok:false, msg: 'Selected date is invalid.' };\n    sel.setHours(0,0,0,0);\n    if(sel \u003c minDate) return { ok:false, msg: 'Selected date is earlier than the earliest available: ' + isoDate(minDate) + '.' , corrected: minDate };\n    if(sel.getDay() === 0 || sel.getDay() === 6) return { ok:false, msg: 'Weekends not allowed. Next business day: ' + isoDate(nextWeekday(sel)) + '.', corrected: nextWeekday(sel) };\n    return { ok:true };\n  }\n\n  function showError(message){\n    err.textContent = message;\n    err.style.display = 'block';\n  }\n  function hideError(){\n    err.textContent = '';\n    err.style.display = 'none';\n  }\n\n  function handleChange(){\n    var res = validate(input.value);\n    if(!res.ok){\n      showError(res.msg);\n      if(res.corrected) input.value = isoDate(res.corrected);\n    } else {\n      hideError();\n    }\n  }\n\n  input.addEventListener('change', handleChange);\n  input.addEventListener('blur', handleChange);\n\n  \/\/ Ensure validation blocks form submit (works with your existing Add to Cart)\n  var parentForm = input.closest('form');\n  if(parentForm){\n    parentForm.addEventListener('submit', function(e){\n      var res = validate(input.value);\n      if(!res.ok){\n        e.preventDefault();\n        showError(res.msg);\n        if(res.corrected) input.value = isoDate(res.corrected);\n        input.focus();\n        return false;\n      }\n    }, { capture:true });\n  }\n\n})();\n\u003c\/script\u003e \u003cscript\u003e\ndocument.addEventListener('DOMContentLoaded', function() {\n\n  const dateInput = document.getElementById('scheduled_date');\n  if (!dateInput) return;\n\n  \/\/ Detect any AJAX add-to-cart click\n  document.querySelectorAll('.product-form__submit, [data-add-to-cart], button[type=\"submit\"]').forEach(btn =\u003e {\n    btn.addEventListener('click', function(e) {\n\n      const selected = dateInput.value;\n      if (!selected) {\n        e.preventDefault();\n        alert(\"Please select your REQUIRED Scheduled In-Hands Date before continuing.\");\n        dateInput.focus();\n        return false;\n      }\n\n      \/\/ Intercept Shopify AJAX\n      document.addEventListener('cart:request-start', function(ev) {\n        if (!ev.detail || !ev.detail.body) return;\n\n        try {\n          let data = ev.detail.body;\n\n          \/\/ Inject the line item property\n          data.set(\"properties[Scheduled Date In-Hand]\", selected);\n\n        } catch (err) {\n          console.warn(\"Unable to inject Scheduled Date:\", err);\n        }\n      }, { once: true });\n\n    });\n  });\n\n});\n\u003c\/script\u003e\u003c\/p\u003e","brand":"Color Tech","offers":[{"title":"Default Title","offer_id":43334941016270,"sku":null,"price":11.5,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0618\/5562\/9518\/files\/MOCKUP_BACK_40_FORD_TS.png?v=1767738908"},{"product_id":"taildragger-syndicate-icon-logo-graphic-tee","title":"TAILDRAGGER SYNDICATE ICON LOGO on BLACK GRAPHIC TEE","description":"\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003eClassic Short Sleeve Tee.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003e6 oz. Open-End Cotton.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e100% Cotton\u003c\/strong\u003e\u003cstrong\u003e.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003eFit: Classic.\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e\n\u003cspan style=\"font-size: 1.75rem;\"\u003e✅ \u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong style=\"font-size: 1.75rem;\"\u003e48 Minimum Total Quantity to Place Order\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eDiscounts Applied Automatically\u003c\/strong\u003e at quantity breaks: 72, 144, 288, 576\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003ePricing includes \u003cmeta charset=\"utf-8\"\u003e\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eLogos Screen Print on Front and Back.  Custom Neck Labels, Individually Folded, Bagged\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e. Small through X-Large.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e\n\u003cstrong\u003eNote:\u003c\/strong\u003e 2XL add $2.00   |   3XL add $3.00\u003cmeta charset=\"utf-8\"\u003e\n\u003c\/h3\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e4XL add $4.00   |   5XL add 5.00 \u003c\/h3\u003e\n\u003ctable style=\"width: 90.121%; border-collapse: collapse; font-size: 1.5rem;\" height=\"200\"\u003e\n\u003cthead\u003e\n\u003ctr style=\"background-color: #f0f0f0;\"\u003e\n\u003cth style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003eQuantity Range\u003c\/th\u003e\n\u003cth style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003eCost Per\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e48–71\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$13.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e72–143\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$11.50\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e144–287\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$10.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e288–575\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$9.20\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003e576+\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003e$8.10\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cdiv style=\"margin: 16px 0;\" data-server-epoch=\"{{ server_epoch }}\" id=\"sched-widget\"\u003e\n\u003cdiv style=\"color: #b00020; margin-top: 8px; display: none;\" role=\"alert\" id=\"sched-error\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cp\u003e\u003cscript\u003e\n(function(){\n  var DAYS_OUT = 15;\n  var widget = document.getElementById('sched-widget');\n  if (!widget) return;\n\n  var input = document.getElementById('scheduled_date');\n  var err = document.getElementById('sched-error');\n\n  var serverEpoch = parseInt(widget.getAttribute('data-server-epoch') || \"0\", 10);\n  var base = new Date(serverEpoch * 1000);\n  if (isNaN(base.getTime())) base = new Date();\n  base.setHours(0,0,0,0);\n\n  function nextWeekday(d){\n    var c = new Date(d.getTime());\n    while (c.getDay() === 0 || c.getDay() === 6) { \/\/ 0 Sun, 6 Sat\n      c.setDate(c.getDate() + 1);\n    }\n    return c;\n  }\n\n  function isoDate(d){\n    var mm = String(d.getMonth()+1).padStart(2,'0');\n    var dd = String(d.getDate()).padStart(2,'0');\n    return d.getFullYear() + '-' + mm + '-' + dd;\n  }\n\n  \/\/ compute min (server time) + DAYS_OUT, bump to next weekday if needed\n  var minDate = new Date(base);\n  minDate.setDate(minDate.getDate() + DAYS_OUT);\n  minDate = nextWeekday(minDate);\n\n  input.min = isoDate(minDate);\n  input.value = isoDate(minDate);\n\n  function validate(dateStr){\n    if(!dateStr) return { ok:false, msg: 'Please select a Scheduled In-Hands Date.' };\n    var sel = new Date(dateStr + 'T00:00:00');\n    if(isNaN(sel.getTime())) return { ok:false, msg: 'Selected date is invalid.' };\n    sel.setHours(0,0,0,0);\n    if(sel \u003c minDate) return { ok:false, msg: 'Selected date is earlier than the earliest available: ' + isoDate(minDate) + '.' , corrected: minDate };\n    if(sel.getDay() === 0 || sel.getDay() === 6) return { ok:false, msg: 'Weekends not allowed. Next business day: ' + isoDate(nextWeekday(sel)) + '.', corrected: nextWeekday(sel) };\n    return { ok:true };\n  }\n\n  function showError(message){\n    err.textContent = message;\n    err.style.display = 'block';\n  }\n  function hideError(){\n    err.textContent = '';\n    err.style.display = 'none';\n  }\n\n  function handleChange(){\n    var res = validate(input.value);\n    if(!res.ok){\n      showError(res.msg);\n      if(res.corrected) input.value = isoDate(res.corrected);\n    } else {\n      hideError();\n    }\n  }\n\n  input.addEventListener('change', handleChange);\n  input.addEventListener('blur', handleChange);\n\n  \/\/ Ensure validation blocks form submit (works with your existing Add to Cart)\n  var parentForm = input.closest('form');\n  if(parentForm){\n    parentForm.addEventListener('submit', function(e){\n      var res = validate(input.value);\n      if(!res.ok){\n        e.preventDefault();\n        showError(res.msg);\n        if(res.corrected) input.value = isoDate(res.corrected);\n        input.focus();\n        return false;\n      }\n    }, { capture:true });\n  }\n\n})();\n\u003c\/script\u003e \u003cscript\u003e\ndocument.addEventListener('DOMContentLoaded', function() {\n\n  const dateInput = document.getElementById('scheduled_date');\n  if (!dateInput) return;\n\n  \/\/ Detect any AJAX add-to-cart click\n  document.querySelectorAll('.product-form__submit, [data-add-to-cart], button[type=\"submit\"]').forEach(btn =\u003e {\n    btn.addEventListener('click', function(e) {\n\n      const selected = dateInput.value;\n      if (!selected) {\n        e.preventDefault();\n        alert(\"Please select your REQUIRED Scheduled In-Hands Date before continuing.\");\n        dateInput.focus();\n        return false;\n      }\n\n      \/\/ Intercept Shopify AJAX\n      document.addEventListener('cart:request-start', function(ev) {\n        if (!ev.detail || !ev.detail.body) return;\n\n        try {\n          let data = ev.detail.body;\n\n          \/\/ Inject the line item property\n          data.set(\"properties[Scheduled Date In-Hand]\", selected);\n\n        } catch (err) {\n          console.warn(\"Unable to inject Scheduled Date:\", err);\n        }\n      }, { once: true });\n\n    });\n  });\n\n});\n\u003c\/script\u003e\u003c\/p\u003e","brand":"Color Tech","offers":[{"title":"Default Title","offer_id":43334942884046,"sku":null,"price":11.5,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0618\/5562\/9518\/files\/MOCKUP_BACK_on_Black_ICON_LOGO_TS.png?v=1767739231"},{"product_id":"taildragger-syndicate-icon-logo-on-white-graphic-tee","title":"TAILDRAGGER SYNDICATE ICON LOGO on WHITE GRAPHIC TEE","description":"\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003eClassic Short Sleeve Tee.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003e6 oz. Open-End Cotton.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e100% Cotton\u003c\/strong\u003e\u003cstrong\u003e.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003eFit: Classic.\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e\n\u003cspan style=\"font-size: 1.75rem;\"\u003e✅ \u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong style=\"font-size: 1.75rem;\"\u003e48 Minimum Total Quantity to Place Order\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eDiscounts Applied Automatically\u003c\/strong\u003e at quantity breaks: 72, 144, 288, 576\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003ePricing includes \u003cmeta charset=\"utf-8\"\u003e\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eLogos Screen Print on Front and Back.  Custom Neck Labels, Individually Folded, Bagged\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e. Small through X-Large.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e\n\u003cstrong\u003eNote:\u003c\/strong\u003e 2XL add $2.00   |   3XL add $3.00\u003cmeta charset=\"utf-8\"\u003e\n\u003c\/h3\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e4XL add $4.00   |   5XL add 5.00 \u003c\/h3\u003e\n\u003ctable style=\"width: 90.121%; border-collapse: collapse; font-size: 1.5rem;\" height=\"200\"\u003e\n\u003cthead\u003e\n\u003ctr style=\"background-color: #f0f0f0;\"\u003e\n\u003cth style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003eQuantity Range\u003c\/th\u003e\n\u003cth style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003eCost Per\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e48–71\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$13.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e72–143\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$11.50\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e144–287\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$10.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e288–575\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$9.20\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003e576+\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003e$8.10\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cdiv style=\"margin: 16px 0;\" data-server-epoch=\"{{ server_epoch }}\" id=\"sched-widget\"\u003e\n\u003cdiv style=\"color: #b00020; margin-top: 8px; display: none;\" role=\"alert\" id=\"sched-error\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cp\u003e\u003cscript\u003e\n(function(){\n  var DAYS_OUT = 15;\n  var widget = document.getElementById('sched-widget');\n  if (!widget) return;\n\n  var input = document.getElementById('scheduled_date');\n  var err = document.getElementById('sched-error');\n\n  var serverEpoch = parseInt(widget.getAttribute('data-server-epoch') || \"0\", 10);\n  var base = new Date(serverEpoch * 1000);\n  if (isNaN(base.getTime())) base = new Date();\n  base.setHours(0,0,0,0);\n\n  function nextWeekday(d){\n    var c = new Date(d.getTime());\n    while (c.getDay() === 0 || c.getDay() === 6) { \/\/ 0 Sun, 6 Sat\n      c.setDate(c.getDate() + 1);\n    }\n    return c;\n  }\n\n  function isoDate(d){\n    var mm = String(d.getMonth()+1).padStart(2,'0');\n    var dd = String(d.getDate()).padStart(2,'0');\n    return d.getFullYear() + '-' + mm + '-' + dd;\n  }\n\n  \/\/ compute min (server time) + DAYS_OUT, bump to next weekday if needed\n  var minDate = new Date(base);\n  minDate.setDate(minDate.getDate() + DAYS_OUT);\n  minDate = nextWeekday(minDate);\n\n  input.min = isoDate(minDate);\n  input.value = isoDate(minDate);\n\n  function validate(dateStr){\n    if(!dateStr) return { ok:false, msg: 'Please select a Scheduled In-Hands Date.' };\n    var sel = new Date(dateStr + 'T00:00:00');\n    if(isNaN(sel.getTime())) return { ok:false, msg: 'Selected date is invalid.' };\n    sel.setHours(0,0,0,0);\n    if(sel \u003c minDate) return { ok:false, msg: 'Selected date is earlier than the earliest available: ' + isoDate(minDate) + '.' , corrected: minDate };\n    if(sel.getDay() === 0 || sel.getDay() === 6) return { ok:false, msg: 'Weekends not allowed. Next business day: ' + isoDate(nextWeekday(sel)) + '.', corrected: nextWeekday(sel) };\n    return { ok:true };\n  }\n\n  function showError(message){\n    err.textContent = message;\n    err.style.display = 'block';\n  }\n  function hideError(){\n    err.textContent = '';\n    err.style.display = 'none';\n  }\n\n  function handleChange(){\n    var res = validate(input.value);\n    if(!res.ok){\n      showError(res.msg);\n      if(res.corrected) input.value = isoDate(res.corrected);\n    } else {\n      hideError();\n    }\n  }\n\n  input.addEventListener('change', handleChange);\n  input.addEventListener('blur', handleChange);\n\n  \/\/ Ensure validation blocks form submit (works with your existing Add to Cart)\n  var parentForm = input.closest('form');\n  if(parentForm){\n    parentForm.addEventListener('submit', function(e){\n      var res = validate(input.value);\n      if(!res.ok){\n        e.preventDefault();\n        showError(res.msg);\n        if(res.corrected) input.value = isoDate(res.corrected);\n        input.focus();\n        return false;\n      }\n    }, { capture:true });\n  }\n\n})();\n\u003c\/script\u003e \u003cscript\u003e\ndocument.addEventListener('DOMContentLoaded', function() {\n\n  const dateInput = document.getElementById('scheduled_date');\n  if (!dateInput) return;\n\n  \/\/ Detect any AJAX add-to-cart click\n  document.querySelectorAll('.product-form__submit, [data-add-to-cart], button[type=\"submit\"]').forEach(btn =\u003e {\n    btn.addEventListener('click', function(e) {\n\n      const selected = dateInput.value;\n      if (!selected) {\n        e.preventDefault();\n        alert(\"Please select your REQUIRED Scheduled In-Hands Date before continuing.\");\n        dateInput.focus();\n        return false;\n      }\n\n      \/\/ Intercept Shopify AJAX\n      document.addEventListener('cart:request-start', function(ev) {\n        if (!ev.detail || !ev.detail.body) return;\n\n        try {\n          let data = ev.detail.body;\n\n          \/\/ Inject the line item property\n          data.set(\"properties[Scheduled Date In-Hand]\", selected);\n\n        } catch (err) {\n          console.warn(\"Unable to inject Scheduled Date:\", err);\n        }\n      }, { once: true });\n\n    });\n  });\n\n});\n\u003c\/script\u003e\u003c\/p\u003e","brand":"Color Tech","offers":[{"title":"Default Title","offer_id":43334947537102,"sku":null,"price":11.5,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0618\/5562\/9518\/files\/MOCKUP_BACK_on_WHITE_ICON_LOGO_TS.png?v=1767739813"},{"product_id":"taildragger-syndicate-47-kustom-graphic-tee","title":"TAILDRAGGER SYNDICATE 47 KUSTOM GRAPHIC TEE","description":"\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003eClassic Short Sleeve Tee.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003e6 oz. Open-End Cotton.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e100% Cotton\u003c\/strong\u003e\u003cstrong\u003e.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003eFit: Classic.\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e\n\u003cspan style=\"font-size: 1.75rem;\"\u003e✅ \u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong style=\"font-size: 1.75rem;\"\u003e48 Minimum Total Quantity to Place Order\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eDiscounts Applied Automatically\u003c\/strong\u003e at quantity breaks: 72, 144, 288, 576\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003ePricing includes \u003cmeta charset=\"utf-8\"\u003e\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eLogos Screen Print on Front and Back.  Custom Neck Labels, Individually Folded, Bagged\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e. Small through X-Large.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e\n\u003cstrong\u003eNote:\u003c\/strong\u003e 2XL add $2.00   |   3XL add $3.00\u003cmeta charset=\"utf-8\"\u003e\n\u003c\/h3\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e4XL add $4.00   |   5XL add 5.00 \u003c\/h3\u003e\n\u003ctable style=\"width: 90.121%; border-collapse: collapse; font-size: 1.5rem;\" height=\"200\"\u003e\n\u003cthead\u003e\n\u003ctr style=\"background-color: #f0f0f0;\"\u003e\n\u003cth style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003eQuantity Range\u003c\/th\u003e\n\u003cth style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003eCost Per\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e48–71\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$13.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e72–143\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$11.50\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e144–287\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$10.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e288–575\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$9.20\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003e576+\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003e$8.10\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cdiv style=\"margin: 16px 0;\" data-server-epoch=\"{{ server_epoch }}\" id=\"sched-widget\"\u003e\n\u003cdiv style=\"color: #b00020; margin-top: 8px; display: none;\" role=\"alert\" id=\"sched-error\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cp\u003e\u003cscript\u003e\n(function(){\n  var DAYS_OUT = 15;\n  var widget = document.getElementById('sched-widget');\n  if (!widget) return;\n\n  var input = document.getElementById('scheduled_date');\n  var err = document.getElementById('sched-error');\n\n  var serverEpoch = parseInt(widget.getAttribute('data-server-epoch') || \"0\", 10);\n  var base = new Date(serverEpoch * 1000);\n  if (isNaN(base.getTime())) base = new Date();\n  base.setHours(0,0,0,0);\n\n  function nextWeekday(d){\n    var c = new Date(d.getTime());\n    while (c.getDay() === 0 || c.getDay() === 6) { \/\/ 0 Sun, 6 Sat\n      c.setDate(c.getDate() + 1);\n    }\n    return c;\n  }\n\n  function isoDate(d){\n    var mm = String(d.getMonth()+1).padStart(2,'0');\n    var dd = String(d.getDate()).padStart(2,'0');\n    return d.getFullYear() + '-' + mm + '-' + dd;\n  }\n\n  \/\/ compute min (server time) + DAYS_OUT, bump to next weekday if needed\n  var minDate = new Date(base);\n  minDate.setDate(minDate.getDate() + DAYS_OUT);\n  minDate = nextWeekday(minDate);\n\n  input.min = isoDate(minDate);\n  input.value = isoDate(minDate);\n\n  function validate(dateStr){\n    if(!dateStr) return { ok:false, msg: 'Please select a Scheduled In-Hands Date.' };\n    var sel = new Date(dateStr + 'T00:00:00');\n    if(isNaN(sel.getTime())) return { ok:false, msg: 'Selected date is invalid.' };\n    sel.setHours(0,0,0,0);\n    if(sel \u003c minDate) return { ok:false, msg: 'Selected date is earlier than the earliest available: ' + isoDate(minDate) + '.' , corrected: minDate };\n    if(sel.getDay() === 0 || sel.getDay() === 6) return { ok:false, msg: 'Weekends not allowed. Next business day: ' + isoDate(nextWeekday(sel)) + '.', corrected: nextWeekday(sel) };\n    return { ok:true };\n  }\n\n  function showError(message){\n    err.textContent = message;\n    err.style.display = 'block';\n  }\n  function hideError(){\n    err.textContent = '';\n    err.style.display = 'none';\n  }\n\n  function handleChange(){\n    var res = validate(input.value);\n    if(!res.ok){\n      showError(res.msg);\n      if(res.corrected) input.value = isoDate(res.corrected);\n    } else {\n      hideError();\n    }\n  }\n\n  input.addEventListener('change', handleChange);\n  input.addEventListener('blur', handleChange);\n\n  \/\/ Ensure validation blocks form submit (works with your existing Add to Cart)\n  var parentForm = input.closest('form');\n  if(parentForm){\n    parentForm.addEventListener('submit', function(e){\n      var res = validate(input.value);\n      if(!res.ok){\n        e.preventDefault();\n        showError(res.msg);\n        if(res.corrected) input.value = isoDate(res.corrected);\n        input.focus();\n        return false;\n      }\n    }, { capture:true });\n  }\n\n})();\n\u003c\/script\u003e \u003cscript\u003e\ndocument.addEventListener('DOMContentLoaded', function() {\n\n  const dateInput = document.getElementById('scheduled_date');\n  if (!dateInput) return;\n\n  \/\/ Detect any AJAX add-to-cart click\n  document.querySelectorAll('.product-form__submit, [data-add-to-cart], button[type=\"submit\"]').forEach(btn =\u003e {\n    btn.addEventListener('click', function(e) {\n\n      const selected = dateInput.value;\n      if (!selected) {\n        e.preventDefault();\n        alert(\"Please select your REQUIRED Scheduled In-Hands Date before continuing.\");\n        dateInput.focus();\n        return false;\n      }\n\n      \/\/ Intercept Shopify AJAX\n      document.addEventListener('cart:request-start', function(ev) {\n        if (!ev.detail || !ev.detail.body) return;\n\n        try {\n          let data = ev.detail.body;\n\n          \/\/ Inject the line item property\n          data.set(\"properties[Scheduled Date In-Hand]\", selected);\n\n        } catch (err) {\n          console.warn(\"Unable to inject Scheduled Date:\", err);\n        }\n      }, { once: true });\n\n    });\n  });\n\n});\n\u003c\/script\u003e\u003c\/p\u003e","brand":"Color Tech","offers":[{"title":"Default Title","offer_id":43334967853262,"sku":null,"price":11.5,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0618\/5562\/9518\/files\/MOCKUP_BACK_47_KUSTOM_TS.png?v=1767744131"},{"product_id":"taildragger-syndicate-mcphail-kustom-graphic-tee","title":"TAILDRAGGER SYNDICATE McPHAIL KUSTOM GRAPHIC TEE","description":"\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003eClassic Short Sleeve Tee.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003e6 oz. Open-End Cotton.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e100% Cotton\u003c\/strong\u003e\u003cstrong\u003e.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003eFit: Classic.\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e\n\u003cspan style=\"font-size: 1.75rem;\"\u003e✅ \u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong style=\"font-size: 1.75rem;\"\u003e48 Minimum Total Quantity to Place Order\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eDiscounts Applied Automatically\u003c\/strong\u003e at quantity breaks: 72, 144, 288, 576\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003ePricing includes \u003cmeta charset=\"utf-8\"\u003e\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eLogos Screen Print on Front and Back.  Custom Neck Labels, Individually Folded, Bagged\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e. Small through X-Large.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e\n\u003cstrong\u003eNote:\u003c\/strong\u003e 2XL add $2.00   |   3XL add $3.00\u003cmeta charset=\"utf-8\"\u003e\n\u003c\/h3\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e4XL add $4.00   |   5XL add 5.00 \u003c\/h3\u003e\n\u003ctable style=\"width: 90.121%; border-collapse: collapse; font-size: 1.5rem;\" height=\"200\"\u003e\n\u003cthead\u003e\n\u003ctr style=\"background-color: #f0f0f0;\"\u003e\n\u003cth style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003eQuantity Range\u003c\/th\u003e\n\u003cth style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003eCost Per\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e48–71\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$13.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e72–143\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$11.50\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e144–287\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$10.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e288–575\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$9.20\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003e576+\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003e$8.10\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cdiv style=\"margin: 16px 0;\" data-server-epoch=\"{{ server_epoch }}\" id=\"sched-widget\"\u003e\n\u003cdiv style=\"color: #b00020; margin-top: 8px; display: none;\" role=\"alert\" id=\"sched-error\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cp\u003e\u003cscript\u003e\n(function(){\n  var DAYS_OUT = 15;\n  var widget = document.getElementById('sched-widget');\n  if (!widget) return;\n\n  var input = document.getElementById('scheduled_date');\n  var err = document.getElementById('sched-error');\n\n  var serverEpoch = parseInt(widget.getAttribute('data-server-epoch') || \"0\", 10);\n  var base = new Date(serverEpoch * 1000);\n  if (isNaN(base.getTime())) base = new Date();\n  base.setHours(0,0,0,0);\n\n  function nextWeekday(d){\n    var c = new Date(d.getTime());\n    while (c.getDay() === 0 || c.getDay() === 6) { \/\/ 0 Sun, 6 Sat\n      c.setDate(c.getDate() + 1);\n    }\n    return c;\n  }\n\n  function isoDate(d){\n    var mm = String(d.getMonth()+1).padStart(2,'0');\n    var dd = String(d.getDate()).padStart(2,'0');\n    return d.getFullYear() + '-' + mm + '-' + dd;\n  }\n\n  \/\/ compute min (server time) + DAYS_OUT, bump to next weekday if needed\n  var minDate = new Date(base);\n  minDate.setDate(minDate.getDate() + DAYS_OUT);\n  minDate = nextWeekday(minDate);\n\n  input.min = isoDate(minDate);\n  input.value = isoDate(minDate);\n\n  function validate(dateStr){\n    if(!dateStr) return { ok:false, msg: 'Please select a Scheduled In-Hands Date.' };\n    var sel = new Date(dateStr + 'T00:00:00');\n    if(isNaN(sel.getTime())) return { ok:false, msg: 'Selected date is invalid.' };\n    sel.setHours(0,0,0,0);\n    if(sel \u003c minDate) return { ok:false, msg: 'Selected date is earlier than the earliest available: ' + isoDate(minDate) + '.' , corrected: minDate };\n    if(sel.getDay() === 0 || sel.getDay() === 6) return { ok:false, msg: 'Weekends not allowed. Next business day: ' + isoDate(nextWeekday(sel)) + '.', corrected: nextWeekday(sel) };\n    return { ok:true };\n  }\n\n  function showError(message){\n    err.textContent = message;\n    err.style.display = 'block';\n  }\n  function hideError(){\n    err.textContent = '';\n    err.style.display = 'none';\n  }\n\n  function handleChange(){\n    var res = validate(input.value);\n    if(!res.ok){\n      showError(res.msg);\n      if(res.corrected) input.value = isoDate(res.corrected);\n    } else {\n      hideError();\n    }\n  }\n\n  input.addEventListener('change', handleChange);\n  input.addEventListener('blur', handleChange);\n\n  \/\/ Ensure validation blocks form submit (works with your existing Add to Cart)\n  var parentForm = input.closest('form');\n  if(parentForm){\n    parentForm.addEventListener('submit', function(e){\n      var res = validate(input.value);\n      if(!res.ok){\n        e.preventDefault();\n        showError(res.msg);\n        if(res.corrected) input.value = isoDate(res.corrected);\n        input.focus();\n        return false;\n      }\n    }, { capture:true });\n  }\n\n})();\n\u003c\/script\u003e \u003cscript\u003e\ndocument.addEventListener('DOMContentLoaded', function() {\n\n  const dateInput = document.getElementById('scheduled_date');\n  if (!dateInput) return;\n\n  \/\/ Detect any AJAX add-to-cart click\n  document.querySelectorAll('.product-form__submit, [data-add-to-cart], button[type=\"submit\"]').forEach(btn =\u003e {\n    btn.addEventListener('click', function(e) {\n\n      const selected = dateInput.value;\n      if (!selected) {\n        e.preventDefault();\n        alert(\"Please select your REQUIRED Scheduled In-Hands Date before continuing.\");\n        dateInput.focus();\n        return false;\n      }\n\n      \/\/ Intercept Shopify AJAX\n      document.addEventListener('cart:request-start', function(ev) {\n        if (!ev.detail || !ev.detail.body) return;\n\n        try {\n          let data = ev.detail.body;\n\n          \/\/ Inject the line item property\n          data.set(\"properties[Scheduled Date In-Hand]\", selected);\n\n        } catch (err) {\n          console.warn(\"Unable to inject Scheduled Date:\", err);\n        }\n      }, { once: true });\n\n    });\n  });\n\n});\n\u003c\/script\u003e\u003c\/p\u003e","brand":"Color Tech","offers":[{"title":"Default Title","offer_id":43334971097294,"sku":null,"price":11.5,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0618\/5562\/9518\/files\/MOCKUP_BACK_McPHAIL_KUSTOM.png?v=1767746015"},{"product_id":"taildragger-syndicate-3-color-support-kustom-graphic-tee","title":"TAILDRAGGER SYNDICATE 3 COLOR SUPPORT KUSTOM GRAPHIC TEE","description":"\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003eClassic Short Sleeve Tee.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003e6 oz. Open-End Cotton.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e100% Cotton\u003c\/strong\u003e\u003cstrong\u003e.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003eFit: Classic.\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e\n\u003cspan style=\"font-size: 1.75rem;\"\u003e✅ \u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong style=\"font-size: 1.75rem;\"\u003e48 Minimum Total Quantity to Place Order\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eDiscounts Applied Automatically\u003c\/strong\u003e at quantity breaks: 72, 144, 288, 576\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003ePricing includes \u003cmeta charset=\"utf-8\"\u003e\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eLogos Screen Print on Front and Back.  Custom Neck Labels, Individually Folded, Bagged\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e. Small through X-Large.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e\n\u003cstrong\u003eNote:\u003c\/strong\u003e 2XL add $2.00   |   3XL add $3.00\u003cmeta charset=\"utf-8\"\u003e\n\u003c\/h3\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e4XL add $4.00   |   5XL add 5.00 \u003c\/h3\u003e\n\u003ctable style=\"width: 90.121%; border-collapse: collapse; font-size: 1.5rem;\" height=\"200\"\u003e\n\u003cthead\u003e\n\u003ctr style=\"background-color: #f0f0f0;\"\u003e\n\u003cth style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003eQuantity Range\u003c\/th\u003e\n\u003cth style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003eCost Per\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e48–71\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$13.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e72–143\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$11.50\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e144–287\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$10.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e288–575\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$9.20\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003e576+\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003e$8.10\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cdiv style=\"margin: 16px 0;\" data-server-epoch=\"{{ server_epoch }}\" id=\"sched-widget\"\u003e\n\u003cdiv style=\"color: #b00020; margin-top: 8px; display: none;\" role=\"alert\" id=\"sched-error\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cp\u003e\u003cscript\u003e\n(function(){\n  var DAYS_OUT = 15;\n  var widget = document.getElementById('sched-widget');\n  if (!widget) return;\n\n  var input = document.getElementById('scheduled_date');\n  var err = document.getElementById('sched-error');\n\n  var serverEpoch = parseInt(widget.getAttribute('data-server-epoch') || \"0\", 10);\n  var base = new Date(serverEpoch * 1000);\n  if (isNaN(base.getTime())) base = new Date();\n  base.setHours(0,0,0,0);\n\n  function nextWeekday(d){\n    var c = new Date(d.getTime());\n    while (c.getDay() === 0 || c.getDay() === 6) { \/\/ 0 Sun, 6 Sat\n      c.setDate(c.getDate() + 1);\n    }\n    return c;\n  }\n\n  function isoDate(d){\n    var mm = String(d.getMonth()+1).padStart(2,'0');\n    var dd = String(d.getDate()).padStart(2,'0');\n    return d.getFullYear() + '-' + mm + '-' + dd;\n  }\n\n  \/\/ compute min (server time) + DAYS_OUT, bump to next weekday if needed\n  var minDate = new Date(base);\n  minDate.setDate(minDate.getDate() + DAYS_OUT);\n  minDate = nextWeekday(minDate);\n\n  input.min = isoDate(minDate);\n  input.value = isoDate(minDate);\n\n  function validate(dateStr){\n    if(!dateStr) return { ok:false, msg: 'Please select a Scheduled In-Hands Date.' };\n    var sel = new Date(dateStr + 'T00:00:00');\n    if(isNaN(sel.getTime())) return { ok:false, msg: 'Selected date is invalid.' };\n    sel.setHours(0,0,0,0);\n    if(sel \u003c minDate) return { ok:false, msg: 'Selected date is earlier than the earliest available: ' + isoDate(minDate) + '.' , corrected: minDate };\n    if(sel.getDay() === 0 || sel.getDay() === 6) return { ok:false, msg: 'Weekends not allowed. Next business day: ' + isoDate(nextWeekday(sel)) + '.', corrected: nextWeekday(sel) };\n    return { ok:true };\n  }\n\n  function showError(message){\n    err.textContent = message;\n    err.style.display = 'block';\n  }\n  function hideError(){\n    err.textContent = '';\n    err.style.display = 'none';\n  }\n\n  function handleChange(){\n    var res = validate(input.value);\n    if(!res.ok){\n      showError(res.msg);\n      if(res.corrected) input.value = isoDate(res.corrected);\n    } else {\n      hideError();\n    }\n  }\n\n  input.addEventListener('change', handleChange);\n  input.addEventListener('blur', handleChange);\n\n  \/\/ Ensure validation blocks form submit (works with your existing Add to Cart)\n  var parentForm = input.closest('form');\n  if(parentForm){\n    parentForm.addEventListener('submit', function(e){\n      var res = validate(input.value);\n      if(!res.ok){\n        e.preventDefault();\n        showError(res.msg);\n        if(res.corrected) input.value = isoDate(res.corrected);\n        input.focus();\n        return false;\n      }\n    }, { capture:true });\n  }\n\n})();\n\u003c\/script\u003e \u003cscript\u003e\ndocument.addEventListener('DOMContentLoaded', function() {\n\n  const dateInput = document.getElementById('scheduled_date');\n  if (!dateInput) return;\n\n  \/\/ Detect any AJAX add-to-cart click\n  document.querySelectorAll('.product-form__submit, [data-add-to-cart], button[type=\"submit\"]').forEach(btn =\u003e {\n    btn.addEventListener('click', function(e) {\n\n      const selected = dateInput.value;\n      if (!selected) {\n        e.preventDefault();\n        alert(\"Please select your REQUIRED Scheduled In-Hands Date before continuing.\");\n        dateInput.focus();\n        return false;\n      }\n\n      \/\/ Intercept Shopify AJAX\n      document.addEventListener('cart:request-start', function(ev) {\n        if (!ev.detail || !ev.detail.body) return;\n\n        try {\n          let data = ev.detail.body;\n\n          \/\/ Inject the line item property\n          data.set(\"properties[Scheduled Date In-Hand]\", selected);\n\n        } catch (err) {\n          console.warn(\"Unable to inject Scheduled Date:\", err);\n        }\n      }, { once: true });\n\n    });\n  });\n\n});\n\u003c\/script\u003e\u003c\/p\u003e","brand":"Color Tech","offers":[{"title":"Default Title","offer_id":43334974341326,"sku":null,"price":11.5,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0618\/5562\/9518\/files\/MOCKUP_BACK_3_COLOR_SUPPORT_KUSTOM.png?v=1767746530"},{"product_id":"taildragger-syndicate-4-color-support-kustom-graphic-tee-copy","title":"TAILDRAGGER SYNDICATE 4 COLOR SUPPORT KUSTOM GRAPHIC TEE","description":"\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003eClassic Short Sleeve Tee.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003e6 oz. Open-End Cotton.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e100% Cotton\u003c\/strong\u003e\u003cstrong\u003e.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003eFit: Classic.\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e\n\u003cspan style=\"font-size: 1.75rem;\"\u003e✅ \u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong style=\"font-size: 1.75rem;\"\u003e48 Minimum Total Quantity to Place Order\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eDiscounts Applied Automatically\u003c\/strong\u003e at quantity breaks: 72, 144, 288, 576\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003ePricing includes \u003cmeta charset=\"utf-8\"\u003e\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eLogos Screen Print on Front and Back.  Custom Neck Labels, Individually Folded, Bagged\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e. Small through X-Large.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e\n\u003cstrong\u003eNote:\u003c\/strong\u003e 2XL add $2.00   |   3XL add $3.00\u003cmeta charset=\"utf-8\"\u003e\n\u003c\/h3\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e4XL add $4.00   |   5XL add 5.00 \u003c\/h3\u003e\n\u003ctable style=\"width: 90.121%; border-collapse: collapse; font-size: 1.5rem;\" height=\"200\"\u003e\n\u003cthead\u003e\n\u003ctr style=\"background-color: #f0f0f0;\"\u003e\n\u003cth style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003eQuantity Range\u003c\/th\u003e\n\u003cth style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003eCost Per\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e48–71\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$13.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e72–143\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$11.50\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e144–287\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$10.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e288–575\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$9.20\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003e576+\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003e$8.10\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cdiv style=\"margin: 16px 0;\" data-server-epoch=\"{{ server_epoch }}\" id=\"sched-widget\"\u003e\n\u003cdiv style=\"color: #b00020; margin-top: 8px; display: none;\" role=\"alert\" id=\"sched-error\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cp\u003e\u003cscript\u003e\n(function(){\n  var DAYS_OUT = 15;\n  var widget = document.getElementById('sched-widget');\n  if (!widget) return;\n\n  var input = document.getElementById('scheduled_date');\n  var err = document.getElementById('sched-error');\n\n  var serverEpoch = parseInt(widget.getAttribute('data-server-epoch') || \"0\", 10);\n  var base = new Date(serverEpoch * 1000);\n  if (isNaN(base.getTime())) base = new Date();\n  base.setHours(0,0,0,0);\n\n  function nextWeekday(d){\n    var c = new Date(d.getTime());\n    while (c.getDay() === 0 || c.getDay() === 6) { \/\/ 0 Sun, 6 Sat\n      c.setDate(c.getDate() + 1);\n    }\n    return c;\n  }\n\n  function isoDate(d){\n    var mm = String(d.getMonth()+1).padStart(2,'0');\n    var dd = String(d.getDate()).padStart(2,'0');\n    return d.getFullYear() + '-' + mm + '-' + dd;\n  }\n\n  \/\/ compute min (server time) + DAYS_OUT, bump to next weekday if needed\n  var minDate = new Date(base);\n  minDate.setDate(minDate.getDate() + DAYS_OUT);\n  minDate = nextWeekday(minDate);\n\n  input.min = isoDate(minDate);\n  input.value = isoDate(minDate);\n\n  function validate(dateStr){\n    if(!dateStr) return { ok:false, msg: 'Please select a Scheduled In-Hands Date.' };\n    var sel = new Date(dateStr + 'T00:00:00');\n    if(isNaN(sel.getTime())) return { ok:false, msg: 'Selected date is invalid.' };\n    sel.setHours(0,0,0,0);\n    if(sel \u003c minDate) return { ok:false, msg: 'Selected date is earlier than the earliest available: ' + isoDate(minDate) + '.' , corrected: minDate };\n    if(sel.getDay() === 0 || sel.getDay() === 6) return { ok:false, msg: 'Weekends not allowed. Next business day: ' + isoDate(nextWeekday(sel)) + '.', corrected: nextWeekday(sel) };\n    return { ok:true };\n  }\n\n  function showError(message){\n    err.textContent = message;\n    err.style.display = 'block';\n  }\n  function hideError(){\n    err.textContent = '';\n    err.style.display = 'none';\n  }\n\n  function handleChange(){\n    var res = validate(input.value);\n    if(!res.ok){\n      showError(res.msg);\n      if(res.corrected) input.value = isoDate(res.corrected);\n    } else {\n      hideError();\n    }\n  }\n\n  input.addEventListener('change', handleChange);\n  input.addEventListener('blur', handleChange);\n\n  \/\/ Ensure validation blocks form submit (works with your existing Add to Cart)\n  var parentForm = input.closest('form');\n  if(parentForm){\n    parentForm.addEventListener('submit', function(e){\n      var res = validate(input.value);\n      if(!res.ok){\n        e.preventDefault();\n        showError(res.msg);\n        if(res.corrected) input.value = isoDate(res.corrected);\n        input.focus();\n        return false;\n      }\n    }, { capture:true });\n  }\n\n})();\n\u003c\/script\u003e \u003cscript\u003e\ndocument.addEventListener('DOMContentLoaded', function() {\n\n  const dateInput = document.getElementById('scheduled_date');\n  if (!dateInput) return;\n\n  \/\/ Detect any AJAX add-to-cart click\n  document.querySelectorAll('.product-form__submit, [data-add-to-cart], button[type=\"submit\"]').forEach(btn =\u003e {\n    btn.addEventListener('click', function(e) {\n\n      const selected = dateInput.value;\n      if (!selected) {\n        e.preventDefault();\n        alert(\"Please select your REQUIRED Scheduled In-Hands Date before continuing.\");\n        dateInput.focus();\n        return false;\n      }\n\n      \/\/ Intercept Shopify AJAX\n      document.addEventListener('cart:request-start', function(ev) {\n        if (!ev.detail || !ev.detail.body) return;\n\n        try {\n          let data = ev.detail.body;\n\n          \/\/ Inject the line item property\n          data.set(\"properties[Scheduled Date In-Hand]\", selected);\n\n        } catch (err) {\n          console.warn(\"Unable to inject Scheduled Date:\", err);\n        }\n      }, { once: true });\n\n    });\n  });\n\n});\n\u003c\/script\u003e\u003c\/p\u003e","brand":"Color Tech","offers":[{"title":"Default Title","offer_id":43334976045262,"sku":null,"price":11.5,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0618\/5562\/9518\/files\/MOCKUP_BACK_4_COLOR_SUPPORT_KUSTOM.png?v=1767746831"},{"product_id":"taildragger-syndicate-37-ford-on-black-graphic-tee","title":"TAILDRAGGER SYNDICATE 37 FORD on BLACK GRAPHIC TEE","description":"\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003eClassic Short Sleeve Tee.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003e6 oz. Open-End Cotton.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e100% Cotton\u003c\/strong\u003e\u003cstrong\u003e.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003eFit: Classic.\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e\n\u003cspan style=\"font-size: 1.75rem;\"\u003e✅ \u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong style=\"font-size: 1.75rem;\"\u003e48 Minimum Total Quantity to Place Order\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eDiscounts Applied Automatically\u003c\/strong\u003e at quantity breaks: 72, 144, 288, 576\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003ePricing includes \u003cmeta charset=\"utf-8\"\u003e\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eLogos Screen Print on Front and Back.  Custom Neck Labels, Individually Folded, Bagged\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e. Small through X-Large.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e\n\u003cstrong\u003eNote:\u003c\/strong\u003e 2XL add $2.00   |   3XL add $3.00\u003cmeta charset=\"utf-8\"\u003e\n\u003c\/h3\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e4XL add $4.00   |   5XL add 5.00 \u003c\/h3\u003e\n\u003ctable style=\"width: 90.121%; border-collapse: collapse; font-size: 1.5rem;\" height=\"200\"\u003e\n\u003cthead\u003e\n\u003ctr style=\"background-color: #f0f0f0;\"\u003e\n\u003cth style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003eQuantity Range\u003c\/th\u003e\n\u003cth style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003eCost Per\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e48–71\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$13.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e72–143\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$11.50\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e144–287\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$10.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e288–575\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$9.20\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003e576+\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003e$8.10\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cdiv style=\"margin: 16px 0;\" data-server-epoch=\"{{ server_epoch }}\" id=\"sched-widget\"\u003e\n\u003cdiv style=\"color: #b00020; margin-top: 8px; display: none;\" role=\"alert\" id=\"sched-error\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cp\u003e\u003cscript\u003e\n(function(){\n  var DAYS_OUT = 15;\n  var widget = document.getElementById('sched-widget');\n  if (!widget) return;\n\n  var input = document.getElementById('scheduled_date');\n  var err = document.getElementById('sched-error');\n\n  var serverEpoch = parseInt(widget.getAttribute('data-server-epoch') || \"0\", 10);\n  var base = new Date(serverEpoch * 1000);\n  if (isNaN(base.getTime())) base = new Date();\n  base.setHours(0,0,0,0);\n\n  function nextWeekday(d){\n    var c = new Date(d.getTime());\n    while (c.getDay() === 0 || c.getDay() === 6) { \/\/ 0 Sun, 6 Sat\n      c.setDate(c.getDate() + 1);\n    }\n    return c;\n  }\n\n  function isoDate(d){\n    var mm = String(d.getMonth()+1).padStart(2,'0');\n    var dd = String(d.getDate()).padStart(2,'0');\n    return d.getFullYear() + '-' + mm + '-' + dd;\n  }\n\n  \/\/ compute min (server time) + DAYS_OUT, bump to next weekday if needed\n  var minDate = new Date(base);\n  minDate.setDate(minDate.getDate() + DAYS_OUT);\n  minDate = nextWeekday(minDate);\n\n  input.min = isoDate(minDate);\n  input.value = isoDate(minDate);\n\n  function validate(dateStr){\n    if(!dateStr) return { ok:false, msg: 'Please select a Scheduled In-Hands Date.' };\n    var sel = new Date(dateStr + 'T00:00:00');\n    if(isNaN(sel.getTime())) return { ok:false, msg: 'Selected date is invalid.' };\n    sel.setHours(0,0,0,0);\n    if(sel \u003c minDate) return { ok:false, msg: 'Selected date is earlier than the earliest available: ' + isoDate(minDate) + '.' , corrected: minDate };\n    if(sel.getDay() === 0 || sel.getDay() === 6) return { ok:false, msg: 'Weekends not allowed. Next business day: ' + isoDate(nextWeekday(sel)) + '.', corrected: nextWeekday(sel) };\n    return { ok:true };\n  }\n\n  function showError(message){\n    err.textContent = message;\n    err.style.display = 'block';\n  }\n  function hideError(){\n    err.textContent = '';\n    err.style.display = 'none';\n  }\n\n  function handleChange(){\n    var res = validate(input.value);\n    if(!res.ok){\n      showError(res.msg);\n      if(res.corrected) input.value = isoDate(res.corrected);\n    } else {\n      hideError();\n    }\n  }\n\n  input.addEventListener('change', handleChange);\n  input.addEventListener('blur', handleChange);\n\n  \/\/ Ensure validation blocks form submit (works with your existing Add to Cart)\n  var parentForm = input.closest('form');\n  if(parentForm){\n    parentForm.addEventListener('submit', function(e){\n      var res = validate(input.value);\n      if(!res.ok){\n        e.preventDefault();\n        showError(res.msg);\n        if(res.corrected) input.value = isoDate(res.corrected);\n        input.focus();\n        return false;\n      }\n    }, { capture:true });\n  }\n\n})();\n\u003c\/script\u003e \u003cscript\u003e\ndocument.addEventListener('DOMContentLoaded', function() {\n\n  const dateInput = document.getElementById('scheduled_date');\n  if (!dateInput) return;\n\n  \/\/ Detect any AJAX add-to-cart click\n  document.querySelectorAll('.product-form__submit, [data-add-to-cart], button[type=\"submit\"]').forEach(btn =\u003e {\n    btn.addEventListener('click', function(e) {\n\n      const selected = dateInput.value;\n      if (!selected) {\n        e.preventDefault();\n        alert(\"Please select your REQUIRED Scheduled In-Hands Date before continuing.\");\n        dateInput.focus();\n        return false;\n      }\n\n      \/\/ Intercept Shopify AJAX\n      document.addEventListener('cart:request-start', function(ev) {\n        if (!ev.detail || !ev.detail.body) return;\n\n        try {\n          let data = ev.detail.body;\n\n          \/\/ Inject the line item property\n          data.set(\"properties[Scheduled Date In-Hand]\", selected);\n\n        } catch (err) {\n          console.warn(\"Unable to inject Scheduled Date:\", err);\n        }\n      }, { once: true });\n\n    });\n  });\n\n});\n\u003c\/script\u003e\u003c\/p\u003e","brand":"Color Tech","offers":[{"title":"Default Title","offer_id":43482776174798,"sku":null,"price":11.5,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0618\/5562\/9518\/files\/MOCKUP_BACK_37_FORD_TS.png?v=1767747258"},{"product_id":"taildragger-syndicate-37-ford-on-whte-graphic-tee","title":"TAILDRAGGER SYNDICATE 37 FORD on WHTE GRAPHIC TEE","description":"\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003eClassic Short Sleeve Tee.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003e6 oz. Open-End Cotton.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e100% Cotton\u003c\/strong\u003e\u003cstrong\u003e.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003eFit: Classic.\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e\n\u003cspan style=\"font-size: 1.75rem;\"\u003e✅ \u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong style=\"font-size: 1.75rem;\"\u003e48 Minimum Total Quantity to Place Order\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eDiscounts Applied Automatically\u003c\/strong\u003e at quantity breaks: 72, 144, 288, 576\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003ePricing includes \u003cmeta charset=\"utf-8\"\u003e\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eLogos Screen Print on Front and Back.  Custom Neck Labels, Individually Folded, Bagged\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e. Small through X-Large.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e\n\u003cstrong\u003eNote:\u003c\/strong\u003e 2XL add $2.00   |   3XL add $3.00\u003cmeta charset=\"utf-8\"\u003e\n\u003c\/h3\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e4XL add $4.00   |   5XL add 5.00 \u003c\/h3\u003e\n\u003ctable style=\"width: 90.121%; border-collapse: collapse; font-size: 1.5rem;\" height=\"200\"\u003e\n\u003cthead\u003e\n\u003ctr style=\"background-color: #f0f0f0;\"\u003e\n\u003cth style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003eQuantity Range\u003c\/th\u003e\n\u003cth style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003eCost Per\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e48–71\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$13.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e72–143\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$11.50\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e144–287\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$10.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e288–575\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$9.20\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003e576+\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003e$8.10\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cdiv style=\"margin: 16px 0;\" data-server-epoch=\"{{ server_epoch }}\" id=\"sched-widget\"\u003e\n\u003cdiv style=\"color: #b00020; margin-top: 8px; display: none;\" role=\"alert\" id=\"sched-error\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cp\u003e\u003cscript\u003e\n(function(){\n  var DAYS_OUT = 15;\n  var widget = document.getElementById('sched-widget');\n  if (!widget) return;\n\n  var input = document.getElementById('scheduled_date');\n  var err = document.getElementById('sched-error');\n\n  var serverEpoch = parseInt(widget.getAttribute('data-server-epoch') || \"0\", 10);\n  var base = new Date(serverEpoch * 1000);\n  if (isNaN(base.getTime())) base = new Date();\n  base.setHours(0,0,0,0);\n\n  function nextWeekday(d){\n    var c = new Date(d.getTime());\n    while (c.getDay() === 0 || c.getDay() === 6) { \/\/ 0 Sun, 6 Sat\n      c.setDate(c.getDate() + 1);\n    }\n    return c;\n  }\n\n  function isoDate(d){\n    var mm = String(d.getMonth()+1).padStart(2,'0');\n    var dd = String(d.getDate()).padStart(2,'0');\n    return d.getFullYear() + '-' + mm + '-' + dd;\n  }\n\n  \/\/ compute min (server time) + DAYS_OUT, bump to next weekday if needed\n  var minDate = new Date(base);\n  minDate.setDate(minDate.getDate() + DAYS_OUT);\n  minDate = nextWeekday(minDate);\n\n  input.min = isoDate(minDate);\n  input.value = isoDate(minDate);\n\n  function validate(dateStr){\n    if(!dateStr) return { ok:false, msg: 'Please select a Scheduled In-Hands Date.' };\n    var sel = new Date(dateStr + 'T00:00:00');\n    if(isNaN(sel.getTime())) return { ok:false, msg: 'Selected date is invalid.' };\n    sel.setHours(0,0,0,0);\n    if(sel \u003c minDate) return { ok:false, msg: 'Selected date is earlier than the earliest available: ' + isoDate(minDate) + '.' , corrected: minDate };\n    if(sel.getDay() === 0 || sel.getDay() === 6) return { ok:false, msg: 'Weekends not allowed. Next business day: ' + isoDate(nextWeekday(sel)) + '.', corrected: nextWeekday(sel) };\n    return { ok:true };\n  }\n\n  function showError(message){\n    err.textContent = message;\n    err.style.display = 'block';\n  }\n  function hideError(){\n    err.textContent = '';\n    err.style.display = 'none';\n  }\n\n  function handleChange(){\n    var res = validate(input.value);\n    if(!res.ok){\n      showError(res.msg);\n      if(res.corrected) input.value = isoDate(res.corrected);\n    } else {\n      hideError();\n    }\n  }\n\n  input.addEventListener('change', handleChange);\n  input.addEventListener('blur', handleChange);\n\n  \/\/ Ensure validation blocks form submit (works with your existing Add to Cart)\n  var parentForm = input.closest('form');\n  if(parentForm){\n    parentForm.addEventListener('submit', function(e){\n      var res = validate(input.value);\n      if(!res.ok){\n        e.preventDefault();\n        showError(res.msg);\n        if(res.corrected) input.value = isoDate(res.corrected);\n        input.focus();\n        return false;\n      }\n    }, { capture:true });\n  }\n\n})();\n\u003c\/script\u003e \u003cscript\u003e\ndocument.addEventListener('DOMContentLoaded', function() {\n\n  const dateInput = document.getElementById('scheduled_date');\n  if (!dateInput) return;\n\n  \/\/ Detect any AJAX add-to-cart click\n  document.querySelectorAll('.product-form__submit, [data-add-to-cart], button[type=\"submit\"]').forEach(btn =\u003e {\n    btn.addEventListener('click', function(e) {\n\n      const selected = dateInput.value;\n      if (!selected) {\n        e.preventDefault();\n        alert(\"Please select your REQUIRED Scheduled In-Hands Date before continuing.\");\n        dateInput.focus();\n        return false;\n      }\n\n      \/\/ Intercept Shopify AJAX\n      document.addEventListener('cart:request-start', function(ev) {\n        if (!ev.detail || !ev.detail.body) return;\n\n        try {\n          let data = ev.detail.body;\n\n          \/\/ Inject the line item property\n          data.set(\"properties[Scheduled Date In-Hand]\", selected);\n\n        } catch (err) {\n          console.warn(\"Unable to inject Scheduled Date:\", err);\n        }\n      }, { once: true });\n\n    });\n  });\n\n});\n\u003c\/script\u003e\u003c\/p\u003e","brand":"Color Tech","offers":[{"title":"Default Title","offer_id":43334979125454,"sku":null,"price":11.5,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0618\/5562\/9518\/files\/MOCKUPS_BACK_37_FORD_on_WHITE.png?v=1767747472"},{"product_id":"taildragger-syndicate-1936-fisher-ford-on-whte-graphic-tee","title":"TAILDRAGGER SYNDICATE 1936 FISHER FORD on WHTE GRAPHIC TEE","description":"\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003eClassic Short Sleeve Tee.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003e6 oz. Open-End Cotton.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e100% Cotton\u003c\/strong\u003e\u003cstrong\u003e.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003eFit: Classic.\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e\n\u003cspan style=\"font-size: 1.75rem;\"\u003e✅ \u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong style=\"font-size: 1.75rem;\"\u003e48 Minimum Total Quantity to Place Order\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eDiscounts Applied Automatically\u003c\/strong\u003e at quantity breaks: 72, 144, 288, 576\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003ePricing includes \u003cmeta charset=\"utf-8\"\u003e\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eLogos Screen Print on Front and Back.  Custom Neck Labels, Individually Folded, Bagged\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e. Small through X-Large.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e\n\u003cstrong\u003eNote:\u003c\/strong\u003e 2XL add $2.00   |   3XL add $3.00\u003cmeta charset=\"utf-8\"\u003e\n\u003c\/h3\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e4XL add $4.00   |   5XL add 5.00 \u003c\/h3\u003e\n\u003ctable style=\"width: 90.121%; border-collapse: collapse; font-size: 1.5rem;\" height=\"200\"\u003e\n\u003cthead\u003e\n\u003ctr style=\"background-color: #f0f0f0;\"\u003e\n\u003cth style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003eQuantity Range\u003c\/th\u003e\n\u003cth style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003eCost Per\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e48–71\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$13.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e72–143\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$11.50\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e144–287\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$10.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e288–575\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$9.20\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003e576+\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003e$8.10\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cdiv style=\"margin: 16px 0;\" data-server-epoch=\"{{ server_epoch }}\" id=\"sched-widget\"\u003e\n\u003cdiv style=\"color: #b00020; margin-top: 8px; display: none;\" role=\"alert\" id=\"sched-error\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cp\u003e\u003cscript\u003e\n(function(){\n  var DAYS_OUT = 15;\n  var widget = document.getElementById('sched-widget');\n  if (!widget) return;\n\n  var input = document.getElementById('scheduled_date');\n  var err = document.getElementById('sched-error');\n\n  var serverEpoch = parseInt(widget.getAttribute('data-server-epoch') || \"0\", 10);\n  var base = new Date(serverEpoch * 1000);\n  if (isNaN(base.getTime())) base = new Date();\n  base.setHours(0,0,0,0);\n\n  function nextWeekday(d){\n    var c = new Date(d.getTime());\n    while (c.getDay() === 0 || c.getDay() === 6) { \/\/ 0 Sun, 6 Sat\n      c.setDate(c.getDate() + 1);\n    }\n    return c;\n  }\n\n  function isoDate(d){\n    var mm = String(d.getMonth()+1).padStart(2,'0');\n    var dd = String(d.getDate()).padStart(2,'0');\n    return d.getFullYear() + '-' + mm + '-' + dd;\n  }\n\n  \/\/ compute min (server time) + DAYS_OUT, bump to next weekday if needed\n  var minDate = new Date(base);\n  minDate.setDate(minDate.getDate() + DAYS_OUT);\n  minDate = nextWeekday(minDate);\n\n  input.min = isoDate(minDate);\n  input.value = isoDate(minDate);\n\n  function validate(dateStr){\n    if(!dateStr) return { ok:false, msg: 'Please select a Scheduled In-Hands Date.' };\n    var sel = new Date(dateStr + 'T00:00:00');\n    if(isNaN(sel.getTime())) return { ok:false, msg: 'Selected date is invalid.' };\n    sel.setHours(0,0,0,0);\n    if(sel \u003c minDate) return { ok:false, msg: 'Selected date is earlier than the earliest available: ' + isoDate(minDate) + '.' , corrected: minDate };\n    if(sel.getDay() === 0 || sel.getDay() === 6) return { ok:false, msg: 'Weekends not allowed. Next business day: ' + isoDate(nextWeekday(sel)) + '.', corrected: nextWeekday(sel) };\n    return { ok:true };\n  }\n\n  function showError(message){\n    err.textContent = message;\n    err.style.display = 'block';\n  }\n  function hideError(){\n    err.textContent = '';\n    err.style.display = 'none';\n  }\n\n  function handleChange(){\n    var res = validate(input.value);\n    if(!res.ok){\n      showError(res.msg);\n      if(res.corrected) input.value = isoDate(res.corrected);\n    } else {\n      hideError();\n    }\n  }\n\n  input.addEventListener('change', handleChange);\n  input.addEventListener('blur', handleChange);\n\n  \/\/ Ensure validation blocks form submit (works with your existing Add to Cart)\n  var parentForm = input.closest('form');\n  if(parentForm){\n    parentForm.addEventListener('submit', function(e){\n      var res = validate(input.value);\n      if(!res.ok){\n        e.preventDefault();\n        showError(res.msg);\n        if(res.corrected) input.value = isoDate(res.corrected);\n        input.focus();\n        return false;\n      }\n    }, { capture:true });\n  }\n\n})();\n\u003c\/script\u003e \u003cscript\u003e\ndocument.addEventListener('DOMContentLoaded', function() {\n\n  const dateInput = document.getElementById('scheduled_date');\n  if (!dateInput) return;\n\n  \/\/ Detect any AJAX add-to-cart click\n  document.querySelectorAll('.product-form__submit, [data-add-to-cart], button[type=\"submit\"]').forEach(btn =\u003e {\n    btn.addEventListener('click', function(e) {\n\n      const selected = dateInput.value;\n      if (!selected) {\n        e.preventDefault();\n        alert(\"Please select your REQUIRED Scheduled In-Hands Date before continuing.\");\n        dateInput.focus();\n        return false;\n      }\n\n      \/\/ Intercept Shopify AJAX\n      document.addEventListener('cart:request-start', function(ev) {\n        if (!ev.detail || !ev.detail.body) return;\n\n        try {\n          let data = ev.detail.body;\n\n          \/\/ Inject the line item property\n          data.set(\"properties[Scheduled Date In-Hand]\", selected);\n\n        } catch (err) {\n          console.warn(\"Unable to inject Scheduled Date:\", err);\n        }\n      }, { once: true });\n\n    });\n  });\n\n});\n\u003c\/script\u003e\u003c\/p\u003e","brand":"Color Tech","offers":[{"title":"Default Title","offer_id":43334988333262,"sku":null,"price":11.5,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0618\/5562\/9518\/files\/MOCKUP_BACK_FISHER_36_FORD_on_WHITE.png?v=1767747920"},{"product_id":"taildragger-syndicate-1936-fisher-ford-on-black-graphic-tee","title":"TAILDRAGGER SYNDICATE 1936 FISHER FORD on BLACK GRAPHIC TEE","description":"\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003eClassic Short Sleeve Tee.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003e6 oz. Open-End Cotton.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e100% Cotton\u003c\/strong\u003e\u003cstrong\u003e.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003eFit: Classic.\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e\n\u003cspan style=\"font-size: 1.75rem;\"\u003e✅ \u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong style=\"font-size: 1.75rem;\"\u003e48 Minimum Total Quantity to Place Order\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eDiscounts Applied Automatically\u003c\/strong\u003e at quantity breaks: 72, 144, 288, 576\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003ePricing includes \u003cmeta charset=\"utf-8\"\u003e\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eLogos Screen Print on Front and Back.  Custom Neck Labels, Individually Folded, Bagged\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e. Small through X-Large.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e\n\u003cstrong\u003eNote:\u003c\/strong\u003e 2XL add $2.00   |   3XL add $3.00\u003cmeta charset=\"utf-8\"\u003e\n\u003c\/h3\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e4XL add $4.00   |   5XL add 5.00 \u003c\/h3\u003e\n\u003ctable style=\"width: 90.121%; border-collapse: collapse; font-size: 1.5rem;\" height=\"200\"\u003e\n\u003cthead\u003e\n\u003ctr style=\"background-color: #f0f0f0;\"\u003e\n\u003cth style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003eQuantity Range\u003c\/th\u003e\n\u003cth style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003eCost Per\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e48–71\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$13.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e72–143\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$11.50\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e144–287\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$10.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e288–575\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$9.20\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003e576+\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003e$8.10\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cdiv style=\"margin: 16px 0;\" data-server-epoch=\"{{ server_epoch }}\" id=\"sched-widget\"\u003e\n\u003cdiv style=\"color: #b00020; margin-top: 8px; display: none;\" role=\"alert\" id=\"sched-error\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cp\u003e\u003cscript\u003e\n(function(){\n  var DAYS_OUT = 15;\n  var widget = document.getElementById('sched-widget');\n  if (!widget) return;\n\n  var input = document.getElementById('scheduled_date');\n  var err = document.getElementById('sched-error');\n\n  var serverEpoch = parseInt(widget.getAttribute('data-server-epoch') || \"0\", 10);\n  var base = new Date(serverEpoch * 1000);\n  if (isNaN(base.getTime())) base = new Date();\n  base.setHours(0,0,0,0);\n\n  function nextWeekday(d){\n    var c = new Date(d.getTime());\n    while (c.getDay() === 0 || c.getDay() === 6) { \/\/ 0 Sun, 6 Sat\n      c.setDate(c.getDate() + 1);\n    }\n    return c;\n  }\n\n  function isoDate(d){\n    var mm = String(d.getMonth()+1).padStart(2,'0');\n    var dd = String(d.getDate()).padStart(2,'0');\n    return d.getFullYear() + '-' + mm + '-' + dd;\n  }\n\n  \/\/ compute min (server time) + DAYS_OUT, bump to next weekday if needed\n  var minDate = new Date(base);\n  minDate.setDate(minDate.getDate() + DAYS_OUT);\n  minDate = nextWeekday(minDate);\n\n  input.min = isoDate(minDate);\n  input.value = isoDate(minDate);\n\n  function validate(dateStr){\n    if(!dateStr) return { ok:false, msg: 'Please select a Scheduled In-Hands Date.' };\n    var sel = new Date(dateStr + 'T00:00:00');\n    if(isNaN(sel.getTime())) return { ok:false, msg: 'Selected date is invalid.' };\n    sel.setHours(0,0,0,0);\n    if(sel \u003c minDate) return { ok:false, msg: 'Selected date is earlier than the earliest available: ' + isoDate(minDate) + '.' , corrected: minDate };\n    if(sel.getDay() === 0 || sel.getDay() === 6) return { ok:false, msg: 'Weekends not allowed. Next business day: ' + isoDate(nextWeekday(sel)) + '.', corrected: nextWeekday(sel) };\n    return { ok:true };\n  }\n\n  function showError(message){\n    err.textContent = message;\n    err.style.display = 'block';\n  }\n  function hideError(){\n    err.textContent = '';\n    err.style.display = 'none';\n  }\n\n  function handleChange(){\n    var res = validate(input.value);\n    if(!res.ok){\n      showError(res.msg);\n      if(res.corrected) input.value = isoDate(res.corrected);\n    } else {\n      hideError();\n    }\n  }\n\n  input.addEventListener('change', handleChange);\n  input.addEventListener('blur', handleChange);\n\n  \/\/ Ensure validation blocks form submit (works with your existing Add to Cart)\n  var parentForm = input.closest('form');\n  if(parentForm){\n    parentForm.addEventListener('submit', function(e){\n      var res = validate(input.value);\n      if(!res.ok){\n        e.preventDefault();\n        showError(res.msg);\n        if(res.corrected) input.value = isoDate(res.corrected);\n        input.focus();\n        return false;\n      }\n    }, { capture:true });\n  }\n\n})();\n\u003c\/script\u003e \u003cscript\u003e\ndocument.addEventListener('DOMContentLoaded', function() {\n\n  const dateInput = document.getElementById('scheduled_date');\n  if (!dateInput) return;\n\n  \/\/ Detect any AJAX add-to-cart click\n  document.querySelectorAll('.product-form__submit, [data-add-to-cart], button[type=\"submit\"]').forEach(btn =\u003e {\n    btn.addEventListener('click', function(e) {\n\n      const selected = dateInput.value;\n      if (!selected) {\n        e.preventDefault();\n        alert(\"Please select your REQUIRED Scheduled In-Hands Date before continuing.\");\n        dateInput.focus();\n        return false;\n      }\n\n      \/\/ Intercept Shopify AJAX\n      document.addEventListener('cart:request-start', function(ev) {\n        if (!ev.detail || !ev.detail.body) return;\n\n        try {\n          let data = ev.detail.body;\n\n          \/\/ Inject the line item property\n          data.set(\"properties[Scheduled Date In-Hand]\", selected);\n\n        } catch (err) {\n          console.warn(\"Unable to inject Scheduled Date:\", err);\n        }\n      }, { once: true });\n\n    });\n  });\n\n});\n\u003c\/script\u003e\u003c\/p\u003e","brand":"Color Tech","offers":[{"title":"Default Title","offer_id":43334988398798,"sku":null,"price":11.5,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0618\/5562\/9518\/files\/MOCKUP_BACK_FISHER_36_FORD_on_BLACK.png?v=1767748173"},{"product_id":"taildragger-syndicate-old-iron-48-on-black-graphic-tee","title":"TAILDRAGGER SYNDICATE OLD IRON 48 on BLACK GRAPHIC TEE","description":"\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003eClassic Short Sleeve Tee.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003e6 oz. Open-End Cotton.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e100% Cotton\u003c\/strong\u003e\u003cstrong\u003e.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003eFit: Classic.\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e\n\u003cspan style=\"font-size: 1.75rem;\"\u003e✅ \u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong style=\"font-size: 1.75rem;\"\u003e48 Minimum Total Quantity to Place Order\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eDiscounts Applied Automatically\u003c\/strong\u003e at quantity breaks: 72, 144, 288, 576\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003ePricing includes \u003cmeta charset=\"utf-8\"\u003e\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eLogos Screen Print on Front and Back.  Custom Neck Labels, Individually Folded, Bagged\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e. Small through X-Large.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e\n\u003cstrong\u003eNote:\u003c\/strong\u003e 2XL add $2.00   |   3XL add $3.00\u003cmeta charset=\"utf-8\"\u003e\n\u003c\/h3\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e4XL add $4.00   |   5XL add 5.00 \u003c\/h3\u003e\n\u003ctable style=\"width: 90.121%; border-collapse: collapse; font-size: 1.5rem;\" height=\"200\"\u003e\n\u003cthead\u003e\n\u003ctr style=\"background-color: #f0f0f0;\"\u003e\n\u003cth style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003eQuantity Range\u003c\/th\u003e\n\u003cth style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003eCost Per\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e48–71\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$13.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e72–143\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$11.50\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e144–287\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$10.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e288–575\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$9.20\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003e576+\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003e$8.10\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cdiv style=\"margin: 16px 0;\" data-server-epoch=\"{{ server_epoch }}\" id=\"sched-widget\"\u003e\n\u003cdiv style=\"color: #b00020; margin-top: 8px; display: none;\" role=\"alert\" id=\"sched-error\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cp\u003e\u003cscript\u003e\n(function(){\n  var DAYS_OUT = 15;\n  var widget = document.getElementById('sched-widget');\n  if (!widget) return;\n\n  var input = document.getElementById('scheduled_date');\n  var err = document.getElementById('sched-error');\n\n  var serverEpoch = parseInt(widget.getAttribute('data-server-epoch') || \"0\", 10);\n  var base = new Date(serverEpoch * 1000);\n  if (isNaN(base.getTime())) base = new Date();\n  base.setHours(0,0,0,0);\n\n  function nextWeekday(d){\n    var c = new Date(d.getTime());\n    while (c.getDay() === 0 || c.getDay() === 6) { \/\/ 0 Sun, 6 Sat\n      c.setDate(c.getDate() + 1);\n    }\n    return c;\n  }\n\n  function isoDate(d){\n    var mm = String(d.getMonth()+1).padStart(2,'0');\n    var dd = String(d.getDate()).padStart(2,'0');\n    return d.getFullYear() + '-' + mm + '-' + dd;\n  }\n\n  \/\/ compute min (server time) + DAYS_OUT, bump to next weekday if needed\n  var minDate = new Date(base);\n  minDate.setDate(minDate.getDate() + DAYS_OUT);\n  minDate = nextWeekday(minDate);\n\n  input.min = isoDate(minDate);\n  input.value = isoDate(minDate);\n\n  function validate(dateStr){\n    if(!dateStr) return { ok:false, msg: 'Please select a Scheduled In-Hands Date.' };\n    var sel = new Date(dateStr + 'T00:00:00');\n    if(isNaN(sel.getTime())) return { ok:false, msg: 'Selected date is invalid.' };\n    sel.setHours(0,0,0,0);\n    if(sel \u003c minDate) return { ok:false, msg: 'Selected date is earlier than the earliest available: ' + isoDate(minDate) + '.' , corrected: minDate };\n    if(sel.getDay() === 0 || sel.getDay() === 6) return { ok:false, msg: 'Weekends not allowed. Next business day: ' + isoDate(nextWeekday(sel)) + '.', corrected: nextWeekday(sel) };\n    return { ok:true };\n  }\n\n  function showError(message){\n    err.textContent = message;\n    err.style.display = 'block';\n  }\n  function hideError(){\n    err.textContent = '';\n    err.style.display = 'none';\n  }\n\n  function handleChange(){\n    var res = validate(input.value);\n    if(!res.ok){\n      showError(res.msg);\n      if(res.corrected) input.value = isoDate(res.corrected);\n    } else {\n      hideError();\n    }\n  }\n\n  input.addEventListener('change', handleChange);\n  input.addEventListener('blur', handleChange);\n\n  \/\/ Ensure validation blocks form submit (works with your existing Add to Cart)\n  var parentForm = input.closest('form');\n  if(parentForm){\n    parentForm.addEventListener('submit', function(e){\n      var res = validate(input.value);\n      if(!res.ok){\n        e.preventDefault();\n        showError(res.msg);\n        if(res.corrected) input.value = isoDate(res.corrected);\n        input.focus();\n        return false;\n      }\n    }, { capture:true });\n  }\n\n})();\n\u003c\/script\u003e \u003cscript\u003e\ndocument.addEventListener('DOMContentLoaded', function() {\n\n  const dateInput = document.getElementById('scheduled_date');\n  if (!dateInput) return;\n\n  \/\/ Detect any AJAX add-to-cart click\n  document.querySelectorAll('.product-form__submit, [data-add-to-cart], button[type=\"submit\"]').forEach(btn =\u003e {\n    btn.addEventListener('click', function(e) {\n\n      const selected = dateInput.value;\n      if (!selected) {\n        e.preventDefault();\n        alert(\"Please select your REQUIRED Scheduled In-Hands Date before continuing.\");\n        dateInput.focus();\n        return false;\n      }\n\n      \/\/ Intercept Shopify AJAX\n      document.addEventListener('cart:request-start', function(ev) {\n        if (!ev.detail || !ev.detail.body) return;\n\n        try {\n          let data = ev.detail.body;\n\n          \/\/ Inject the line item property\n          data.set(\"properties[Scheduled Date In-Hand]\", selected);\n\n        } catch (err) {\n          console.warn(\"Unable to inject Scheduled Date:\", err);\n        }\n      }, { once: true });\n\n    });\n  });\n\n});\n\u003c\/script\u003e\u003c\/p\u003e","brand":"Color Tech","offers":[{"title":"Default Title","offer_id":43335021134030,"sku":null,"price":11.5,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0618\/5562\/9518\/files\/MOCKUP_BACK_on_BLACK_OLD_IRON_48.png?v=1767748761"},{"product_id":"taildragger-syndicate-old-iron-48-on-white-graphic-tee","title":"TAILDRAGGER SYNDICATE OLD IRON 48 on WHITE GRAPHIC TEE","description":"\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003eClassic Short Sleeve Tee.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003e6 oz. Open-End Cotton.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e100% Cotton\u003c\/strong\u003e\u003cstrong\u003e.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003eFit: Classic.\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e\n\u003cspan style=\"font-size: 1.75rem;\"\u003e✅ \u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong style=\"font-size: 1.75rem;\"\u003e48 Minimum Total Quantity to Place Order\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eDiscounts Applied Automatically\u003c\/strong\u003e at quantity breaks: 72, 144, 288, 576\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003ePricing includes \u003cmeta charset=\"utf-8\"\u003e\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eLogos Screen Print on Front and Back.  Custom Neck Labels, Individually Folded, Bagged\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e. Small through X-Large.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e\n\u003cstrong\u003eNote:\u003c\/strong\u003e 2XL add $2.00   |   3XL add $3.00\u003cmeta charset=\"utf-8\"\u003e\n\u003c\/h3\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e4XL add $4.00   |   5XL add 5.00 \u003c\/h3\u003e\n\u003ctable style=\"width: 90.121%; border-collapse: collapse; font-size: 1.5rem;\" height=\"200\"\u003e\n\u003cthead\u003e\n\u003ctr style=\"background-color: #f0f0f0;\"\u003e\n\u003cth style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003eQuantity Range\u003c\/th\u003e\n\u003cth style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003eCost Per\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e48–71\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$13.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e72–143\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$11.50\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e144–287\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$10.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e288–575\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$9.20\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003e576+\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003e$8.10\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cdiv style=\"margin: 16px 0;\" data-server-epoch=\"{{ server_epoch }}\" id=\"sched-widget\"\u003e\n\u003cdiv style=\"color: #b00020; margin-top: 8px; display: none;\" role=\"alert\" id=\"sched-error\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cp\u003e\u003cscript\u003e\n(function(){\n  var DAYS_OUT = 15;\n  var widget = document.getElementById('sched-widget');\n  if (!widget) return;\n\n  var input = document.getElementById('scheduled_date');\n  var err = document.getElementById('sched-error');\n\n  var serverEpoch = parseInt(widget.getAttribute('data-server-epoch') || \"0\", 10);\n  var base = new Date(serverEpoch * 1000);\n  if (isNaN(base.getTime())) base = new Date();\n  base.setHours(0,0,0,0);\n\n  function nextWeekday(d){\n    var c = new Date(d.getTime());\n    while (c.getDay() === 0 || c.getDay() === 6) { \/\/ 0 Sun, 6 Sat\n      c.setDate(c.getDate() + 1);\n    }\n    return c;\n  }\n\n  function isoDate(d){\n    var mm = String(d.getMonth()+1).padStart(2,'0');\n    var dd = String(d.getDate()).padStart(2,'0');\n    return d.getFullYear() + '-' + mm + '-' + dd;\n  }\n\n  \/\/ compute min (server time) + DAYS_OUT, bump to next weekday if needed\n  var minDate = new Date(base);\n  minDate.setDate(minDate.getDate() + DAYS_OUT);\n  minDate = nextWeekday(minDate);\n\n  input.min = isoDate(minDate);\n  input.value = isoDate(minDate);\n\n  function validate(dateStr){\n    if(!dateStr) return { ok:false, msg: 'Please select a Scheduled In-Hands Date.' };\n    var sel = new Date(dateStr + 'T00:00:00');\n    if(isNaN(sel.getTime())) return { ok:false, msg: 'Selected date is invalid.' };\n    sel.setHours(0,0,0,0);\n    if(sel \u003c minDate) return { ok:false, msg: 'Selected date is earlier than the earliest available: ' + isoDate(minDate) + '.' , corrected: minDate };\n    if(sel.getDay() === 0 || sel.getDay() === 6) return { ok:false, msg: 'Weekends not allowed. Next business day: ' + isoDate(nextWeekday(sel)) + '.', corrected: nextWeekday(sel) };\n    return { ok:true };\n  }\n\n  function showError(message){\n    err.textContent = message;\n    err.style.display = 'block';\n  }\n  function hideError(){\n    err.textContent = '';\n    err.style.display = 'none';\n  }\n\n  function handleChange(){\n    var res = validate(input.value);\n    if(!res.ok){\n      showError(res.msg);\n      if(res.corrected) input.value = isoDate(res.corrected);\n    } else {\n      hideError();\n    }\n  }\n\n  input.addEventListener('change', handleChange);\n  input.addEventListener('blur', handleChange);\n\n  \/\/ Ensure validation blocks form submit (works with your existing Add to Cart)\n  var parentForm = input.closest('form');\n  if(parentForm){\n    parentForm.addEventListener('submit', function(e){\n      var res = validate(input.value);\n      if(!res.ok){\n        e.preventDefault();\n        showError(res.msg);\n        if(res.corrected) input.value = isoDate(res.corrected);\n        input.focus();\n        return false;\n      }\n    }, { capture:true });\n  }\n\n})();\n\u003c\/script\u003e \u003cscript\u003e\ndocument.addEventListener('DOMContentLoaded', function() {\n\n  const dateInput = document.getElementById('scheduled_date');\n  if (!dateInput) return;\n\n  \/\/ Detect any AJAX add-to-cart click\n  document.querySelectorAll('.product-form__submit, [data-add-to-cart], button[type=\"submit\"]').forEach(btn =\u003e {\n    btn.addEventListener('click', function(e) {\n\n      const selected = dateInput.value;\n      if (!selected) {\n        e.preventDefault();\n        alert(\"Please select your REQUIRED Scheduled In-Hands Date before continuing.\");\n        dateInput.focus();\n        return false;\n      }\n\n      \/\/ Intercept Shopify AJAX\n      document.addEventListener('cart:request-start', function(ev) {\n        if (!ev.detail || !ev.detail.body) return;\n\n        try {\n          let data = ev.detail.body;\n\n          \/\/ Inject the line item property\n          data.set(\"properties[Scheduled Date In-Hand]\", selected);\n\n        } catch (err) {\n          console.warn(\"Unable to inject Scheduled Date:\", err);\n        }\n      }, { once: true });\n\n    });\n  });\n\n});\n\u003c\/script\u003e\u003c\/p\u003e","brand":"Color Tech","offers":[{"title":"Default Title","offer_id":43335029326030,"sku":null,"price":11.5,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0618\/5562\/9518\/files\/MOCKUP_BACK_on_WHITE_OLD_IRON_48.png?v=1767750515"},{"product_id":"taildragger-syndicate-1940-mercury-on-white-graphic-tee","title":"TAILDRAGGER SYNDICATE 1940 MERCURY on WHITE GRAPHIC TEE","description":"\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003eClassic Short Sleeve Tee.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003e6 oz. Open-End Cotton.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e100% Cotton\u003c\/strong\u003e\u003cstrong\u003e.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003eFit: Classic.\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e\n\u003cspan style=\"font-size: 1.75rem;\"\u003e✅ \u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong style=\"font-size: 1.75rem;\"\u003e48 Minimum Total Quantity to Place Order\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eDiscounts Applied Automatically\u003c\/strong\u003e at quantity breaks: 72, 144, 288, 576\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003ePricing includes \u003cmeta charset=\"utf-8\"\u003e\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eLogos Screen Print on Front and Back.  Custom Neck Labels, Individually Folded, Bagged\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e. Small through X-Large.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e\n\u003cstrong\u003eNote:\u003c\/strong\u003e 2XL add $2.00   |   3XL add $3.00\u003cmeta charset=\"utf-8\"\u003e\n\u003c\/h3\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e4XL add $4.00   |   5XL add 5.00 \u003c\/h3\u003e\n\u003ctable style=\"width: 90.121%; border-collapse: collapse; font-size: 1.5rem;\" height=\"200\"\u003e\n\u003cthead\u003e\n\u003ctr style=\"background-color: #f0f0f0;\"\u003e\n\u003cth style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003eQuantity Range\u003c\/th\u003e\n\u003cth style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003eCost Per\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e48–71\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$13.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e72–143\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$11.50\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e144–287\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$10.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e288–575\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$9.20\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003e576+\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003e$8.10\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cdiv style=\"margin: 16px 0;\" data-server-epoch=\"{{ server_epoch }}\" id=\"sched-widget\"\u003e\n\u003cdiv style=\"color: #b00020; margin-top: 8px; display: none;\" role=\"alert\" id=\"sched-error\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cp\u003e\u003cscript\u003e\n(function(){\n  var DAYS_OUT = 15;\n  var widget = document.getElementById('sched-widget');\n  if (!widget) return;\n\n  var input = document.getElementById('scheduled_date');\n  var err = document.getElementById('sched-error');\n\n  var serverEpoch = parseInt(widget.getAttribute('data-server-epoch') || \"0\", 10);\n  var base = new Date(serverEpoch * 1000);\n  if (isNaN(base.getTime())) base = new Date();\n  base.setHours(0,0,0,0);\n\n  function nextWeekday(d){\n    var c = new Date(d.getTime());\n    while (c.getDay() === 0 || c.getDay() === 6) { \/\/ 0 Sun, 6 Sat\n      c.setDate(c.getDate() + 1);\n    }\n    return c;\n  }\n\n  function isoDate(d){\n    var mm = String(d.getMonth()+1).padStart(2,'0');\n    var dd = String(d.getDate()).padStart(2,'0');\n    return d.getFullYear() + '-' + mm + '-' + dd;\n  }\n\n  \/\/ compute min (server time) + DAYS_OUT, bump to next weekday if needed\n  var minDate = new Date(base);\n  minDate.setDate(minDate.getDate() + DAYS_OUT);\n  minDate = nextWeekday(minDate);\n\n  input.min = isoDate(minDate);\n  input.value = isoDate(minDate);\n\n  function validate(dateStr){\n    if(!dateStr) return { ok:false, msg: 'Please select a Scheduled In-Hands Date.' };\n    var sel = new Date(dateStr + 'T00:00:00');\n    if(isNaN(sel.getTime())) return { ok:false, msg: 'Selected date is invalid.' };\n    sel.setHours(0,0,0,0);\n    if(sel \u003c minDate) return { ok:false, msg: 'Selected date is earlier than the earliest available: ' + isoDate(minDate) + '.' , corrected: minDate };\n    if(sel.getDay() === 0 || sel.getDay() === 6) return { ok:false, msg: 'Weekends not allowed. Next business day: ' + isoDate(nextWeekday(sel)) + '.', corrected: nextWeekday(sel) };\n    return { ok:true };\n  }\n\n  function showError(message){\n    err.textContent = message;\n    err.style.display = 'block';\n  }\n  function hideError(){\n    err.textContent = '';\n    err.style.display = 'none';\n  }\n\n  function handleChange(){\n    var res = validate(input.value);\n    if(!res.ok){\n      showError(res.msg);\n      if(res.corrected) input.value = isoDate(res.corrected);\n    } else {\n      hideError();\n    }\n  }\n\n  input.addEventListener('change', handleChange);\n  input.addEventListener('blur', handleChange);\n\n  \/\/ Ensure validation blocks form submit (works with your existing Add to Cart)\n  var parentForm = input.closest('form');\n  if(parentForm){\n    parentForm.addEventListener('submit', function(e){\n      var res = validate(input.value);\n      if(!res.ok){\n        e.preventDefault();\n        showError(res.msg);\n        if(res.corrected) input.value = isoDate(res.corrected);\n        input.focus();\n        return false;\n      }\n    }, { capture:true });\n  }\n\n})();\n\u003c\/script\u003e \u003cscript\u003e\ndocument.addEventListener('DOMContentLoaded', function() {\n\n  const dateInput = document.getElementById('scheduled_date');\n  if (!dateInput) return;\n\n  \/\/ Detect any AJAX add-to-cart click\n  document.querySelectorAll('.product-form__submit, [data-add-to-cart], button[type=\"submit\"]').forEach(btn =\u003e {\n    btn.addEventListener('click', function(e) {\n\n      const selected = dateInput.value;\n      if (!selected) {\n        e.preventDefault();\n        alert(\"Please select your REQUIRED Scheduled In-Hands Date before continuing.\");\n        dateInput.focus();\n        return false;\n      }\n\n      \/\/ Intercept Shopify AJAX\n      document.addEventListener('cart:request-start', function(ev) {\n        if (!ev.detail || !ev.detail.body) return;\n\n        try {\n          let data = ev.detail.body;\n\n          \/\/ Inject the line item property\n          data.set(\"properties[Scheduled Date In-Hand]\", selected);\n\n        } catch (err) {\n          console.warn(\"Unable to inject Scheduled Date:\", err);\n        }\n      }, { once: true });\n\n    });\n  });\n\n});\n\u003c\/script\u003e\u003c\/p\u003e","brand":"Color Tech","offers":[{"title":"Default Title","offer_id":43335031095502,"sku":null,"price":11.5,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0618\/5562\/9518\/files\/MOCKUP_ON_WHITE_BACK_1940_Mercury.png?v=1767750927"},{"product_id":"taildragger-syndicate-1940-mercury-on-black-graphic-tee","title":"TAILDRAGGER SYNDICATE 1940 MERCURY on BLACK GRAPHIC TEE","description":"\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003eClassic Short Sleeve Tee.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003e6 oz. Open-End Cotton.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e100% Cotton\u003c\/strong\u003e\u003cstrong\u003e.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003eFit: Classic.\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e\n\u003cspan style=\"font-size: 1.75rem;\"\u003e✅ \u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong style=\"font-size: 1.75rem;\"\u003e48 Minimum Total Quantity to Place Order\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eDiscounts Applied Automatically\u003c\/strong\u003e at quantity breaks: 72, 144, 288, 576\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003ePricing includes \u003cmeta charset=\"utf-8\"\u003e\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eLogos Screen Print on Front and Back.  Custom Neck Labels, Individually Folded, Bagged\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e. Small through X-Large.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e\n\u003cstrong\u003eNote:\u003c\/strong\u003e 2XL add $2.00   |   3XL add $3.00\u003cmeta charset=\"utf-8\"\u003e\n\u003c\/h3\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e4XL add $4.00   |   5XL add 5.00 \u003c\/h3\u003e\n\u003ctable style=\"width: 90.121%; border-collapse: collapse; font-size: 1.5rem;\" height=\"200\"\u003e\n\u003cthead\u003e\n\u003ctr style=\"background-color: #f0f0f0;\"\u003e\n\u003cth style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003eQuantity Range\u003c\/th\u003e\n\u003cth style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003eCost Per\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e48–71\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$13.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e72–143\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$11.50\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e144–287\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$10.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e288–575\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$9.20\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003e576+\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003e$8.10\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cdiv style=\"margin: 16px 0;\" data-server-epoch=\"{{ server_epoch }}\" id=\"sched-widget\"\u003e\n\u003cdiv style=\"color: #b00020; margin-top: 8px; display: none;\" role=\"alert\" id=\"sched-error\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cp\u003e\u003cscript\u003e\n(function(){\n  var DAYS_OUT = 15;\n  var widget = document.getElementById('sched-widget');\n  if (!widget) return;\n\n  var input = document.getElementById('scheduled_date');\n  var err = document.getElementById('sched-error');\n\n  var serverEpoch = parseInt(widget.getAttribute('data-server-epoch') || \"0\", 10);\n  var base = new Date(serverEpoch * 1000);\n  if (isNaN(base.getTime())) base = new Date();\n  base.setHours(0,0,0,0);\n\n  function nextWeekday(d){\n    var c = new Date(d.getTime());\n    while (c.getDay() === 0 || c.getDay() === 6) { \/\/ 0 Sun, 6 Sat\n      c.setDate(c.getDate() + 1);\n    }\n    return c;\n  }\n\n  function isoDate(d){\n    var mm = String(d.getMonth()+1).padStart(2,'0');\n    var dd = String(d.getDate()).padStart(2,'0');\n    return d.getFullYear() + '-' + mm + '-' + dd;\n  }\n\n  \/\/ compute min (server time) + DAYS_OUT, bump to next weekday if needed\n  var minDate = new Date(base);\n  minDate.setDate(minDate.getDate() + DAYS_OUT);\n  minDate = nextWeekday(minDate);\n\n  input.min = isoDate(minDate);\n  input.value = isoDate(minDate);\n\n  function validate(dateStr){\n    if(!dateStr) return { ok:false, msg: 'Please select a Scheduled In-Hands Date.' };\n    var sel = new Date(dateStr + 'T00:00:00');\n    if(isNaN(sel.getTime())) return { ok:false, msg: 'Selected date is invalid.' };\n    sel.setHours(0,0,0,0);\n    if(sel \u003c minDate) return { ok:false, msg: 'Selected date is earlier than the earliest available: ' + isoDate(minDate) + '.' , corrected: minDate };\n    if(sel.getDay() === 0 || sel.getDay() === 6) return { ok:false, msg: 'Weekends not allowed. Next business day: ' + isoDate(nextWeekday(sel)) + '.', corrected: nextWeekday(sel) };\n    return { ok:true };\n  }\n\n  function showError(message){\n    err.textContent = message;\n    err.style.display = 'block';\n  }\n  function hideError(){\n    err.textContent = '';\n    err.style.display = 'none';\n  }\n\n  function handleChange(){\n    var res = validate(input.value);\n    if(!res.ok){\n      showError(res.msg);\n      if(res.corrected) input.value = isoDate(res.corrected);\n    } else {\n      hideError();\n    }\n  }\n\n  input.addEventListener('change', handleChange);\n  input.addEventListener('blur', handleChange);\n\n  \/\/ Ensure validation blocks form submit (works with your existing Add to Cart)\n  var parentForm = input.closest('form');\n  if(parentForm){\n    parentForm.addEventListener('submit', function(e){\n      var res = validate(input.value);\n      if(!res.ok){\n        e.preventDefault();\n        showError(res.msg);\n        if(res.corrected) input.value = isoDate(res.corrected);\n        input.focus();\n        return false;\n      }\n    }, { capture:true });\n  }\n\n})();\n\u003c\/script\u003e \u003cscript\u003e\ndocument.addEventListener('DOMContentLoaded', function() {\n\n  const dateInput = document.getElementById('scheduled_date');\n  if (!dateInput) return;\n\n  \/\/ Detect any AJAX add-to-cart click\n  document.querySelectorAll('.product-form__submit, [data-add-to-cart], button[type=\"submit\"]').forEach(btn =\u003e {\n    btn.addEventListener('click', function(e) {\n\n      const selected = dateInput.value;\n      if (!selected) {\n        e.preventDefault();\n        alert(\"Please select your REQUIRED Scheduled In-Hands Date before continuing.\");\n        dateInput.focus();\n        return false;\n      }\n\n      \/\/ Intercept Shopify AJAX\n      document.addEventListener('cart:request-start', function(ev) {\n        if (!ev.detail || !ev.detail.body) return;\n\n        try {\n          let data = ev.detail.body;\n\n          \/\/ Inject the line item property\n          data.set(\"properties[Scheduled Date In-Hand]\", selected);\n\n        } catch (err) {\n          console.warn(\"Unable to inject Scheduled Date:\", err);\n        }\n      }, { once: true });\n\n    });\n  });\n\n});\n\u003c\/script\u003e\u003c\/p\u003e","brand":"Color Tech","offers":[{"title":"Default Title","offer_id":43482776699086,"sku":null,"price":11.5,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0618\/5562\/9518\/files\/MOCKUP_ON_BLACK_BACK_1940_Mercury.png?v=1767751231"},{"product_id":"taildragger-syndicate-sas-1938-ford-on-black-graphic-tee","title":"TAILDRAGGER SYNDICATE SAS 1938 FORD on BLACK GRAPHIC TEE","description":"\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003eClassic Short Sleeve Tee.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003e6 oz. Open-End Cotton.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e100% Cotton\u003c\/strong\u003e\u003cstrong\u003e.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003eFit: Classic.\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e\n\u003cspan style=\"font-size: 1.75rem;\"\u003e✅ \u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong style=\"font-size: 1.75rem;\"\u003e48 Minimum Total Quantity to Place Order\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eDiscounts Applied Automatically\u003c\/strong\u003e at quantity breaks: 72, 144, 288, 576\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003ePricing includes \u003cmeta charset=\"utf-8\"\u003e\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eLogos Screen Print on Front and Back.  Custom Neck Labels, Individually Folded, Bagged\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e. Small through X-Large.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e\n\u003cstrong\u003eNote:\u003c\/strong\u003e 2XL add $2.00   |   3XL add $3.00\u003cmeta charset=\"utf-8\"\u003e\n\u003c\/h3\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e4XL add $4.00   |   5XL add 5.00 \u003c\/h3\u003e\n\u003ctable style=\"width: 90.121%; border-collapse: collapse; font-size: 1.5rem;\" height=\"200\"\u003e\n\u003cthead\u003e\n\u003ctr style=\"background-color: #f0f0f0;\"\u003e\n\u003cth style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003eQuantity Range\u003c\/th\u003e\n\u003cth style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003eCost Per\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e48–71\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$13.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e72–143\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$11.50\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e144–287\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$10.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e288–575\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$9.20\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003e576+\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003e$8.10\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cdiv style=\"margin: 16px 0;\" data-server-epoch=\"{{ server_epoch }}\" id=\"sched-widget\"\u003e\n\u003cdiv style=\"color: #b00020; margin-top: 8px; display: none;\" role=\"alert\" id=\"sched-error\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cp\u003e\u003cscript\u003e\n(function(){\n  var DAYS_OUT = 15;\n  var widget = document.getElementById('sched-widget');\n  if (!widget) return;\n\n  var input = document.getElementById('scheduled_date');\n  var err = document.getElementById('sched-error');\n\n  var serverEpoch = parseInt(widget.getAttribute('data-server-epoch') || \"0\", 10);\n  var base = new Date(serverEpoch * 1000);\n  if (isNaN(base.getTime())) base = new Date();\n  base.setHours(0,0,0,0);\n\n  function nextWeekday(d){\n    var c = new Date(d.getTime());\n    while (c.getDay() === 0 || c.getDay() === 6) { \/\/ 0 Sun, 6 Sat\n      c.setDate(c.getDate() + 1);\n    }\n    return c;\n  }\n\n  function isoDate(d){\n    var mm = String(d.getMonth()+1).padStart(2,'0');\n    var dd = String(d.getDate()).padStart(2,'0');\n    return d.getFullYear() + '-' + mm + '-' + dd;\n  }\n\n  \/\/ compute min (server time) + DAYS_OUT, bump to next weekday if needed\n  var minDate = new Date(base);\n  minDate.setDate(minDate.getDate() + DAYS_OUT);\n  minDate = nextWeekday(minDate);\n\n  input.min = isoDate(minDate);\n  input.value = isoDate(minDate);\n\n  function validate(dateStr){\n    if(!dateStr) return { ok:false, msg: 'Please select a Scheduled In-Hands Date.' };\n    var sel = new Date(dateStr + 'T00:00:00');\n    if(isNaN(sel.getTime())) return { ok:false, msg: 'Selected date is invalid.' };\n    sel.setHours(0,0,0,0);\n    if(sel \u003c minDate) return { ok:false, msg: 'Selected date is earlier than the earliest available: ' + isoDate(minDate) + '.' , corrected: minDate };\n    if(sel.getDay() === 0 || sel.getDay() === 6) return { ok:false, msg: 'Weekends not allowed. Next business day: ' + isoDate(nextWeekday(sel)) + '.', corrected: nextWeekday(sel) };\n    return { ok:true };\n  }\n\n  function showError(message){\n    err.textContent = message;\n    err.style.display = 'block';\n  }\n  function hideError(){\n    err.textContent = '';\n    err.style.display = 'none';\n  }\n\n  function handleChange(){\n    var res = validate(input.value);\n    if(!res.ok){\n      showError(res.msg);\n      if(res.corrected) input.value = isoDate(res.corrected);\n    } else {\n      hideError();\n    }\n  }\n\n  input.addEventListener('change', handleChange);\n  input.addEventListener('blur', handleChange);\n\n  \/\/ Ensure validation blocks form submit (works with your existing Add to Cart)\n  var parentForm = input.closest('form');\n  if(parentForm){\n    parentForm.addEventListener('submit', function(e){\n      var res = validate(input.value);\n      if(!res.ok){\n        e.preventDefault();\n        showError(res.msg);\n        if(res.corrected) input.value = isoDate(res.corrected);\n        input.focus();\n        return false;\n      }\n    }, { capture:true });\n  }\n\n})();\n\u003c\/script\u003e \u003cscript\u003e\ndocument.addEventListener('DOMContentLoaded', function() {\n\n  const dateInput = document.getElementById('scheduled_date');\n  if (!dateInput) return;\n\n  \/\/ Detect any AJAX add-to-cart click\n  document.querySelectorAll('.product-form__submit, [data-add-to-cart], button[type=\"submit\"]').forEach(btn =\u003e {\n    btn.addEventListener('click', function(e) {\n\n      const selected = dateInput.value;\n      if (!selected) {\n        e.preventDefault();\n        alert(\"Please select your REQUIRED Scheduled In-Hands Date before continuing.\");\n        dateInput.focus();\n        return false;\n      }\n\n      \/\/ Intercept Shopify AJAX\n      document.addEventListener('cart:request-start', function(ev) {\n        if (!ev.detail || !ev.detail.body) return;\n\n        try {\n          let data = ev.detail.body;\n\n          \/\/ Inject the line item property\n          data.set(\"properties[Scheduled Date In-Hand]\", selected);\n\n        } catch (err) {\n          console.warn(\"Unable to inject Scheduled Date:\", err);\n        }\n      }, { once: true });\n\n    });\n  });\n\n});\n\u003c\/script\u003e\u003c\/p\u003e","brand":"Color Tech","offers":[{"title":"Default Title","offer_id":43335036829902,"sku":null,"price":11.5,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0618\/5562\/9518\/files\/MOCKUP_ON_BLACK_BACK_SAS_1938_FORD_copy.png?v=1767751549"},{"product_id":"taildragger-syndicate-sas-1938-ford-on-white-graphic-tee","title":"TAILDRAGGER SYNDICATE SAS 1938 FORD on WHITE GRAPHIC TEE","description":"\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003eClassic Short Sleeve Tee.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003e6 oz. Open-End Cotton.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e100% Cotton\u003c\/strong\u003e\u003cstrong\u003e.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003eFit: Classic.\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e\n\u003cspan style=\"font-size: 1.75rem;\"\u003e✅ \u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong style=\"font-size: 1.75rem;\"\u003e48 Minimum Total Quantity to Place Order\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eDiscounts Applied Automatically\u003c\/strong\u003e at quantity breaks: 72, 144, 288, 576\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003ePricing includes \u003cmeta charset=\"utf-8\"\u003e\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eLogos Screen Print on Front and Back.  Custom Neck Labels, Individually Folded, Bagged\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e. Small through X-Large.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e\n\u003cstrong\u003eNote:\u003c\/strong\u003e 2XL add $2.00   |   3XL add $3.00\u003cmeta charset=\"utf-8\"\u003e\n\u003c\/h3\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e4XL add $4.00   |   5XL add 5.00 \u003c\/h3\u003e\n\u003ctable style=\"width: 90.121%; border-collapse: collapse; font-size: 1.5rem;\" height=\"200\"\u003e\n\u003cthead\u003e\n\u003ctr style=\"background-color: #f0f0f0;\"\u003e\n\u003cth style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003eQuantity Range\u003c\/th\u003e\n\u003cth style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003eCost Per\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e48–71\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$13.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e72–143\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$11.50\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e144–287\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$10.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e288–575\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$9.20\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003e576+\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003e$8.10\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cdiv style=\"margin: 16px 0;\" data-server-epoch=\"{{ server_epoch }}\" id=\"sched-widget\"\u003e\n\u003cdiv style=\"color: #b00020; margin-top: 8px; display: none;\" role=\"alert\" id=\"sched-error\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cp\u003e\u003cscript\u003e\n(function(){\n  var DAYS_OUT = 15;\n  var widget = document.getElementById('sched-widget');\n  if (!widget) return;\n\n  var input = document.getElementById('scheduled_date');\n  var err = document.getElementById('sched-error');\n\n  var serverEpoch = parseInt(widget.getAttribute('data-server-epoch') || \"0\", 10);\n  var base = new Date(serverEpoch * 1000);\n  if (isNaN(base.getTime())) base = new Date();\n  base.setHours(0,0,0,0);\n\n  function nextWeekday(d){\n    var c = new Date(d.getTime());\n    while (c.getDay() === 0 || c.getDay() === 6) { \/\/ 0 Sun, 6 Sat\n      c.setDate(c.getDate() + 1);\n    }\n    return c;\n  }\n\n  function isoDate(d){\n    var mm = String(d.getMonth()+1).padStart(2,'0');\n    var dd = String(d.getDate()).padStart(2,'0');\n    return d.getFullYear() + '-' + mm + '-' + dd;\n  }\n\n  \/\/ compute min (server time) + DAYS_OUT, bump to next weekday if needed\n  var minDate = new Date(base);\n  minDate.setDate(minDate.getDate() + DAYS_OUT);\n  minDate = nextWeekday(minDate);\n\n  input.min = isoDate(minDate);\n  input.value = isoDate(minDate);\n\n  function validate(dateStr){\n    if(!dateStr) return { ok:false, msg: 'Please select a Scheduled In-Hands Date.' };\n    var sel = new Date(dateStr + 'T00:00:00');\n    if(isNaN(sel.getTime())) return { ok:false, msg: 'Selected date is invalid.' };\n    sel.setHours(0,0,0,0);\n    if(sel \u003c minDate) return { ok:false, msg: 'Selected date is earlier than the earliest available: ' + isoDate(minDate) + '.' , corrected: minDate };\n    if(sel.getDay() === 0 || sel.getDay() === 6) return { ok:false, msg: 'Weekends not allowed. Next business day: ' + isoDate(nextWeekday(sel)) + '.', corrected: nextWeekday(sel) };\n    return { ok:true };\n  }\n\n  function showError(message){\n    err.textContent = message;\n    err.style.display = 'block';\n  }\n  function hideError(){\n    err.textContent = '';\n    err.style.display = 'none';\n  }\n\n  function handleChange(){\n    var res = validate(input.value);\n    if(!res.ok){\n      showError(res.msg);\n      if(res.corrected) input.value = isoDate(res.corrected);\n    } else {\n      hideError();\n    }\n  }\n\n  input.addEventListener('change', handleChange);\n  input.addEventListener('blur', handleChange);\n\n  \/\/ Ensure validation blocks form submit (works with your existing Add to Cart)\n  var parentForm = input.closest('form');\n  if(parentForm){\n    parentForm.addEventListener('submit', function(e){\n      var res = validate(input.value);\n      if(!res.ok){\n        e.preventDefault();\n        showError(res.msg);\n        if(res.corrected) input.value = isoDate(res.corrected);\n        input.focus();\n        return false;\n      }\n    }, { capture:true });\n  }\n\n})();\n\u003c\/script\u003e \u003cscript\u003e\ndocument.addEventListener('DOMContentLoaded', function() {\n\n  const dateInput = document.getElementById('scheduled_date');\n  if (!dateInput) return;\n\n  \/\/ Detect any AJAX add-to-cart click\n  document.querySelectorAll('.product-form__submit, [data-add-to-cart], button[type=\"submit\"]').forEach(btn =\u003e {\n    btn.addEventListener('click', function(e) {\n\n      const selected = dateInput.value;\n      if (!selected) {\n        e.preventDefault();\n        alert(\"Please select your REQUIRED Scheduled In-Hands Date before continuing.\");\n        dateInput.focus();\n        return false;\n      }\n\n      \/\/ Intercept Shopify AJAX\n      document.addEventListener('cart:request-start', function(ev) {\n        if (!ev.detail || !ev.detail.body) return;\n\n        try {\n          let data = ev.detail.body;\n\n          \/\/ Inject the line item property\n          data.set(\"properties[Scheduled Date In-Hand]\", selected);\n\n        } catch (err) {\n          console.warn(\"Unable to inject Scheduled Date:\", err);\n        }\n      }, { once: true });\n\n    });\n  });\n\n});\n\u003c\/script\u003e\u003c\/p\u003e","brand":"Color Tech","offers":[{"title":"Default Title","offer_id":43335037452494,"sku":null,"price":11.5,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0618\/5562\/9518\/files\/MOCKUP_ON_WHITE_BACK_SAS_1938_FORD.png?v=1767751818"},{"product_id":"taildragger-syndicate-37-ford-on-whte-graphic-tee-copy","title":"TAILDRAGGER SYNDICATE 1937 ZEPHYR COUPE SKOTY CHOPS on WHTE GRAPHIC TEE","description":"\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003eClassic Short Sleeve Tee.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003e6 oz. Open-End Cotton.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e100% Cotton\u003c\/strong\u003e\u003cstrong\u003e.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003eFit: Classic.\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e\n\u003cspan style=\"font-size: 1.75rem;\"\u003e✅ \u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong style=\"font-size: 1.75rem;\"\u003e48 Minimum Total Quantity to Place Order\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eDiscounts Applied Automatically\u003c\/strong\u003e at quantity breaks: 72, 144, 288, 576\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003ePricing includes \u003cmeta charset=\"utf-8\"\u003e\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eLogos Screen Print on Front and Back.  Custom Neck Labels, Individually Folded, Bagged\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e. Small through X-Large.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e\n\u003cstrong\u003eNote:\u003c\/strong\u003e 2XL add $2.00   |   3XL add $3.00\u003cmeta charset=\"utf-8\"\u003e\n\u003c\/h3\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e4XL add $4.00   |   5XL add 5.00 \u003c\/h3\u003e\n\u003ctable style=\"width: 90.121%; border-collapse: collapse; font-size: 1.5rem;\" height=\"200\"\u003e\n\u003cthead\u003e\n\u003ctr style=\"background-color: #f0f0f0;\"\u003e\n\u003cth style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003eQuantity Range\u003c\/th\u003e\n\u003cth style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003eCost Per\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e48–71\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$13.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e72–143\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$11.50\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e144–287\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$10.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e288–575\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$9.20\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003e576+\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003e$8.10\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cdiv style=\"margin: 16px 0;\" data-server-epoch=\"{{ server_epoch }}\" id=\"sched-widget\"\u003e\n\u003cdiv style=\"color: #b00020; margin-top: 8px; display: none;\" role=\"alert\" id=\"sched-error\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cp\u003e\u003cscript\u003e\n(function(){\n  var DAYS_OUT = 15;\n  var widget = document.getElementById('sched-widget');\n  if (!widget) return;\n\n  var input = document.getElementById('scheduled_date');\n  var err = document.getElementById('sched-error');\n\n  var serverEpoch = parseInt(widget.getAttribute('data-server-epoch') || \"0\", 10);\n  var base = new Date(serverEpoch * 1000);\n  if (isNaN(base.getTime())) base = new Date();\n  base.setHours(0,0,0,0);\n\n  function nextWeekday(d){\n    var c = new Date(d.getTime());\n    while (c.getDay() === 0 || c.getDay() === 6) { \/\/ 0 Sun, 6 Sat\n      c.setDate(c.getDate() + 1);\n    }\n    return c;\n  }\n\n  function isoDate(d){\n    var mm = String(d.getMonth()+1).padStart(2,'0');\n    var dd = String(d.getDate()).padStart(2,'0');\n    return d.getFullYear() + '-' + mm + '-' + dd;\n  }\n\n  \/\/ compute min (server time) + DAYS_OUT, bump to next weekday if needed\n  var minDate = new Date(base);\n  minDate.setDate(minDate.getDate() + DAYS_OUT);\n  minDate = nextWeekday(minDate);\n\n  input.min = isoDate(minDate);\n  input.value = isoDate(minDate);\n\n  function validate(dateStr){\n    if(!dateStr) return { ok:false, msg: 'Please select a Scheduled In-Hands Date.' };\n    var sel = new Date(dateStr + 'T00:00:00');\n    if(isNaN(sel.getTime())) return { ok:false, msg: 'Selected date is invalid.' };\n    sel.setHours(0,0,0,0);\n    if(sel \u003c minDate) return { ok:false, msg: 'Selected date is earlier than the earliest available: ' + isoDate(minDate) + '.' , corrected: minDate };\n    if(sel.getDay() === 0 || sel.getDay() === 6) return { ok:false, msg: 'Weekends not allowed. Next business day: ' + isoDate(nextWeekday(sel)) + '.', corrected: nextWeekday(sel) };\n    return { ok:true };\n  }\n\n  function showError(message){\n    err.textContent = message;\n    err.style.display = 'block';\n  }\n  function hideError(){\n    err.textContent = '';\n    err.style.display = 'none';\n  }\n\n  function handleChange(){\n    var res = validate(input.value);\n    if(!res.ok){\n      showError(res.msg);\n      if(res.corrected) input.value = isoDate(res.corrected);\n    } else {\n      hideError();\n    }\n  }\n\n  input.addEventListener('change', handleChange);\n  input.addEventListener('blur', handleChange);\n\n  \/\/ Ensure validation blocks form submit (works with your existing Add to Cart)\n  var parentForm = input.closest('form');\n  if(parentForm){\n    parentForm.addEventListener('submit', function(e){\n      var res = validate(input.value);\n      if(!res.ok){\n        e.preventDefault();\n        showError(res.msg);\n        if(res.corrected) input.value = isoDate(res.corrected);\n        input.focus();\n        return false;\n      }\n    }, { capture:true });\n  }\n\n})();\n\u003c\/script\u003e \u003cscript\u003e\ndocument.addEventListener('DOMContentLoaded', function() {\n\n  const dateInput = document.getElementById('scheduled_date');\n  if (!dateInput) return;\n\n  \/\/ Detect any AJAX add-to-cart click\n  document.querySelectorAll('.product-form__submit, [data-add-to-cart], button[type=\"submit\"]').forEach(btn =\u003e {\n    btn.addEventListener('click', function(e) {\n\n      const selected = dateInput.value;\n      if (!selected) {\n        e.preventDefault();\n        alert(\"Please select your REQUIRED Scheduled In-Hands Date before continuing.\");\n        dateInput.focus();\n        return false;\n      }\n\n      \/\/ Intercept Shopify AJAX\n      document.addEventListener('cart:request-start', function(ev) {\n        if (!ev.detail || !ev.detail.body) return;\n\n        try {\n          let data = ev.detail.body;\n\n          \/\/ Inject the line item property\n          data.set(\"properties[Scheduled Date In-Hand]\", selected);\n\n        } catch (err) {\n          console.warn(\"Unable to inject Scheduled Date:\", err);\n        }\n      }, { once: true });\n\n    });\n  });\n\n});\n\u003c\/script\u003e\u003c\/p\u003e","brand":"Color Tech","offers":[{"title":"Default Title","offer_id":43482775421134,"sku":null,"price":11.5,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0618\/5562\/9518\/files\/PNG_PROOF_on_WHITE_1937_ZEPHYR_BACK.png?v=1775575175"},{"product_id":"taildragger-syndicate-1937-zephyr-coupe-skoty-chops-on-black-graphic-tee","title":"TAILDRAGGER SYNDICATE 1937 ZEPHYR COUPE SKOTY CHOPS on BLACK GRAPHIC TEE","description":"\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003eClassic Short Sleeve Tee.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cspan\u003e6 oz. Open-End Cotton.\u003c\/span\u003e\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e100% Cotton\u003c\/strong\u003e\u003cstrong\u003e.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cstrong\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003eFit: Classic.\u003c\/span\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e\n\u003cspan style=\"font-size: 1.75rem;\"\u003e✅ \u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong style=\"font-size: 1.75rem;\"\u003e48 Minimum Total Quantity to Place Order\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eDiscounts Applied Automatically\u003c\/strong\u003e at quantity breaks: 72, 144, 288, 576\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch2 style=\"color: #0057b8; font-size: 1.75rem; font-weight: bold; margin-bottom: 1rem; border-left: 4px solid #0057b8; padding-left: 0.75rem;\"\u003e✅ \u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003ePricing includes \u003cmeta charset=\"utf-8\"\u003e\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003eLogos Screen Print on Front and Back.  Custom Neck Labels, Individually Folded, Bagged\u003c\/strong\u003e\u003c\/span\u003e\u003cspan style=\"color: rgb(0, 0, 0);\"\u003e\u003cstrong\u003e. Small through X-Large.\u003c\/strong\u003e\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e\n\u003cstrong\u003eNote:\u003c\/strong\u003e 2XL add $2.00   |   3XL add $3.00\u003cmeta charset=\"utf-8\"\u003e\n\u003c\/h3\u003e\n\u003ch3 style=\"margin-top: 1.5rem; font-size: 1.5rem; text-align: center;\"\u003e4XL add $4.00   |   5XL add 5.00 \u003c\/h3\u003e\n\u003ctable style=\"width: 90.121%; border-collapse: collapse; font-size: 1.5rem;\" height=\"200\"\u003e\n\u003cthead\u003e\n\u003ctr style=\"background-color: #f0f0f0;\"\u003e\n\u003cth style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003eQuantity Range\u003c\/th\u003e\n\u003cth style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003eCost Per\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e48–71\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$13.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15em; width: 55.3535%;\"\u003e72–143\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$11.50\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e144–287\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$10.00\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"background-color: rgb(249, 249, 249); text-align: center;\"\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%;\"\u003e288–575\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%;\"\u003e$9.20\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd style=\"padding: 0.15rem; width: 55.3535%; text-align: center;\"\u003e576+\u003c\/td\u003e\n\u003ctd style=\"padding: 0.15rem; width: 35.1515%; text-align: center;\"\u003e$8.10\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cdiv style=\"margin: 16px 0;\" data-server-epoch=\"{{ server_epoch }}\" id=\"sched-widget\"\u003e\n\u003cdiv style=\"color: #b00020; margin-top: 8px; display: none;\" role=\"alert\" id=\"sched-error\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cp\u003e\u003cscript\u003e\n(function(){\n  var DAYS_OUT = 15;\n  var widget = document.getElementById('sched-widget');\n  if (!widget) return;\n\n  var input = document.getElementById('scheduled_date');\n  var err = document.getElementById('sched-error');\n\n  var serverEpoch = parseInt(widget.getAttribute('data-server-epoch') || \"0\", 10);\n  var base = new Date(serverEpoch * 1000);\n  if (isNaN(base.getTime())) base = new Date();\n  base.setHours(0,0,0,0);\n\n  function nextWeekday(d){\n    var c = new Date(d.getTime());\n    while (c.getDay() === 0 || c.getDay() === 6) { \/\/ 0 Sun, 6 Sat\n      c.setDate(c.getDate() + 1);\n    }\n    return c;\n  }\n\n  function isoDate(d){\n    var mm = String(d.getMonth()+1).padStart(2,'0');\n    var dd = String(d.getDate()).padStart(2,'0');\n    return d.getFullYear() + '-' + mm + '-' + dd;\n  }\n\n  \/\/ compute min (server time) + DAYS_OUT, bump to next weekday if needed\n  var minDate = new Date(base);\n  minDate.setDate(minDate.getDate() + DAYS_OUT);\n  minDate = nextWeekday(minDate);\n\n  input.min = isoDate(minDate);\n  input.value = isoDate(minDate);\n\n  function validate(dateStr){\n    if(!dateStr) return { ok:false, msg: 'Please select a Scheduled In-Hands Date.' };\n    var sel = new Date(dateStr + 'T00:00:00');\n    if(isNaN(sel.getTime())) return { ok:false, msg: 'Selected date is invalid.' };\n    sel.setHours(0,0,0,0);\n    if(sel \u003c minDate) return { ok:false, msg: 'Selected date is earlier than the earliest available: ' + isoDate(minDate) + '.' , corrected: minDate };\n    if(sel.getDay() === 0 || sel.getDay() === 6) return { ok:false, msg: 'Weekends not allowed. Next business day: ' + isoDate(nextWeekday(sel)) + '.', corrected: nextWeekday(sel) };\n    return { ok:true };\n  }\n\n  function showError(message){\n    err.textContent = message;\n    err.style.display = 'block';\n  }\n  function hideError(){\n    err.textContent = '';\n    err.style.display = 'none';\n  }\n\n  function handleChange(){\n    var res = validate(input.value);\n    if(!res.ok){\n      showError(res.msg);\n      if(res.corrected) input.value = isoDate(res.corrected);\n    } else {\n      hideError();\n    }\n  }\n\n  input.addEventListener('change', handleChange);\n  input.addEventListener('blur', handleChange);\n\n  \/\/ Ensure validation blocks form submit (works with your existing Add to Cart)\n  var parentForm = input.closest('form');\n  if(parentForm){\n    parentForm.addEventListener('submit', function(e){\n      var res = validate(input.value);\n      if(!res.ok){\n        e.preventDefault();\n        showError(res.msg);\n        if(res.corrected) input.value = isoDate(res.corrected);\n        input.focus();\n        return false;\n      }\n    }, { capture:true });\n  }\n\n})();\n\u003c\/script\u003e \u003cscript\u003e\ndocument.addEventListener('DOMContentLoaded', function() {\n\n  const dateInput = document.getElementById('scheduled_date');\n  if (!dateInput) return;\n\n  \/\/ Detect any AJAX add-to-cart click\n  document.querySelectorAll('.product-form__submit, [data-add-to-cart], button[type=\"submit\"]').forEach(btn =\u003e {\n    btn.addEventListener('click', function(e) {\n\n      const selected = dateInput.value;\n      if (!selected) {\n        e.preventDefault();\n        alert(\"Please select your REQUIRED Scheduled In-Hands Date before continuing.\");\n        dateInput.focus();\n        return false;\n      }\n\n      \/\/ Intercept Shopify AJAX\n      document.addEventListener('cart:request-start', function(ev) {\n        if (!ev.detail || !ev.detail.body) return;\n\n        try {\n          let data = ev.detail.body;\n\n          \/\/ Inject the line item property\n          data.set(\"properties[Scheduled Date In-Hand]\", selected);\n\n        } catch (err) {\n          console.warn(\"Unable to inject Scheduled Date:\", err);\n        }\n      }, { once: true });\n\n    });\n  });\n\n});\n\u003c\/script\u003e\u003c\/p\u003e","brand":"Color Tech","offers":[{"title":"Default Title","offer_id":43482774831310,"sku":null,"price":11.5,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0618\/5562\/9518\/files\/PNG_PROOF_on_BLACK_1937_ZEPHYR_BACK.png?v=1775575235"}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0618\/5562\/9518\/collections\/MOCKUP_BACK_36_FORD_TS.png?v=1772427559","url":"https:\/\/colortechsp.com\/collections\/taildragger-syndicate.oembed","provider":"Color Tech","version":"1.0","type":"link"}