{"product_id":"used-cleveland-rtx-6-zipcore-black-satin-wedge-set-right-handed-54-58-wedge-flex-1","title":"Used Cleveland RTX 6 ZipCore Black Satin Wedge Set - Right-Handed - 54*, 58* - Wedge Flex","description":"\u003cstyle\u003e\n\/* Force a real 2-column grid on THIS list only, overriding the theme *\/\n#product-desc-list{\n  display:grid !important;\n  grid-template-columns:1fr 1fr;\n  gap:0;\n  list-style:none;\n  margin:0 0 16px 0;\n  padding:0;\n  column-count:initial !important; \/* kill multi-column layout *\/\n}\n#product-desc-list \u003e li{\n  margin:0 !important;\n  padding:6px !important;\n  border-bottom:1px solid #d9d9d9 !important;\n  float:none !important;          \/* kill float layouts *\/\n  width:auto !important;          \/* kill width:50% rules *\/\n}\n#product-desc-list \u003e li._left { border-right:1px solid #d9d9d9 !important; }\n\u003c\/style\u003e\n\n\u003cul id=\"product-desc-list\" style=\"visibility:hidden\"\u003e\n  \u003cli\u003e\n\u003cb\u003eClub Condition:\u003c\/b\u003e Value\u003c\/li\u003e\n  \u003cli\u003e\n\u003cb\u003eSet Makeup:\u003c\/b\u003e 54*, 58*\u003c\/li\u003e\n  \u003cli\u003e\n\u003cb\u003eNumber of Clubs:\u003c\/b\u003e 2\u003c\/li\u003e\n  \u003cli\u003e\n\u003cb\u003eHandedness:\u003c\/b\u003e Right-Handed\u003c\/li\u003e\n\n\n\n\u003cli\u003e\n\u003cb\u003eSet Lengths (in):\u003c\/b\u003e\n  \u003ca href=\"#\" aria-haspopup=\"dialog\" aria-controls=\"lengthChartModal\" onclick=\"document.getElementById('lengthChartModal').showModal(); return false;\"\u003e\n    Not Specified\n  \u003c\/a\u003e\n\u003c\/li\u003e\n\n\u003cdialog id=\"lengthChartModal\" class=\"length-modal\" onclick=\"if (event.target === this) this.close();\"\u003e\n\n  \u003cdiv class=\"length-card\"\u003e\n    \u003cbutton type=\"button\" class=\"length-close\" aria-label=\"Close length chart\" onclick=\"this.closest('dialog').close()\"\u003e×\u003c\/button\u003e\n\n    \u003cimg id=\"chart-img\" src=\"\/\/nextroundgolf.com\/cdn\/shop\/files\/mens-wedge-length-guide.png?v=1789413459\u0026amp;width=1640\" alt=\"Men's driver length chart\"\u003e\n  \u003c\/div\u003e\n\u003c\/dialog\u003e\n\n\u003cstyle\u003e\n  #lengthChartModal.length-modal {\n    position: fixed !important;\n    inset: 50% auto auto 50% !important;\n    transform: translate(-50%, -50%) !important;\n    width: auto !important;\n    height: auto !important;\n    max-width: none !important;\n    max-height: none !important;\n    margin: 0 !important;\n    padding: 0 !important;\n    border: 0 !important;\n    background: transparent !important;\n    overflow: visible !important;\n    z-index: 999999 !important;\n  }\n\n  #lengthChartModal::backdrop {\n    background: rgba(0, 0, 0, 0.65);\n  }\n\n  #lengthChartModal .length-card {\n    position: relative;\n    box-sizing: border-box;\n\n    \/*\n      Uses the largest possible 9:16 size while retaining\n      at least 12px of space around the modal.\n    *\/\n    width: min(\n      calc(100vw - 24px),\n      700px,\n      calc(56.25vh - 13.5px)\n    );\n    width: min(\n      calc(100vw - 24px),\n      700px,\n      calc(56.25dvh - 13.5px)\n    );\n    aspect-ratio: 9 \/ 16;\n\n    margin: 0;\n    padding: 0;\n    background: #fff;\n    border-radius: 12px;\n    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.35);\n    overflow: hidden;\n  }\n\n  #lengthChartModal .length-card img {\n    display: block;\n    width: 100% !important;\n    height: 100% !important;\n    max-width: none !important;\n    max-height: none !important;\n    margin: 0 !important;\n    padding: 0 !important;\n    border: 0;\n    object-fit: contain;\n  }\n\n  #lengthChartModal .length-close {\n    position: absolute;\n    top: 8px;\n    right: 8px;\n    z-index: 2;\n\n    display: grid;\n    place-items: center;\n    width: 36px;\n    height: 36px;\n    margin: 0;\n    padding: 0;\n\n    border: 2px solid rgba(0, 0, 0, 0.2);\n    border-radius: 999px;\n    background: #fff;\n    color: #1e3b33;\n    font-size: 24px;\n    line-height: 1;\n    cursor: pointer;\n    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);\n  }\n\n  #lengthChartModal .length-close:focus-visible {\n    outline: 3px solid #f36927;\n    outline-offset: 2px;\n  }\n\u003c\/style\u003e\n\n\n\n  \u003cli\u003e\n\u003cb\u003eBounce:\u003c\/b\u003e 10, 10°\u003c\/li\u003e\n  \u003cli\u003e\n\u003cb\u003eLie Angle Color:\u003c\/b\u003e Not Specified\u003c\/li\u003e\n  \u003cli\u003e\n\u003cb\u003eShaft Flex:\u003c\/b\u003e Wedge\u003c\/li\u003e\n  \u003cli\u003e\n\u003cb\u003eShaft Brand:\u003c\/b\u003e True Temper\u003c\/li\u003e\n  \u003cli\u003e\n\u003cb\u003eShaft Model:\u003c\/b\u003e Dynamic Gold Spinner\u003c\/li\u003e\n  \u003cli\u003e\n\u003cb\u003eShaft Material:\u003c\/b\u003e Steel\u003c\/li\u003e\n  \u003cli\u003e\n\u003cb\u003eShaft Weight:\u003c\/b\u003e 115g\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003cscript\u003e\n(function () {\n  \/\/ --- NEW LOGIC START ---\n  \/\/ 1. Capture the department variable\n  const department = \"Men\"; \n  \n  \/\/ 2. Identify the image element\n  const chartImg = document.getElementById('chart-img');\n  \n  \/\/ 3. Define the Women's Chart URL (from your eleventh link)\n  const womenChartUrl = \"https:\/\/cdn.shopify.com\/s\/files\/1\/0601\/0165\/6746\/files\/ladies-wedge-length-guide.png?v=1789413458\u0026width=1640\";\n\n  \/\/ 4. If the department is exactly \"Women\", swap the source\n  if (chartImg \u0026\u0026 department.trim() === 'Women') {\n    chartImg.src = womenChartUrl;\n    chartImg.alt = \"Women's Iron Standard Lengths\";\n  }\n  \/\/ --- NEW LOGIC END ---\n\n  const ul = document.getElementById('product-desc-list');\n  if (!ul) return;\n\n  function pruneAndLayout(){\n    \/\/ Remove empty\/unspecified rows instead of hiding them\n    const items = Array.from(ul.querySelectorAll('li'));\n    let kept = [];\n    items.forEach(li =\u003e {\n      const label = li.querySelector('b');\n      const labelText = label ? label.textContent : '';\n      const valueOnly = label\n        ? li.textContent.replace(labelText, '').trim()\n        : li.textContent.trim();\n\n      const emptyish =\n        valueOnly === '' ||\n        valueOnly === '°' ||\n        \/^(Not Specified|Not Specified°|Unspecified|Not Applicable|N\\\/A|NA)$\/i.test(valueOnly);\n\n      if (emptyish) li.remove();\n      else kept.push(li);\n    });\n\n    \/\/ Re-mark visible items as left\/right cells so borders line up\n    kept = Array.from(ul.querySelectorAll('li')); \/\/ in case we removed some\n    kept.forEach((li, i) =\u003e {\n      li.classList.toggle('_left',  i % 2 === 0);\n      li.classList.toggle('_right', i % 2 === 1);\n    });\n\n    \/\/ If odd count, add a blank cell so the last row closes cleanly\n    if (kept.length % 2 === 1) {\n      const filler = document.createElement('li');\n      filler.innerHTML = '';\n      ul.appendChild(filler);\n      filler.classList.add('_right');\n    }\n\n    \/\/ Show after we’re done so there’s no flash\n    ul.style.visibility = 'visible';\n  }\n\n  \/\/ Run immediately (before most theme scripts finish)\n  pruneAndLayout();\n\n  \/\/ Guard: if the theme reflows\/rewrites after our run, fix it again\n  const mo = new MutationObserver(() =\u003e pruneAndLayout());\n  mo.observe(ul, { childList: true, subtree: false, attributes: false });\n})();\n\u003c\/script\u003e\n\n\n\n\u003cstyle\u003e\n  \/*\n   * The theme duplicates the description for desktop tabs and\n   * mobile accordions. Hide empty copies and show every copy that\n   * actually contains a video iframe.\n   *\/\n  .nr-product-video {\n    display: none;\n    margin: 4px 0 32px;\n  }\n\n  .nr-product-video:has(iframe),\n  .nr-product-video.is-ready {\n    display: block !important;\n  }\n\n  .nr-product-video__title {\n    margin: 0 0 14px;\n    text-align: left;\n    color: inherit;\n    font-size: inherit;\n    font-weight: inherit;\n    line-height: inherit;\n  }\n\n  .nr-product-video__frame {\n    position: relative;\n    width: 100%;\n    max-width: 720px;\n    margin: 0;\n    overflow: hidden;\n    aspect-ratio: 16 \/ 9;\n    border-radius: 12px;\n    background: #000000;\n  }\n\n  .nr-product-video__frame iframe {\n    position: absolute !important;\n    inset: 0 !important;\n    display: block !important;\n    width: 100% !important;\n    height: 100% !important;\n    max-width: none !important;\n    margin: 0 !important;\n    padding: 0 !important;\n    border: 0 !important;\n  }\n\n  @media screen and (max-width: 749px) {\n    .nr-product-video {\n      margin: 4px 0 24px;\n    }\n\n    .nr-product-video__title {\n      margin-bottom: 12px;\n      font-size: inherit;\n    }\n\n    .nr-product-video__frame {\n      max-width: 100%;\n      border-radius: 10px;\n    }\n  }\n\u003c\/style\u003e\n\n\u003cdiv class=\"nr-desc\"\u003e\n  \u003cdiv class=\"section hide-if-empty\" data-val=\"The Cleveland RTX 6 ZipCore Black Satin Full Grind Wedge is a top-performing club that offers exceptional spin control and versatility on the course. Its ZipCore technology provides a larger, more forgiving sweet spot, while the Full Grind design allows for maximum shot-making creativity. This club is perfect for golfers looking to improve their short game and add precision to their shots around the green. With its sleek black satin finish, this wedge is sure to impress on the course.\"\u003e\n    The Cleveland RTX 6 ZipCore Black Satin Full Grind Wedge is a top-performing club that offers exceptional spin control and versatility on the course. Its ZipCore technology provides a larger, more forgiving sweet spot, while the Full Grind design allows for maximum shot-making creativity. This club is perfect for golfers looking to improve their short game and add precision to their shots around the green. With its sleek black satin finish, this wedge is sure to impress on the course.\u003cbr\u003e\u003cbr\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"section hide-if-empty\" data-val=\"This wedge shows significant face and groove wear, along with moderate to heavy sole wear. There are deep knicks and chips, indicating extensive use. It is suitable for practice or casual play.\"\u003e\n    This wedge shows significant face and groove wear, along with moderate to heavy sole wear. There are deep knicks and chips, indicating extensive use. It is suitable for practice or casual play.\u003cbr\u003e\u003cbr\u003e\n  \u003c\/div\u003e\n\n\u003cdiv class=\"nr-product-video\"\u003e\n    \u003cdiv class=\"nr-product-video__title\"\u003e\n      \u003cb\u003e\u003cu\u003eClub Model Overview\u003c\/u\u003e\u003c\/b\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"nr-product-video__frame\"\u003e\n      \n    \u003c\/div\u003e\n  \u003c\/div\u003e\n\n  \u003cstyle\u003e\n  .pured-shaft-section { display: none; }\n  .pured-shaft-section[data-pured^=\"Yes\" i] { display: block; }\n\u003c\/style\u003e\n\u003cdiv class=\"pured-shaft-section section\" data-pured=\"No\"\u003e\n  \u003cb\u003e\u003cu\u003ePured Shaft Upgrade\u003c\/u\u003e\u003c\/b\u003e\u003cbr\u003e\n  This shaft has been pured through computerized analysis to identify its most stable, consistent bending plane, optimizing performance, increasing distance, tightening dispersion, and reducing natural structural irregularities.\u003cbr\u003e\u003cbr\u003e\n\u003c\/div\u003e\n\n  \u003cdiv class=\"section hide-if-empty\" data-val=\"Our Next Round Golf club experts recommend the Cleveland RTX 6 ZipCore Black Satin Full Grind Wedge for golfers who want to improve their short game. This wedge features advanced technology that creates a larger sweet spot for more consistent shots. The full grind design allows for versatility in different types of shots around the green. Trust us, you won't regret adding this wedge to your bag.\"\u003e\n    \u003cb\u003e\u003cu\u003eOur Recommendation\u003c\/u\u003e\u003c\/b\u003e\u003cbr\u003e\n    Our Next Round Golf club experts recommend the Cleveland RTX 6 ZipCore Black Satin Full Grind Wedge for golfers who want to improve their short game. This wedge features advanced technology that creates a larger sweet spot for more consistent shots. The full grind design allows for versatility in different types of shots around the green. Trust us, you won't regret adding this wedge to your bag.\u003cbr\u003e\u003cbr\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"section hide-if-empty\" data-val=\"Cleveland Golf is best known for its tour-trusted wedges, delivering exceptional spin and control. Their full lineup - irons, woods, and more - focuses on forgiveness and consistency, making Cleveland a go-to brand for short-game lovers and improving players.\"\u003e\n    \u003cb\u003e\u003cu\u003eAbout Cleveland\u003c\/u\u003e\u003c\/b\u003e\u003cbr\u003e\n    Cleveland Golf is best known for its tour-trusted wedges, delivering exceptional spin and control. Their full lineup - irons, woods, and more - focuses on forgiveness and consistency, making Cleveland a go-to brand for short-game lovers and improving players.\u003cbr\u003e\u003cbr\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"section\"\u003e\n    \u003cb\u003e\u003cu\u003ePlaying It Forward\u003c\/u\u003e\u003c\/b\u003e\u003cbr\u003e\n    By choosing this premium used wedge set, you're not only investing in your own game but also contributing to Next Round Golf's mission of making golf more affordable and accessible for enthusiasts at every skill level. You’re joining a passionate community dedicated to sustainability, continuous improvement, and the shared joy of discovering new potential on the course.\u003cbr\u003e\u003cbr\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"section\"\u003e\n    \u003cb\u003e\u003cu\u003eNext Round Guarantee\u003c\/u\u003e\u003c\/b\u003e\u003cbr\u003e\n    With over 18,000 five star reviews and a 30 day money back guarantee, you can trust Next Round Golf for high-quality used Cleveland golf clubs.\u003cbr\u003e\u003cbr\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"section\"\u003eStock # S2026-09-18-806925\u003c\/div\u003e\n  \u003cdiv class=\"section\"\u003eMaster SKU # 1011366\u003c\/div\u003e\n\u003c\/div\u003e\n\n\u003cscript\u003e\n  (function () {\n    function normalizeYouTubeUrl(source) {\n      if (!source) {\n        return source;\n      }\n\n      try {\n        var url = new URL(source, window.location.href);\n        var hostname = url.hostname\n          .toLowerCase()\n          .replace(\/^www\\.\/, \"\");\n        var videoId = \"\";\n\n        if (hostname === \"youtu.be\") {\n          videoId =\n            url.pathname.split(\"\/\").filter(Boolean)[0] || \"\";\n        } else if (\n          hostname === \"youtube.com\" ||\n          hostname === \"m.youtube.com\" ||\n          hostname === \"music.youtube.com\" ||\n          hostname === \"youtube-nocookie.com\"\n        ) {\n          if (url.pathname.indexOf(\"\/embed\/\") === 0) {\n            videoId =\n              url.pathname.replace(\"\/embed\/\", \"\").split(\"\/\")[0];\n          } else if (url.pathname === \"\/watch\") {\n            videoId = url.searchParams.get(\"v\") || \"\";\n          } else if (url.pathname.indexOf(\"\/shorts\/\") === 0) {\n            videoId =\n              url.pathname.replace(\"\/shorts\/\", \"\").split(\"\/\")[0];\n          } else if (url.pathname.indexOf(\"\/live\/\") === 0) {\n            videoId =\n              url.pathname.replace(\"\/live\/\", \"\").split(\"\/\")[0];\n          }\n        }\n\n        if (\n          !videoId ||\n          !\/^[A-Za-z0-9_-]{6,}$\/.test(videoId)\n        ) {\n          return source;\n        }\n\n        var parameters = new URLSearchParams(url.search);\n        parameters.delete(\"v\");\n        parameters.set(\"playsinline\", \"1\");\n\n        var queryString = parameters.toString();\n\n        return (\n          \"https:\/\/www.youtube.com\/embed\/\" +\n          encodeURIComponent(videoId) +\n          (queryString ? \"?\" + queryString : \"\")\n        );\n      } catch (error) {\n        return source;\n      }\n    }\n\n    function prepareVideoBlock(videoBlock) {\n      if (\n        !videoBlock ||\n        videoBlock.getAttribute(\"data-nr-video-ready\") === \"true\"\n      ) {\n        return;\n      }\n\n      var videoFrame = videoBlock.querySelector(\n        \".nr-product-video__frame\"\n      );\n\n      if (!videoFrame) {\n        return;\n      }\n\n      var iframe = videoFrame.querySelector(\"iframe\");\n\n      \/*\n       * Empty copies remain hidden through CSS. Do not remove them,\n       * because the theme can create and populate copies later.\n       *\/\n      if (!iframe) {\n        return;\n      }\n\n      var originalSource = iframe.getAttribute(\"src\") || \"\";\n      var normalizedSource = normalizeYouTubeUrl(originalSource);\n\n      if (\n        normalizedSource \u0026\u0026\n        normalizedSource !== originalSource\n      ) {\n        iframe.setAttribute(\"src\", normalizedSource);\n      }\n\n      iframe.removeAttribute(\"width\");\n      iframe.removeAttribute(\"height\");\n      iframe.removeAttribute(\"frameborder\");\n\n      iframe.setAttribute(\"loading\", \"lazy\");\n      iframe.setAttribute(\"allowfullscreen\", \"\");\n      iframe.setAttribute(\n        \"allow\",\n        \"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\"\n      );\n      iframe.setAttribute(\n        \"referrerpolicy\",\n        \"strict-origin-when-cross-origin\"\n      );\n\n      if (\n        !iframe.getAttribute(\"title\") ||\n        iframe.getAttribute(\"title\") === \"YouTube video player\"\n      ) {\n        iframe.setAttribute(\n          \"title\",\n          \"Golf club model overview video\"\n        );\n      }\n\n      videoBlock.setAttribute(\n        \"data-nr-video-ready\",\n        \"true\"\n      );\n      videoBlock.classList.add(\"is-ready\");\n    }\n\n    function initializeProductVideos(root) {\n      if (!root) {\n        return;\n      }\n\n      if (\n        root.nodeType === 1 \u0026\u0026\n        root.matches \u0026\u0026\n        root.matches(\".nr-product-video\")\n      ) {\n        prepareVideoBlock(root);\n      }\n\n      if (!root.querySelectorAll) {\n        return;\n      }\n\n      var videoBlocks = root.querySelectorAll(\n        \".nr-product-video\"\n      );\n\n      Array.prototype.forEach.call(\n        videoBlocks,\n        function (videoBlock) {\n          prepareVideoBlock(videoBlock);\n        }\n      );\n    }\n\n    if (window.nrInitializeProductVideos) {\n      window.nrInitializeProductVideos(document);\n      return;\n    }\n\n    window.nrInitializeProductVideos =\n      initializeProductVideos;\n\n    initializeProductVideos(document);\n\n    if (document.readyState === \"loading\") {\n      document.addEventListener(\n        \"DOMContentLoaded\",\n        function () {\n          initializeProductVideos(document);\n        },\n        { once: true }\n      );\n    }\n\n    \/*\n     * Process description copies created by the theme after the\n     * original Sellbrite description has rendered.\n     *\/\n    var videoObserver = new MutationObserver(\n      function (mutations) {\n        mutations.forEach(function (mutation) {\n          Array.prototype.forEach.call(\n            mutation.addedNodes,\n            function (addedNode) {\n              initializeProductVideos(addedNode);\n            }\n          );\n        });\n      }\n    );\n\n    if (document.documentElement) {\n      videoObserver.observe(document.documentElement, {\n        childList: true,\n        subtree: true\n      });\n    }\n\n    window.setTimeout(function () {\n      initializeProductVideos(document);\n      videoObserver.disconnect();\n    }, 10000);\n  })();\n\u003c\/script\u003e","brand":"Cleveland","offers":[{"title":"Default Title","offer_id":54038071607572,"sku":"S2026-09-18-806925","price":157.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0601\/0165\/6746\/files\/780ce1fe-289a-5c01-b597-cf55c3ddff57.jpg?v=1789768334","url":"https:\/\/nextroundgolf.com\/products\/used-cleveland-rtx-6-zipcore-black-satin-wedge-set-right-handed-54-58-wedge-flex-1","provider":"Next Round","version":"1.0","type":"link"}