{"product_id":"classic-rope-cap-1","title":"Classic rope cap","description":"\u003cp\u003eThis rope cap features lightweight polyester for all-day comfort, a classic braided rope detail on the bill, and a Stay-Dri sweatband for moisture control. Wear it to a game, the marina, or just to complete your everyday look.\u003cbr\u003e\u003cbr\u003e\u003ca href=\"https:\/\/niceputt.com\/blogs\/information-1\/dtflex\" target=\"_blank\" title=\"DTFlex Information\" rel=\"noopener\"\u003eDTFlex Information\u003c\/a\u003e\u003ca title=\"DTFlex Information\" href=\"https:\/\/niceputt.com\/blogs\/information\/dtflex-information\"\u003e\u003c\/a\u003e\u003c\/p\u003e\n\u003cp\u003e• 100% polyester\u003cbr\u003e• Stay-Dri sweatband\u003cbr\u003e• Structured, five-panel, mid-profile construction\u003cbr\u003e• Curved bill\u003cbr\u003e• Braided rope detailing on the bill\u003cbr\u003e• Adjustable snapback closure\u003cbr\u003e• One size fits most\u003cbr\u003e• Blank product sourced from China\n  \u003c\/p\u003e\u003cdiv class=\"product-popup-trigger-wrapper\" style=\"margin: 15px 0;\"\u003e\n    \u003ca href=\"javascript:void(0)\" id=\"openSizeGuide\" style=\"display: flex; align-items: center; gap: 8px; color: #111; font-weight: 600; text-decoration: underline; font-size: 1.4rem; cursor: pointer;\"\u003e\n        \u003csvg width=\"18\" height=\"18\" viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M7 7h10M7 12h10M7 17h10\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\n        Size guide\n    \u003c\/a\u003e\n\u003c\/div\u003e\n\n\u003cdiv id=\"sizeGuideModal\" class=\"sg-modal-overlay\"\u003e\n    \u003cdiv class=\"sg-modal-content\"\u003e\n        \u003cbutton class=\"sg-close-btn\" id=\"closeSizeGuide\"\u003e×\u003c\/button\u003e\n        \u003cdiv class=\"sg-instructions\"\u003e\n            \u003ch2 style=\"font-size: 18px; margin-bottom: 10px; color: #111;\"\u003eProduct measurements\u003c\/h2\u003e\n            \u003cp style=\"font-size: 14px; line-height: 1.6; color: #444; margin: 0;\"\u003e\n                Measure your head circumference with a non-stretchable measuring tape. Place the end of your tape on your forehead and wrap the rest around the back of your head, keeping it 1″ (2.5 cm) above your ears. Pinch the spot where the tape meets the other end, lift the loop over your head, and note the measurement. Be as careful as possible to get the most precise measurement.\n            \u003c\/p\u003e\n        \u003c\/div\u003e\n        \u003cdiv class=\"sg-image-container\"\u003e\n            \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0710\/0855\/1078\/files\/Hat-Size-Guide.png?v=1775143889\" alt=\"Size Guide\" style=\"max-width: 200px; height: auto;\"\u003e\n        \u003c\/div\u003e\n\n        \u003ch2 style=\"margin: 0 0 5px 0; text-align: center;\"\u003eSize guide\u003c\/h2\u003e\n      \n        \u003cdiv class=\"sg-unit-toggle\" style=\"margin-left: auto; margin-right: auto;\"\u003e\n            \u003cbutton class=\"sg-unit-btn active\" data-unit=\"inches\"\u003eInches\u003c\/button\u003e\n            \u003cbutton class=\"sg-unit-btn\" data-unit=\"cm\"\u003ecm\u003c\/button\u003e\n        \u003c\/div\u003e\n\n        \u003cdiv class=\"sg-table-container\"\u003e\n            \u003ctable id=\"sizeTable\"\u003e\n                \u003cthead\u003e\n                    \u003ctr\u003e\n\u003cth\u003eSize label\u003c\/th\u003e\n\u003cth\u003eOne size\u003c\/th\u003e\n\u003c\/tr\u003e\n                \u003c\/thead\u003e\n                \u003ctbody\u003e\n                    \u003ctr\u003e\n\u003ctd\u003eA: Circumference\u003c\/td\u003e\n\u003ctd class=\"sg-measure\" data-inches=\"22 - 24 1\/4\" data-cm=\"56 - 61.6\"\u003e22 - 24 1\/4\u003c\/td\u003e\n\u003c\/tr\u003e\n                    \u003ctr\u003e\n\u003ctd\u003eB: Crown height\u003c\/td\u003e\n\u003ctd class=\"sg-measure\" data-inches=\"4 1\/2\" data-cm=\"11.4\"\u003e4 1\/2\u003c\/td\u003e\n\u003c\/tr\u003e\n                    \u003ctr\u003e\n\u003ctd\u003eC: Bill length\u003c\/td\u003e\n\u003ctd class=\"sg-measure\" data-inches=\"2 5\/8\" data-cm=\"6.6\"\u003e2 5\/8\u003c\/td\u003e\n\u003c\/tr\u003e\n                   \u003ctr\u003e\n\u003ctd\u003eD: Bill width\u003c\/td\u003e\n\u003ctd class=\"sg-measure\" data-inches=\"7\" data-cm=\"17.8\"\u003e7\u003c\/td\u003e\n\u003c\/tr\u003e\n                \u003c\/tbody\u003e\n            \u003c\/table\u003e\n        \u003c\/div\u003e\n    \u003c\/div\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n    .sg-modal-overlay {\n        display: none; position: fixed; z-index: 99999; left: 0; top: 0; width: 100%; height: 100%;\n        background-color: rgba(0,0,0,0.6); justify-content: center; align-items: center;\n    }\n    .sg-modal-content {\n        background: white; padding: 30px; border-radius: 4px; width: 90%; max-width: 450px;\n        position: relative; color: #111; max-height: 90vh; overflow-y: auto;\n    }\n    .sg-image-container {\n        text-align: center; margin-bottom: 15px;\n    }\n    .sg-close-btn { position: absolute; right: 15px; top: 10px; font-size: 30px; border: none; background: none; cursor: pointer; color: #000; }\n    .sg-unit-toggle { display: flex; border: 1px solid #ddd; border-radius: 4px; width: fit-content; margin-bottom: 20px; }\n    .sg-unit-btn { padding: 8px 16px; border: none; background: white; cursor: pointer; font-size: 12px; }\n    .sg-unit-btn.active { background: #000; color: #fff; }\n    .sg-table-container table { width: 100%; border-collapse: collapse; margin-top: 10px; }\n    .sg-table-container th { text-align: left; font-size: 11px; color: #888; text-transform: uppercase; border-bottom: 1px solid #eee; padding: 10px; }\n    .sg-table-container td { padding: 12px 10px; border-bottom: 1px solid #eee; font-size: 14px; }\n\u003c\/style\u003e\n\n\u003cscript\u003e\n    document.addEventListener('DOMContentLoaded', function() {\n        const modal = document.getElementById(\"sizeGuideModal\");\n        const openBtn = document.getElementById(\"openSizeGuide\");\n        const closeBtn = document.getElementById(\"closeSizeGuide\");\n        const unitBtns = document.querySelectorAll(\".sg-unit-btn\");\n        const measures = document.querySelectorAll(\".sg-measure\");\n\n        if(openBtn) {\n            openBtn.onclick = () =\u003e modal.style.display = \"flex\";\n            closeBtn.onclick = () =\u003e modal.style.display = \"none\";\n            window.onclick = (e) =\u003e { if (e.target == modal) modal.style.display = \"none\"; }\n            \n            unitBtns.forEach(btn =\u003e {\n                btn.onclick = () =\u003e {\n                    unitBtns.forEach(b =\u003e b.classList.remove(\"active\"));\n                    btn.classList.add(\"active\");\n                    const unit = btn.getAttribute(\"data-unit\");\n                    measures.forEach(m =\u003e m.innerText = m.getAttribute(\"data-\" + unit));\n                };\n            });\n        }\n    });\n\u003c\/script\u003e","brand":"Nice Putt","offers":[{"title":"Black\/White","offer_id":56318119018662,"sku":"4850032_22229","price":26.0,"currency_code":"USD","in_stock":true},{"title":"Light Blue\/White","offer_id":56318119051430,"sku":"4850032_22230","price":26.0,"currency_code":"USD","in_stock":true},{"title":"White\/Black","offer_id":56318119084198,"sku":"4850032_22231","price":26.0,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0710\/0855\/1078\/files\/classic-rope-cap-black-white-front-69c18d570fb4f.jpg?v=1774292326","url":"https:\/\/niceputt.com\/products\/classic-rope-cap-1","provider":"Nice Putt","version":"1.0","type":"link"}