{"product_id":"growpros-solutions-v-track-rolling-benches","title":"GrowPros Solutions V-track Rolling Benches","description":"\u003cstyle\u003e\n  .contact-section {\n    display: flex;\n    gap: 20px;\n    align-items: flex-start;\n    justify-content: center;\n    padding: 20px;\n    flex-wrap: wrap;\n    margin: 4rem auto 0;\n    border-radius: 20px;\n    max-width: 1000px;\n    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.1);\n    background: #fff;\n  }\n\n  .contact-image img {\n    width: 100%;\n    max-width: 500px;\n    height: 20rem;\n    border-radius: 12px;\n    object-fit: cover;\n    display: block;\n  }\n\n  .contact-form-wrapper {\n    flex: 1 1 350px;\n    padding: 20px;\n  }\n\n  .contact-form-wrapper h2 {\n    margin-bottom: 15px;\n    color: #3c9342;\n    text-align: center;\n    font-family: 'HelveticaNeueMedium', Arial, sans-serif;\n  }\n\n  .contact-form-wrapper p {\n    margin-bottom: 15px;\n    color: #908f8f;\n    text-align: center;\n    font-family: 'HelveticaNeueSimple', Arial, sans-serif;\n    font-size: 15px;\n  }\n\n  .contact-field {\n    margin-bottom: 12px;\n    display: flex;\n    flex-direction: column;\n    font-family: 'HelveticaNeueSimple', Arial, sans-serif;\n    width: 100%;\n  }\n\n  .contact-field label {\n    margin-bottom: 4px;\n    font-weight: 600;\n    color: #555;\n    font-size: 14px;\n  }\n\n  .contact-field input {\n    padding: 8px 10px;\n    font-size: 14px;\n    border: 1px solid #ccc;\n    border-radius: 6px;\n    transition: border-color 0.3s;\n    font-family: inherit;\n  }\n\n  .contact-field input:focus {\n    border-color: #3c9342;\n    outline: none;\n  }\n\n  .helper-text {\n    font-size: 11px;\n    color: #888;\n    margin-top: 2px;\n  }\n\n  .form-button {\n    background-color: #3c9342;\n    color: #fff;\n    padding: 10px 16px;\n    border: none;\n    border-radius: 6px;\n    font-size: 14px;\n    cursor: pointer;\n    transition: background-color 0.3s;\n    width: 60%;\n    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);\n    font-family: inherit;\n  }\n\n  .form-button:hover:not(:disabled) {\n    background-color: rgb(50, 129, 55);\n    box-shadow: 0 6px 10px rgba(0, 0, 0, 0.25);\n  }\n\n  .form-button:disabled {\n    opacity: 0.6;\n    cursor: not-allowed;\n  }\n\n  .contact-field-row {\n    display: flex;\n    gap: 20px;\n  }\n\n  \/* Thank You Message Styles *\/\n  .thank-you-message {\n    display: none;\n    text-align: center;\n    padding: 40px 20px;\n    animation: fadeIn 0.5s ease-in;\n    flex: 1 1 350px;\n  }\n\n  .thank-you-message.show {\n    display: block;\n  }\n\n  .thank-you-message h2 {\n    color: #3c9342;\n    font-family: 'HelveticaNeueMedium', Arial, sans-serif;\n    margin-bottom: 15px;\n    font-size: 28px;\n  }\n\n  .thank-you-message p {\n    color: #555;\n    font-family: 'HelveticaNeueSimple', Arial, sans-serif;\n    font-size: 16px;\n    line-height: 1.6;\n  }\n\n  .thank-you-icon {\n    width: 80px;\n    height: 80px;\n    background: #3c9342;\n    color: white;\n    border-radius: 50%;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    font-size: 40px;\n    margin: 0 auto 20px;\n  }\n\n  @keyframes fadeIn {\n    from {\n      opacity: 0;\n      transform: translateY(-10px);\n    }\n    to {\n      opacity: 1;\n      transform: translateY(0);\n    }\n  }\n\n  \/* Loading State *\/\n  .spinner {\n    display: inline-block;\n    width: 14px;\n    height: 14px;\n    border: 2px solid #ffffff;\n    border-radius: 50%;\n    border-top-color: transparent;\n    animation: spin 0.8s linear infinite;\n    margin-left: 8px;\n    vertical-align: middle;\n  }\n\n  @keyframes spin {\n    to {\n      transform: rotate(360deg);\n    }\n  }\n\n  \/* Error Message *\/\n  .error-message {\n    color: #d32f2f;\n    background-color: #ffebee;\n    padding: 10px;\n    border-radius: 6px;\n    margin-bottom: 15px;\n    display: none;\n    font-family: 'HelveticaNeueSimple', Arial, sans-serif;\n    font-size: 14px;\n  }\n\n  \/* Success state - hide form elements *\/\n  .form-submitted .contact-form-wrapper,\n  .form-submitted .contact-image {\n    display: none !important;\n  }\n\n  .form-submitted .thank-you-message {\n    display: block !important;\n  }\n\n  \/* Responsive *\/\n  @media (max-width: 900px) {\n    .contact-section {\n      flex-direction: column;\n      padding: 15px;\n      gap: 15px;\n      margin: 2rem auto;\n    }\n\n    .contact-image img {\n      max-width: 100%;\n    }\n\n    .contact-form-wrapper {\n      max-width: 100%;\n      padding: 15px;\n    }\n\n    .contact-field-row {\n      flex-direction: column;\n      gap: 0;\n    }\n    \n    .thank-you-message {\n      width: 100%;\n    }\n  }\n\u003c\/style\u003e\n\u003cdiv id=\"contact-section\" class=\"contact-section\"\u003e\n\u003cdiv id=\"contact-image\" class=\"contact-image\"\u003e\u003cimg alt=\"Growpros Grow Bench\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0694\/0151\/0171\/files\/growpros-solutions-v-track-rolling-benches-5654696_1.png?v=1774950705\"\u003e\u003c\/div\u003e\n\u003cdiv id=\"form-container\" class=\"contact-form-wrapper\"\u003e\u003cform id=\"canopy-form\" action=\"\/contact#contact_form\" method=\"post\"\u003e\n\u003cinput value=\"\" name=\"return_to\" type=\"hidden\"\u003e \u003cinput type=\"hidden\" name=\"form_type\" value=\"contact\"\u003e \u003cinput type=\"hidden\" name=\"utf8\" value=\"✓\"\u003e \u003cinput type=\"hidden\" id=\"product-title\" name=\"contact[Product]\"\u003e \u003cinput type=\"hidden\" id=\"product-url\" name=\"contact[Product Link]\"\u003e \u003cinput value=\"This form is a request for a professional consultation regarding Growing Benching Systems, helping us design the ideal setup based on the customer's space, layout, and workflow requirements.\" name=\"contact[Message]\" type=\"hidden\"\u003e\n\u003ch2\u003eLet's Design the Right Setup Together\u003c\/h2\u003e\n\u003cp\u003eThese systems vary by space, layout, and workflow—fill out the form below for a free expert consultation with our resident CEA expert, Elliott Gorfain\u003c\/p\u003e\n\u003cdiv id=\"form-error\" class=\"error-message\"\u003eSomething went wrong. Please try again.\u003c\/div\u003e\n\u003cdiv class=\"contact-field-row\"\u003e\n\u003cdiv class=\"contact-field\"\u003e\n\u003clabel for=\"ContactFormEmail\"\u003eEmail\u003c\/label\u003e \u003cinput required=\"\" name=\"contact[email]\" id=\"ContactFormEmail\" type=\"email\"\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"contact-field\"\u003e\n\u003clabel for=\"ContactFormPhone\"\u003ePhone Number\u003c\/label\u003e \u003cinput required=\"\" name=\"contact[phone]\" id=\"ContactFormPhone\" type=\"tel\"\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"contact-field\"\u003e\n\u003clabel for=\"ContactFormCanopy\"\u003eCanopy Size (sq ft)\u003c\/label\u003e \u003cinput step=\"1\" min=\"1\" required=\"\" name=\"contact[Canopy Size (sq ft)]\" id=\"ContactFormCanopy\" type=\"number\"\u003e \u003csmall class=\"helper-text\"\u003eTotal plant canopy (not total building, room, or property size).\u003c\/small\u003e\n\u003c\/div\u003e\n\u003cdiv style=\"text-align: center;\"\u003e\u003cbutton id=\"submit-btn\" class=\"form-button\" type=\"submit\"\u003e \u003cspan class=\"btn-text\"\u003eSubmit\u003c\/span\u003e \u003c\/button\u003e\u003c\/div\u003e\n\u003c\/form\u003e\u003c\/div\u003e\n\u003c!-- Thank You Message (Hidden by default) --\u003e\n\u003cdiv id=\"thank-you-message\" class=\"thank-you-message\"\u003e\n\u003cdiv class=\"thank-you-icon\"\u003e✓\u003c\/div\u003e\n\u003ch2\u003eThank You!\u003c\/h2\u003e\n\u003cp\u003eWe've received your request and our resident CEA expert, Elliott Gorfain will be in touch to discuss your growing benching system needs.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cp\u003e\u003cscript\u003e\n(function() {\n  var storageKey = 'canopyFormSubmitting_' + window.location.pathname;\n  var submittedFlag = sessionStorage.getItem(storageKey);\n  var contactSection = document.getElementById('contact-section');\n  \n  \/\/ Check if we just submitted (page reloaded)\n  if (submittedFlag) {\n    sessionStorage.removeItem(storageKey);\n    showThankYouMessage();\n  }\n  \n  function showThankYouMessage() {\n    var formContainer = document.getElementById('form-container');\n    var thankYouMessage = document.getElementById('thank-you-message');\n    var contactImage = document.getElementById('contact-image');\n    \n    if (formContainer) formContainer.style.display = 'none';\n    if (contactImage) contactImage.style.display = 'none';\n    if (thankYouMessage) {\n      thankYouMessage.style.display = 'block';\n      thankYouMessage.classList.add('show');\n    }\n    \n    \/\/ Add class to parent for CSS-based hiding\n    if (contactSection) contactSection.classList.add('form-submitted');\n    \n    \/\/ Scroll to message\n    setTimeout(function() {\n      if (contactSection) contactSection.scrollIntoView({ behavior: 'smooth', block: 'center' });\n    }, 100);\n  }\n  \n  \/\/ Initialize form\n  function initForm() {\n    var form = document.getElementById('canopy-form');\n    var submitBtn = document.getElementById('submit-btn');\n    var btnText = submitBtn ? submitBtn.querySelector('.btn-text') : null;\n    var errorMessage = document.getElementById('form-error');\n    \n    if (!form) return;\n    \n    \/\/ Set return_to to current URL\n    var returnToInput = form.querySelector('input[name=\"return_to\"]');\n    if (returnToInput) returnToInput.value = window.location.href;\n    \n    \/\/ Set product info from page\n    var titleElement = document.querySelector('h1');\n    var title = titleElement ? titleElement.innerText.trim() : document.title;\n    \n    var productTitleInput = document.getElementById(\"product-title\");\n    var productUrlInput = document.getElementById(\"product-url\");\n    \n    if (productTitleInput) productTitleInput.value = title;\n    if (productUrlInput) productUrlInput.value = window.location.href;\n    \n    \/\/ Form submission handler\n    form.addEventListener('submit', function(e) {\n      \/\/ Validate form\n      if (!form.checkValidity()) {\n        return;\n      }\n      \n      \/\/ Show loading state\n      if (submitBtn) submitBtn.disabled = true;\n      if (btnText) btnText.innerHTML = 'Sending...\u003cspan class=\"spinner\"\u003e\u003c\/span\u003e';\n      if (errorMessage) errorMessage.style.display = 'none';\n      \n      \/\/ Set flag BEFORE submission\n      try {\n        sessionStorage.setItem(storageKey, 'true');\n        console.log('Form submission flag set');\n      } catch (e) {\n        console.error('Could not set sessionStorage:', e);\n      }\n      \n      \/\/ For debugging - log what happens\n      setTimeout(function() {\n        console.log('Form should be submitting now...');\n      }, 100);\n      \n      \/\/ Allow form to submit normally (no preventDefault)\n    });\n  }\n  \n  \/\/ Run initialization\n  if (document.readyState === 'loading') {\n    document.addEventListener('DOMContentLoaded', initForm);\n  } else {\n    initForm();\n  }\n})();\n\u003c\/script\u003e \u003cbr\u003e\u003cbr\u003e\u003c\/p\u003e\n\u003cstyle\u003e\n.hover-pdf a {\n  color: black;\n  background: transparent;\n}\n\n.hover-pdf a:hover {\n  color: blue;\n  cursor: pointer;\n  background: transparent;\n} \n\u003c\/style\u003e\n\u003ch5\u003e\u003cstrong\u003eDescription\u003c\/strong\u003e\u003c\/h5\u003e\n\u003cp\u003eThe \u003cstrong\u003eGrowPros Solutions V-Track Rolling Benches\u003c\/strong\u003e are a durable, plug-and-play cultivation system designed for maximizing space efficiency in greenhouse and indoor growing environments, featuring a track-guided configuration for smooth movement and optimized workflow. Built with high-quality materials for long-lasting performance, they ensure reliable structural support and compatibility with a wide range of grow setups, making installation simple and dependable for commercial and controlled environment agriculture systems.\u003c\/p\u003e\n\u003cp\u003eEngineered for precision mobility, the system enables smooth lateral displacement, maximizes canopy utilization, and reduces idle aisle space. Its reinforced frame and track alignment enhance load stability, support high-weight capacity, and improve operational efficiency in large-scale cultivation environments.\u003c\/p\u003e\n\n\u003ch5\u003e\u003cstrong\u003eSpecs\u003c\/strong\u003e\u003c\/h5\u003e\n\u003cdiv class=\"spec-table-wrapper\"\u003e\n\u003ctable class=\"spec-table\"\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003eBrand\u003c\/td\u003e\n\u003ctd\u003eGrowPros Solutions\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eFrame Material\u003c\/td\u003e\n\u003ctd\u003eStainless steel build\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eLength Options\u003c\/td\u003e\n\u003ctd\u003eModular size increments\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eLoad Capacity\u003c\/td\u003e\n\u003ctd\u003eUp to 2000lbs\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMobility System\u003c\/td\u003e\n\u003ctd\u003eV-track rolling design\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eCorrosion Resistance\u003c\/td\u003e\n\u003ctd\u003eRust resistant materials\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eSpace Efficiency\u003c\/td\u003e\n\u003ctd\u003eMaximized grow area\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eSpec Sheet\u003c\/td\u003e\n\u003ctd class=\"hover-pdf\"\u003e\u003ca href=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0694\/0151\/0171\/files\/VTRACKROLLINGBENCH.pdf?v=1774950896\"\u003ePDF\u003c\/a\u003e\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e","brand":"GrowPros Solutions","offers":[{"title":"Default Title","offer_id":51898117816603,"sku":"GPS-VTK-B","price":20.0,"currency_code":"USD","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0694\/0151\/0171\/files\/growpros-solutions-v-track-rolling-benches-5654696.png?v=1774048332","url":"https:\/\/greenthumbdepot.com\/products\/growpros-solutions-v-track-rolling-benches","provider":"Green Thumb Depot","version":"1.0","type":"link"}