{"title":"Aiming Fluid Golf","description":"","products":[{"product_id":"light-duty-magnetic-towel-landing-pad-system","title":"Light Duty Magnetic Towel + Landing Pad System","description":"\u003cstyle\u003e\n\/* =========================\n   AF LUXURY PAGE STYLES (Scoped \u0026 Premium)\n   ========================= *\/\n.af-luxury-page {\n  background: #050509;\n  color: #f3f4f6;\n  padding: 60px 20px;\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  line-height: 1.6;\n}\n.af-luxury-page * { box-sizing: border-box; }\n\n.af-container {\n  max-width: 1000px;\n  margin: 0 auto;\n}\n\n\/* TYPOGRAPHY *\/\n.af-eyebrow {\n  color: #34d399; \/* Brand Accent *\/\n  letter-spacing: 0.15em;\n  text-transform: uppercase;\n  font-weight: 700;\n  font-size: 0.75rem;\n  margin: 0 0 12px;\n  text-align: center;\n}\n\n.af-hero h1 {\n  margin: 0 0 16px;\n  font-weight: 800;\n  line-height: 1.1;\n  font-size: clamp(2.2rem, 5vw, 3.2rem);\n  letter-spacing: -0.02em;\n  color: #fff;\n  text-align: center;\n}\n\n.af-lead {\n  font-size: 1.25rem;\n  color: #fff;\n  font-weight: 700;\n  text-align: center;\n  margin-bottom: 24px;\n}\n\n.af-lede {\n  margin: 0 auto 40px;\n  max-width: 700px;\n  color: #9ca3af;\n  font-size: 1.1rem;\n  text-align: center;\n  line-height: 1.6;\n}\n\n\/* CONSOLE CARDS (Glassmorphism) *\/\n.af-card {\n  background: #111827;\n  border: 1px solid rgba(255,255,255,0.12);\n  border-radius: 24px;\n  padding: 40px;\n  margin-bottom: 24px;\n  box-shadow: 0 20px 40px -10px rgba(0,0,0,0.5);\n  position: relative;\n  overflow: hidden;\n}\n\n.af-h2 {\n  margin: 0 0 20px;\n  font-size: 1.75rem;\n  line-height: 1.2;\n  font-weight: 700;\n  color: #fff;\n}\n\n.af-muted {\n  color: #d1d5db;\n  font-size: 1.05rem;\n  margin-bottom: 1.5rem;\n}\n\n\/* EXECUTIVE SUMMARY (Highlight Box) *\/\n.af-exec-summary {\n  background: rgba(52, 211, 153, 0.1);\n  border: 1px solid rgba(52, 211, 153, 0.25);\n  border-radius: 16px;\n  padding: 24px;\n  margin-bottom: 30px;\n  text-align: left;\n}\n.af-exec-summary strong {\n  display: block;\n  font-size: 0.75rem;\n  letter-spacing: 0.1em;\n  text-transform: uppercase;\n  color: #34d399;\n  font-weight: 800;\n  margin-bottom: 8px;\n}\n.af-exec-summary p {\n  margin: 0;\n  color: #d1d5db;\n  font-size: 1rem;\n  line-height: 1.6;\n}\n\n\/* LISTS \u0026 STEPS *\/\n.af-list, .af-steps, ul {\n  margin: 0;\n  padding-left: 1.2rem;\n  color: #d1d5db;\n}\n.af-list li, .af-steps li, ul li {\n  margin: 0.8rem 0;\n}\n.af-list li strong, ul li strong {\n  color: #fff;\n}\n\n\/* CHIPS \u0026 CALLOUTS *\/\n.af-chip-row {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 8px;\n  margin-top: 24px;\n}\n.af-chip {\n  background: rgba(255,255,255,0.08);\n  border: 1px solid rgba(255,255,255,0.15);\n  color: #e5e7eb;\n  padding: 6px 14px;\n  border-radius: 999px;\n  font-size: 0.85rem;\n  font-weight: 500;\n}\n\n\/* FAQ (Accordion Style) *\/\n.af-faq {\n  border-top: 1px solid rgba(255,255,255,0.1);\n  padding: 16px 0;\n}\n.af-faq summary {\n  cursor: pointer;\n  font-weight: 700;\n  color: #fff;\n  font-size: 1.1rem;\n  list-style: none;\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n}\n.af-faq summary::-webkit-details-marker { display: none; }\n.af-faq summary::after {\n  content: \"+\";\n  font-weight: 400;\n  color: #9ca3af;\n  font-size: 1.5rem;\n}\ndetails[open] summary::after { content: \"−\"; }\n.af-faq div {\n  margin-top: 12px;\n  color: #d1d5db;\n  line-height: 1.6;\n}\n\n\/* BUTTONS (Apple Style) *\/\n.af-btn-wrap {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 12px;\n  margin-top: 24px;\n  justify-content: center;\n}\n.af-btn {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  padding: 12px 24px;\n  border-radius: 999px;\n  font-weight: 700;\n  text-decoration: none !important;\n  font-size: 0.95rem;\n  transition: all 0.2s ease;\n  cursor: pointer;\n  border: none;\n  font-family: inherit;\n}\n.af-btn:hover { transform: translateY(-2px); }\n\n.af-btn-primary {\n  background: #34d399;\n  color: #064e3b !important;\n  box-shadow: 0 4px 12px rgba(52, 211, 153, 0.3);\n}\n.af-btn-primary:hover {\n  background: #10b981;\n  box-shadow: 0 8px 20px rgba(52, 211, 153, 0.4);\n}\n\n.af-btn-secondary {\n  background: rgba(255,255,255,0.1);\n  color: #fff !important;\n  border: 1px solid rgba(255,255,255,0.1);\n}\n.af-btn-secondary:hover {\n  background: rgba(255,255,255,0.2);\n}\n\n\/* GRIDS for Who\/Not For *\/\n.af-grid-2 {\n  display: grid;\n  grid-template-columns: 1fr;\n  gap: 20px;\n}\n@media (min-width: 768px) {\n  .af-grid-2 { grid-template-columns: 1fr 1fr; }\n}\n\u003c\/style\u003e\n\u003cdiv class=\"af-luxury-page\"\u003e\n\u003cdiv class=\"af-container\"\u003e\n\u003cheader class=\"af-hero\"\u003e\n\u003cp class=\"af-eyebrow\"\u003eOn-Course Systems • Universal Docking • Fast Grab-and-Go\u003c\/p\u003e\n\u003ch1\u003eLight Duty Magnetic Towel + Landing Pad Bundle\u003c\/h1\u003e\n\u003cdiv class=\"af-exec-summary\"\u003e\n\u003cstrong\u003eTest Verdict\u003c\/strong\u003e\n\u003cp\u003eThis system is for golfers who want a towel they actually use, not just own. The \u003cstrong\u003eLight Duty Magnetic Towel\u003c\/strong\u003e handles the cleaning workflow with a \u003cstrong\u003escrub pad + wash pocket\u003c\/strong\u003e, while the \u003cstrong\u003eMagnetic Landing Pad\u003c\/strong\u003e creates a fixed landing zone that reduces repetitive friction. \u003cbr\u003e\u003cbr\u003e\u003cstrong\u003eVerdict:\u003c\/strong\u003e Choose it if you want consistent docking on any setup; skip it if you prefer a dangling clip towel.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cp class=\"af-lead\"\u003eYour towel isn’t a cleaning tool if you have to hunt for it.\u003c\/p\u003e\n\u003cp class=\"af-lede\"\u003eMost towel setups fail because the towel isn’t where your hand expects it, or the wet zone spreads uncontrollably. This bundle fixes access first (so cleaning happens), then controls the workflow (so cleaning stays useful).\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003ca class=\"af-btn af-btn-secondary\" href=\"#choose\"\u003eChoose Your Setup\u003c\/a\u003e \u003ca class=\"af-btn af-btn-secondary\" href=\"\/pages\/our-golf-gear-testing-design-standards\"\u003eTesting Standards\u003c\/a\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003c\/header\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eWhat problem this solves\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003e\"I'll clean it next shot\" is golf's most common lie, and it gets stronger when the towel is buried, dragging, or missing.\u003c\/p\u003e\n\u003cp class=\"af-muted\"\u003eThe Light Duty system solves two issues: \u003cbr\u003e\u003cstrong\u003e1. Access Friction:\u003c\/strong\u003e The landing pad gives the towel a consistent home, so you stop hunting. \u003cbr\u003e\u003cstrong\u003e2. Smear Management:\u003c\/strong\u003e The towel's scrub\/wash\/dry zones prevent you from just smearing dirt around.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eHow it works\u003c\/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003eStep 1 — Create a Landing Zone:\u003c\/strong\u003e Attach the \u003cstrong\u003eMagnetic Landing Pad\u003c\/strong\u003e to your setup for a consistent docking point.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eStep 2 — Dock the Towel:\u003c\/strong\u003e Towel goes back to the pad so it stays accessible and off the ground.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eStep 3 — Clean Workflow:\u003c\/strong\u003e \u003cstrong\u003eScrub\u003c\/strong\u003e compacted grit, \u003cstrong\u003eWash\u003c\/strong\u003e with the pocket, \u003cstrong\u003eDry\u003c\/strong\u003e with the dry area.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eStep 4 — Repeat:\u003c\/strong\u003e Grab → Clean → Re-dock. Friction removed.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cdiv aria-hidden=\"true\" class=\"af-chip-row\"\u003e\n\u003cspan class=\"af-chip\"\u003eUniversal Docking\u003c\/span\u003e \u003cspan class=\"af-chip\"\u003eScrub\/Wash\/Dry\u003c\/span\u003e \u003cspan class=\"af-chip\"\u003eFast Access\u003c\/span\u003e \u003cspan class=\"af-chip\"\u003eConsistent Home\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-grid-2\"\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eWho it’s for\u003c\/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003eRoutine Builders:\u003c\/strong\u003e Golfers who want a towel that returns to the same spot automatically.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eVersatile Players:\u003c\/strong\u003e Works perfectly whether you ride, walk, or push cart.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eFrequent Cleaners:\u003c\/strong\u003e Best for those who clean a little, often (quick wipes).\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eWho it’s not for\u003c\/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003eNo-Clean Golfers:\u003c\/strong\u003e If you never clean clubs during a round, this is overkill.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eClip Lovers:\u003c\/strong\u003e If you prefer a towel swinging around on a clip, stick with that.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection id=\"choose\" class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eChoose your setup\u003c\/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003eChoose the Bundle\u003c\/strong\u003e if your towel keeps \"ending up somewhere else\" and you want a fixed home.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eChoose Towel Only\u003c\/strong\u003e if you already have a reliable docking spot you love.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eChoose Landing Pad Only\u003c\/strong\u003e if your main issue is scattered gear and you need a consistent landing zone.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003ca class=\"af-btn af-btn-secondary\" href=\"\/collections\/magnetic-towels\"\u003eShop Towels\u003c\/a\u003e \u003ca class=\"af-btn af-btn-secondary\" href=\"\/collections\/magnetic-landing-pads\"\u003eShop Landing Pads\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eUse it like this\u003c\/h2\u003e\n\u003col class=\"af-steps\"\u003e\n\u003cli\u003e\n\u003cstrong\u003eHole 1:\u003c\/strong\u003e Mount the landing pad where your hand naturally reaches.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eMid-Round:\u003c\/strong\u003e Grab towel, quick scrub\/wash\/dry after shots.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eRe-Dock:\u003c\/strong\u003e Towel goes back to the pad immediately.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003ePost-Round:\u003c\/strong\u003e Rinse wash pocket, air dry.\u003c\/li\u003e\n\u003c\/ol\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eProof and trust\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eWe build around repeatable routines and failure modes: access problems, saturation spread, and inconsistent placement. This system is designed to remove the friction that stops you from keeping your gear clean.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003ca class=\"af-btn af-btn-secondary\" href=\"\/pages\/our-golf-gear-testing-design-standards\"\u003eRead Testing Standards\u003c\/a\u003e \u003ca class=\"af-btn af-btn-secondary\" href=\"\/pages\/golf-bag-essentials-the-ultimate-magnetic-accessory-system-guide\"\u003eAccessory System Guide\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eSystem FAQ\u003c\/h2\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eWill the Magnetic Landing Pad work with my bag?\u003c\/summary\u003e\n\u003cdiv\u003eYes. It’s built for universal compatibility with stand bags, cart bags, push carts, and riding carts.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eWhy need a landing pad if the towel has a magnet?\u003c\/summary\u003e\n\u003cdiv\u003eThe magnet allows attachment; the pad creates a consistent docking point. This stops you from hunting or fumbling mid-round.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eWhat is the scrub pad + wash pocket workflow?\u003c\/summary\u003e\n\u003cdiv\u003eScrub pad breaks up grit. Wash pocket holds moisture for cleaning. Dry area finishes the job without smearing.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eIs this better for riders or walkers?\u003c\/summary\u003e\n\u003cdiv\u003eBoth. Riders get a stable zone without sliding. Walkers get fast access without clips or dragging towels.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eHow do I prevent a soggy towel?\u003c\/summary\u003e\n\u003cdiv\u003eKeep wet cleaning in the wash pocket only. Keep the rest dry. Rinse after the round and air dry.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eIs this a good gift?\u003c\/summary\u003e\n\u003cdiv\u003eYes. It's practical, size-neutral, and solves a universal problem (accessible cleaning) immediately.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003c\/section\u003e\n\u003csection id=\"buy\" style=\"text-align: center;\" class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eStop hunting your towel mid-round\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eIf you want a towel that stays where your hand expects it and a routine you’ll actually follow, this is the cleanest setup.\u003c\/p\u003e\n\u003cdiv style=\"justify-content: center;\" class=\"af-btn-wrap\"\u003e\n\u003cbr\u003e\u003ca class=\"af-btn af-btn-secondary\" href=\"\/collections\/magnetic-towels\"\u003eCompare Towels\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003c!-- AUTHORITY BRIDGE: Why Magnetic Towels Fall Off --\u003e\n\u003csection style=\"margin-top: 40px;\" class=\"af-card\"\u003e\n\u003ch3 style=\"margin-top: 0; color: #fff;\"\u003eWhy Magnetic Towels Fall Off (It’s Physics)\u003c\/h3\u003e\n\u003cp style=\"color: var(--text-muted); max-width: 700px;\"\u003eIf your magnetic golf towel keeps dropping off the cart rail, it’s not bad luck. Round rails create a geometry mismatch, vibration creates shear force, and aluminum frames kill magnetic hold. See the full breakdown.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\u003ca class=\"af-btn af-btn-secondary\" href=\"\/pages\/magnetic-golf-towel-that-doesnt-fall-off\"\u003e Read the Full Explanation \u003c\/a\u003e\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003csection class=\"af-standards-citation\" style=\"margin: 2.5rem 0 0 0; padding: 1.75rem 1.75rem; background: #0b1220; border: 1px solid rgba(255,255,255,.12); border-radius: 16px;\"\u003e\n\u003ch3 style=\"margin: 0 0 .75rem 0; font-size: 1.15rem; font-weight: 750; color: #ffffff;\"\u003eEvaluated Against Published Testing Standards\u003c\/h3\u003e\n\u003cp style=\"margin: 0 0 1rem 0; font-size: 1.02rem; color: #d1d5db; line-height: 1.6;\"\u003eThis product is evaluated using Aiming Fluid Golf’s published magnetic gear testing framework. The framework defines how magnetic towels and docking systems are assessed across retention, cleaning effectiveness, usability, durability, and compatibility under real on-course conditions.\u003c\/p\u003e\n\u003cp style=\"margin: 0 0 1.25rem 0; font-size: .95rem; color: #9ca3af;\"\u003eThe standards page documents evaluation criteria, common failure modes, and the scorecard logic used to assess magnetic golf gear independent of product marketing claims.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\u003ca href=\"\/pages\/our-golf-gear-testing-design-standards\" class=\"af-btn af-btn-secondary\"\u003e View Testing \u0026amp; Design Standards \u003c\/a\u003e\u003c\/div\u003e\n\u003c\/section\u003e\n\u003cp\u003e \u003c\/p\u003e","brand":"Aiming Fluid Golf","offers":[{"title":"Navy","offer_id":46826885316802,"sku":"AFMTLP-BL","price":39.69,"currency_code":"USD","in_stock":true},{"title":"Black","offer_id":46826885349570,"sku":"AFMTLP-B","price":39.69,"currency_code":"USD","in_stock":true},{"title":"Light Gray","offer_id":46826885382338,"sku":"AFMTLP-G","price":39.69,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0720\/6400\/8386\/files\/Gemini_Generated_Image_antll4antll4antl_2.jpg?v=1771618053"},{"product_id":"premium-metal-ball-marker","title":"Premium Metal Ball Marker","description":"\u003cstyle\u003e\n\/* =========================\n   AF LUXURY PAGE STYLES (Scoped \u0026 Premium)\n   ========================= *\/\n.af-luxury-page {\n  background: #050509;\n  color: #f3f4f6;\n  padding: 60px 20px;\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  line-height: 1.6;\n}\n.af-luxury-page * { box-sizing: border-box; }\n\n.af-container {\n  max-width: 1000px;\n  margin: 0 auto;\n}\n\n\/* TYPOGRAPHY *\/\n.af-eyebrow {\n  color: #34d399; \/* Brand Accent *\/\n  letter-spacing: 0.15em;\n  text-transform: uppercase;\n  font-weight: 700;\n  font-size: 0.75rem;\n  margin: 0 0 12px;\n  text-align: center;\n}\n\n.af-hero h1 {\n  margin: 0 0 16px;\n  font-weight: 800;\n  line-height: 1.1;\n  font-size: clamp(2.2rem, 5vw, 3.2rem);\n  letter-spacing: -0.02em;\n  color: #fff;\n  text-align: center;\n}\n\n.af-lead {\n  font-size: 1.25rem;\n  color: #fff;\n  font-weight: 700;\n  text-align: center;\n  margin-bottom: 24px;\n}\n\n.af-lede {\n  margin: 0 auto 40px;\n  max-width: 700px;\n  color: #9ca3af;\n  font-size: 1.1rem;\n  text-align: center;\n  line-height: 1.6;\n}\n\n\/* CONSOLE CARDS (Glassmorphism) *\/\n.af-card {\n  background: #111827;\n  border: 1px solid rgba(255,255,255,0.12);\n  border-radius: 24px;\n  padding: 40px;\n  margin-bottom: 24px;\n  box-shadow: 0 20px 40px -10px rgba(0,0,0,0.5);\n  position: relative;\n  overflow: hidden;\n}\n\n.af-h2 {\n  margin: 0 0 20px;\n  font-size: 1.75rem;\n  line-height: 1.2;\n  font-weight: 700;\n  color: #fff;\n}\n\n.af-muted {\n  color: #d1d5db;\n  font-size: 1.05rem;\n  margin-bottom: 1.5rem;\n}\n\n\/* EXECUTIVE SUMMARY (Highlight Box) *\/\n.af-exec-summary {\n  background: rgba(52, 211, 153, 0.1);\n  border: 1px solid rgba(52, 211, 153, 0.25);\n  border-radius: 16px;\n  padding: 24px;\n  margin-bottom: 30px;\n  text-align: left;\n}\n.af-exec-summary strong {\n  display: block;\n  font-size: 0.75rem;\n  letter-spacing: 0.1em;\n  text-transform: uppercase;\n  color: #34d399;\n  font-weight: 800;\n  margin-bottom: 8px;\n}\n.af-exec-summary p {\n  margin: 0;\n  color: #d1d5db;\n  font-size: 1rem;\n  line-height: 1.6;\n}\n\n\/* LISTS \u0026 STEPS *\/\n.af-list, .af-steps, ul {\n  margin: 0;\n  padding-left: 1.2rem;\n  color: #d1d5db;\n}\n.af-list li, .af-steps li, ul li {\n  margin: 0.8rem 0;\n}\n.af-list li strong, ul li strong {\n  color: #fff;\n}\n\n\/* CHIPS \u0026 CALLOUTS *\/\n.af-chip-row {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 8px;\n  margin-top: 24px;\n}\n.af-chip {\n  background: rgba(255,255,255,0.08);\n  border: 1px solid rgba(255,255,255,0.15);\n  color: #e5e7eb;\n  padding: 6px 14px;\n  border-radius: 999px;\n  font-size: 0.85rem;\n  font-weight: 500;\n}\n\n\/* FAQ (Accordion Style) *\/\n.af-faq {\n  border-top: 1px solid rgba(255,255,255,0.1);\n  padding: 16px 0;\n}\n.af-faq summary {\n  cursor: pointer;\n  font-weight: 700;\n  color: #fff;\n  font-size: 1.1rem;\n  list-style: none;\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n}\n.af-faq summary::-webkit-details-marker { display: none; }\n.af-faq summary::after {\n  content: \"+\";\n  font-weight: 400;\n  color: #9ca3af;\n  font-size: 1.5rem;\n}\ndetails[open] summary::after { content: \"−\"; }\n.af-faq div {\n  margin-top: 12px;\n  color: #d1d5db;\n  line-height: 1.6;\n}\n\n\/* BUTTONS (Apple Style) *\/\n.af-btn-wrap {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 12px;\n  margin-top: 24px;\n  justify-content: center;\n}\n.af-btn {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  padding: 12px 24px;\n  border-radius: 999px;\n  font-weight: 700;\n  text-decoration: none !important;\n  font-size: 0.95rem;\n  transition: all 0.2s ease;\n  cursor: pointer;\n  border: none;\n  font-family: inherit;\n}\n.af-btn:hover { transform: translateY(-2px); }\n\n.af-btn-primary {\n  background: #34d399;\n  color: #064e3b !important;\n  box-shadow: 0 4px 12px rgba(52, 211, 153, 0.3);\n}\n.af-btn-primary:hover {\n  background: #10b981;\n  box-shadow: 0 8px 20px rgba(52, 211, 153, 0.4);\n}\n\n.af-btn-secondary {\n  background: rgba(255,255,255,0.1);\n  color: #fff !important;\n  border: 1px solid rgba(255,255,255,0.1);\n}\n.af-btn-secondary:hover {\n  background: rgba(255,255,255,0.2);\n}\n\n\/* GRIDS for Who\/Not For *\/\n.af-grid-2 {\n  display: grid;\n  grid-template-columns: 1fr;\n  gap: 20px;\n}\n@media (min-width: 768px) {\n  .af-grid-2 { grid-template-columns: 1fr 1fr; }\n}\n\u003c\/style\u003e\n\u003cdiv class=\"af-luxury-page\"\u003e\n\u003cdiv class=\"af-container\"\u003e\n\u003cheader class=\"af-hero\"\u003e\n\u003cp class=\"af-eyebrow\"\u003eOn-Course Essentials • Magnetic • Crosshair Align\u003c\/p\u003e\n\u003ch1\u003ePremium Heavy Metal Ball Marker\u003c\/h1\u003e\n\u003cdiv class=\"af-exec-summary\"\u003e\n\u003cstrong\u003eTest Verdict\u003c\/strong\u003e\n\u003cp\u003eThis marker is built for stability and system integration. The \u003cstrong\u003eheavy metal body\u003c\/strong\u003e ensures it sits flat and doesn't shift in wind, while the \u003cstrong\u003emagnetic core\u003c\/strong\u003e keeps it paired with your Aiming Fluid towel setup. \u003cbr\u003e\u003cbr\u003e\u003cstrong\u003eVerdict:\u003c\/strong\u003e Choose it if you want a marker that feels substantial, aids alignment, and doesn't get lost in your pocket.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cp class=\"af-lead\"\u003eLess fidgeting. Better alignment.\u003c\/p\u003e\n\u003cp class=\"af-lede\"\u003eCheap plastic markers fly away. Small coins get lost. This marker is heavy enough to stay put, magnetic so it has a home, and designed with a crosshair to confirm your start line.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003ca href=\"#choose\" class=\"af-btn af-btn-secondary\"\u003eChoose Your Setup\u003c\/a\u003e \u003ca href=\"\/pages\/our-golf-gear-testing-design-standards\" class=\"af-btn af-btn-secondary\"\u003eTesting Standards\u003c\/a\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003c\/header\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eWhat problem this solves\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eMarking your ball shouldn't be a project. Fumbling for a coin or using a light plastic tab that blows away breaks your rhythm right before the most important shot.\u003c\/p\u003e\n\u003cp class=\"af-muted\"\u003eThis marker solves two issues: \u003cbr\u003e\u003cstrong\u003e1. Stability:\u003c\/strong\u003e Premium weight feels planted on the green. \u003cbr\u003e\u003cstrong\u003e2. Retention:\u003c\/strong\u003e Magnetism keeps it attached to your towel or hat clip, not lost in the bottom of your bag.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eFeatures \u0026amp; Specs\u003c\/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003eHeavy Metal Core:\u003c\/strong\u003e Substantial weight for a premium feel and wind resistance.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eIron\/Nickel Plating:\u003c\/strong\u003e Durable finish that resists corrosion.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eSoft Enamel Face:\u003c\/strong\u003e Provides texture for grip and long-term wear.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eCrosshair Design:\u003c\/strong\u003e A visual aid to help confirm your putter alignment.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eMagnetic:\u003c\/strong\u003e Snaps directly to Magna-Anchor™ towels and standard hat clips.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cdiv class=\"af-chip-row\" aria-hidden=\"true\"\u003e\n\u003cspan class=\"af-chip\"\u003eMagnetic\u003c\/span\u003e \u003cspan class=\"af-chip\"\u003eHeavy Metal\u003c\/span\u003e \u003cspan class=\"af-chip\"\u003eCrosshair Align\u003c\/span\u003e \u003cspan class=\"af-chip\"\u003eSoft Enamel\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-grid-2\"\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eWho it’s for\u003c\/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003eSystem Users:\u003c\/strong\u003e If you use a magnetic towel, this is the missing piece.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eAlignment Focus:\u003c\/strong\u003e Players who use a line on their ball.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eTactile Players:\u003c\/strong\u003e Golfers who hate the feel of cheap plastic.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eWho it’s not for\u003c\/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003eMinimalists:\u003c\/strong\u003e If a penny works for you, stick with it.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eNon-Magnetic:\u003c\/strong\u003e If you don't use magnetic gear, you might lose it.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\" id=\"choose\"\u003e\n\u003ch2 class=\"af-h2\"\u003eChoose your setup\u003c\/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003eDefault Choice:\u003c\/strong\u003e Pick this to complete your magnetic ecosystem.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eGift Option:\u003c\/strong\u003e A small but premium upgrade any golfer appreciates.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eNote:\u003c\/strong\u003e This is a \u003cstrong\u003eFinal Sale\u003c\/strong\u003e item.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003ca href=\"\/collections\/magnetic-towels\" class=\"af-btn af-btn-secondary\"\u003eAdd Magnetic Towel\u003c\/a\u003e \u003ca href=\"\/products\/magnetic-landing-pad\" class=\"af-btn af-btn-secondary\"\u003eAdd Landing Pad\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eProof and trust\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eWe don't over-engineer simple things, but we do make them better. A ball marker is a touchpoint you use 18 times a round. Make it a good one.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003ca href=\"\/pages\/our-golf-gear-testing-design-standards\" class=\"af-btn af-btn-secondary\"\u003eRead Testing Standards\u003c\/a\u003e \u003ca href=\"\/pages\/golf-bag-essentials-the-ultimate-magnetic-accessory-system-guide\" class=\"af-btn af-btn-secondary\"\u003eSystem Guide\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eProduct FAQ\u003c\/h2\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eIs it magnetic?\u003c\/summary\u003e\n\u003cdiv\u003eYes. It is designed to stick to any magnet, including hat clips, divot tools, and Magna-Anchor™ towels.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eDoes the crosshair actually help?\u003c\/summary\u003e\n\u003cdiv\u003eIt provides a consistent visual reference. It won't read the break for you, but it helps confirm you are aimed where you intend.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eWhat is it made of?\u003c\/summary\u003e\n\u003cdiv\u003eIt features a heavy metal core with iron\/nickel plating and a soft enamel fill for durability and feel.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eCan I return it?\u003c\/summary\u003e\n\u003cdiv\u003eNo. This is a \u003cstrong\u003eFinal Sale\u003c\/strong\u003e item and is not eligible for returns or exchanges.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eWill it rust?\u003c\/summary\u003e\n\u003cdiv\u003eThe plating protects against normal use, but like any metal gear, drying it off after wet rounds will extend its life.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\" style=\"text-align: center;\" id=\"buy\"\u003e\n\u003ch2 class=\"af-h2\"\u003eMark it with confidence\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eStop using pocket change. Upgrade to a marker that works with your system.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\" style=\"justify-content: center;\"\u003e\n\u003cbr\u003e\u003ca href=\"\/collections\/magnetic-towels\" class=\"af-btn af-btn-secondary\"\u003eShop Towels\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cp\u003e \u003c\/p\u003e","brand":"Aiming Fluid Golf","offers":[{"title":"Black","offer_id":47801126518978,"sku":"BM-BK","price":14.69,"currency_code":"USD","in_stock":true},{"title":"Pink","offer_id":47801126551746,"sku":"BM-PK","price":14.69,"currency_code":"USD","in_stock":true},{"title":"Grey","offer_id":47801126584514,"sku":"BM-G","price":14.69,"currency_code":"USD","in_stock":true},{"title":"Augusta Green","offer_id":47801126617282,"sku":"BM-MG","price":14.69,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0720\/6400\/8386\/files\/Main_Image_1.jpg?v=1781294468"},{"product_id":"magna-anchor™-magnetic-golf-towel-the-40-16-40","title":"Magna-Anchor™ Magnetic Golf Towel – The 40 (16×40)","description":"\u003ch2\u003eGolf Towel with Magnet: Magna-Anchor™ Magnetic Golf Towel\u003c\/h2\u003e\u003cp\u003eThe \u003cstrong\u003egolf towel with magnet\u003c\/strong\u003e is an essential accessory for every golfer. Designed with convenience and functionality in mind, the Magna-Anchor™ Magnetic Golf Towel makes it easy to keep your clubs and balls clean during your game. Measuring 16x40 inches, this towel is perfect for any golfer looking to enhance their experience on the course. It features a strong magnetic attachment that allows you to secure the towel to any metal surface, ensuring it’s always within reach when you need it most.\u003c\/p\u003e\u003cp\u003eIncorporating the latest in towel technology, the Magna-Anchor™ offers more than just a standard golf towel. The construction is made from high-quality microfiber, making it super absorbent, quick-drying, and easy to clean. With attention to detail, this towel not only serves a practical function but also adds style to your golf gear.\u003c\/p\u003e\u003cp\u003eSome notable features of the Magna-Anchor™ Magnetic Golf Towel include:\u003c\/p\u003e\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003eMagnetic Attachment:\u003c\/strong\u003e Easily attach the towel to your golf bag or any metal surface for quick access.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eExtra Large Size:\u003c\/strong\u003e At 16x40 inches, it provides ample coverage for cleaning clubs and drying hands.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eHigh-Quality Material:\u003c\/strong\u003e Made of soft microfiber that is highly absorbent and quick-drying.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eStylish Design:\u003c\/strong\u003e Available in multiple colors, it complements any golfer’s style.\u003c\/li\u003e\n\u003c\/ul\u003e\u003cp\u003eThe \u003cstrong\u003egolf towel with magnet\u003c\/strong\u003e is designed to meet the needs of players of all skill levels. Whether you’re a beginner or a seasoned pro, you will appreciate the versatility and practicality this towel offers. Imagine having your towel conveniently accessible whenever you need it, right there on your golf cart or attached to a golf bag!\u003c\/p\u003e\u003cp\u003eAdditionally, the Magna-Anchor™ Magnetic Golf Towel is lightweight and portable, making it easy to carry during your rounds. The ease of use doesn’t just stop at the attachment; the towel can also be easily washed and maintained, ensuring it remains in peak condition for your golfing adventures. No more worrying about dirty towels or how to keep them accessible; our innovative design takes care of that.\u003c\/p\u003e\u003cp\u003eIn conclusion, if you are looking for a quality \u003cstrong\u003egolf towel with magnet\u003c\/strong\u003e, the Magna-Anchor™ is the perfect choice. Upgrade your golfing essentials today and experience the difference it can make on the course.\u003c\/p\u003e","brand":"Aiming Fluid Golf","offers":[{"title":"Black","offer_id":47801126650050,"sku":"AFMLT2-B","price":39.69,"currency_code":"USD","in_stock":true},{"title":"Blue","offer_id":47801126682818,"sku":"AFMLT2-BL","price":39.69,"currency_code":"USD","in_stock":true},{"title":"Grey","offer_id":47801126715586,"sku":"AFMLT2-G","price":39.69,"currency_code":"USD","in_stock":true},{"title":"Green","offer_id":47801126748354,"sku":"AFMLT2-GR","price":39.69,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0720\/6400\/8386\/files\/mAIN_IMAGE_UPDATE_26.jpg?v=1781294467"},{"product_id":"magnetic-landing-pad","title":"Magnetic Landing Pad","description":"\u003cstyle\u003e\n\/* =========================\n   AF APPLE-STYLE DARK MODE — LANDING PAD PDP (FINAL)\n   LOCKED OPTION A PALETTE\n   ========================= *\/\n:root {\n  \/* Locked Palette *\/\n  --af-graphite: #0B0D0B;\n  --af-tech: #9FB8A0;\n  --af-olive: #1A2517;\n  --af-signal: #22C55E;\n\n  \/* Functional Mappings *\/\n  --bg-color: var(--af-graphite);\n  --card-bg: #0B0D0B;\n  --text-main: #f5f5f7;\n  --text-muted: #A3A3A8;\n  \n  \/* Borders \u0026 Shadows *\/\n  --border: rgba(159, 184, 160, 0.2); \n  --border-soft: rgba(159, 184, 160, 0.1);\n  --shadow: 0 20px 40px rgba(0,0,0,0.6);\n  --glow: 0 0 20px rgba(159, 184, 160, 0.15);\n}\n\n.af-luxury-page {\n  background: var(--bg-color);\n  color: var(--text-main);\n  padding: 60px 20px;\n  font-family: -apple-system, BlinkMacSystemFont, \"SF Pro Text\", \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  line-height: 1.6;\n  -webkit-font-smoothing: antialiased;\n}\n.af-luxury-page * { box-sizing: border-box; }\n.af-container { max-width: 1000px; margin: 0 auto; }\n\n\/* HEADER \u0026 TYPOGRAPHY *\/\n.af-eyebrow {\n  color: var(--af-tech);\n  letter-spacing: .1em;\n  text-transform: uppercase;\n  font-weight: 800;\n  font-size: .75rem;\n  margin: 0 0 16px;\n  text-align: center;\n}\n.af-hero {\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  margin-bottom: 32px;\n}\n.af-hero h1 {\n  margin: 0 0 14px;\n  font-weight: 800;\n  line-height: 1.05;\n  font-size: clamp(2.5rem, 5vw, 4rem);\n  letter-spacing: -0.02em;\n  background: linear-gradient(180deg, #fff, #a1a1aa);\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  text-align: center;\n}\n.af-lead {\n  font-size: 1.3rem;\n  color: #fff;\n  font-weight: 750;\n  text-align: center;\n  margin: 12px 0 10px;\n}\n.af-lede {\n  margin: 0 auto 0;\n  max-width: 760px;\n  color: var(--text-muted);\n  font-size: 1.1rem;\n  text-align: center;\n  line-height: 1.6;\n}\n\n\/* CARDS *\/\n.af-card {\n  background: rgba(255,255,255,0.02);\n  border-radius: 24px;\n  padding: 32px;\n  margin: 24px 0;\n  border: 1px solid var(--border);\n  box-shadow: var(--shadow);\n}\n.af-card--tech {\n  background: linear-gradient(180deg, rgba(159,184,160,0.05), var(--af-graphite));\n  border: 1px solid rgba(159,184,160,0.25);\n}\n.af-card--glow {\n  box-shadow: var(--glow);\n  border-color: rgba(159,184,160,0.4);\n}\n.af-h2 {\n  margin: 0 0 12px;\n  font-size: 1.8rem;\n  line-height: 1.2;\n  font-weight: 800;\n  color: #fff;\n  letter-spacing: -0.01em;\n}\n.af-muted {\n  color: var(--text-muted);\n  font-size: 1.05rem;\n  margin: 0 0 1rem;\n}\n\n\/* PILL VALUE MODULE *\/\n.af-pill-module {\n  display: flex;\n  flex-wrap: wrap;\n  justify-content: center;\n  gap: 12px;\n  margin: 32px 0;\n}\n.af-pill {\n  background: rgba(255,255,255,0.05);\n  border: 1px solid var(--border);\n  color: #fff;\n  padding: 10px 20px;\n  border-radius: 999px;\n  font-size: 0.95rem;\n  font-weight: 600;\n  box-shadow: 0 4px 12px rgba(0,0,0,0.2);\n  display: flex;\n  align-items: center;\n  gap: 8px;\n}\n.af-pill::before {\n  content: \"•\";\n  color: var(--af-tech);\n  font-size: 1.2rem;\n  line-height: 0;\n}\n\n\/* IMAGE WRAPPERS *\/\n.af-img-wrap {\n  margin: 0 0 16px 0;\n  border-radius: 20px;\n  overflow: hidden;\n  border: 1px solid var(--border-soft);\n  background: #000;\n  position: relative;\n}\n.af-img { display: block; width: 100%; height: auto; }\nvideo.af-img { border-radius: 20px; width: 100%; height: auto; }\n\n\/* BUTTONS *\/\n.af-btn-wrap {\n  display: flex;\n  justify-content: center;\n  flex-wrap: wrap;\n  gap: 12px;\n  margin-top: 20px;\n  align-items: center;\n}\n.af-btn {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  padding: 16px 32px;\n  border-radius: 999px;\n  font-weight: 750;\n  text-decoration: none;\n  font-size: 1.05rem;\n  transition: all .2s ease;\n  border: 0;\n  cursor: pointer;\n  min-height: 52px;\n}\n.af-btn-primary {\n  background: var(--af-signal);\n  color: #000;\n  border: 1px solid var(--af-signal);\n  font-weight: 900;\n  box-shadow: 0 4px 15px rgba(34, 197, 94, 0.4);\n}\n.af-btn-primary:hover { filter: brightness(1.1); transform: translateY(-2px); }\n.af-btn-secondary {\n  background: rgba(255,255,255,0.03);\n  color: #fff;\n  border: 1px solid rgba(255,255,255,0.15);\n  font-size: 1rem;\n}\n.af-btn-secondary:hover { background: rgba(255,255,255,0.08); border-color: #fff; }\n\n\/* INTERACTION MODULE *\/\n.af-hero-interaction {\n  background: rgba(255,255,255,0.03);\n  border: 1px solid var(--af-tech);\n  border-radius: 28px;\n  padding: 24px;\n  margin: 0 auto;\n  max-width: 580px;\n  width: 100%;\n  backdrop-filter: blur(10px);\n  text-align: center;\n  box-shadow: 0 20px 50px rgba(0,0,0,0.5);\n}\n.af-nudge {\n  text-align: center;\n  margin-top: 12px;\n  color: var(--text-muted);\n  font-size: .95rem;\n}\n\n\/* EXEC SUMMARY *\/\n.af-exec-summary {\n  background: rgba(34, 197, 94, 0.08); \n  border: 1px solid #22C55E; \n  border-radius: 24px;\n  padding: 28px;\n  margin-bottom: 28px;\n  margin-top: 10px;\n  box-shadow: 0 0 20px rgba(34, 197, 94, 0.1); \n}\n.af-exec-summary__hdr {\n  display: flex;\n  align-items: center;\n  gap: 12px;\n  margin-bottom: 16px;\n  flex-wrap: wrap;\n}\n.af-exec-summary__label {\n  font-size: 0.75rem;\n  letter-spacing: 0.1em;\n  text-transform: uppercase;\n  color: #000;\n  font-weight: 800;\n  background: #22C55E; \n  padding: 4px 10px;\n  border-radius: 6px;\n}\n.af-exec-summary__note {\n  font-size: 1.1rem;\n  color: #fff;\n  font-weight: 700;\n}\n.af-exec-summary p {\n  margin: 0;\n  color: #f3f4f6; \n  font-size: 1.05rem;\n  line-height: 1.6;\n}\n.af-verdict-text {\n  display: block;\n  margin-top: 16px;\n  padding-top: 16px;\n  border-top: 1px solid rgba(34, 197, 94, 0.3);\n  font-weight: 700;\n  color: #fff;\n  font-size: 1.1rem;\n}\n.af-verdict-text strong { color: #22C55E; }\n\n\/* STEPS \u0026 LISTS *\/\n.af-steps, .af-list {\n  margin: 0;\n  padding-left: 1.2rem;\n  color: var(--text-muted);\n}\n.af-steps li, .af-list li {\n  margin: 0.8rem 0;\n  font-size: 1.05rem;\n}\n.af-steps li strong, .af-list li strong { color: #fff; font-weight: 700; }\n\n\/* DRAWERS \u0026 FAQ *\/\n.af-drawer, .af-faq {\n  border-top: 1px solid var(--border);\n  padding: 16px 0;\n  margin-top: 16px;\n}\n.af-drawer summary, .af-faq summary {\n  cursor: pointer;\n  font-weight: 700;\n  color: #fff;\n  font-size: 1.05rem;\n  list-style: none;\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n  padding: 4px 0;\n}\n.af-drawer summary::-webkit-details-marker { display: none; }\n.af-drawer summary::after, .af-faq summary::after { content: \"+\"; font-weight: 400; color: var(--text-muted); font-size: 1.5rem; }\n.af-drawer[open] summary::after, .af-faq[open] summary::after { content: \"−\"; }\n.af-drawer .af-drawer-body, .af-faq div { margin-top: 12px; color: var(--text-muted); line-height: 1.6; }\n\n\/* TABLES *\/\n.af-comp-table {\n  width: 100%;\n  border-collapse: separate;\n  border-spacing: 0;\n  margin: 20px 0;\n  font-size: 1rem;\n  color: var(--text-main);\n  border: 1px solid var(--border);\n  border-radius: 12px;\n  overflow: hidden;\n}\n.af-comp-table th, .af-comp-table td { padding: 14px 16px; text-align: left; border-bottom: 1px solid var(--border-soft); }\n.af-comp-table th { background: rgba(159,184,160,0.1); color: #fff; font-weight: 700; }\n.af-comp-table td:first-child { font-weight: 700; color: var(--af-tech); width: 35%; }\n.af-comp-table tr:last-child td { border-bottom: none; }\n\n\/* SWATCHES (FOR BUNDLE) *\/\n.af-swatch-row {\n  display: flex;\n  justify-content: center;\n  gap: 14px;\n  margin-bottom: 16px;\n  flex-wrap: wrap;\n}\n.af-swatch {\n  width: 36px; height: 36px; border-radius: 50%;\n  border: 2px solid rgba(255,255,255,0.2);\n  cursor: pointer;\n  transition: transform .2s;\n  padding: 0;\n  background: #111;\n}\n.af-swatch:hover { transform: scale(1.15); border-color: #fff; }\n.af-swatch[aria-selected=\"true\"] {\n  border-color: var(--af-signal);\n  box-shadow: 0 0 0 4px rgba(34, 197, 94, 0.25);\n  transform: scale(1.15);\n}\n\/* Stubby Swatches *\/\n.af-swatch[data-af-finish-both-stubby=\"Black\"] {background:#111;}\n.af-swatch[data-af-finish-both-stubby=\"Blue\"] {background:#1e3a8a;}\n.af-swatch[data-af-finish-both-stubby=\"Augusta Green\"] {background:#14532d;}\n.af-swatch[data-af-finish-both-stubby=\"Birdie Blue\"] {background:#0ea5e9;}\n.af-swatch[data-af-finish-both-stubby=\"Grey\"] {background:#4b5563;}\n.af-swatch[data-af-finish-both-stubby=\"Gunmetal Grey\"] {background:#374151;}\n.af-swatch[data-af-finish-both-stubby=\"Red\"] {background:#991b1b;}\n\n\/* GRID *\/\n.af-grid-2 { display: grid; grid-template-columns: 1fr; gap: 24px; }\n@media (min-width: 768px) {\n  .af-grid-2 { grid-template-columns: 1fr 1fr; }\n  .af-bundle-preview { grid-template-columns: 1fr 1fr !important; }\n}\n@media (max-width: 767px) {\n  .af-luxury-page { padding: 40px 16px; }\n  .af-card { padding: 24px; }\n  .af-btn { width: 100%; }\n}\n\n\/* STANDARDS *\/\n.af-standards-citation {\n  margin: 40px 0 0 0;\n  padding: 24px;\n  background: var(--af-olive);\n  border: 1px solid rgba(159,184,160,0.3);\n  border-radius: 20px;\n}\n\u003c\/style\u003e\n\u003cdiv data-af-landingpad-pdp=\"\" class=\"af-luxury-page\"\u003e\n\u003cdiv class=\"af-container\"\u003e\n\u003cheader class=\"af-hero\"\u003e\n\u003cp class=\"af-eyebrow\"\u003eBag Docking Station • Steel Core\u003c\/p\u003e\n\u003ch1\u003eMagnetic Landing Pad\u003c\/h1\u003e\n\u003cp class=\"af-lead\"\u003eStop improvising mid-round. Give your towel a permanent home.\u003c\/p\u003e\n\u003cdiv class=\"af-exec-summary\"\u003e\n\u003cdiv class=\"af-exec-summary__hdr\"\u003e\n\u003cspan class=\"af-exec-summary__label\"\u003eTest Verdict\u003c\/span\u003e \u003cspan class=\"af-exec-summary__note\"\u003eConsistency beats searching.\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cp\u003eMagnets solve attachment, but they don’t solve consistency. The Landing Pad adds a steel-core “home base” inside your bag so magnetic towels and accessories re-dock to the same spot every time, even on non-magnetic bag materials. If your routine keeps breaking (grab → use → where’d it go), this fixes the system.\u003c\/p\u003e\n\u003cdiv class=\"af-verdict-text\"\u003e\n\u003cstrong\u003eVerdict:\u003c\/strong\u003e Buy it if you want a \"no-look\" docking routine. Skip it if you enjoy clipping and unclipping.\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-hero-interaction af-card--glow\"\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cimg src=\"https:\/\/www.aimingfluidgolf.com\/cdn\/shop\/files\/Landing_Pad_Front_3_800x.png?v=1764810774\" data-af-hero-img=\"\" class=\"af-img\" alt=\"Magnetic Landing Pad\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003cbutton data-af-atc=\"\" class=\"af-btn af-btn-primary\" type=\"button\"\u003eAdd to Cart\u003c\/button\u003e \u003ca href=\"#af-install\" class=\"af-btn af-btn-secondary\"\u003eSee Install\u003c\/a\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-nudge\"\u003eMounts inside bag dividers (not on cart frame).\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-pill-module\"\u003e\n\u003cdiv class=\"af-pill\"\u003eSteel Core\u003c\/div\u003e\n\u003cdiv class=\"af-pill\"\u003eUniversal Fit\u003c\/div\u003e\n\u003cdiv class=\"af-pill\"\u003eZero Slip\u003c\/div\u003e\n\u003cdiv class=\"af-pill\"\u003eSystem Base\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/header\u003e\n\u003csection id=\"af-problem\" class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eThe Real Enemy: Tiny Interruptions\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eYou don’t lose strokes because your towel is “missing.” You lose strokes because your brain keeps checking: \u003cem\u003eWhere is it? Is it dragging? Did it fall?\u003c\/em\u003e The Landing Pad removes that loop by creating a dedicated, steel-core target exactly where you need it.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card af-card--tech\"\u003e\n\u003ch2 class=\"af-h2\"\u003eWatch it work\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eReal play. Unscripted consistency.\u003c\/p\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cvideo class=\"af-img\" controls=\"controls\" playsinline=\"\" preload=\"metadata\" poster=\"\"\u003e\n      \u003csource src=\"https:\/\/cdn.shopify.com\/videos\/c\/o\/v\/212c5d4594ec4587b3a275673777aa66.mp4\" type=\"video\/mp4\"\u003e\u003c\/video\u003e\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eWhy “sticker plates” fail\u003c\/h2\u003e\n\u003cdiv style=\"overflow-x: auto;\"\u003e\n\u003ctable class=\"af-comp-table\"\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eFeature\u003c\/th\u003e\n\u003cth style=\"color: #fff;\"\u003eAiming Fluid Landing Pad\u003c\/th\u003e\n\u003cth\u003eAdhesive Phone Plates\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003eMount Type\u003c\/td\u003e\n\u003ctd style=\"color: var(--af-signal); font-weight: bold;\"\u003eMechanical Clip + Steel Core\u003c\/td\u003e\n\u003ctd\u003eSticky Tape (can peel \/ creep)\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ePortability\u003c\/td\u003e\n\u003ctd style=\"color: var(--af-signal); font-weight: bold;\"\u003eMove bag-to-bag\u003c\/td\u003e\n\u003ctd\u003ePermanent \/ leaves residue\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eDock reliability\u003c\/td\u003e\n\u003ctd style=\"color: var(--af-signal); font-weight: bold;\"\u003ePredictable “home base”\u003c\/td\u003e\n\u003ctd\u003eDepends on placement + age\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-grid-2\"\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cimg loading=\"lazy\" src=\"https:\/\/www.aimingfluidgolf.com\/cdn\/shop\/files\/Produt_photo_7_1800x1800.jpg?v=1767363134\" class=\"af-img\" alt=\"Magnetic Landing Pad installed in bag\"\u003e\u003c\/div\u003e\n\u003ch2 class=\"af-h2\"\u003eStart Here\u003c\/h2\u003e\n\u003cp class=\"af-muted\" style=\"margin-bottom: 10px;\"\u003eDo you need a Landing Pad?\u003c\/p\u003e\n\u003cul class=\"af-list\"\u003e\n\u003cli\u003e\n\u003cstrong\u003eYes\u003c\/strong\u003e if your bag is non-magnetic or inconsistent.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eYes\u003c\/strong\u003e if you want a repeatable routine: dock once, stop thinking.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cimg loading=\"lazy\" src=\"https:\/\/www.aimingfluidgolf.com\/cdn\/shop\/files\/V2_image_1800x1800.jpg?v=1767363134\" class=\"af-img\" alt=\"Magnetic Landing Pad clip detail\"\u003e\u003c\/div\u003e\n\u003ch2 class=\"af-h2\"\u003eInstallation\u003c\/h2\u003e\n\u003col class=\"af-steps\"\u003e\n\u003cli\u003e\n\u003cstrong\u003eChoose:\u003c\/strong\u003e Find a stable spot inside your bag between dividers.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eAttach:\u003c\/strong\u003e Clip the pad securely. It won't shift.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eHabit:\u003c\/strong\u003e Dock your towel after every use.\u003c\/li\u003e\n\u003c\/ol\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection id=\"af-bundle\" class=\"af-card af-card--tech\"\u003e\n\u003ch2 class=\"af-h2\"\u003eComplete the System\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eThe pad is the dock. The towel is the tool. Together, the routine becomes automatic.\u003c\/p\u003e\n\u003cdiv class=\"af-grid-2\" style=\"margin-top: 24px;\"\u003e\n\u003cdiv data-af-both-stubby-sync=\"\"\u003e\n\u003ch3 style=\"text-align: center; color: var(--af-signal); font-size: 1.1rem; font-weight: bold; margin-bottom: 12px;\"\u003e1. Select Stubby Color\u003c\/h3\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cimg loading=\"lazy\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/2026_Amazon_Main_Image.jpg?v=1769714394\" data-af-both-stubby-img=\"\" class=\"af-img\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"af-swatch-row\"\u003e\n\u003cbutton type=\"button\" class=\"af-swatch\" data-af-finish-both-stubby=\"Black\" aria-label=\"Black\"\u003e\u003c\/button\u003e \u003cbutton type=\"button\" class=\"af-swatch\" data-af-finish-both-stubby=\"Blue\" aria-label=\"Blue\"\u003e\u003c\/button\u003e \u003cbutton type=\"button\" class=\"af-swatch\" data-af-finish-both-stubby=\"Augusta Green\" aria-label=\"Augusta Green\"\u003e\u003c\/button\u003e \u003cbutton type=\"button\" class=\"af-swatch\" data-af-finish-both-stubby=\"Birdie Blue\" aria-label=\"Birdie Blue\"\u003e\u003c\/button\u003e \u003cbutton type=\"button\" class=\"af-swatch\" data-af-finish-both-stubby=\"Grey\" aria-label=\"Grey\"\u003e\u003c\/button\u003e \u003cbutton type=\"button\" class=\"af-swatch\" data-af-finish-both-stubby=\"Gunmetal Grey\" aria-label=\"Gunmetal Grey\"\u003e\u003c\/button\u003e \u003cbutton type=\"button\" class=\"af-swatch\" data-af-finish-both-stubby=\"Red\" aria-label=\"Red\"\u003e\u003c\/button\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv style=\"text-align: center; display: flex; flex-direction: column; justify-content: center;\"\u003e\n\u003ch3 style=\"color: #fff; font-size: 1.1rem; margin-bottom: 12px;\"\u003e2. + Landing Pad\u003c\/h3\u003e\n\u003cp class=\"af-muted\"\u003eYour new steel-core home base.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\" style=\"margin-top: 0;\"\u003e\u003cbutton type=\"button\" class=\"af-btn af-btn-primary\" data-af-atc-both=\"\"\u003eAdd Bundle to Cart\u003c\/button\u003e\u003c\/div\u003e\n\u003cdiv class=\"af-nudge\" data-af-both-status=\"\" style=\"margin-top: 12px;\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection id=\"af-faq\" class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eFAQ\u003c\/h2\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eWhat problem does this solve?\u003c\/summary\u003e\n\u003cdiv\u003eIt creates a reliable docking point inside your bag so magnetic towels have a predictable “home,” even on bags that don’t hold magnets consistently.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eWhere does it mount?\u003c\/summary\u003e\n\u003cdiv\u003eInside your golf bag between the club dividers. It does not mount to a cart frame.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eIs it only for Aiming Fluid towels?\u003c\/summary\u003e\n\u003cdiv\u003eNo. Any magnetic towel benefits from a consistent steel-core docking surface.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eDo I still need a strong magnet towel?\u003c\/summary\u003e\n\u003cdiv\u003eYes. The pad provides the surface; a quality magnetic towel ensures retention. Together they form the system.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\" style=\"text-align: center;\"\u003e\n\u003ch2 class=\"af-h2\"\u003eStop losing attention to dumb problems\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eInstall a dock once, then let the routine run in the background.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003cbutton data-af-atc=\"\" class=\"af-btn af-btn-primary\" type=\"button\"\u003eAdd to Cart\u003c\/button\u003e \u003ca href=\"\/collections\/on-course-systems\" class=\"af-btn af-btn-secondary\"\u003eShop Systems\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c!-- AUTHORITY BRIDGE: Why Magnetic Towels Fall Off --\u003e\n\u003csection style=\"margin-top: 40px;\" class=\"af-card\"\u003e\n\u003ch3 style=\"margin-top: 0; color: #fff;\"\u003eWhy Magnetic Towels Fall Off (It’s Physics)\u003c\/h3\u003e\n\u003cp style=\"color: var(--text-muted); max-width: 700px;\"\u003eIf your magnetic golf towel keeps dropping off the cart rail, it’s not bad luck. Round rails create a geometry mismatch, vibration creates shear force, and aluminum frames kill magnetic hold. See the full breakdown.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\u003ca class=\"af-btn af-btn-secondary\" href=\"\/pages\/magnetic-golf-towel-that-doesnt-fall-off\"\u003e Read the Full Explanation \u003c\/a\u003e\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-standards-citation\"\u003e\n\u003ch3 style=\"margin: 0 0 .75rem 0; font-size: 1.15rem; font-weight: 900; color: #ffffff;\"\u003eEvaluated Against Published Testing Standards\u003c\/h3\u003e\n\u003cp style=\"margin: 0 0 1rem 0; font-size: 1.02rem; color: #d1d5db; line-height: 1.6;\"\u003eThis product is evaluated using Aiming Fluid Golf’s published magnetic gear testing framework. The framework defines how magnetic towels and docking systems are assessed across retention, cleaning effectiveness, usability, durability, and compatibility under real on-course conditions.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\u003ca href=\"\/pages\/our-golf-gear-testing-design-standards\" class=\"af-btn af-btn-secondary\"\u003eView Standards\u003c\/a\u003e\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cp\u003e\u003cscript type=\"application\/ld+json\"\u003e\n{\n  \"@context\": \"https:\/\/schema.org\",\n  \"@type\": \"FAQPage\",\n  \"mainEntity\": [\n    {\n      \"@type\": \"Question\",\n      \"name\": \"What problem does the Landing Pad solve?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"It creates a reliable docking point inside your bag so magnetic towels and accessories have a predictable “home,” even on bags that don’t hold magnets consistently.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Where does it mount?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Inside your golf bag between the club dividers. It does not mount to a cart frame.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Is it only for Aiming Fluid towels?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"No. Any magnetic towel or accessory benefits from a consistent steel-core docking surface. Aiming Fluid towels are designed to pair cleanly, but the dock concept is universal.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Do I still need a strong magnet towel if I have the pad?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"The pad provides the docking surface. A well-built magnetic towel improves retention and ease of use. Together is the cleanest setup.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Who should choose it by default?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Anyone with a non-magnetic bag, inconsistent mounting points, multiple bags, or a desire for a repeatable system instead of clips and dangling hardware.\"\n      }\n    }\n  ]\n}\n\u003c\/script\u003e \u003cscript\u003e\n\/* =========================================================\n   AF PDP ATC - LANDING PAD + STUBBY BUNDLE LOGIC\n   - Single item ATC (Landing Pad)\n   - Bundle ATC (Landing Pad + Selected Stubby)\n   ========================================================= *\/\n(function(){\n  \/\/ STUBBY MAPS (Copied from Stubby PDP for consistency)\n  const finishToImageStubby = {\n    \"Red\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated_Main_Image_2.jpg?v=1769714394\",\n    \"Birdie Blue\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/2026_Amazon_Main_Image_4a14208d-a588-4d0c-8257-be4c6f929d2c.jpg?v=1769714394\",\n    \"Gunmetal Grey\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/2026_Main_Image_732dcd44-f78d-458d-bd41-2e148e5b7af7.jpg?v=1769714394\",\n    \"Grey\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/2026_amazon_Main_Image_a81807c5-6f77-44c4-a531-5cf6b47a5bbd.jpg?v=1769714394\",\n    \"Augusta Green\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/2026_Amazon_Main_Image_128423e7-67ac-4508-82b8-2b1076ec7e3e.jpg?v=1769714394\",\n    \"Blue\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/2026_main_image.jpg?v=1769714394\",\n    \"Black\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/2026_Amazon_Main_Image.jpg?v=1769714394\"\n  };\n  const finishToVariantIdStubby = {\n    \"Red\": 40987341815851,\n    \"Birdie Blue\": 42663187546155,\n    \"Gunmetal Grey\": 41151790088235,\n    \"Grey\": 40882080743467,\n    \"Augusta Green\": 40882080776235,\n    \"Blue\": 40882080710699,\n    \"Black\": 40882080677931\n  };\n\n  const root = document.querySelector('[data-af-landingpad-pdp]');\n  if(!root) return;\n\n  \/\/ Single Item Logic\n  const mainAtcBtns = root.querySelectorAll('[data-af-atc]');\n  const mainHandle = 'magnetic-landing-pad'; \/\/ Current Product Handle\n  let landingPadId = null;\n\n  \/\/ Bundle Logic\n  const bundleSwatches = root.querySelectorAll('[data-af-finish-both-stubby]');\n  const bundleImg = root.querySelector('[data-af-both-stubby-img]');\n  const bundleAtcBtn = root.querySelector('[data-af-atc-both]');\n  const bundleStatus = root.querySelector('[data-af-both-status]');\n  let selectedStubbyFinish = 'Black';\n\n  \/\/ --- HELPERS ---\n  async function getLandingPadId(){\n    if(landingPadId) return landingPadId;\n    const res = await fetch(`\/products\/${mainHandle}.js`);\n    if(!res.ok) throw new Error('Pad not found');\n    const data = await res.json();\n    landingPadId = data.variants[0].id;\n    return landingPadId;\n  }\n\n  async function addToCart(items, statusEl){\n    if(statusEl) statusEl.textContent = \"Adding...\";\n    try {\n      const res = await fetch('\/cart\/add.js', {\n        method: 'POST',\n        headers: { 'Content-Type': 'application\/json', 'Accept': 'application\/json' },\n        credentials: 'same-origin',\n        body: JSON.stringify({ items })\n      });\n      if(res.ok) {\n        window.location.href = '\/cart';\n      } else {\n        throw new Error();\n      }\n    } catch(e) {\n      if(statusEl) statusEl.textContent = \"Error adding to cart.\";\n      console.error(e);\n    }\n  }\n\n  \/\/ --- SINGLE ADD (LANDING PAD) ---\n  mainAtcBtns.forEach(btn =\u003e {\n    btn.addEventListener('click', async (e) =\u003e {\n      e.preventDefault();\n      const originalText = btn.textContent;\n      btn.textContent = \"Adding...\";\n      try {\n        const id = await getLandingPadId();\n        await addToCart([{ id: id, quantity: 1 }]);\n      } catch(e) {\n        btn.textContent = \"Error\";\n        setTimeout(() =\u003e btn.textContent = originalText, 2000);\n      }\n    });\n  });\n\n  \/\/ --- BUNDLE ADD (PAD + STUBBY) ---\n  if(bundleSwatches.length){\n    \/\/ Selection Logic\n    bundleSwatches.forEach(btn =\u003e {\n      btn.addEventListener('click', () =\u003e {\n        const f = btn.getAttribute('data-af-finish-both-stubby');\n        selectedStubbyFinish = f;\n        bundleSwatches.forEach(b =\u003e b.setAttribute('aria-selected', b.getAttribute('data-af-finish-both-stubby') === f ? 'true' : 'false'));\n        if(bundleImg \u0026\u0026 finishToImageStubby[f]) bundleImg.src = finishToImageStubby[f];\n      });\n    });\n\n    \/\/ Add Logic\n    if(bundleAtcBtn){\n      bundleAtcBtn.addEventListener('click', async (e) =\u003e {\n        e.preventDefault();\n        const stubbyId = finishToVariantIdStubby[selectedStubbyFinish];\n        \n        if(!stubbyId){\n          if(bundleStatus) bundleStatus.textContent = \"Please select a towel color.\";\n          return;\n        }\n\n        try {\n          const padId = await getLandingPadId();\n          await addToCart([{ id: padId, quantity: 1 }, { id: stubbyId, quantity: 1 }], bundleStatus);\n        } catch(e) {\n          if(bundleStatus) bundleStatus.textContent = \"Error loading Landing Pad.\";\n        }\n      });\n    }\n\n    \/\/ Init Selection\n    bundleSwatches[0].click();\n  }\n\n  \/\/ Pre-fetch pad ID\n  getLandingPadId().catch(()=\u003e{});\n\n})();\n\u003c\/script\u003e\u003c\/p\u003e","brand":"Aiming Fluid Golf","offers":[{"title":"Default Title","offer_id":47801126977730,"sku":"AFMH","price":24.95,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0720\/6400\/8386\/files\/ChatGPT_Image_May_5_2026_05_58_33_AM.png?v=1781294468"},{"product_id":"brewski-koozie","title":"Brewski Koozie","description":"\u003cstyle\u003e\n\/* =========================\n   AF LUXURY PAGE STYLES (Scoped \u0026 Premium)\n   ========================= *\/\n.af-luxury-page {\n  background: #050509;\n  color: #f3f4f6;\n  padding: 60px 20px;\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  line-height: 1.6;\n}\n.af-luxury-page * { box-sizing: border-box; }\n\n.af-container {\n  max-width: 1000px;\n  margin: 0 auto;\n}\n\n\/* TYPOGRAPHY *\/\n.af-eyebrow {\n  color: #34d399; \/* Brand Accent *\/\n  letter-spacing: 0.15em;\n  text-transform: uppercase;\n  font-weight: 700;\n  font-size: 0.75rem;\n  margin: 0 0 12px;\n  text-align: center;\n}\n\n.af-hero h1 {\n  margin: 0 0 16px;\n  font-weight: 800;\n  line-height: 1.1;\n  font-size: clamp(2.2rem, 5vw, 3.2rem);\n  letter-spacing: -0.02em;\n  color: #fff;\n  text-align: center;\n}\n\n.af-lead {\n  font-size: 1.25rem;\n  color: #fff;\n  font-weight: 700;\n  text-align: center;\n  margin-bottom: 24px;\n}\n\n.af-lede {\n  margin: 0 auto 40px;\n  max-width: 700px;\n  color: #9ca3af;\n  font-size: 1.1rem;\n  text-align: center;\n  line-height: 1.6;\n}\n\n\/* CONSOLE CARDS (Glassmorphism) *\/\n.af-card {\n  background: #111827;\n  border: 1px solid rgba(255,255,255,0.12);\n  border-radius: 24px;\n  padding: 40px;\n  margin-bottom: 24px;\n  box-shadow: 0 20px 40px -10px rgba(0,0,0,0.5);\n  position: relative;\n  overflow: hidden;\n}\n\n.af-h2 {\n  margin: 0 0 20px;\n  font-size: 1.75rem;\n  line-height: 1.2;\n  font-weight: 700;\n  color: #fff;\n}\n\n.af-muted {\n  color: #d1d5db;\n  font-size: 1.05rem;\n  margin-bottom: 1.5rem;\n}\n\n\/* EXECUTIVE SUMMARY (Highlight Box) *\/\n.af-exec-summary {\n  background: rgba(52, 211, 153, 0.1);\n  border: 1px solid rgba(52, 211, 153, 0.25);\n  border-radius: 16px;\n  padding: 24px;\n  margin-bottom: 30px;\n  text-align: left;\n}\n.af-exec-summary strong {\n  display: block;\n  font-size: 0.75rem;\n  letter-spacing: 0.1em;\n  text-transform: uppercase;\n  color: #34d399;\n  font-weight: 800;\n  margin-bottom: 8px;\n}\n.af-exec-summary p {\n  margin: 0;\n  color: #d1d5db;\n  font-size: 1rem;\n  line-height: 1.6;\n}\n\n\/* LISTS \u0026 STEPS *\/\n.af-list, .af-steps, ul {\n  margin: 0;\n  padding-left: 1.2rem;\n  color: #d1d5db;\n}\n.af-list li, .af-steps li, ul li {\n  margin: 0.8rem 0;\n}\n.af-list li strong, ul li strong {\n  color: #fff;\n}\n\n\/* CHIPS \u0026 CALLOUTS *\/\n.af-chip-row {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 8px;\n  margin-top: 24px;\n}\n.af-chip {\n  background: rgba(255,255,255,0.08);\n  border: 1px solid rgba(255,255,255,0.15);\n  color: #e5e7eb;\n  padding: 6px 14px;\n  border-radius: 999px;\n  font-size: 0.85rem;\n  font-weight: 500;\n}\n\n\/* FAQ (Accordion Style) *\/\n.af-faq {\n  border-top: 1px solid rgba(255,255,255,0.1);\n  padding: 16px 0;\n}\n.af-faq summary {\n  cursor: pointer;\n  font-weight: 700;\n  color: #fff;\n  font-size: 1.1rem;\n  list-style: none;\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n}\n.af-faq summary::-webkit-details-marker { display: none; }\n.af-faq summary::after {\n  content: \"+\";\n  font-weight: 400;\n  color: #9ca3af;\n  font-size: 1.5rem;\n}\ndetails[open] summary::after { content: \"−\"; }\n.af-faq div {\n  margin-top: 12px;\n  color: #d1d5db;\n  line-height: 1.6;\n}\n\n\/* BUTTONS (Apple Style) *\/\n.af-btn-wrap {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 12px;\n  margin-top: 24px;\n  justify-content: center;\n}\n.af-btn {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  padding: 12px 24px;\n  border-radius: 999px;\n  font-weight: 700;\n  text-decoration: none !important;\n  font-size: 0.95rem;\n  transition: all 0.2s ease;\n  cursor: pointer;\n  border: none;\n  font-family: inherit;\n}\n.af-btn:hover { transform: translateY(-2px); }\n\n.af-btn-primary {\n  background: #34d399;\n  color: #064e3b !important;\n  box-shadow: 0 4px 12px rgba(52, 211, 153, 0.3);\n}\n.af-btn-primary:hover {\n  background: #10b981;\n  box-shadow: 0 8px 20px rgba(52, 211, 153, 0.4);\n}\n\n.af-btn-secondary {\n  background: rgba(255,255,255,0.1);\n  color: #fff !important;\n  border: 1px solid rgba(255,255,255,0.1);\n}\n.af-btn-secondary:hover {\n  background: rgba(255,255,255,0.2);\n}\n\n\/* GRIDS for Who\/Not For *\/\n.af-grid-2 {\n  display: grid;\n  grid-template-columns: 1fr;\n  gap: 20px;\n}\n@media (min-width: 768px) {\n  .af-grid-2 { grid-template-columns: 1fr 1fr; }\n}\n\u003c\/style\u003e\n\u003cdiv class=\"af-luxury-page\"\u003e\n\u003cdiv class=\"af-container\"\u003e\n\u003cheader class=\"af-hero\"\u003e\n\u003cp class=\"af-eyebrow\"\u003eOn-Course Essentials • Gunmetal Neoprene • Structured Fit\u003c\/p\u003e\n\u003ch1\u003eAiming Fluid Brewski Koozie\u003c\/h1\u003e\n\u003cdiv class=\"af-exec-summary\"\u003e\n\u003cstrong\u003eTest Verdict\u003c\/strong\u003e\n\u003cp\u003eThis koozie is built to solve one specific problem: keeping a can cold and protected without feeling like a cheap promo giveaway. The \u003cstrong\u003egunmetal neoprene\u003c\/strong\u003e construction holds its shape in a golf bag or cooler pocket, and the clean stitching ensures it lasts more than two weekends. \u003cbr\u003e\u003cbr\u003e\u003cstrong\u003eVerdict:\u003c\/strong\u003e Choose it if you want a koozie that matches your premium kit; skip it if you're fine with throwaway foam.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cp class=\"af-lead\"\u003eStructured insulation. No gimmicks.\u003c\/p\u003e\n\u003cp class=\"af-lede\"\u003eMost koozies are forgettable: thin foam, sloppy seams, and a logo that peels off. This one is built to match the rest of your Aiming Fluid setup: durable neoprene, structured fit, and a clean gunmetal finish.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003cbr\u003e\u003ca class=\"af-btn af-btn-secondary\" href=\"\/pages\/our-golf-gear-testing-design-standards\"\u003eTesting Standards\u003c\/a\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\u003c\/div\u003e\n\u003c\/header\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eWhy this koozie exists\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eIf your bag is dialed, your koozie shouldn't be the one item screaming \"freebie.\" Cheap foam collapses, tears, and fails to insulate.\u003c\/p\u003e\n\u003cp class=\"af-muted\"\u003eThis koozie solves that with: \u003cbr\u003e\u003cstrong\u003e1. Structured Neoprene:\u003c\/strong\u003e Holds its shape and provides real thermal insulation. \u003cbr\u003e\u003cstrong\u003e2. Durable Stitching:\u003c\/strong\u003e Built to survive being tossed in bags, carts, and trunks. \u003cbr\u003e\u003cstrong\u003e3. Gunmetal Finish:\u003c\/strong\u003e A clean aesthetic that matches matte luxury gear.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eSpecs \u0026amp; Features\u003c\/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003eMaterial:\u003c\/strong\u003e Premium neoprene for thermal retention and structure.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eColor:\u003c\/strong\u003e Gunmetal Grey (reads as dark grey\/charcoal).\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eFit:\u003c\/strong\u003e Standard 12 oz can (snug, secure fit).\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eConstruction:\u003c\/strong\u003e Reinforced stitching for longevity.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cdiv aria-hidden=\"true\" class=\"af-chip-row\"\u003e\n\u003cspan class=\"af-chip\"\u003eGunmetal Grey\u003c\/span\u003e \u003cspan class=\"af-chip\"\u003eNeoprene\u003c\/span\u003e \u003cspan class=\"af-chip\"\u003eStructured Fit\u003c\/span\u003e \u003cspan class=\"af-chip\"\u003eGolf-Bag Friendly\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-grid-2\"\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eWho it’s for\u003c\/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003eSystem Builders:\u003c\/strong\u003e Golfers who want every piece of gear to look intentional.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eCart Riders:\u003c\/strong\u003e Keeps drinks cold in the cup holder without rattling.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eGift Buyers:\u003c\/strong\u003e A small but quality add-on that gets used.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eWho it’s not for\u003c\/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003ePromo Seekers:\u003c\/strong\u003e If you want free swag quality, this isn't it.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eSkinny Can Drinkers:\u003c\/strong\u003e Optimized for standard 12 oz cans.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection id=\"buy\" class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eChoose your setup\u003c\/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003eSingle Purchase:\u003c\/strong\u003e A solid upgrade for your own bag.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eCart Add-On:\u003c\/strong\u003e Perfect to hit free shipping thresholds with something useful.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003cbr\u003e\u003ca class=\"af-btn af-btn-secondary\" href=\"\/collections\/on-course-systems\"\u003eShop Systems\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eProduct FAQ\u003c\/h2\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eWill it fit a normal 12 oz can?\u003c\/summary\u003e\n\u003cdiv\u003eYes. It is designed specifically for standard 12 oz can sizing with a snug, structured neoprene fit.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eIs it stiff or soft?\u003c\/summary\u003e\n\u003cdiv\u003eIt is neoprene, so it has some flex, but it is built to hold its shape much better than thin foam-style promo koozies.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eDoes the gunmetal color look black or silver?\u003c\/summary\u003e\n\u003cdiv\u003eIt sits between black and silver. In normal lighting, it reads as a darker grey\/charcoal, designed to match a matte luxury kit.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eIs this meant for golf only?\u003c\/summary\u003e\n\u003cdiv\u003eNo. While built to survive golf bag life, it works great for tailgates, camping, the garage, or anywhere you need a cold drink.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eHow do I clean it?\u003c\/summary\u003e\n\u003cdiv\u003eSpot clean with mild soap and water, then let it air dry. Avoid high heat to maintain the neoprene's structure.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003c\/section\u003e\n\u003csection style=\"text-align: center;\" class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eComplete the kit\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003ePair it with the stuff that fixes real on-course friction: dropped towels, dirty grooves, and bag chaos.\u003c\/p\u003e\n\u003cdiv style=\"justify-content: center;\" class=\"af-btn-wrap\"\u003e\n\u003cbr\u003e\u003ca class=\"af-btn af-btn-secondary\" href=\"\/collections\/magnetic-towels\"\u003eShop Towels\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cp\u003e \u003c\/p\u003e","brand":"Aiming Fluid Golf","offers":[{"title":"White","offer_id":47801126420674,"sku":"K01","price":9.69,"currency_code":"USD","in_stock":true},{"title":"Black","offer_id":47801126453442,"sku":"K02","price":9.69,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0720\/6400\/8386\/files\/Black_Main_Image.jpg?v=1781294468"},{"product_id":"don-t-suck™-driver-headcover-premium-black-diamond-quilted-fit-460cc","title":"Don’t Suck™ Driver Headcover — Premium Black Diamond Quilted Fit (460cc)","description":"\u003cstyle\u003e\n\/* =========================\n   AF APPLE-STYLE DARK MODE — HEADCOVER PDP (FINAL)\n   LOCKED OPTION A PALETTE\n   ========================= *\/\n:root {\n  \/* Locked Palette *\/\n  --af-graphite: #0B0D0B;\n  --af-tech: #9FB8A0;\n  --af-olive: #1A2517;\n  --af-signal: #22C55E;\n\n  \/* Functional Mappings *\/\n  --bg-color: var(--af-graphite);\n  --card-bg: #0B0D0B;\n  --text-main: #f5f5f7;\n  --text-muted: #A3A3A8;\n  \n  \/* Borders \u0026 Shadows *\/\n  --border: rgba(159, 184, 160, 0.2); \n  --border-soft: rgba(159, 184, 160, 0.1);\n  --shadow: 0 20px 40px rgba(0,0,0,0.6);\n  --glow: 0 0 20px rgba(159, 184, 160, 0.15); \/* Premium lift *\/\n}\n\n.af-luxury-page {\n  background: var(--bg-color);\n  color: var(--text-main);\n  padding: 60px 20px;\n  font-family: -apple-system, BlinkMacSystemFont, \"SF Pro Text\", \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  line-height: 1.6;\n  -webkit-font-smoothing: antialiased;\n}\n.af-luxury-page * { box-sizing: border-box; }\n.af-container { max-width: 1000px; margin: 0 auto; }\n\n\/* HEADER \u0026 TYPOGRAPHY *\/\n.af-eyebrow {\n  color: var(--af-tech);\n  letter-spacing: .1em;\n  text-transform: uppercase;\n  font-weight: 800;\n  font-size: .75rem;\n  margin: 0 0 16px;\n  text-align: center;\n}\n.af-hero {\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  margin-bottom: 32px;\n}\n.af-hero h1 {\n  margin: 0 0 14px;\n  font-weight: 800;\n  line-height: 1.05;\n  font-size: clamp(2.5rem, 5vw, 4rem);\n  letter-spacing: -0.02em;\n  background: linear-gradient(180deg, #fff, #a1a1aa);\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  text-align: center;\n}\n.af-lead {\n  font-size: 1.3rem;\n  color: #fff;\n  font-weight: 750;\n  text-align: center;\n  margin: 12px 0 10px;\n}\n.af-lede {\n  margin: 0 auto 0;\n  max-width: 760px;\n  color: var(--text-muted);\n  font-size: 1.1rem;\n  text-align: center;\n  line-height: 1.6;\n}\n\n\/* CARDS *\/\n.af-card {\n  background: rgba(255,255,255,0.02);\n  border-radius: 24px;\n  padding: 32px;\n  margin: 24px 0;\n  border: 1px solid var(--border);\n  box-shadow: var(--shadow);\n}\n.af-card--tech {\n  background: linear-gradient(180deg, rgba(159,184,160,0.05), var(--af-graphite));\n  border: 1px solid rgba(159,184,160,0.25);\n}\n.af-card--glow {\n  box-shadow: var(--glow);\n  border-color: rgba(159,184,160,0.4);\n}\n.af-h2 {\n  margin: 0 0 12px;\n  font-size: 1.8rem;\n  line-height: 1.2;\n  font-weight: 800;\n  color: #fff;\n  letter-spacing: -0.01em;\n}\n.af-muted {\n  color: var(--text-muted);\n  font-size: 1.05rem;\n  margin: 0 0 1rem;\n}\n\n\/* PILL VALUE MODULE *\/\n.af-pill-module {\n  display: flex;\n  flex-wrap: wrap;\n  justify-content: center;\n  gap: 12px;\n  margin: 32px 0;\n}\n.af-pill {\n  background: rgba(255,255,255,0.05);\n  border: 1px solid var(--border);\n  color: #fff;\n  padding: 10px 20px;\n  border-radius: 999px;\n  font-size: 0.95rem;\n  font-weight: 600;\n  box-shadow: 0 4px 12px rgba(0,0,0,0.2);\n  display: flex;\n  align-items: center;\n  gap: 8px;\n}\n.af-pill::before {\n  content: \"•\";\n  color: var(--af-tech);\n  font-size: 1.2rem;\n  line-height: 0;\n}\n\n\/* IMAGE WRAPPERS *\/\n.af-img-wrap {\n  margin: 0 0 16px 0;\n  border-radius: 20px;\n  overflow: hidden;\n  border: 1px solid var(--border-soft);\n  background: #000;\n  position: relative;\n}\n.af-img { display: block; width: 100%; height: auto; }\n\n\/* BUTTONS *\/\n.af-btn-wrap {\n  display: flex;\n  justify-content: center;\n  flex-wrap: wrap;\n  gap: 12px;\n  margin-top: 20px;\n  align-items: center;\n}\n.af-btn {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  padding: 16px 32px;\n  border-radius: 999px;\n  font-weight: 750;\n  text-decoration: none;\n  font-size: 1.05rem;\n  transition: all .2s ease;\n  border: 0;\n  cursor: pointer;\n  min-height: 52px;\n}\n.af-btn-primary {\n  background: var(--af-signal);\n  color: #000;\n  border: 1px solid var(--af-signal);\n  font-weight: 900;\n  box-shadow: 0 4px 15px rgba(34, 197, 94, 0.4);\n}\n.af-btn-primary:hover { filter: brightness(1.1); transform: translateY(-2px); }\n.af-btn-secondary {\n  background: rgba(255,255,255,0.03);\n  color: #fff;\n  border: 1px solid rgba(255,255,255,0.15);\n  font-size: 1rem;\n}\n.af-btn-secondary:hover { background: rgba(255,255,255,0.08); border-color: #fff; }\n\n\/* INTERACTION MODULE *\/\n.af-hero-interaction {\n  background: rgba(255,255,255,0.03);\n  border: 1px solid var(--af-tech);\n  border-radius: 28px;\n  padding: 24px;\n  margin: 0 auto;\n  max-width: 580px;\n  width: 100%;\n  backdrop-filter: blur(10px);\n  text-align: center;\n  box-shadow: 0 20px 50px rgba(0,0,0,0.5);\n}\n.af-atc-toggle {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  gap: 12px;\n  color: #fff;\n  font-weight: 750;\n  cursor: pointer;\n  user-select: none;\n  margin-bottom: 8px;\n  font-size: 1.05rem;\n  background: rgba(255,255,255,0.05);\n  padding: 12px;\n  border-radius: 12px;\n  border: 1px solid var(--border);\n  transition: all 0.2s;\n}\n.af-atc-toggle:hover { border-color: var(--af-tech); }\n.af-atc-toggle input {\n  width: 20px;\n  height: 20px;\n  accent-color: var(--af-signal);\n  cursor: pointer;\n}\n.af-atc-subtext {\n  font-size: 0.9rem;\n  color: var(--af-tech);\n  margin-bottom: 16px;\n}\n\n\/* COMPLETE THE SET MODULE *\/\n.af-complete-set {\n  background: var(--af-olive);\n  border: 1px solid rgba(159,184,160,0.3);\n  border-radius: 24px;\n  padding: 30px;\n  margin: 32px 0;\n}\n.af-complete-card {\n  display: grid;\n  grid-template-columns: 1fr;\n  gap: 20px;\n  align-items: center;\n}\n@media (min-width: 600px) {\n  .af-complete-card { grid-template-columns: 140px 1fr; }\n}\n\n\/* DRAWERS \u0026 FAQ *\/\n.af-drawer, .af-faq {\n  border-top: 1px solid var(--border);\n  padding: 16px 0;\n  margin-top: 16px;\n}\n.af-drawer summary, .af-faq summary {\n  cursor: pointer;\n  font-weight: 700;\n  color: #fff;\n  font-size: 1.05rem;\n  list-style: none;\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n  padding: 4px 0;\n}\n.af-drawer summary::-webkit-details-marker { display: none; }\n.af-drawer summary::after, .af-faq summary::after { content: \"+\"; font-weight: 400; color: var(--text-muted); font-size: 1.5rem; }\n.af-drawer[open] summary::after, .af-faq[open] summary::after { content: \"−\"; }\n.af-drawer .af-drawer-body, .af-faq div { margin-top: 12px; color: var(--text-muted); line-height: 1.6; }\n\n\/* LISTS *\/\n.af-bullets { margin: 0; padding-left: 1.1rem; color: #e5e7eb; }\n.af-bullets li { margin: .5rem 0; }\n.af-bullets strong { color: #fff; }\n\n.af-grid-2 { display: grid; grid-template-columns: 1fr; gap: 24px; }\n@media (min-width: 768px) {\n  .af-grid-2 { grid-template-columns: 1fr 1fr; }\n}\n@media (max-width: 767px) {\n  .af-luxury-page { padding: 40px 16px; }\n  .af-card { padding: 24px; }\n  .af-btn { width: 100%; }\n}\n\n\/* STANDARDS *\/\n.af-standards-citation {\n  margin: 40px 0 0 0;\n  padding: 24px;\n  background: var(--af-olive);\n  border: 1px solid rgba(159,184,160,0.3);\n  border-radius: 20px;\n}\n\u003c\/style\u003e\n\u003cdiv class=\"af-luxury-page\"\u003e\n\u003cdiv class=\"af-container\"\u003e\n\u003cheader class=\"af-hero\"\u003e\n\u003cp class=\"af-eyebrow\"\u003eStructured Shell • Soft Lining • 460cc Fit\u003c\/p\u003e\n\u003ch1\u003eDon’t Suck™ Driver Headcover\u003c\/h1\u003e\n\u003cp class=\"af-lead\"\u003eA physical shield. A mental anchor.\u003c\/p\u003e\n\u003cp class=\"af-lede\"\u003ePremium protection for your driver. A clear signal for your mind. Designed for players who demand discipline on every tee box.\u003c\/p\u003e\n\u003cdiv class=\"af-hero-interaction af-card--glow\"\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cimg class=\"af-img\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated2ndimage.jpg?v=1768591058\" alt=\"Don't Suck Headcover\" loading=\"eager\"\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003clabel class=\"af-atc-toggle\"\u003e \u003cinput type=\"checkbox\" id=\"af-ds-bundle-toggle\"\u003e \u003cspan\u003eUpgrade: Add Towel + Tee Bundle\u003c\/span\u003e \u003c\/label\u003e\n\u003cp class=\"af-atc-subtext\"\u003eOne checkout. Adds both items to cart.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003cbutton type=\"button\" class=\"af-btn af-btn-primary\" data-af-atc=\"\"\u003eAdd to Cart\u003c\/button\u003e \u003ca class=\"af-btn af-btn-secondary\" href=\"#details\"\u003eSee Details\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-pill-module\"\u003e\n\u003cdiv class=\"af-pill\"\u003eStructured Shell\u003c\/div\u003e\n\u003cdiv class=\"af-pill\"\u003ePremium Lining\u003c\/div\u003e\n\u003cdiv class=\"af-pill\"\u003e460cc Fit\u003c\/div\u003e\n\u003cdiv class=\"af-pill\"\u003eIntentional Design\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/header\u003e\n\u003csection class=\"af-card\" id=\"details\"\u003e\n\u003ch2 class=\"af-h2\"\u003eThe Problem: Doubt and Damage\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eStandard covers fail twice. Physically, they offer thin protection against bag chatter. Mentally, they are just noise.\u003c\/p\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cimg class=\"af-img\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Gemini_Generated_Image_7vtycq7vtycq7vty.jpg?v=1770319686\" alt=\"Structured shell protection\" loading=\"lazy\"\u003e\u003c\/div\u003e\n\u003cp style=\"margin-bottom: 0;\" class=\"af-muted\"\u003eYou need gear that quiets the mind and protects the metal. The \u003cstrong\u003eDon’t Suck™ Headcover\u003c\/strong\u003e is your daily reset button.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card af-card--tech\"\u003e\n\u003ch2 class=\"af-h2\"\u003eEngineered to Protect\u003c\/h2\u003e\n\u003cdiv class=\"af-grid-2\"\u003e\n\u003cdiv\u003e\n\u003cp class=\"af-muted\"\u003eGolf is a mental game. What you see before you pull the club matters. This text is not a joke. It is a quiet command to reset, focus, and swing with intention.\u003c\/p\u003e\n\u003cul class=\"af-bullets\"\u003e\n\u003cli\u003e\n\u003cstrong\u003eStructured Shell:\u003c\/strong\u003e Synthetic leather holds its shape.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eQuilted Body:\u003c\/strong\u003e Adds rigidity and premium feel.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eSoft Lining:\u003c\/strong\u003e A plush barrier against scratches.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eModern Fit:\u003c\/strong\u003e Tailored specifically for 460cc heads.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eEmbroidery:\u003c\/strong\u003e Stitched deep for longevity.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cimg class=\"af-img\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Gemini_Generated_Image_u52wepu52wepu52w.jpg?v=1768586135\" alt=\"Detail shot of embroidery\" loading=\"lazy\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-complete-set\" aria-label=\"Complete the Don’t Suck setup\"\u003e\n\u003ch2 class=\"af-h2\"\u003eComplete the System\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eThe headcover protects the weapon. The towel + tees maintain the discipline.\u003c\/p\u003e\n\u003cdiv class=\"af-complete-card\"\u003e\n\u003cdiv style=\"margin: 0;\" class=\"af-img-wrap\"\u003e\u003cimg class=\"af-img\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updateoptimizedmainimage.jpg?v=1768591057\" alt=\"Don’t Suck towel and golf tee bundle\" loading=\"lazy\"\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cul style=\"margin-top: 0;\" class=\"af-bullets\"\u003e\n\u003cli\u003eClean clubs, every shot (Scrub → Wash → Dry)\u003c\/li\u003e\n\u003cli\u003eRepeatable, unbreakable tee setup\u003c\/li\u003e\n\u003cli\u003eUnified pro-level bag aesthetic\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cdiv style=\"justify-content: flex-start; margin-top: 16px;\" class=\"af-btn-wrap\"\u003e\n\u003cbutton type=\"button\" class=\"af-btn af-btn-primary\" data-af-add-bundle=\"\"\u003eAdd Bundle\u003c\/button\u003e \u003ca class=\"af-btn af-btn-secondary\" href=\"https:\/\/www.aimingfluidgolf.com\/products\/dont-suck-towel-tee-bundle\"\u003eView Details\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-grid-2\"\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eChoose Your Setup\u003c\/h2\u003e\n\u003cul class=\"af-bullets\"\u003e\n\u003cli\u003e\n\u003cstrong\u003eHeadcover only:\u003c\/strong\u003e Premium protection + mental edge.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eAdd the bundle:\u003c\/strong\u003e Complete discipline for every shot.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eBuild the bag:\u003c\/strong\u003e Intentionality in every piece of gear.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eFAQ\u003c\/h2\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eWill this fit my driver?\u003c\/summary\u003e\n\u003cdiv\u003eYes. It is engineered for modern 460cc drivers. If you play a standard driver, it fits.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eIs it real leather?\u003c\/summary\u003e\n\u003cdiv\u003eNo. We use a premium structured synthetic leather for superior durability and weather resistance.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eIs it printed or stitched?\u003c\/summary\u003e\n\u003cdiv\u003eStitched. High-quality embroidery that won't peel or fade.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eIs this a novelty cover?\u003c\/summary\u003e\n\u003cdiv\u003eNo. It is premium protective gear. The text is a psychological trigger for focus, not a punchline.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\" style=\"text-align: center;\"\u003e\n\u003ch2 class=\"af-h2\"\u003ePut it on your driver\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003ePremium protection that sends a message. Lock in.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003cbutton type=\"button\" class=\"af-btn af-btn-primary\" data-af-atc=\"\"\u003eAdd to Cart\u003c\/button\u003e \u003ca class=\"af-btn af-btn-secondary\" href=\"\/pages\/our-golf-gear-testing-design-standards\"\u003eTesting Standards\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-standards-citation\"\u003e\n\u003ch3 style=\"margin: 0 0 .75rem 0; font-size: 1.15rem; font-weight: 900; color: #ffffff;\"\u003eEvaluated Against Published Testing Standards\u003c\/h3\u003e\n\u003cp style=\"margin: 0 0 1rem 0; font-size: 1.02rem; color: #d1d5db; line-height: 1.6;\"\u003eThis product is evaluated using Aiming Fluid Golf’s published magnetic gear testing framework.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\u003ca href=\"\/pages\/our-golf-gear-testing-design-standards\" class=\"af-btn af-btn-secondary\"\u003eView Standards\u003c\/a\u003e\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cp\u003e\u003cscript\u003e\ndocument.addEventListener('DOMContentLoaded', function() {\n  const HEADCOVER_HANDLE = 'dont-suck-driver-headcover';\n  const BUNDLE_HANDLE = 'dont-suck-towel-tee-bundle';\n\n  async function getVariantId(handle) {\n    try {\n      const res = await fetch(`\/products\/${handle}.js`);\n      if (!res.ok) throw new Error('Product not found');\n      const product = await res.json();\n      const variant = product.variants.find(v =\u003e v.available);\n      return variant ? variant.id : null;\n    } catch (err) {\n      console.error('AF Error:', err);\n      return null;\n    }\n  }\n\n  async function addItemsToCart(items) {\n    try {\n      const res = await fetch('\/cart\/add.js', {\n        method: 'POST',\n        headers: { 'Content-Type': 'application\/json', 'Accept': 'application\/json' },\n        credentials: 'same-origin',\n        body: JSON.stringify({ items: items })\n      });\n      if (res.ok) {\n        window.location.href = '\/cart';\n      } else {\n        throw new Error('Add failed');\n      }\n    } catch (err) {\n      console.error(err);\n      if(items.length === 1) {\n         window.location.href = `\/cart\/add?id=${items[0].id}\u0026quantity=1`;\n      } else {\n         alert('Could not add to cart. Please try again.');\n      }\n    }\n  }\n\n  const mainBtns = document.querySelectorAll('[data-af-atc]');\n  const bundleToggle = document.getElementById('af-ds-bundle-toggle');\n\n  mainBtns.forEach(btn =\u003e {\n    btn.addEventListener('click', async function() {\n      const originalText = btn.textContent;\n      btn.textContent = 'Adding...';\n      btn.disabled = true;\n\n      const items = [];\n      const headcoverId = await getVariantId(HEADCOVER_HANDLE);\n      if (headcoverId) {\n        items.push({ id: headcoverId, quantity: 1 });\n      } else {\n        btn.textContent = 'Sold Out';\n        return;\n      }\n\n      if (bundleToggle \u0026\u0026 bundleToggle.checked) {\n        const bundleId = await getVariantId(BUNDLE_HANDLE);\n        if (bundleId) items.push({ id: bundleId, quantity: 1 });\n      }\n\n      if (items.length \u003e 0) {\n        await addItemsToCart(items);\n      } else {\n        btn.textContent = 'Error';\n        setTimeout(() =\u003e { btn.textContent = originalText; btn.disabled = false; }, 2000);\n      }\n    });\n  });\n\n  const bundleBtn = document.querySelector('[data-af-add-bundle]');\n  if (bundleBtn) {\n    bundleBtn.addEventListener('click', async function() {\n      const originalText = bundleBtn.textContent;\n      bundleBtn.textContent = 'Adding...';\n      bundleBtn.disabled = true;\n      const bundleId = await getVariantId(BUNDLE_HANDLE);\n      if (bundleId) {\n        await addItemsToCart([{ id: bundleId, quantity: 1 }]);\n      } else {\n        bundleBtn.textContent = 'Sold Out';\n      }\n    });\n  }\n});\n\u003c\/script\u003e \u003cscript type=\"application\/ld+json\"\u003e{\"@context\":\"https:\/\/schema.org\",\"@type\":\"FAQPage\",\"mainEntity\":[{\"@type\":\"Question\",\"name\":\"Will this fit my driver?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Yes if you have a modern 460cc driver (the current standard). If your head is a typical modern size, you’re good.\"}},{\"@type\":\"Question\",\"name\":\"Is it real leather?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"No. It’s structured synthetic leather designed for durability, shape retention, and a clean finish.\"}},{\"@type\":\"Question\",\"name\":\"Does the quilting do anything besides look good?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Yes. It adds structure and helps the cover hold form over time instead of collapsing into a floppy sock.\"}},{\"@type\":\"Question\",\"name\":\"Is the “DON’T SUCK” text printed or stitched?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Stitched. Clean white embroidery for longevity and a premium look.\"}},{\"@type\":\"Question\",\"name\":\"Is this a novelty headcover?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"No. The entire point is premium protection with restrained attitude, not a novelty cover.\"}},{\"@type\":\"Question\",\"name\":\"What pairs best with this headcover?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"For clean contact + repeatable tee starts, add the Don’t Suck™ Towel + Tee Bundle.\"}},{\"@type\":\"Question\",\"name\":\"Will it protect against bag chatter?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"It helps by combining a structured shell with a soft lining. You’ll get the most benefit if you put it back on after every shot.\"}},{\"@type\":\"Question\",\"name\":\"Who should skip this?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Skip it if you want loud novelty covers or if you never use headcovers at all.\"}}]}\u003c\/script\u003e\u003c\/p\u003e","brand":"Aiming Fluid Golf","offers":[{"title":"Default Title","offer_id":47801126486210,"sku":"21-H133-O0V3","price":64.69,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0720\/6400\/8386\/files\/ChatGPT_Image_May_4_2026_04_20_41_PM.png?v=1781294467"},{"product_id":"magna-anchor™-magnetic-golf-towel-stubby-16-24","title":"Magna-Anchor™ Magnetic Golf Towel – Stubby (16×24)","description":"\u003cstyle\u003e\n\n\n\/* =========================\n\n\n   AF APPLE-STYLE DARK MODE — STUBBY PDP (FINAL)\n\n\n   LOCKED OPTION A PALETTE\n\n\n   ========================= *\/\n\n\n:root {\n\n\n  \/* Locked Palette *\/\n\n\n  --af-graphite: #0B0D0B;\n\n\n  --af-tech: #9FB8A0;\n\n\n  --af-olive: #1A2517;\n\n\n  --af-signal: #22C55E;\n\n\n\n  \/* Functional Mappings *\/\n\n\n  --bg-color: var(--af-graphite);\n\n\n  --card-bg: #0B0D0B;\n\n\n  --text-main: #f5f5f7;\n\n\n  --text-muted: #A3A3A8;\n\n\n  \n\n\n  \/* Borders \u0026 Shadows *\/\n\n\n  --border: rgba(159, 184, 160, 0.2); \n\n\n  --border-soft: rgba(159, 184, 160, 0.1);\n\n\n  --shadow: 0 20px 40px rgba(0,0,0,0.6);\n\n\n  --glow: 0 0 20px rgba(159, 184, 160, 0.15); \/* Premium lift *\/\n\n\n}\n\n\n\n.af-luxury-page {\n\n\n  background: var(--bg-color);\n\n\n  color: var(--text-main);\n\n\n  padding: 60px 20px;\n\n\n  font-family: -apple-system, BlinkMacSystemFont, \"SF Pro Text\", \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n\n\n  line-height: 1.6;\n\n\n  -webkit-font-smoothing: antialiased;\n\n\n}\n\n\n.af-luxury-page * { box-sizing: border-box; }\n\n\n.af-container { max-width: 1000px; margin: 0 auto; }\n\n\n\n\/* HEADER \u0026 TYPOGRAPHY *\/\n\n\n.af-eyebrow {\n\n\n  color: var(--af-tech);\n\n\n  letter-spacing: .1em;\n\n\n  text-transform: uppercase;\n\n\n  font-weight: 800;\n\n\n  font-size: .75rem;\n\n\n  margin: 0 0 16px;\n\n\n  text-align: center;\n\n\n}\n\n\n.af-hero {\n\n\n  display: flex;\n\n\n  flex-direction: column;\n\n\n  align-items: center;\n\n\n  margin-bottom: 32px;\n\n\n}\n\n\n.af-hero h1 {\n\n\n  margin: 0 0 14px;\n\n\n  font-weight: 800;\n\n\n  line-height: 1.05;\n\n\n  font-size: clamp(2.5rem, 5vw, 4rem);\n\n\n  letter-spacing: -0.02em;\n\n\n  background: linear-gradient(180deg, #fff, #a1a1aa);\n\n\n  -webkit-background-clip: text;\n\n\n  -webkit-text-fill-color: transparent;\n\n\n  text-align: center;\n\n\n}\n\n\n.af-lead {\n\n\n  font-size: 1.3rem;\n\n\n  color: #fff;\n\n\n  font-weight: 750;\n\n\n  text-align: center;\n\n\n  margin: 12px 0 10px;\n\n\n}\n\n\n.af-lede {\n\n\n  margin: 0 auto 0;\n\n\n  max-width: 760px;\n\n\n  color: var(--text-muted);\n\n\n  font-size: 1.1rem;\n\n\n  text-align: center;\n\n\n  line-height: 1.6;\n\n\n}\n\n\n\n\/* CARDS *\/\n\n\n.af-card {\n\n\n  background: rgba(255,255,255,0.02);\n\n\n  border-radius: 24px;\n\n\n  padding: 32px;\n\n\n  margin: 24px 0;\n\n\n  border: 1px solid var(--border);\n\n\n  box-shadow: var(--shadow);\n\n\n}\n\n\n.af-card--tech {\n\n\n  background: linear-gradient(180deg, rgba(159,184,160,0.05), var(--af-graphite));\n\n\n  border: 1px solid rgba(159,184,160,0.25);\n\n\n}\n\n\n.af-card--glow {\n\n\n  box-shadow: var(--glow);\n\n\n  border-color: rgba(159,184,160,0.4);\n\n\n}\n\n\n.af-h2 {\n\n\n  margin: 0 0 12px;\n\n\n  font-size: 1.8rem;\n\n\n  line-height: 1.2;\n\n\n  font-weight: 800;\n\n\n  color: #fff;\n\n\n  letter-spacing: -0.01em;\n\n\n}\n\n\n.af-muted {\n\n\n  color: var(--text-muted);\n\n\n  font-size: 1.05rem;\n\n\n  margin: 0 0 1rem;\n\n\n}\n\n\n\n\/* VALUE SNAPSHOT MODULE (NEW) *\/\n\n\n.af-value-stack {\n\n\n  display: flex;\n\n\n  flex-direction: column;\n\n\n  gap: 16px;\n\n\n}\n\n\n.af-value-row {\n\n\n  display: flex;\n\n\n  align-items: flex-start;\n\n\n  gap: 16px;\n\n\n  padding: 12px 0;\n\n\n  border-bottom: 1px solid var(--border-soft);\n\n\n}\n\n\n.af-value-row:last-child { border-bottom: none; }\n\n\n.af-value-icon {\n\n\n  color: var(--af-tech);\n\n\n  font-size: 1.4rem;\n\n\n  line-height: 1;\n\n\n  flex-shrink: 0;\n\n\n  margin-top: 2px;\n\n\n}\n\n\n.af-value-content strong {\n\n\n  display: block;\n\n\n  color: #fff;\n\n\n  font-size: 1.05rem;\n\n\n  font-weight: 700;\n\n\n  margin-bottom: 4px;\n\n\n}\n\n\n.af-value-content span {\n\n\n  color: var(--text-muted);\n\n\n  font-size: 0.95rem;\n\n\n  line-height: 1.4;\n\n\n}\n\n\n\n\/* IMAGE WRAPPERS *\/\n\n\n.af-img-wrap {\n\n\n  margin: 0 0 16px 0;\n\n\n  border-radius: 20px;\n\n\n  overflow: hidden;\n\n\n  border: 1px solid var(--border-soft);\n\n\n  background: #000;\n\n\n  position: relative;\n\n\n}\n\n\n.af-img { display: block; width: 100%; height: auto; }\n\n\nvideo.af-img { border-radius: 20px; width: 100%; height: auto; }\n\n\n\n\/* BUTTONS *\/\n\n\n.af-btn-wrap {\n\n\n  display: flex;\n\n\n  justify-content: center;\n\n\n  flex-wrap: wrap;\n\n\n  gap: 12px;\n\n\n  margin-top: 20px;\n\n\n  align-items: center;\n\n\n}\n\n\n.af-btn {\n\n\n  display: inline-flex;\n\n\n  align-items: center;\n\n\n  justify-content: center;\n\n\n  padding: 16px 32px;\n\n\n  border-radius: 999px;\n\n\n  font-weight: 750;\n\n\n  text-decoration: none;\n\n\n  font-size: 1.05rem;\n\n\n  transition: all .2s ease;\n\n\n  border: 0;\n\n\n  cursor: pointer;\n\n\n  min-height: 52px;\n\n\n}\n\n\n.af-btn-primary {\n\n\n  background: var(--af-signal);\n\n\n  color: #000;\n\n\n  border: 1px solid var(--af-signal);\n\n\n  font-weight: 900;\n\n\n  box-shadow: 0 4px 15px rgba(34, 197, 94, 0.4);\n\n\n}\n\n\n.af-btn-primary:hover { filter: brightness(1.1); transform: translateY(-2px); }\n\n\n.af-btn-secondary {\n\n\n  background: rgba(255,255,255,0.03);\n\n\n  color: #fff;\n\n\n  border: 1px solid rgba(255,255,255,0.15);\n\n\n  font-size: 1rem;\n\n\n}\n\n\n.af-btn-secondary:hover { background: rgba(255,255,255,0.08); border-color: #fff; }\n\n\n\n\/* INTERACTION MODULE *\/\n\n\n.af-hero-interaction {\n\n\n  background: rgba(255,255,255,0.03);\n\n\n  border: 1px solid var(--af-tech);\n\n\n  border-radius: 28px;\n\n\n  padding: 24px;\n\n\n  margin: 0 auto;\n\n\n  max-width: 580px;\n\n\n  width: 100%;\n\n\n  backdrop-filter: blur(10px);\n\n\n  text-align: center;\n\n\n  \/* Glow applied via class in HTML, or default shadow here *\/\n\n\n  box-shadow: 0 20px 50px rgba(0,0,0,0.5);\n\n\n}\n\n\n.af-interaction-label {\n\n\n  font-size: .85rem;\n\n\n  text-transform: uppercase;\n\n\n  letter-spacing: .08em;\n\n\n  color: var(--af-tech);\n\n\n  margin-bottom: 12px;\n\n\n  font-weight: 800;\n\n\n  display: block;\n\n\n}\n\n\n.af-swatch-row {\n\n\n  display: flex;\n\n\n  justify-content: center;\n\n\n  gap: 14px;\n\n\n  margin-bottom: 16px;\n\n\n  flex-wrap: wrap;\n\n\n}\n\n\n.af-swatch {\n\n\n  width: 36px; height: 36px; border-radius: 50%;\n\n\n  border: 2px solid rgba(255,255,255,0.2);\n\n\n  cursor: pointer;\n\n\n  transition: transform .2s;\n\n\n  padding: 0;\n\n\n  background: #111;\n\n\n}\n\n\n.af-swatch:hover { transform: scale(1.15); border-color: #fff; }\n\n\n.af-swatch[aria-selected=\"true\"] {\n\n\n  border-color: var(--af-signal);\n\n\n  box-shadow: 0 0 0 4px rgba(34, 197, 94, 0.25);\n\n\n  transform: scale(1.15);\n\n\n}\n\n\n\/* Swatch Colors *\/\n\n\n.af-swatch[data-af-finish=\"Black\"], .af-swatch[data-af-bundle-finish=\"Black\"], .af-swatch[data-af-finish-both-stubby=\"Black\"], .af-swatch[data-af-finish-40=\"Black\"], .af-swatch[data-af-finish-both-40=\"Black\"] {background:#111;}\n\n\n.af-swatch[data-af-finish=\"Blue\"], .af-swatch[data-af-bundle-finish=\"Blue\"], .af-swatch[data-af-finish-both-stubby=\"Blue\"], .af-swatch[data-af-finish-40=\"Blue\"], .af-swatch[data-af-finish-both-40=\"Blue\"] {background:#1e3a8a;}\n\n\n.af-swatch[data-af-finish=\"Augusta Green\"], .af-swatch[data-af-bundle-finish=\"Augusta Green\"], .af-swatch[data-af-finish-both-stubby=\"Augusta Green\"], .af-swatch[data-af-finish-40=\"Green\"], .af-swatch[data-af-finish-both-40=\"Green\"] {background:#14532d;}\n\n\n.af-swatch[data-af-finish=\"Birdie Blue\"], .af-swatch[data-af-bundle-finish=\"Birdie Blue\"], .af-swatch[data-af-finish-both-stubby=\"Birdie Blue\"] {background:#0ea5e9;}\n\n\n.af-swatch[data-af-finish=\"Grey\"], .af-swatch[data-af-bundle-finish=\"Grey\"], .af-swatch[data-af-finish-both-stubby=\"Grey\"], .af-swatch[data-af-finish-40=\"Grey\"], .af-swatch[data-af-finish-both-40=\"Grey\"] {background:#4b5563;}\n\n\n.af-swatch[data-af-finish=\"Gunmetal Grey\"], .af-swatch[data-af-bundle-finish=\"Gunmetal Grey\"], .af-swatch[data-af-finish-both-stubby=\"Gunmetal Grey\"] {background:#374151;}\n\n\n.af-swatch[data-af-finish=\"Red\"], .af-swatch[data-af-bundle-finish=\"Red\"], .af-swatch[data-af-finish-both-stubby=\"Red\"] {background:#991b1b;}\n\n\n\n.af-nudge {\n\n\n  text-align: center;\n\n\n  margin-top: 12px;\n\n\n  color: var(--text-muted);\n\n\n  font-size: .95rem;\n\n\n}\n\n\n\n\/* STEPS *\/\n\n\n.af-steps {\n\n\n  display: grid;\n\n\n  grid-template-columns: 1fr;\n\n\n  gap: 20px;\n\n\n  margin-top: 20px;\n\n\n}\n\n\n.af-step {\n\n\n  background: rgba(159,184,160,0.05);\n\n\n  border: 1px solid rgba(159,184,160,0.2);\n\n\n  border-radius: 20px;\n\n\n  padding: 24px;\n\n\n}\n\n\n.af-step h3 {\n\n\n  margin: 16px 0 8px 0;\n\n\n  font-size: 1.3rem;\n\n\n  font-weight: 900;\n\n\n  color: var(--af-signal);\n\n\n  text-transform: uppercase;\n\n\n  letter-spacing: 0.02em;\n\n\n}\n\n\n.af-step p {\n\n\n  margin: 0;\n\n\n  color: #e5e7eb;\n\n\n  font-size: 1.1rem;\n\n\n  line-height: 1.5;\n\n\n}\n\n\n\n\/* DRAWERS *\/\n\n\n.af-drawer {\n\n\n  border-top: 1px solid var(--border);\n\n\n  padding: 16px 0;\n\n\n  margin-top: 16px;\n\n\n}\n\n\n.af-drawer summary {\n\n\n  cursor: pointer;\n\n\n  font-weight: 700;\n\n\n  color: #fff;\n\n\n  font-size: 1.05rem;\n\n\n  list-style: none;\n\n\n  display: flex;\n\n\n  justify-content: space-between;\n\n\n  align-items: center;\n\n\n  padding: 4px 0;\n\n\n}\n\n\n.af-drawer summary::-webkit-details-marker { display: none; }\n\n\n.af-drawer summary::after { content: \"+\"; font-weight: 400; color: var(--text-muted); font-size: 1.5rem; }\n\n\n.af-drawer[open] summary::after { content: \"−\"; }\n\n\n.af-drawer .af-drawer-body { margin-top: 12px; color: var(--text-muted); line-height: 1.6; }\n\n\n\n\/* LISTS *\/\n\n\n.af-bullets { margin: 0; padding-left: 1.1rem; color: #e5e7eb; }\n\n\n.af-bullets li { margin: .5rem 0; }\n\n\n.af-bullets strong { color: #fff; }\n\n\n  \n\n\n\/* TABLES \u0026 GRIDS *\/\n\n\n.af-compare-table {\n\n\n  width: 100%;\n\n\n  border-collapse: separate;\n\n\n  border-spacing: 0;\n\n\n  margin: 20px 0;\n\n\n  font-size: 1rem;\n\n\n  color: var(--text-main);\n\n\n  border: 1px solid var(--border);\n\n\n  border-radius: 12px;\n\n\n  overflow: hidden;\n\n\n}\n\n\n.af-compare-table th, .af-compare-table td { padding: 14px 16px; text-align: left; border-bottom: 1px solid var(--border-soft); }\n\n\n.af-compare-table th { background: rgba(159,184,160,0.1); color: #fff; font-weight: 700; }\n\n\n.af-compare-table td:first-child { font-weight: 700; color: var(--af-tech); width: 35%; }\n\n\n.af-compare-table tr:last-child td { border-bottom: none; }\n\n\n\n.af-grid-2 { display: grid; grid-template-columns: 1fr; gap: 24px; }\n\n\n@media (min-width: 768px) {\n\n\n  .af-grid-2 { grid-template-columns: 1fr 1fr; }\n\n\n  .af-bundle-preview { grid-template-columns: 1fr 1fr !important; }\n\n\n}\n\n\n@media (max-width: 767px) {\n\n\n  .af-luxury-page { padding: 40px 16px; }\n\n\n  .af-card { padding: 24px; }\n\n\n  .af-btn { width: 100%; }\n\n\n}\n\n\n\n\/* STANDARDS *\/\n\n\n.af-standards-citation {\n\n\n  margin: 40px 0 0 0;\n\n\n  padding: 24px;\n\n\n  background: var(--af-olive);\n\n\n  border: 1px solid rgba(159,184,160,0.3);\n\n\n  border-radius: 20px;\n\n\n}\n\n\n\u003c\/style\u003e\n\u003cdiv class=\"af-luxury-page\"\u003e\n\u003cdiv class=\"af-container\"\u003e\n\u003cheader class=\"af-hero\"\u003e\n\u003cp class=\"af-eyebrow\"\u003eOn-Course Essentials • Compact 16×24\u003c\/p\u003e\n\u003ch1\u003eMagna-Anchor™ Stubby\u003c\/h1\u003e\n\u003cp class=\"af-lead\"\u003eClean contact. Calm decisions.\u003c\/p\u003e\n\u003cp class=\"af-lede\" style=\"margin-bottom: 24px;\"\u003eThe compact magnetic system that actually stays on your bag, not the ground.\u003c\/p\u003e\n\u003cdiv data-af-variant-sync=\"\" class=\"af-hero-interaction af-card--glow\"\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cimg class=\"af-img\" data-af-hero-img=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/2026_Amazon_Main_Image.jpg?v=1769714394\" alt=\"Magna-Anchor Magnetic Towel — Stubby\" loading=\"eager\"\u003e\u003c\/div\u003e\n\u003cspan class=\"af-interaction-label\"\u003eSelect Finish\u003c\/span\u003e\n\u003cdiv class=\"af-swatch-row\" role=\"listbox\" aria-label=\"Choose finish\"\u003e\n\u003cbutton class=\"af-swatch\" type=\"button\" data-af-finish=\"Black\" aria-label=\"Black\"\u003e\u003c\/button\u003e \u003cbutton class=\"af-swatch\" type=\"button\" data-af-finish=\"Blue\" aria-label=\"Blue\"\u003e\u003c\/button\u003e \u003cbutton class=\"af-swatch\" type=\"button\" data-af-finish=\"Augusta Green\" aria-label=\"Augusta Green\"\u003e\u003c\/button\u003e \u003cbutton class=\"af-swatch\" type=\"button\" data-af-finish=\"Birdie Blue\" aria-label=\"Birdie Blue\"\u003e\u003c\/button\u003e \u003cbutton class=\"af-swatch\" type=\"button\" data-af-finish=\"Grey\" aria-label=\"Grey\"\u003e\u003c\/button\u003e \u003cbutton class=\"af-swatch\" type=\"button\" data-af-finish=\"Gunmetal Grey\" aria-label=\"Gunmetal Grey\"\u003e\u003c\/button\u003e \u003cbutton class=\"af-swatch\" type=\"button\" data-af-finish=\"Red\" aria-label=\"Red\"\u003e\u003c\/button\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-nudge\" data-af-status=\"\"\u003ePick a finish to see it.\u003c\/div\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003cbutton class=\"af-btn af-btn-primary\" type=\"button\" data-af-atc=\"\"\u003eAdd Stubby to Cart\u003c\/button\u003e \u003ca class=\"af-btn af-btn-secondary\" href=\"#workflow\"\u003eSee the Routine\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-card af-card--glow\" style=\"margin-top: 32px; padding: 24px;\"\u003e\n\u003cdiv class=\"af-value-stack\"\u003e\n\u003cdiv class=\"af-value-row\"\u003e\n\u003cdiv class=\"af-value-icon\"\u003e◉\u003c\/div\u003e\n\u003cdiv class=\"af-value-content\"\u003e\n\u003cstrong\u003eAlways where you expect it\u003c\/strong\u003e \u003cspan\u003eNever search for your towel again.\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-value-row\"\u003e\n\u003cdiv class=\"af-value-icon\"\u003e◉\u003c\/div\u003e\n\u003cdiv class=\"af-value-content\"\u003e\n\u003cstrong\u003eClean grooves. Better contact.\u003c\/strong\u003e \u003cspan\u003ePredictable spin starts here.\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-value-row\"\u003e\n\u003cdiv class=\"af-value-icon\"\u003e◉\u003c\/div\u003e\n\u003cdiv class=\"af-value-content\"\u003e\n\u003cstrong\u003eStays clean all round\u003c\/strong\u003e \u003cspan\u003eCompact size stays off the ground.\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/header\u003e\n\u003csection class=\"af-card af-card--tech\" style=\"padding: 24px;\"\u003e\n\u003ch2 class=\"af-h2\" style=\"font-size: 1.4rem;\"\u003eWatch a golfer test it\u003c\/h2\u003e\n\u003cp class=\"af-muted\" style=\"font-size: 1rem;\"\u003eReal speed. Real routine.\u003c\/p\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cvideo class=\"af-img\" controls=\"controls\" playsinline=\"\" preload=\"metadata\" poster=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/2026_Amazon_Main_Image.jpg?v=1769714394\"\u003e\n\n\n      \u003csource src=\"https:\/\/cdn.shopify.com\/videos\/c\/o\/v\/01bd39c9ab2c44e6b5036037fc35b895.mp4\" type=\"video\/mp4\"\u003e\u003c\/video\u003e\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection id=\"workflow\" class=\"af-card af-card--tech\"\u003e\n\u003ch2 class=\"af-h2\"\u003eScrub → Wash → Dry\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eThree steps. No thinking. Clean gear without slowing the round.\u003c\/p\u003e\n\u003cdiv class=\"af-steps\" aria-label=\"Scrub Wash Dry steps\"\u003e\n\u003cdiv class=\"af-step\"\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cimg loading=\"lazy\" class=\"af-img\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Gemini_Generated_Image_x5yyywx5yyywx5yy.png?v=1770299282\" alt=\"Scrubbing club\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cvideo class=\"af-img\" controls=\"controls\" playsinline=\"\" preload=\"metadata\" poster=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Gemini_Generated_Image_x5yyywx5yyywx5yy.png?v=1770299282\"\u003e\u003csource src=\"https:\/\/cdn.shopify.com\/videos\/c\/o\/v\/60c75c71626e4e409c45f976ad497ce7.mov\" type=\"video\/quicktime\"\u003e\u003csource src=\"https:\/\/cdn.shopify.com\/videos\/c\/o\/v\/60c75c71626e4e409c45f976ad497ce7.mov\" type=\"video\/mp4\"\u003e\u003c\/source\u003e\u003c\/video\u003e\u003c\/div\u003e\n\u003ch3\u003e1. Scrub\u003c\/h3\u003e\n\u003cp\u003eLoosen what wiping can’t remove. The scrub pad applies focused friction to break packed debris free.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-step\"\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cimg loading=\"lazy\" class=\"af-img\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Gemini_Generated_Image_8sxn1w8sxn1w8sxn.png?v=1770299798\" alt=\"Washing ball\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cvideo class=\"af-img\" controls=\"controls\" playsinline=\"\" preload=\"metadata\" poster=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Gemini_Generated_Image_8sxn1w8sxn1w8sxn.png?v=1770299798\"\u003e\u003csource src=\"https:\/\/cdn.shopify.com\/videos\/c\/o\/v\/40052d60ea544d01bf589309f85e13f3.mov\" type=\"video\/quicktime\"\u003e\u003csource src=\"https:\/\/cdn.shopify.com\/videos\/c\/o\/v\/40052d60ea544d01bf589309f85e13f3.mov\" type=\"video\/mp4\"\u003e\u003c\/source\u003e\u003c\/video\u003e\u003c\/div\u003e\n\u003ch3\u003e2. Wash\u003c\/h3\u003e\n\u003cp\u003eRinse grime away. The wet pocket keeps mud off your grips and hands.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-step\"\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cimg loading=\"lazy\" class=\"af-img\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Gemini_Generated_Image_wqabnrwqabnrwqab.jpg?v=1770300553\" alt=\"Drying ball\"\u003e\u003c\/div\u003e\n\u003ch3\u003e3. Dry\u003c\/h3\u003e\n\u003cp\u003eRestore clean contact. A dry ball flies true and rolls true.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection id=\"instant-access\" class=\"af-card af-card--tech\" style=\"margin-top: 40px;\"\u003e\n\u003ch2 class=\"af-h2\"\u003eMake it automatic: Instant Access Upgrade\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eStop chasing your towel. Give it a home.\u003c\/p\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\n\u003cdiv class=\"af-bundle-preview\" style=\"display: grid; grid-template-columns: 1fr; gap: 12px;\"\u003e\n\u003cimg loading=\"lazy\" class=\"af-img\" data-af-bundle-pad-img=\"\" alt=\"Magnetic Landing Pad preview\"\u003e \u003cimg loading=\"lazy\" class=\"af-img\" data-af-bundle-stubby-img=\"\" alt=\"Stubby towel bundle preview\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/2026_Amazon_Main_Image.jpg?v=1769714394\"\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cspan class=\"af-interaction-label\"\u003ePick Bundle Finish\u003c\/span\u003e\n\u003cdiv aria-label=\"Choose finish for bundle\" role=\"listbox\" class=\"af-swatch-row\" data-af-bundle-variant-sync=\"\"\u003e\n\u003cbutton class=\"af-swatch\" data-af-bundle-finish=\"Black\" type=\"button\"\u003e\u003c\/button\u003e \u003cbutton class=\"af-swatch\" data-af-bundle-finish=\"Blue\" type=\"button\"\u003e\u003c\/button\u003e \u003cbutton class=\"af-swatch\" data-af-bundle-finish=\"Augusta Green\" type=\"button\"\u003e\u003c\/button\u003e \u003cbutton class=\"af-swatch\" data-af-bundle-finish=\"Birdie Blue\" type=\"button\"\u003e\u003c\/button\u003e \u003cbutton class=\"af-swatch\" data-af-bundle-finish=\"Grey\" type=\"button\"\u003e\u003c\/button\u003e \u003cbutton class=\"af-swatch\" data-af-bundle-finish=\"Gunmetal Grey\" type=\"button\"\u003e\u003c\/button\u003e \u003cbutton class=\"af-swatch\" data-af-bundle-finish=\"Red\" type=\"button\"\u003e\u003c\/button\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003cbutton data-af-atc-bundle=\"\" class=\"af-btn af-btn-primary\" type=\"button\"\u003eAdd Stubby + Landing Pad\u003c\/button\u003e \u003ca href=\"\/products\/magnetic-landing-pad\" class=\"af-btn af-btn-secondary\"\u003eView Pad Details\u003c\/a\u003e\n\u003c\/div\u003e\n\u003cdetails class=\"af-drawer\" style=\"margin-top: 24px;\"\u003e\n\u003csummary\u003eWhy access is the multiplier\u003c\/summary\u003e\n\u003cdiv class=\"af-drawer-body\"\u003eAccess friction kills routines. If the towel doesn’t re-dock to the same spot every time, you stop using it. The Landing Pad creates a guaranteed, steel-core docking point so Stubby is always where your hand expects it.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-grid-2\"\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eWho it’s for\u003c\/h2\u003e\n\u003cul class=\"af-bullets\"\u003e\n\u003cli\u003e\n\u003cstrong\u003eWalkers:\u003c\/strong\u003e compact size reduces drag risk.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eFast players:\u003c\/strong\u003e quickest clean-and-dock routine.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eMinimalists:\u003c\/strong\u003e function without chaos.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eWho it’s not for\u003c\/h2\u003e\n\u003cul class=\"af-bullets\"\u003e\n\u003cli\u003e\n\u003cstrong\u003eMaximum-coverage riders:\u003c\/strong\u003e if you need a huge wet zone, choose The 40.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eClip lovers:\u003c\/strong\u003e if you prefer dangly towels, this system isn't for you.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eProof \u0026amp; Method\u003c\/h2\u003e\n\u003cdetails class=\"af-drawer\"\u003e\n\u003csummary\u003eWhat we test\u003c\/summary\u003e\n\u003cdiv class=\"af-drawer-body\"\u003eWe test magnet strength (retention), scrub pad effectiveness (cleaning), ease of access (usability), and stitching quality (durability). Reliability beats marketing hype.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-drawer\"\u003e\n\u003csummary\u003eWhy rinse beats smear\u003c\/summary\u003e\n\u003cdiv class=\"af-drawer-body\"\u003eWiping dirt on a dry towel just moves it around. The wet wash pocket rinses debris off the club so you don't transfer mud to your hands or grips.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-drawer\"\u003e\n\u003csummary\u003eWhy docking beats clipping\u003c\/summary\u003e\n\u003cdiv class=\"af-drawer-body\"\u003eClips require two hands or awkward fumbling. Magnetic docking is instant and one-handed, removing friction from your routine so you actually use the towel.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-drawer\"\u003e\n\u003csummary\u003eCare \u0026amp; wash instructions\u003c\/summary\u003e\n\u003cdiv class=\"af-drawer-body\"\u003eWash cold on gentle cycle. Air dry or tumble dry low. Do not use high heat, as it can degrade microfiber performance. Magnet is sealed.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-drawer\"\u003e\n\u003csummary\u003eFull comparison: Stubby vs The 40\u003c\/summary\u003e\n\u003cdiv class=\"af-drawer-body\"\u003e\n\u003ctable class=\"af-compare-table\"\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth scope=\"col\"\u003eFeature\u003c\/th\u003e\n\u003cth scope=\"col\"\u003eStubby (16×24)\u003c\/th\u003e\n\u003cth scope=\"col\"\u003eThe 40 (16×40)\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003cth scope=\"row\"\u003eSize\u003c\/th\u003e\n\u003ctd\u003eCompact (16\" x 24\")\u003c\/td\u003e\n\u003ctd\u003eLarge (16\" x 40\")\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth scope=\"row\"\u003eBest for\u003c\/th\u003e\n\u003ctd\u003eWalkers, Fast Routine\u003c\/td\u003e\n\u003ctd\u003eRiders, Muddy Rounds\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth scope=\"row\"\u003eWet\/Dry\u003c\/th\u003e\n\u003ctd\u003eSingle wash pocket\u003c\/td\u003e\n\u003ctd\u003eDual wash pockets\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n\u003c\/details\u003e\n\u003c\/section\u003e\n\u003csection id=\"other-options\" style=\"display: block;\"\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eNeed more towel?\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eMeet \"The 40\" (16x40). Best for riders and mud.\u003c\/p\u003e\n\u003cdiv class=\"af-hero-interaction\" data-af-the40-sync=\"\"\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cimg loading=\"lazy\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/mAIN_IMAGE_UPDATE_28.jpg?v=1767904750\" data-af-the40-img=\"\" class=\"af-img\" alt=\"The 40 Magnetic Towel\"\u003e\u003c\/div\u003e\n\u003cspan class=\"af-interaction-label\"\u003eFinish\u003c\/span\u003e\n\u003cdiv class=\"af-swatch-row\" role=\"listbox\"\u003e\n\u003cbutton class=\"af-swatch\" data-af-finish-40=\"Black\"\u003e\u003c\/button\u003e \u003cbutton class=\"af-swatch\" data-af-finish-40=\"Blue\"\u003e\u003c\/button\u003e \u003cbutton class=\"af-swatch\" data-af-finish-40=\"Green\"\u003e\u003c\/button\u003e \u003cbutton class=\"af-swatch\" data-af-finish-40=\"Grey\"\u003e\u003c\/button\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\u003cbutton type=\"button\" class=\"af-btn af-btn-secondary\" data-af-atc-40=\"\"\u003eAdd The 40 Bundle\u003c\/button\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eRun both?\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eStubby for dirt. The 40 for hands\/grips.\u003c\/p\u003e\n\u003cdiv style=\"margin-top: 14px;\"\u003e\n\u003cdiv style=\"margin-bottom: 24px;\" data-af-both-stubby-sync=\"\"\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cimg loading=\"lazy\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/2026_Amazon_Main_Image.jpg?v=1769714394\" data-af-both-stubby-img=\"\" class=\"af-img\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"af-swatch-row\"\u003e\n\u003cbutton class=\"af-swatch\" data-af-finish-both-stubby=\"Black\"\u003e\u003c\/button\u003e\u003cbutton class=\"af-swatch\" data-af-finish-both-stubby=\"Blue\"\u003e\u003c\/button\u003e\u003cbutton class=\"af-swatch\" data-af-finish-both-stubby=\"Augusta Green\"\u003e\u003c\/button\u003e\u003cbutton class=\"af-swatch\" data-af-finish-both-stubby=\"Birdie Blue\"\u003e\u003c\/button\u003e\u003cbutton class=\"af-swatch\" data-af-finish-both-stubby=\"Grey\"\u003e\u003c\/button\u003e\u003cbutton class=\"af-swatch\" data-af-finish-both-stubby=\"Gunmetal Grey\"\u003e\u003c\/button\u003e\u003cbutton class=\"af-swatch\" data-af-finish-both-stubby=\"Red\"\u003e\u003c\/button\u003e\u003cbr\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv data-af-both-40-sync=\"\"\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cimg loading=\"lazy\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/mAIN_IMAGE_UPDATE_28.jpg?v=1767904750\" data-af-both-40-img=\"\" class=\"af-img\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"af-swatch-row\"\u003e\n\u003cbutton class=\"af-swatch\" data-af-finish-both-40=\"Black\"\u003e\u003c\/button\u003e\u003cbutton class=\"af-swatch\" data-af-finish-both-40=\"Blue\"\u003e\u003c\/button\u003e\u003cbutton class=\"af-swatch\" data-af-finish-both-40=\"Green\"\u003e\u003c\/button\u003e\u003cbutton class=\"af-swatch\" data-af-finish-both-40=\"Grey\"\u003e\u003c\/button\u003e\u003cbr\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-btn-wrap\" style=\"margin-top: 14px;\"\u003e\u003cbutton type=\"button\" class=\"af-btn af-btn-secondary\" data-af-atc-both=\"\"\u003eAdd Both Towels\u003c\/button\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection style=\"text-align: center;\" class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eClean contact. Reliable feedback.\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eStart with Stubby. Upgrade your system.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003cbutton class=\"af-btn af-btn-primary\" type=\"button\" data-af-atc=\"\"\u003eAdd Stubby to cart\u003c\/button\u003e \u003ca class=\"af-btn af-btn-secondary\" href=\"\/pages\/our-golf-gear-testing-design-standards\"\u003eTesting Standards\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-standards-citation\"\u003e\n\u003ch3 style=\"margin: 0 0 .75rem 0; font-size: 1.15rem; font-weight: 900; color: #ffffff;\"\u003eEvaluated Against Published Testing Standards\u003c\/h3\u003e\n\u003cp style=\"margin: 0 0 1rem 0; font-size: 1.02rem; color: #d1d5db; line-height: 1.6;\"\u003eThis product is evaluated using Aiming Fluid Golf’s published magnetic gear testing framework.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\u003ca class=\"af-btn af-btn-secondary\" href=\"\/pages\/our-golf-gear-testing-design-standards\"\u003eView Standards\u003c\/a\u003e\u003c\/div\u003e\n\u003c\/section\u003e\n\u003cscript type=\"application\/ld+json\"\u003e{\"@context\":\"https:\/\/schema.org\",\"@type\":\"FAQPage\",\"mainEntity\":[{\"@type\":\"Question\",\"name\":\"Will this towel drag on the ground?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Stubby is sized at 16×24 to reduce drag risk compared to oversized towels, especially on carry bags. Placement still matters, but the compact footprint helps.\"}},{\"@type\":\"Question\",\"name\":\"What is the scrub pad for?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"It’s for breaking up dried mud and sand in grooves before you wipe clean with the microfiber. Think “loosen first, wipe second.”\"}},{\"@type\":\"Question\",\"name\":\"Where is the magnet and how does it attach?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"The magnet sits under the silicone patch. It’s designed to dock to common metal surfaces like clubs and other magnetic-friendly spots. For a guaranteed bag dock point, use the Landing Pad.\"}},{\"@type\":\"Question\",\"name\":\"Do I need a Landing Pad?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"If your bag’s magnetic surfaces are inconsistent (or basically non-magnetic), the Landing Pad gives you a steel-core docking spot so the towel re-docks the same way every time.\"}},{\"@type\":\"Question\",\"name\":\"Can I wash it?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Yes. Wash cold on gentle\/low spin and air dry. Avoid high heat; hot dryers can degrade microfiber performance over time.\"}}]}\u003c\/script\u003e \u003cscript\u003e\n\n\n(function(){\n\n\n  const finishToImage = {\"Red\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated_Main_Image_2.jpg?v=1769714394\",\"Birdie Blue\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/2026_Amazon_Main_Image_4a14208d-a588-4d0c-8257-be4c6f929d2c.jpg?v=1769714394\",\"Gunmetal Grey\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/2026_Main_Image_732dcd44-f78d-458d-bd41-2e148e5b7af7.jpg?v=1769714394\",\"Grey\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/2026_amazon_Main_Image_a81807c5-6f77-44c4-a531-5cf6b47a5bbd.jpg?v=1769714394\",\"Augusta Green\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/2026_Amazon_Main_Image_128423e7-67ac-4508-82b8-2b1076ec7e3e.jpg?v=1769714394\",\"Blue\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/2026_main_image.jpg?v=1769714394\",\"Black\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/2026_Amazon_Main_Image.jpg?v=1769714394\"};\n\n\n  const finishToImage40 = {\"Green\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/mAIN_IMAGE_UPDATE_29.jpg?v=1767904750\",\"Grey\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/mAIN_IMAGE_UPDATE_26.jpg?v=1764811297\",\"Blue\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/mAIN_IMAGE_UPDATE_27.jpg?v=1767904750\",\"Black\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/mAIN_IMAGE_UPDATE_28.jpg?v=1767904750\"};\n\n\n  const finishToVariantId40 = {\"Green\": 40882080153643,\"Grey\": 40882080088107,\"Blue\": 40882080055339,\"Black\": 40882080022571};\n\n\n  \n\n\n  \/\/ FIXED: Hardcoded Stubby IDs for \"Run Both\" section logic\n\n\n  const finishToVariantIdStubby = {\n\n\n    \"Red\": 40987341815851,\n\n\n    \"Birdie Blue\": 42663187546155,\n\n\n    \"Gunmetal Grey\": 41151790088235,\n\n\n    \"Grey\": 40882080743467,\n\n\n    \"Augusta Green\": 40882080776235,\n\n\n    \"Blue\": 40882080710699,\n\n\n    \"Black\": 40882080677931\n\n\n  };\n\n\n\n  const landingPadHandle = \"magnetic-landing-pad\";\n\n\n  const module = document.querySelector('[data-af-variant-sync]');\n\n\n  if(!module) return;\n\n\n  const status = module.querySelector('[data-af-status]');\n\n\n  const swatches = Array.from(module.querySelectorAll('[data-af-finish]'));\n\n\n  const heroImg = module.querySelector('[data-af-hero-img]');\n\n\n  const towelOnlyBtns = Array.from(document.querySelectorAll('[data-af-atc]'));\n\n\n  const bundleSwatches = Array.from(document.querySelectorAll('[data-af-bundle-finish]'));\n\n\n  const bundleStubbyImg = document.querySelector('[data-af-bundle-stubby-img]');\n\n\n  const bundlePadImg = document.querySelector('[data-af-bundle-pad-img]');\n\n\n  const bundleBtns = Array.from(document.querySelectorAll('[data-af-atc-bundle]'));\n\n\n  const bundleStatus = document.querySelector('[data-af-bundle-status]');\n\n\n  const swatches40 = Array.from(document.querySelectorAll('[data-af-finish-40]'));\n\n\n  const img40 = document.querySelector('[data-af-the40-img]');\n\n\n  const atc40Btn = document.querySelector('[data-af-atc-40]');\n\n\n  const status40 = document.querySelector('[data-af-the40-status]');\n\n\n  const bothStubbySwatches = Array.from(document.querySelectorAll('[data-af-finish-both-stubby]'));\n\n\n  const both40Swatches = Array.from(document.querySelectorAll('[data-af-finish-both-40]'));\n\n\n  const bothStubbyImg = document.querySelector('[data-af-both-stubby-img]');\n\n\n  const both40Img = document.querySelector('[data-af-both-40-img]');\n\n\n  const atcBothBtn = document.querySelector('[data-af-atc-both]');\n\n\n  const statusBoth = document.querySelector('[data-af-both-status]');\n\n\n  let selected40VariantId = finishToVariantId40['Black'];\n\n\n  let selectedBothStubbyFinish = 'Black';\n\n\n  let selectedBoth40VariantId = finishToVariantId40['Black'];\n\n\n  \n\n\n  function setStatus(msg){ if(status) status.textContent = msg; }\n\n\n  function setBundleStatus(msg){ if(bundleStatus) bundleStatus.textContent = msg; }\n\n\n  function norm(s){ return (s||'').toLowerCase().replace(\/\\s+\/g,' ').trim(); }\n\n\n  const variantSelect = document.querySelector('form[action^=\"\/cart\/add\"] select[name=\"id\"]') || document.querySelector('form[action*=\"\/cart\/add\"] select[name=\"id\"]') || document.querySelector('select[name=\"id\"]');\n\n\n  const nativeAtc = document.querySelector('form[action^=\"\/cart\/add\"] button[type=\"submit\"], form[action^=\"\/cart\/add\"] [type=\"submit\"]') || document.querySelector('form[action*=\"\/cart\/add\"] button[type=\"submit\"], form[action*=\"\/cart\/add\"] [type=\"submit\"]') || document.querySelector('button[name=\"add\"], button[type=\"submit\"][name=\"add\"]');\n\n\n  function findOptionByFinish(finishLabel){ if(!variantSelect || !variantSelect.options) return null; const finish = norm(finishLabel); return Array.from(variantSelect.options).find(o =\u003e norm(o.text).includes(finish)) || null; }\n\n\n  function setVariantByFinish(finishLabel){ if(variantSelect){ const opt = findOptionByFinish(finishLabel); if(opt){ variantSelect.value = opt.value; variantSelect.dispatchEvent(new Event('change', { bubbles:true })); return true; } } return false; }\n\n\n  function setImages(finishLabel){ const url = finishToImage[finishLabel]; if(!url) return; if(heroImg){ heroImg.src = url; heroImg.alt = 'Magna-Anchor Towel — Stubby — ' + finishLabel; } if(bundleStubbyImg){ bundleStubbyImg.src = url; bundleStubbyImg.alt = 'Stubby towel bundle preview — ' + finishLabel; } }\n\n\n  function setSelectedSwatches(finishLabel){ swatches.forEach(btn =\u003e btn.setAttribute('aria-selected', btn.dataset.afFinish === finishLabel ? 'true' : 'false')); bundleSwatches.forEach(btn =\u003e btn.setAttribute('aria-selected', btn.dataset.afBundleFinish === finishLabel ? 'true' : 'false')); }\n\n\n  function selectFinish(finishLabel){ setSelectedSwatches(finishLabel); setImages(finishLabel); const found = setVariantByFinish(finishLabel); setStatus(found ? ('Selected: ' + finishLabel) : ('Selected: ' + finishLabel + ' (Variant not found in dropdown)')); }\n\n\n  swatches.forEach(btn =\u003e btn.addEventListener('click', () =\u003e selectFinish(btn.dataset.afFinish)));\n\n\n  bundleSwatches.forEach(btn =\u003e btn.addEventListener('click', () =\u003e selectFinish(btn.dataset.afBundleFinish)));\n\n\n  swatches40.forEach(btn =\u003e btn.addEventListener('click', () =\u003e { const f = btn.getAttribute('data-af-finish-40'); swatches40.forEach(b =\u003e b.setAttribute('aria-selected', b.getAttribute('data-af-finish-40') === f ? 'true' : 'false')); if(img40 \u0026\u0026 finishToImage40[f]) img40.src = finishToImage40[f]; selected40VariantId = finishToVariantId40[f]; }));\n\n\n  bothStubbySwatches.forEach(btn =\u003e btn.addEventListener('click', () =\u003e { const f = btn.getAttribute('data-af-finish-both-stubby'); bothStubbySwatches.forEach(b =\u003e b.setAttribute('aria-selected', b.getAttribute('data-af-finish-both-stubby') === f ? 'true' : 'false')); if(bothStubbyImg \u0026\u0026 finishToImage[f]) bothStubbyImg.src = finishToImage[f]; selectedBothStubbyFinish = f; }));\n\n\n  both40Swatches.forEach(btn =\u003e btn.addEventListener('click', () =\u003e { const f = btn.getAttribute('data-af-finish-both-40'); both40Swatches.forEach(b =\u003e b.setAttribute('aria-selected', b.getAttribute('data-af-finish-both-40') === f ? 'true' : 'false')); if(both40Img \u0026\u0026 finishToImage40[f]) both40Img.src = finishToImage40[f]; selectedBoth40VariantId = finishToVariantId40[f]; }));\n\n\n  function clickNativeAtc(){ if(nativeAtc){ nativeAtc.click(); return true; } return false; }\n\n\n  towelOnlyBtns.forEach(b =\u003e b.addEventListener('click', () =\u003e { if(!clickNativeAtc()){ setStatus('Theme Add to Cart button not found.'); window.scrollTo({ top: 0, behavior: 'smooth' }); } }));\n\n\n  async function addToCart(items, statusEl, fallbackToNative = false){ if(statusEl) statusEl.textContent = \"Adding...\"; try{ const addRes = await fetch('\/cart\/add.js', { method: 'POST', headers: { 'Content-Type':'application\/json', 'Accept':'application\/json' }, credentials: 'same-origin', body: JSON.stringify({ items }) }); if(!addRes.ok) throw new Error('Add failed'); window.location.href = '\/cart'; } catch(e){ if(statusEl) statusEl.textContent = \"Error adding to cart.\"; if(fallbackToNative) clickNativeAtc(); } }\n\n\n  let cachedPadVariantId = null;\n\n\n  async function getLandingPadVariantId(){ if(cachedPadVariantId) return cachedPadVariantId; const res = await fetch('\/products\/' + landingPadHandle + '.js', { credentials: 'same-origin' }); if(!res.ok) throw new Error('Landing Pad product fetch failed.'); const data = await res.json(); const v = (data.variants || []).find(x =\u003e x.available) || (data.variants || [])[0]; if(!v || !v.id) throw new Error('Landing Pad variant not found.'); cachedPadVariantId = v.id; if(bundlePadImg \u0026\u0026 (data.featured_image || (data.images \u0026\u0026 data.images[0]))) bundlePadImg.src = data.featured_image || data.images[0]; return cachedPadVariantId; }\n\n\n  bundleBtns.forEach(b =\u003e b.addEventListener('click', async () =\u003e { if(!variantSelect || !variantSelect.value){ setBundleStatus('Pick a finish first.'); return; } const towelId = Number(variantSelect.value); try { const padId = await getLandingPadVariantId(); addToCart([{ id: towelId, quantity: 1 }, { id: Number(padId), quantity: 1 }], bundleStatus, true); } catch(e){ setBundleStatus(\"Error loading Landing Pad.\"); } }));\n\n\n  \n\n\n  if(atc40Btn){ atc40Btn.addEventListener('click', () =\u003e { if(!selected40VariantId){ if(status40) status40.textContent = \"Select a finish.\"; return; } addToCart([{ id: selected40VariantId, quantity: 1 }], status40, false); }); }\n\n\n  \n\n\n  \/\/ FIXED: ADD BOTH HANDLER USES HARDCODED STUBBY IDs\n\n\n  if(atcBothBtn){ \n\n\n    atcBothBtn.addEventListener('click', () =\u003e { \n\n\n      const stubbyId = finishToVariantIdStubby[selectedBothStubbyFinish];\n\n\n      if(!stubbyId || !selectedBoth40VariantId){ \n\n\n        if(statusBoth) statusBoth.textContent = \"Selection incomplete.\"; return; \n\n\n      } \n\n\n      addToCart([{ id: stubbyId, quantity: 1 }, { id: selectedBoth40VariantId, quantity: 1 }], statusBoth, false); \n\n\n    }); \n\n\n  }\n\n\n  \n\n\n  selectFinish('Black');\n\n\n  getLandingPadVariantId().catch(()=\u003e{});\n\n\n  if(swatches40[0]) swatches40[3].click();\n\n\n  if(bothStubbySwatches[0]) bothStubbySwatches[0].click();\n\n\n  if(both40Swatches[0]) both40Swatches[0].click();\n\n\n})();\n\n\n\u003c\/script\u003e\n\u003c\/div\u003e\n\u003c!-- AUTHORITY BRIDGE: Why Magnetic Towels Fall Off --\u003e\n\u003csection style=\"margin-top: 40px;\" class=\"af-card\"\u003e\n\u003ch3 style=\"margin-top: 0; color: #fff;\"\u003eWhy Magnetic Towels Fall Off (It’s Physics)\u003c\/h3\u003e\n\u003cp style=\"color: var(--text-muted); max-width: 700px;\"\u003eIf your magnetic golf towel keeps dropping off the cart rail, it’s not bad luck. Round rails create a geometry mismatch, vibration creates shear force, and aluminum frames kill magnetic hold. See the full breakdown.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\u003ca class=\"af-btn af-btn-secondary\" href=\"\/pages\/magnetic-golf-towel-that-doesnt-fall-off\"\u003e Read the Full Explanation \u003c\/a\u003e\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e","brand":"Aiming Fluid Golf","offers":[{"title":"Blue","offer_id":47801126781122,"sku":"AFMST2-BL","price":29.69,"currency_code":"USD","in_stock":true},{"title":"Black","offer_id":47801126813890,"sku":"AFMST2-B","price":29.69,"currency_code":"USD","in_stock":true},{"title":"Gunmetal Grey","offer_id":47801126846658,"sku":"MGTS-GG","price":29.69,"currency_code":"USD","in_stock":true},{"title":"Grey","offer_id":47801126879426,"sku":"AFMST2-G","price":29.69,"currency_code":"USD","in_stock":true},{"title":"Green","offer_id":47801126912194,"sku":"AFMST2-GR","price":29.69,"currency_code":"USD","in_stock":true},{"title":"Birdie Blue","offer_id":47801126944962,"sku":"AFMST2-BBL","price":29.69,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0720\/6400\/8386\/files\/aiming-fluid-golf-navy-magnetic-golf-towel-waffle-weave-a1b2c3.jpg?v=1781294467"},{"product_id":"leather-golf-utility-pouch-premium-leather","title":"Leather Golf Utility Pouch – Premium Leather","description":"\u003cstyle\u003e\n\/* =========================\n   AF LUXURY PAGE STYLES (Scoped \u0026 Premium)\n   ========================= *\/\n.af-luxury-page {\n  background: #050509;\n  color: #f3f4f6;\n  padding: 60px 20px;\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  line-height: 1.6;\n}\n.af-luxury-page * { box-sizing: border-box; }\n\n.af-container {\n  max-width: 1000px;\n  margin: 0 auto;\n}\n\n\/* TYPOGRAPHY *\/\n.af-eyebrow {\n  color: #34d399; \/* Brand Accent *\/\n  letter-spacing: 0.15em;\n  text-transform: uppercase;\n  font-weight: 700;\n  font-size: 0.75rem;\n  margin: 0 0 12px;\n  text-align: center;\n}\n\n.af-hero h1 {\n  margin: 0 0 16px;\n  font-weight: 800;\n  line-height: 1.1;\n  font-size: clamp(2.2rem, 5vw, 3.2rem);\n  letter-spacing: -0.02em;\n  color: #fff;\n  text-align: center;\n}\n\n.af-lead {\n  font-size: 1.25rem;\n  color: #fff;\n  font-weight: 700;\n  text-align: center;\n  margin-bottom: 24px;\n}\n\n.af-lede {\n  margin: 0 auto 40px;\n  max-width: 700px;\n  color: #9ca3af;\n  font-size: 1.1rem;\n  text-align: center;\n  line-height: 1.6;\n}\n\n\/* CONSOLE CARDS (Glassmorphism) *\/\n.af-card {\n  background: #111827;\n  border: 1px solid rgba(255,255,255,0.12);\n  border-radius: 24px;\n  padding: 40px;\n  margin-bottom: 24px;\n  box-shadow: 0 20px 40px -10px rgba(0,0,0,0.5);\n  position: relative;\n  overflow: hidden;\n}\n\n.af-h2 {\n  margin: 0 0 20px;\n  font-size: 1.75rem;\n  line-height: 1.2;\n  font-weight: 700;\n  color: #fff;\n}\n\n.af-muted {\n  color: #d1d5db;\n  font-size: 1.05rem;\n  margin-bottom: 1.5rem;\n}\n\n\/* EXECUTIVE SUMMARY (Highlight Box) *\/\n.af-exec-summary {\n  background: rgba(52, 211, 153, 0.1);\n  border: 1px solid rgba(52, 211, 153, 0.25);\n  border-radius: 16px;\n  padding: 24px;\n  margin-bottom: 30px;\n  text-align: left;\n}\n.af-exec-summary strong {\n  display: block;\n  font-size: 0.75rem;\n  letter-spacing: 0.1em;\n  text-transform: uppercase;\n  color: #34d399;\n  font-weight: 800;\n  margin-bottom: 8px;\n}\n.af-exec-summary p {\n  margin: 0;\n  color: #d1d5db;\n  font-size: 1rem;\n  line-height: 1.6;\n}\n\n\/* LISTS \u0026 STEPS *\/\n.af-list, .af-steps, ul {\n  margin: 0;\n  padding-left: 1.2rem;\n  color: #d1d5db;\n}\n.af-list li, .af-steps li, ul li {\n  margin: 0.8rem 0;\n}\n.af-list li strong, ul li strong {\n  color: #fff;\n}\n\n\/* CHIPS \u0026 CALLOUTS *\/\n.af-chip-row {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 8px;\n  margin-top: 24px;\n}\n.af-chip {\n  background: rgba(255,255,255,0.08);\n  border: 1px solid rgba(255,255,255,0.15);\n  color: #e5e7eb;\n  padding: 6px 14px;\n  border-radius: 999px;\n  font-size: 0.85rem;\n  font-weight: 500;\n}\n\n\/* FAQ (Accordion Style) *\/\n.af-faq {\n  border-top: 1px solid rgba(255,255,255,0.1);\n  padding: 16px 0;\n}\n.af-faq summary {\n  cursor: pointer;\n  font-weight: 700;\n  color: #fff;\n  font-size: 1.1rem;\n  list-style: none;\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n}\n.af-faq summary::-webkit-details-marker { display: none; }\n.af-faq summary::after {\n  content: \"+\";\n  font-weight: 400;\n  color: #9ca3af;\n  font-size: 1.5rem;\n}\ndetails[open] summary::after { content: \"−\"; }\n.af-faq div {\n  margin-top: 12px;\n  color: #d1d5db;\n  line-height: 1.6;\n}\n\n\/* BUTTONS (Apple Style) *\/\n.af-btn-wrap {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 12px;\n  margin-top: 24px;\n  justify-content: center;\n}\n.af-btn {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  padding: 12px 24px;\n  border-radius: 999px;\n  font-weight: 700;\n  text-decoration: none !important;\n  font-size: 0.95rem;\n  transition: all 0.2s ease;\n  cursor: pointer;\n  border: none;\n  font-family: inherit;\n}\n.af-btn:hover { transform: translateY(-2px); }\n\n.af-btn-primary {\n  background: #34d399;\n  color: #064e3b !important;\n  box-shadow: 0 4px 12px rgba(52, 211, 153, 0.3);\n}\n.af-btn-primary:hover {\n  background: #10b981;\n  box-shadow: 0 8px 20px rgba(52, 211, 153, 0.4);\n}\n\n.af-btn-secondary {\n  background: rgba(255,255,255,0.1);\n  color: #fff !important;\n  border: 1px solid rgba(255,255,255,0.1);\n}\n.af-btn-secondary:hover {\n  background: rgba(255,255,255,0.2);\n}\n\n\/* GRIDS for Who\/Not For *\/\n.af-grid-2 {\n  display: grid;\n  grid-template-columns: 1fr;\n  gap: 20px;\n}\n@media (min-width: 768px) {\n  .af-grid-2 { grid-template-columns: 1fr 1fr; }\n}\n\u003c\/style\u003e\n\u003cdiv class=\"af-luxury-page\"\u003e\n\u003cdiv class=\"af-container\"\u003e\n\u003cheader class=\"af-hero\"\u003e\n\u003cp class=\"af-eyebrow\"\u003eOn-Course Essentials • Diamond Stitch • 360° Swivel\u003c\/p\u003e\n\u003ch1\u003ePremium Leather Utility Pouch\u003c\/h1\u003e\n\u003cdiv class=\"af-exec-summary\"\u003e\n\u003cstrong\u003eTest Verdict\u003c\/strong\u003e\n\u003cp\u003eThis pouch solves the \"loose valuables\" problem with premium materials: structured leather, a smooth upgraded zipper, and a 360° swivel clip that won't twist. It features a soft lining to protect screens and an interior zip pocket for separation. \u003cbr\u003e\u003cbr\u003e\u003cstrong\u003eVerdict:\u003c\/strong\u003e Choose it if you carry a phone, wallet, keys, or sunglasses and want them protected and accessible; skip it if you prefer stuffing pockets.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cp class=\"af-lead\"\u003eStop playing pocket Tetris. Give your essentials a home.\u003c\/p\u003e\n\u003cp class=\"af-lede\"\u003eGolf bags swallow small items and scratch expensive ones. This pouch ends that nonsense by consolidating your essentials into one protected, zip-secure place that clips where you can reach it.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003ca class=\"af-btn af-btn-secondary\" href=\"#choose\"\u003eChoose Your Setup\u003c\/a\u003e \u003ca class=\"af-btn af-btn-secondary\" href=\"\/pages\/our-golf-gear-testing-design-standards\"\u003eTesting Standards\u003c\/a\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\u003c\/div\u003e\n\u003c\/header\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eWhat problem this solves\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003ePhones bounce around. Sunglasses get scuffed. Keys migrate to the bottom of your bag.\u003c\/p\u003e\n\u003cp class=\"af-muted\"\u003eThis utility pouch solves two specific issues: \u003cbr\u003e\u003cstrong\u003e1. Organization:\u003c\/strong\u003e Keeps your most-used items in one spot. \u003cbr\u003e\u003cstrong\u003e2. Protection:\u003c\/strong\u003e Soft lining and structured leather prevent scratches and damage.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eWhat makes it different\u003c\/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003eStructured Leather:\u003c\/strong\u003e Diamond stitching holds shape, unlike floppy nylon sacks.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eSecure Zipper:\u003c\/strong\u003e Upgraded smooth action built for daily use.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eSoft Lining:\u003c\/strong\u003e Protects phone screens and lenses.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eInterior Zip Pocket:\u003c\/strong\u003e Separates keys\/cash so they don't scratch your phone.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003e360° Swivel Clip:\u003c\/strong\u003e Hangs naturally on cart rails without twisting.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cdiv aria-hidden=\"true\" class=\"af-chip-row\"\u003e\n\u003cspan class=\"af-chip\"\u003eDiamond Stitch Leather\u003c\/span\u003e \u003cspan class=\"af-chip\"\u003eSoft Interior Lining\u003c\/span\u003e \u003cspan class=\"af-chip\"\u003e360° Swivel Clip\u003c\/span\u003e \u003cspan class=\"af-chip\"\u003eInterior Pocket\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-grid-2\"\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eWho it’s for\u003c\/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003eCart Riders:\u003c\/strong\u003e Clip it for fast access without digging.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eWalkers:\u003c\/strong\u003e Keep essentials stable without bulky pockets.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eTravelers:\u003c\/strong\u003e One pouch for course, airport, and events.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eWho it’s not for\u003c\/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003ePocket Purists:\u003c\/strong\u003e If you love stuff in your pockets, skip this.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eCheapest Option:\u003c\/strong\u003e If price is the only factor, look elsewhere.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection id=\"choose\" class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eChoose your setup\u003c\/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003eDefault Choice:\u003c\/strong\u003e Pick this if you carry valuables and want protection.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eIf Sunglasses Scratch:\u003c\/strong\u003e This is the fix.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eIf Keys Dig:\u003c\/strong\u003e The interior pocket solves this.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003ca class=\"af-btn af-btn-secondary\" href=\"\/collections\/magnetic-towels\"\u003eAdd Magnetic Towel\u003c\/a\u003e \u003ca class=\"af-btn af-btn-secondary\" href=\"\/collections\/magnetic-landing-pads\"\u003eAdd Landing Pad\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eHow to use it\u003c\/h2\u003e\n\u003col itemtype=\"https:\/\/schema.org\/HowTo\" itemscope=\"\" class=\"af-steps\"\u003e\n\u003cli itemprop=\"step\"\u003e\n\u003cstrong\u003eClip It:\u003c\/strong\u003e Attach to cart rail, bag D-ring, or strap using the swivel clip.\u003c\/li\u003e\n\u003cli itemprop=\"step\"\u003e\n\u003cstrong\u003eStore It:\u003c\/strong\u003e Phone\/wallet\/sunglasses in main; keys\/cash in zip pocket.\u003c\/li\u003e\n\u003cli itemprop=\"step\"\u003e\n\u003cstrong\u003eZip It:\u003c\/strong\u003e Close fully before moving to prevent spills.\u003c\/li\u003e\n\u003cli itemprop=\"step\"\u003e\n\u003cstrong\u003eClean It:\u003c\/strong\u003e Wipe leather with soft cloth; avoid soaking.\u003c\/li\u003e\n\u003c\/ol\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eProof and trust\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eWe build gear around repeatable routines. The goal isn't just \"storage\"—it's access and protection that you can trust round after round.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003ca class=\"af-btn af-btn-secondary\" href=\"\/pages\/our-golf-gear-testing-design-standards\"\u003eRead Testing Standards\u003c\/a\u003e \u003ca class=\"af-btn af-btn-secondary\" href=\"\/collections\/on-course-organization-system\"\u003eOrganization System\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eProduct FAQ\u003c\/h2\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eWhat fits inside?\u003c\/summary\u003e\n\u003cdiv\u003ePhone, wallet, keys, sunglasses, cash, tees, markers. The interior pocket handles small items like keys.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eWhy the 360° swivel clip?\u003c\/summary\u003e\n\u003cdiv\u003eCarts move and bags swing. The swivel prevents the pouch from twisting into awkward angles.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eIs it only for golf?\u003c\/summary\u003e\n\u003cdiv\u003eNo. It works as a premium travel pouch for backpacks, duffels, and luggage.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eHow do I care for the leather?\u003c\/summary\u003e\n\u003cdiv\u003eWipe with a soft cloth. Avoid soaking. Use a light conditioner occasionally if desired.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eWhat makes it \"premium\"?\u003c\/summary\u003e\n\u003cdiv\u003eStructure (diamond stitch), upgraded materials (soft lining, smooth zipper), and functional hardware (swivel clip).\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eWhat pairs best with this?\u003c\/summary\u003e\n\u003cdiv\u003ePair it with the Magna-Anchor towel for a complete on-course routine, or the Landing Pad for an anchor point.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003c\/section\u003e\n\u003csection id=\"buy\" style=\"text-align: center;\" class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eClip it on once\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eStop letting your bag treat valuables like pinballs. Clip this on and stop thinking about it.\u003c\/p\u003e\n\u003cdiv style=\"justify-content: center;\" class=\"af-btn-wrap\"\u003e\n\u003cbr\u003e\u003ca class=\"af-btn af-btn-secondary\" href=\"\/collections\/magnetic-towels\"\u003eShop Towels\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cp\u003e \u003c\/p\u003e","brand":"Aiming Fluid Golf","offers":[{"title":"Black","offer_id":47801127108802,"sku":"AFUP-B","price":39.95,"currency_code":"USD","in_stock":true},{"title":"Gray","offer_id":47801127141570,"sku":"AFUP-G","price":39.95,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0720\/6400\/8386\/files\/Gemini_Generated_Image_2ifz1v2ifz1v2ifz_1.png?v=1781294469"},{"product_id":"stubby-magnetic-golf-towel-landing-pad-system","title":"Stubby Magnetic Golf Towel + Landing Pad System","description":"\u003cstyle\u003e\n\/* =========================\n   AF LUXURY PAGE STYLES (Locked Option A)\n   ========================= *\/\n:root {\n  --af-graphite: #0B0D0B;\n  --af-tech: #9FB8A0;\n  --af-olive: #1A2517;\n  --af-signal: #22C55E;\n  \n  --bg-color: var(--af-graphite);\n  --card-bg: #0B0D0B;\n  --text-main: #f5f5f7;\n  --text-muted: #A3A3A8;\n  --border: rgba(159, 184, 160, 0.2); \n  --border-soft: rgba(159, 184, 160, 0.1);\n  --shadow: 0 20px 40px rgba(0,0,0,0.6);\n}\n\n.af-luxury-page {\n  background: var(--bg-color);\n  color: var(--text-main);\n  padding: 60px 20px;\n  font-family: -apple-system, BlinkMacSystemFont, \"SF Pro Text\", \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  line-height: 1.6;\n  -webkit-font-smoothing: antialiased;\n}\n.af-luxury-page * { box-sizing: border-box; }\n.af-container { max-width: 1000px; margin: 0 auto; }\n\n\/* TYPOGRAPHY *\/\n.af-eyebrow {\n  color: var(--af-tech);\n  letter-spacing: .1em;\n  text-transform: uppercase;\n  font-weight: 800;\n  font-size: .75rem;\n  margin: 0 0 16px;\n  text-align: center;\n}\n.af-hero {\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  margin-bottom: 24px;\n}\n.af-hero h1 {\n  margin: 0 0 14px;\n  font-weight: 800;\n  line-height: 1.05;\n  font-size: clamp(2.25rem, 5vw, 3.75rem);\n  letter-spacing: -0.02em;\n  background: linear-gradient(180deg, #fff, #a1a1aa);\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  text-align: center;\n}\n.af-lead {\n  font-size: 1.2rem;\n  color: #fff;\n  font-weight: 750;\n  text-align: center;\n  margin: 12px 0 10px;\n}\n.af-lede {\n  margin: 0 auto 0;\n  max-width: 760px;\n  color: var(--text-muted);\n  font-size: 1.05rem;\n  text-align: center;\n  line-height: 1.65;\n}\n\n\/* CARDS *\/\n.af-card {\n  background: rgba(255,255,255,0.02);\n  border-radius: 24px;\n  padding: 34px;\n  margin: 18px 0;\n  border: 1px solid var(--border);\n  box-shadow: var(--shadow);\n}\n.af-card--tech {\n  background: linear-gradient(180deg, rgba(159,184,160,0.08), var(--af-graphite));\n  border: 1px solid rgba(159,184,160,0.3);\n}\n.af-h2 {\n  margin: 0 0 12px;\n  font-size: 1.7rem;\n  line-height: 1.2;\n  font-weight: 750;\n  color: #fff;\n  letter-spacing: -0.01em;\n}\n.af-muted {\n  color: var(--text-muted);\n  font-size: 1.02rem;\n  margin: 0 0 .9rem;\n}\n\n\/* EXEC SUMMARY *\/\n.af-exec-summary {\n  background: var(--af-olive);\n  border: 1px solid rgba(159,184,160,0.3);\n  border-radius: 20px;\n  padding: 20px;\n  margin: 0 auto 18px;\n  max-width: 860px;\n  text-align: left;\n}\n.af-exec-summary strong {\n  display: block;\n  font-size: .75rem;\n  letter-spacing: .05em;\n  text-transform: uppercase;\n  color: var(--af-tech);\n  font-weight: 900;\n  margin-bottom: 8px;\n}\n.af-exec-summary p {\n  margin: 0;\n  color: #e5e7eb;\n  font-size: 1.02rem;\n  line-height: 1.65;\n}\n\n\/* IMAGE WRAPPERS \u0026 VIDEO *\/\n.af-img-wrap {\n  margin: 0 0 14px 0;\n  border-radius: 18px;\n  overflow: hidden;\n  border: 1px solid var(--border-soft);\n  background: rgba(255,255,255,0.02);\n}\n.af-img {\n  display: block;\n  width: 100%;\n  height: auto;\n}\nvideo.af-img {\n  width: 100%;\n  height: auto;\n  display: block;\n  border-radius: 18px;\n  object-fit: cover;\n}\n\n\/* LISTS *\/\n.af-bullets { margin: 0; padding-left: 1.2rem; color: var(--text-muted); }\n.af-bullets li { margin: .75rem 0; }\n.af-bullets li strong { color: #fff; font-weight: 750; }\n\n\/* CHIPS *\/\n.af-chip-row {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 10px;\n  margin-top: 16px;\n  justify-content: center;\n}\n.af-chip {\n  background: rgba(159,184,160,0.1);\n  border: 1px solid rgba(159,184,160,0.25);\n  color: #e5e5e7;\n  padding: 8px 16px;\n  border-radius: 999px;\n  font-size: .9rem;\n  font-weight: 650;\n}\n\n\/* BUTTONS *\/\n.af-btn-wrap {\n  display: flex;\n  justify-content: center;\n  flex-wrap: wrap;\n  gap: 12px;\n  margin-top: 16px;\n  align-items: center;\n}\n.af-btn {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  padding: 14px 28px;\n  border-radius: 999px;\n  font-weight: 750;\n  text-decoration: none;\n  font-size: 1rem;\n  transition: all .2s ease;\n  border: 0;\n  cursor: pointer;\n  min-height: 48px;\n}\n.af-btn-primary {\n  background: var(--af-signal);\n  color: #000;\n  border: 1px solid var(--af-signal);\n  font-weight: 900;\n  box-shadow: 0 4px 12px rgba(34, 197, 94, 0.3);\n}\n.af-btn-primary:hover {\n  filter: brightness(1.1);\n  transform: translateY(-2px);\n}\n.af-btn-secondary {\n  background: transparent;\n  color: #fff;\n  border: 1px solid rgba(255,255,255,0.2);\n  font-size: .95rem;\n  padding: 12px 24px;\n}\n.af-btn-secondary:hover {\n  background: rgba(255,255,255,0.06);\n  border-color: rgba(255,255,255,0.4);\n  transform: translateY(-2px);\n}\n\n\/* INTERACTION MODULE *\/\n.af-hero-interaction {\n  background: rgba(255,255,255,0.03);\n  border: 1px solid var(--af-tech);\n  border-radius: 24px;\n  padding: 22px;\n  margin: 0 auto;\n  max-width: 560px;\n  width: 100%;\n  backdrop-filter: blur(10px);\n  text-align: center;\n  box-shadow: 0 10px 30px rgba(0,0,0,0.5);\n}\n.af-interaction-label {\n  font-size: .8rem;\n  text-transform: uppercase;\n  letter-spacing: .05em;\n  color: var(--af-tech);\n  margin-bottom: 10px;\n  font-weight: 800;\n  display: block;\n  text-align: center;\n}\n.af-swatch-row {\n  display: flex;\n  justify-content: center;\n  gap: 12px;\n  margin-bottom: 14px;\n  flex-wrap: wrap;\n}\n.af-swatch {\n  width: 32px; height: 32px; border-radius: 50%;\n  border: 2px solid rgba(255,255,255,0.2);\n  cursor: pointer;\n  transition: transform .2s, border-color .2s, box-shadow .2s;\n  padding: 0;\n  background: #111;\n  position: relative;\n}\n.af-swatch:hover { transform: scale(1.1); border-color: #fff; }\n.af-swatch[aria-selected=\"true\"] {\n  border-color: var(--af-signal);\n  box-shadow: 0 0 0 4px rgba(34, 197, 94, 0.2);\n  transform: scale(1.1);\n}\n\n\/* ROBUST SWATCH COLORS (CLASS BASED) *\/\n.af-bg-black { background: #111 !important; }\n.af-bg-blue { background: #1e3a8a !important; }\n.af-bg-green { background: #14532d !important; }\n.af-bg-birdie { background: #0ea5e9 !important; }\n.af-bg-grey { background: #4b5563 !important; }\n.af-bg-gunmetal { background: #374151 !important; }\n.af-bg-red { background: #991b1b !important; }\n\n.af-nudge {\n  text-align: center;\n  margin-top: 10px;\n  color: var(--text-muted);\n  font-size: .92rem;\n}\n\n\/* WORKFLOW STEPS *\/\n.af-steps {\n  display: grid;\n  grid-template-columns: 1fr; \/* Default mobile 1 col *\/\n  gap: 16px;\n  margin-top: 14px;\n}\n.af-step {\n  background: rgba(159,184,160,0.08);\n  border: 1px solid rgba(159,184,160,0.25);\n  border-radius: 18px;\n  padding: 24px;\n  display: flex;\n  flex-direction: column;\n  align-items: flex-start;\n  text-align: left;\n}\n.af-step h3 {\n  margin: 14px 0 8px 0;\n  font-size: 1.25rem;\n  font-weight: 900;\n  color: var(--af-signal);\n  text-transform: uppercase;\n  letter-spacing: 0.02em;\n}\n.af-step p {\n  margin: 0;\n  color: #d1d5db;\n  font-size: 1.05rem;\n  line-height: 1.5;\n}\n.af-step .af-chip {\n  color: var(--af-signal);\n  border-color: rgba(34, 197, 94, 0.5);\n  background: rgba(34, 197, 94, 0.1);\n}\n\n\/* COMPARISON TABLE *\/\n.af-compare-table {\n  width: 100%;\n  border-collapse: separate;\n  border-spacing: 0;\n  margin: 20px 0;\n  font-size: 0.95rem;\n  color: var(--text-main);\n  border: 1px solid var(--border);\n  border-radius: 12px;\n  overflow: hidden;\n}\n.af-compare-table caption {\n  font-weight: 700;\n  text-align: left;\n  margin-bottom: 10px;\n  color: var(--af-tech);\n  text-transform: uppercase;\n  font-size: 0.8rem;\n  letter-spacing: 0.05em;\n}\n.af-compare-table th, .af-compare-table td {\n  padding: 12px 16px;\n  text-align: left;\n  border-bottom: 1px solid var(--border-soft);\n}\n.af-compare-table th {\n  background: rgba(159,184,160,0.1);\n  color: #fff;\n  font-weight: 700;\n}\n.af-compare-table td:first-child {\n  font-weight: 600;\n  color: var(--af-tech);\n  width: 30%;\n}\n.af-compare-table tr:last-child td { border-bottom: none; }\n\n@media (max-width: 600px) {\n  .af-compare-table thead { display: none; }\n  .af-compare-table, .af-compare-table tbody, .af-compare-table tr, .af-compare-table td {\n    display: block; width: 100%;\n  }\n  .af-compare-table tr {\n    margin-bottom: 16px;\n    background: rgba(255,255,255,0.03);\n    border: 1px solid var(--border);\n    border-radius: 12px;\n    padding: 12px;\n  }\n  .af-compare-table td {\n    padding: 8px 0;\n    border-bottom: 1px solid var(--border-soft);\n    display: flex;\n    justify-content: space-between;\n    align-items: center;\n  }\n  .af-compare-table td:last-child { border-bottom: none; }\n  .af-compare-table td::before {\n    content: attr(data-label);\n    font-weight: 700;\n    color: var(--af-tech);\n    margin-right: 12px;\n    text-transform: uppercase;\n    font-size: 0.75rem;\n  }\n}\n\n\/* GRIDS *\/\n.af-grid-2 { display: grid; grid-template-columns: 1fr; gap: 18px; }\n@media (min-width: 768px) {\n  .af-grid-2 { grid-template-columns: 1fr 1fr; }\n  .af-bundle-preview { grid-template-columns: 1fr 1fr !important; }\n}\n@media (max-width: 767px) {\n  .af-luxury-page { padding: 40px 16px; }\n  .af-card { padding: 26px; }\n  .af-btn { width: 100%; }\n}\n\n\/* FAQ *\/\n.af-faq { border-top: 1px solid var(--border); padding: 18px 0; }\n.af-faq summary {\n  cursor: pointer;\n  font-weight: 750;\n  color: #fff;\n  font-size: 1.05rem;\n  list-style: none;\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n  padding: 4px 0;\n}\n.af-faq summary::-webkit-details-marker { display: none; }\n.af-faq summary::after { content: \"+\"; font-weight: 400; color: var(--text-muted); font-size: 1.5rem; }\ndetails[open] summary::after { content: \"−\"; }\n.af-faq div { margin-top: 10px; color: var(--text-muted); line-height: 1.6; }\n\n\/* STANDARDS *\/\n.af-standards-citation {\n  margin: 2.2rem 0 0 0;\n  padding: 1.75rem 1.75rem;\n  background: var(--af-olive);\n  border: 1px solid rgba(159,184,160,0.3);\n  border-radius: 16px;\n}\n\u003c\/style\u003e\n\u003cdiv class=\"af-luxury-page\"\u003e\n\u003cdiv class=\"af-container\"\u003e\n\u003cheader class=\"af-hero\"\u003e\n\u003cp class=\"af-eyebrow\"\u003eInstant Access Bundle • Stubby + Landing Pad • Dock Inside Bag Dividers\u003c\/p\u003e\n\u003ch1\u003eStubby + Landing Pad — Instant Access Bundle\u003c\/h1\u003e\n\u003cdiv class=\"af-exec-summary\"\u003e\n\u003cstrong\u003eTest Verdict\u003c\/strong\u003e\n\u003cp\u003eThis system exists because access friction kills routines. If the towel isn’t in the exact same spot every time, you stop cleaning your clubs. The Landing Pad creates a \u003cstrong\u003eguaranteed steel-core docking point inside your bag between club dividers\u003c\/strong\u003e, so the Stubby towel stays protected, accessible, and off the ground. \u003cbr\u003e\u003cbr\u003e\u003cstrong\u003eVerdict:\u003c\/strong\u003e The essential upgrade for players who want their system to stick under pace and pressure.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cp class=\"af-lead\"\u003eCompact cleaning power + a consistent home base.\u003c\/p\u003e\n\u003cp class=\"af-lede\"\u003eDon't let a \"floating\" towel break your rhythm. Lock in your setup with the only magnetic system designed to dock inside your bag's dividers.\u003c\/p\u003e\n\u003cdiv style=\"margin-top: 14px;\" class=\"af-btn-wrap\"\u003e\n\u003ca class=\"af-btn af-btn-primary\" href=\"#bundle-hero\"\u003eAdd Bundle to cart\u003c\/a\u003e \u003ca style=\"border: 0; color: var(--text-muted);\" class=\"af-btn af-btn-secondary\" href=\"\/pages\/our-golf-gear-testing-design-standards\"\u003eTesting Standards\u003c\/a\u003e \u003ca style=\"border: 0; color: var(--text-muted);\" class=\"af-btn af-btn-secondary\" href=\"\/collections\/magnetic-towels\"\u003eShop Magnetic Towels\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/header\u003e\n\u003csection class=\"af-card af-card--tech\" id=\"bundle-hero\"\u003e\n\u003ch2 class=\"af-h2\"\u003eStubby + Landing Pad (Instant Access)\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eSelect your Stubby finish. The Landing Pad is included in the bundle.\u003c\/p\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated_Main.jpg?v=1769716373\" alt=\"Stubby towel + landing pad bundle\" data-af-stubby-img=\"\" class=\"af-img\" loading=\"lazy\"\u003e\u003c\/div\u003e\n\u003cspan data-af-label-stubby=\"\" class=\"af-interaction-label\"\u003ePick Finish: Black\u003c\/span\u003e\n\u003cdiv class=\"af-swatch-row\" role=\"listbox\" aria-label=\"Choose bundle finish\"\u003e\n\u003cbutton class=\"af-swatch af-bg-black\" type=\"button\" data-af-color-stubby=\"Black\" aria-label=\"Black\" aria-selected=\"false\"\u003e\u003c\/button\u003e \u003cbutton class=\"af-swatch af-bg-blue\" type=\"button\" data-af-color-stubby=\"Blue\" aria-label=\"Blue\" aria-selected=\"false\"\u003e\u003c\/button\u003e \u003cbutton class=\"af-swatch af-bg-green\" type=\"button\" data-af-color-stubby=\"Augusta Green\" aria-label=\"Augusta Green\" aria-selected=\"false\"\u003e\u003c\/button\u003e \u003cbutton class=\"af-swatch af-bg-birdie\" type=\"button\" data-af-color-stubby=\"Birdie Blue\" aria-label=\"Birdie Blue\" aria-selected=\"false\"\u003e\u003c\/button\u003e \u003cbutton class=\"af-swatch af-bg-grey\" type=\"button\" data-af-color-stubby=\"Grey\" aria-label=\"Grey\" aria-selected=\"false\"\u003e\u003c\/button\u003e \u003cbutton class=\"af-swatch af-bg-gunmetal\" type=\"button\" data-af-color-stubby=\"Gunmetal Grey\" aria-label=\"Gunmetal Grey\" aria-selected=\"false\"\u003e\u003c\/button\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\u003cbutton type=\"button\" class=\"af-btn af-btn-primary\" data-af-atc-stubby-bundle=\"\"\u003eAdd Stubby Bundle to Cart\u003c\/button\u003e\u003c\/div\u003e\n\u003cdiv style=\"margin-top: 12px;\" data-af-status-stubby=\"\" class=\"af-nudge\"\u003eTip: Landing Pad mounts inside the bag between club dividers.\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eIndependent on-course test\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eSee the routine under real pace: clean → re-dock → move on.\u003c\/p\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cvideo poster=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated_Main.jpg?v=1769716373\" preload=\"metadata\" playsinline=\"\" controls=\"controls\" class=\"af-img\"\u003e\n      \u003csource type=\"video\/mp4\" src=\"https:\/\/cdn.shopify.com\/videos\/c\/o\/v\/01bd39c9ab2c44e6b5036037fc35b895.mp4\"\u003e\u003c\/video\u003e\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card af-card--tech\" id=\"workflow\"\u003e\n\u003ch2 class=\"af-h2\"\u003eScrub → Wash → Dry (simple routine, repeatable results)\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eThis is the whole point: a sequence you’ll actually use on the course.\u003c\/p\u003e\n\u003cdiv class=\"af-steps\" aria-label=\"Scrub Wash Dry steps\"\u003e\n\u003cdiv class=\"af-step\"\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cimg class=\"af-img\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Gemini_Generated_Image_x5yyywx5yyywx5yy.png?v=1770299282\" alt=\"Close-up of a golf iron clubface being scrubbed\" loading=\"lazy\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cvideo poster=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Gemini_Generated_Image_x5yyywx5yyywx5yy.png?v=1770299282\" preload=\"metadata\" playsinline=\"\" controls=\"controls\" class=\"af-img\"\u003e\n    \u003csource type=\"video\/quicktime\" src=\"https:\/\/cdn.shopify.com\/videos\/c\/o\/v\/60c75c71626e4e409c45f976ad497ce7.mov\"\u003e\n    \u003csource type=\"video\/mp4\" src=\"https:\/\/cdn.shopify.com\/videos\/c\/o\/v\/60c75c71626e4e409c45f976ad497ce7.mov\"\u003e\u003c\/source\u003e\u003c\/video\u003e\u003c\/div\u003e\n\u003ch3\u003eScrub\u003c\/h3\u003e\n\u003cp\u003e\u003cstrong data-start=\"311\" data-end=\"347\"\u003eLoosen what wiping can’t remove.\u003c\/strong\u003e\u003cbr data-start=\"347\" data-end=\"350\"\u003ePacked sand, mud, and grass lock into grooves and don’t come out with a casual wipe. The scrub pad applies focused friction to break debris free so the grooves can actually do their job instead of masking spin and launch.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-step\"\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cimg class=\"af-img\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Gemini_Generated_Image_8sxn1w8sxn1w8sxn.png?v=1770299798\" alt=\"Golf ball being rinsed inside a wet wash pocket\" loading=\"lazy\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cvideo poster=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Gemini_Generated_Image_8sxn1w8sxn1w8sxn.png?v=1770299798\" preload=\"metadata\" playsinline=\"\" controls=\"controls\" class=\"af-img\"\u003e\n    \u003csource type=\"video\/quicktime\" src=\"https:\/\/cdn.shopify.com\/videos\/c\/o\/v\/40052d60ea544d01bf589309f85e13f3.mov\"\u003e\n    \u003csource type=\"video\/mp4\" src=\"https:\/\/cdn.shopify.com\/videos\/c\/o\/v\/40052d60ea544d01bf589309f85e13f3.mov\"\u003e\u003c\/source\u003e\u003c\/video\u003e\u003c\/div\u003e\n\u003ch3\u003eWash\u003c\/h3\u003e\n\u003cp\u003e\u003cstrong data-start=\"591\" data-end=\"633\"\u003eFlush contamination out of the system.\u003c\/strong\u003e\u003cbr data-start=\"633\" data-end=\"636\"\u003eOnce debris is loosened, it has to go somewhere. The wet wash pocket rinses grime away instead of smearing it across the towel. This keeps dirt isolated and prevents re-contaminating the ball, face, or grips.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-step\"\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cimg class=\"af-img\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Gemini_Generated_Image_wqabnrwqabnrwqab.jpg?v=1770300553\" alt=\"Clean, dry golf ball held in a dry microfiber towel\" loading=\"lazy\"\u003e\u003c\/div\u003e\n\u003ch3\u003eDry\u003c\/h3\u003e\n\u003cp\u003e\u003cstrong data-start=\"863\" data-end=\"907\"\u003eRestore clean contact and true feedback.\u003c\/strong\u003e\u003cbr data-start=\"907\" data-end=\"910\"\u003eDrying isn’t cosmetic. A clean, dry ball and face restore predictable friction at impact and a truer roll on the green. This is the step that turns “clean enough” into consistent results.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\" id=\"the40-bundle\"\u003e\n\u003ch2 class=\"af-h2\"\u003eNeed more coverage? The 40 Bundle\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eIf you ride often or deal with heavy mud, step up to The 40 (16×40) + Landing Pad bundle.\u003c\/p\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/mAIN_IMAGE_UPDATE_28.jpg?v=1767904750\" alt=\"The 40 towel + landing pad bundle\" data-af-40-img=\"\" class=\"af-img\" loading=\"lazy\"\u003e\u003c\/div\u003e\n\u003cspan data-af-label-40=\"\" class=\"af-interaction-label\"\u003ePick Finish: Black\u003c\/span\u003e\n\u003cdiv class=\"af-swatch-row\" role=\"listbox\" aria-label=\"Choose 40 bundle finish\"\u003e\n\u003cbutton aria-label=\"Black\" data-af-color-40=\"Black\" class=\"af-swatch af-bg-black\" type=\"button\"\u003e\u003c\/button\u003e \u003cbutton aria-label=\"Blue\" data-af-color-40=\"Blue\" class=\"af-swatch af-bg-blue\" type=\"button\"\u003e\u003c\/button\u003e \u003cbutton aria-label=\"Green\" data-af-color-40=\"Green\" class=\"af-swatch af-bg-green\" type=\"button\"\u003e\u003c\/button\u003e \u003cbutton aria-label=\"Grey\" data-af-color-40=\"Grey\" class=\"af-swatch af-bg-grey\" type=\"button\"\u003e\u003c\/button\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\u003cbutton type=\"button\" class=\"af-btn af-btn-secondary\" data-af-atc-40-bundle=\"\"\u003eAdd The 40 Bundle\u003c\/button\u003e\u003c\/div\u003e\n\u003cdiv style=\"margin-top: 12px;\" data-af-status-40=\"\" class=\"af-nudge\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\" id=\"towel-only\"\u003e\n\u003ch2 class=\"af-h2\"\u003eJust need the towel?\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eIf you already have a Landing Pad or a magnet-friendly bag, grab the Stubby solo.\u003c\/p\u003e\n\u003cdiv class=\"af-hero-interaction\"\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cimg class=\"af-img\" data-af-towel-only-img=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated_Main.jpg?v=1769716373\" alt=\"Magna-Anchor Magnetic Towel — Stubby\" loading=\"lazy\"\u003e\u003c\/div\u003e\n\u003cspan data-af-label-towel=\"\" class=\"af-interaction-label\"\u003ePick Finish: Black\u003c\/span\u003e\n\u003cdiv class=\"af-swatch-row\" role=\"listbox\" aria-label=\"Choose towel finish\"\u003e\n\u003cbutton class=\"af-swatch af-bg-black\" type=\"button\" data-af-color-towel=\"Black\" aria-label=\"Black\" aria-selected=\"false\"\u003e\u003c\/button\u003e \u003cbutton class=\"af-swatch af-bg-blue\" type=\"button\" data-af-color-towel=\"Blue\" aria-label=\"Blue\" aria-selected=\"false\"\u003e\u003c\/button\u003e \u003cbutton class=\"af-swatch af-bg-green\" type=\"button\" data-af-color-towel=\"Augusta Green\" aria-label=\"Augusta Green\" aria-selected=\"false\"\u003e\u003c\/button\u003e \u003cbutton class=\"af-swatch af-bg-birdie\" type=\"button\" data-af-color-towel=\"Birdie Blue\" aria-label=\"Birdie Blue\" aria-selected=\"false\"\u003e\u003c\/button\u003e \u003cbutton class=\"af-swatch af-bg-grey\" type=\"button\" data-af-color-towel=\"Grey\" aria-label=\"Grey\" aria-selected=\"false\"\u003e\u003c\/button\u003e \u003cbutton class=\"af-swatch af-bg-gunmetal\" type=\"button\" data-af-color-towel=\"Gunmetal Grey\" aria-label=\"Gunmetal Grey\" aria-selected=\"false\"\u003e\u003c\/button\u003e \u003cbutton class=\"af-swatch af-bg-red\" type=\"button\" data-af-color-towel=\"Red\" aria-label=\"Red\" aria-selected=\"false\"\u003e\u003c\/button\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\u003cbutton class=\"af-btn af-btn-secondary\" data-af-atc-towel=\"\"\u003eAdd Stubby Only\u003c\/button\u003e\u003c\/div\u003e\n\u003cdiv style=\"margin-top: 12px;\" data-af-status-towel=\"\" class=\"af-nudge\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eBundle vs. Towel Only\u003c\/h2\u003e\n\u003ctable class=\"af-compare-table\"\u003e\n\u003ccaption\u003eQuick Spec Check\u003c\/caption\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth scope=\"col\"\u003eFeature\u003c\/th\u003e\n\u003cth scope=\"col\"\u003eBundle (Stubby + Pad)\u003c\/th\u003e\n\u003cth scope=\"col\"\u003eStubby Only\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003cth scope=\"row\"\u003eWhat you get\u003c\/th\u003e\n\u003ctd data-label=\"Bundle\"\u003eTowel + Steel Docking Pad\u003c\/td\u003e\n\u003ctd data-label=\"Stubby Only\"\u003eTowel Only\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth scope=\"row\"\u003eBest for\u003c\/th\u003e\n\u003ctd data-label=\"Bundle\"\u003eAny Bag (Stand or Cart)\u003c\/td\u003e\n\u003ctd data-label=\"Stubby Only\"\u003eMagnet-Friendly Bags\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth scope=\"row\"\u003eDocking reliability\u003c\/th\u003e\n\u003ctd data-label=\"Bundle\"\u003e100% Consistent\u003c\/td\u003e\n\u003ctd data-label=\"Stubby Only\"\u003eDepends on Surface\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\" aria-label=\"Product FAQ\"\u003e\n\u003ch2 class=\"af-h2\"\u003eSystem FAQ\u003c\/h2\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eWhere does the Landing Pad mount?\u003c\/summary\u003e\n\u003cdiv\u003eInside your golf bag between club dividers. It’s a stable internal docking surface for the towel. It does not mount on cart frames or rails.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eDoes this work with any golf bag?\u003c\/summary\u003e\n\u003cdiv\u003eYes, the Landing Pad clip is designed to fit standard bag dividers. It creates a magnetic spot where none existed before.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eDo I still need the carabiner?\u003c\/summary\u003e\n\u003cdiv\u003eThe carabiner acts as a backup or for hanging drying. For the active routine, you'll use the Magna-Anchor™ to dock to the Landing Pad.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eCan I buy the towel without the pad?\u003c\/summary\u003e\n\u003cdiv\u003eYes, see the \"Just need the towel?\" section above. However, the bundle is recommended for the most consistent experience.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eCan I wash the towel?\u003c\/summary\u003e\n\u003cdiv\u003eYes. Wash cold on gentle\/low spin and air dry. Avoid high heat; hot dryers can degrade microfiber performance over time.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003c\/section\u003e\n\u003csection style=\"text-align: center;\" class=\"af-card\" aria-label=\"Final call to action\"\u003e\n\u003ch2 class=\"af-h2\"\u003eClean contact. Reliable feedback. Fewer “what the hell was that” shots.\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eStart with the bundle. Upgrade your system.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003cbutton class=\"af-btn af-btn-primary\" type=\"button\" data-af-atc-stubby-bundle=\"\"\u003eAdd Bundle to cart\u003c\/button\u003e \u003ca class=\"af-btn af-btn-secondary\" href=\"#towel-only\"\u003eAdd towel only\u003c\/a\u003e \u003ca class=\"af-btn af-btn-secondary\" href=\"\/pages\/our-golf-gear-testing-design-standards\"\u003eTesting Standards\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-standards-citation\"\u003e\n\u003ch3 style=\"margin: 0 0 .75rem 0; font-size: 1.15rem; font-weight: 900; color: #ffffff;\"\u003eEvaluated Against Published Testing Standards\u003c\/h3\u003e\n\u003cp style=\"margin: 0 0 1rem 0; font-size: 1.02rem; color: #d1d5db; line-height: 1.6;\"\u003eThis product is evaluated using Aiming Fluid Golf’s published magnetic gear testing framework. The framework defines how magnetic towels and docking systems are assessed across retention, cleaning effectiveness, usability, durability, and compatibility under real on-course conditions.\u003c\/p\u003e\n\u003cp style=\"margin: 0 0 1.25rem 0; font-size: .95rem; color: #cbd5d1;\"\u003eThe standards page documents evaluation criteria, common failure modes, and the scorecard logic used to assess magnetic golf gear independent of product marketing claims.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\u003ca href=\"\/pages\/our-golf-gear-testing-design-standards\" class=\"af-btn af-btn-secondary\"\u003eView Testing \u0026amp; Design Standards\u003c\/a\u003e\u003c\/div\u003e\n\u003c\/section\u003e\n\u003cscript type=\"application\/ld+json\"\u003e\n{\n  \"@context\":\"https:\/\/schema.org\",\n  \"@type\":\"FAQPage\",\n  \"mainEntity\":[\n    {\"@type\":\"Question\",\"name\":\"Where does the Landing Pad mount?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Inside your golf bag between club dividers. It’s a stable internal docking surface for the towel. It does not mount on cart frames or rails.\"}},\n    {\"@type\":\"Question\",\"name\":\"Does this work with any golf bag?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Yes, the Landing Pad clip is designed to fit standard bag dividers. It creates a magnetic spot where none existed before.\"}},\n    {\"@type\":\"Question\",\"name\":\"Do I still need the carabiner?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"The carabiner acts as a backup or for hanging drying. For the active routine, you'll use the Magna-Anchor™ to dock to the Landing Pad.\"}},\n    {\"@type\":\"Question\",\"name\":\"Can I buy the towel without the pad?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Yes, see the \\\"Just need the towel?\\\" section above. However, the bundle is recommended for the most consistent experience.\"}},\n    {\"@type\":\"Question\",\"name\":\"Can I wash the towel?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Yes. Wash cold on gentle\/low spin and air dry. Avoid high heat; hot dryers can degrade microfiber performance over time.\"}}\n  ]\n}\n\u003c\/script\u003e \u003cscript\u003e\n(function(){\n  \/\/ --- DATA MAPS (STUBBY BUNDLE) ---\n  const stubbyMap = {\n    \"Birdie Blue\": { img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated_Main_Image_8b752204-9ca3-4e0b-a73c-0103ff9c5dc4.jpg?v=1769716337\", id: \"42694042091563\" },\n    \"Gunmetal Grey\": { img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated_Main_884c27fa-8120-4b53-89d4-73c7cb6bab01.jpg?v=1769716030\", id: \"42694042157099\" },\n    \"Grey\": { img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated_Main_c9189ce2-a536-4749-8f59-2eb39cc1f865.jpg?v=1769716373\", id: \"42694042124331\" },\n    \"Augusta Green\": { img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated_Main_3b5d1151-cbb9-4ad0-8fb3-67c875bf4ebd.jpg?v=1769715608\", id: \"42694042255403\" },\n    \"Blue\": { img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated_Main_87e9e13c-04a3-42bd-92df-ee89f7b17e34.jpg?v=1769716373\", id: \"42694042222635\" },\n    \"Black\": { img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated_Main.jpg?v=1769716373\", id: \"42694042189867\" }\n  };\n  \n  \/\/ --- DATA MAPS (THE 40 BUNDLE) ---\n  const the40Map = {\n    \"Green\": { img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated_Main_a9bf27d1-982b-4134-838c-4ba64802284c.jpg?v=1769717110\", id: \"42694796148779\" },\n    \"Grey\": { img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated_Main_70852911-336a-4f52-8952-ad7a71331ee4.jpg?v=1769717226\", id: \"42694796181547\" },\n    \"Blue\": { img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated_Main_5dc2ca4f-7081-4422-9bb5-ab1ed1d87985.jpg?v=1769717255\", id: \"42694796116011\" },\n    \"Black\": { img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated_Main_21196650-eeaf-4b5b-a449-9e56e0c587a1.jpg?v=1769716887\", id: \"42694796214315\" }\n  };\n\n  \/\/ --- DATA MAPS (STUBBY TOWEL ONLY) ---\n  const towelOnlyMap = {\n    \"Red\": { img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated_Main_Image_2.jpg?v=1769714394\", id: \"40987341815851\" },\n    \"Birdie Blue\": { img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/2026_Amazon_Main_Image_4a14208d-a588-4d0c-8257-be4c6f929d2c.jpg?v=1769714394\", id: \"42663187546155\" },\n    \"Gunmetal Grey\": { img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/2026_Main_Image_732dcd44-f78d-458d-bd41-2e148e5b7af7.jpg?v=1769714394\", id: \"41151790088235\" },\n    \"Grey\": { img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/2026_amazon_Main_Image_a81807c5-6f77-44c4-a531-5cf6b47a5bbd.jpg?v=1769714394\", id: \"40882080743467\" },\n    \"Augusta Green\": { img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/2026_Amazon_Main_Image_128423e7-67ac-4508-82b8-2b1076ec7e3e.jpg?v=1769714394\", id: \"40882080776235\" },\n    \"Blue\": { img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/2026_main_image.jpg?v=1769714394\", id: \"40882080710699\" },\n    \"Black\": { img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/2026_Amazon_Main_Image.jpg?v=1769714394\", id: \"40882080677931\" }\n  };\n\n  \/\/ --- STATE ---\n  let selectedStubbyFinish = 'Black';\n  let selected40Finish = 'Black';\n  let selectedTowelOnlyFinish = 'Black';\n\n  \/\/ --- HELPERS ---\n  function getAttr(el, name){ return el.getAttribute(name); }\n  function setStatus(el, msg){ if(el) el.textContent = msg; }\n  \n  \/\/ Generic Add to Cart (Single item)\n  async function addToCart(items, statusEl){\n    if(statusEl) statusEl.textContent = \"Adding...\";\n    try{\n        const res = await fetch('\/cart\/add.js', {\n            method: 'POST',\n            headers: { 'Content-Type': 'application\/json' },\n            body: JSON.stringify({ items })\n        });\n        if(!res.ok) throw new Error();\n        window.location.href = '\/cart';\n    } catch(e){\n        if(statusEl) statusEl.textContent = \"Add failed.\";\n    }\n  }\n\n  \/\/ --- 1. STUBBY BUNDLE LOGIC ---\n  const stubbySwatches = document.querySelectorAll('[data-af-color-stubby]');\n  const stubbyImg = document.querySelector('[data-af-stubby-img]');\n  const stubbyAtc = document.querySelectorAll('[data-af-atc-stubby-bundle]');\n  const stubbyLabel = document.querySelector('[data-af-label-stubby]');\n\n  stubbySwatches.forEach(btn =\u003e btn.addEventListener('click', () =\u003e {\n    const f = getAttr(btn, 'data-af-color-stubby');\n    selectedStubbyFinish = f;\n    stubbySwatches.forEach(b =\u003e b.setAttribute('aria-selected', getAttr(b, 'data-af-color-stubby') === f));\n    if(stubbyMap[f] \u0026\u0026 stubbyImg) stubbyImg.src = stubbyMap[f].img;\n    if(stubbyLabel) stubbyLabel.textContent = \"Pick Finish: \" + f;\n  }));\n\n  stubbyAtc.forEach(btn =\u003e btn.addEventListener('click', async () =\u003e {\n    const bundleId = Number(stubbyMap[selectedStubbyFinish].id);\n    await addToCart([{ id: bundleId, quantity: 1 }], null);\n  }));\n\n  \/\/ --- 2. THE 40 BUNDLE LOGIC ---\n  const swatches40 = document.querySelectorAll('[data-af-color-40]');\n  const img40 = document.querySelector('[data-af-40-img]');\n  const atc40 = document.querySelector('[data-af-atc-40-bundle]');\n  const label40 = document.querySelector('[data-af-label-40]');\n\n  swatches40.forEach(btn =\u003e btn.addEventListener('click', () =\u003e {\n    const f = getAttr(btn, 'data-af-color-40');\n    selected40Finish = f;\n    swatches40.forEach(b =\u003e b.setAttribute('aria-selected', getAttr(b, 'data-af-color-40') === f));\n    if(the40Map[f] \u0026\u0026 img40) img40.src = the40Map[f].img;\n    if(label40) label40.textContent = \"Pick Finish: \" + f;\n  }));\n\n  if(atc40){\n    atc40.addEventListener('click', async () =\u003e {\n      const bundleId = Number(the40Map[selected40Finish].id);\n      await addToCart([{ id: bundleId, quantity: 1 }], null);\n    });\n  }\n\n  \/\/ --- 3. TOWEL ONLY LOGIC ---\n  const towelSwatches = document.querySelectorAll('[data-af-color-towel]');\n  const towelImg = document.querySelector('[data-af-towel-only-img]');\n  const towelAtc = document.querySelector('[data-af-atc-towel]');\n  const towelLabel = document.querySelector('[data-af-label-towel]');\n\n  towelSwatches.forEach(btn =\u003e btn.addEventListener('click', () =\u003e {\n    const f = getAttr(btn, 'data-af-color-towel');\n    selectedTowelOnlyFinish = f;\n    towelSwatches.forEach(b =\u003e b.setAttribute('aria-selected', getAttr(b, 'data-af-color-towel') === f));\n    if(towelOnlyMap[f] \u0026\u0026 towelImg) towelImg.src = towelOnlyMap[f].img;\n    if(towelLabel) towelLabel.textContent = \"Pick Finish: \" + f;\n  }));\n\n  if(towelAtc){\n    towelAtc.addEventListener('click', async () =\u003e {\n        const id = Number(towelOnlyMap[selectedTowelOnlyFinish].id);\n        await addToCart([{ id, quantity: 1 }], null);\n    });\n  }\n\n  \/\/ Init Defaults\n  if(stubbySwatches.length) stubbySwatches[0].click(); \n  if(swatches40.length) swatches40[0].click();\n  if(towelSwatches.length) towelSwatches[towelSwatches.length - 1].click();\n\n})();\n\u003c\/script\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e","brand":"Aiming Fluid Golf","offers":[{"title":"Birdie Blue","offer_id":47801127174338,"sku":"AFSTLPB-BB","price":49.69,"currency_code":"USD","in_stock":true},{"title":"Gray","offer_id":47801127207106,"sku":"AFSTLPB-G","price":49.69,"currency_code":"USD","in_stock":true},{"title":"Gunmetal Grey","offer_id":47801127239874,"sku":"AFSTLPB-GG","price":49.69,"currency_code":"USD","in_stock":true},{"title":"Black","offer_id":47801127272642,"sku":"AFSTLPB-BK","price":49.69,"currency_code":"USD","in_stock":true},{"title":"Navy","offer_id":47801127305410,"sku":"AFSTLPB-BL","price":49.69,"currency_code":"USD","in_stock":true},{"title":"Green","offer_id":47801127338178,"sku":"AFSTLPB-GR","price":49.69,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0720\/6400\/8386\/files\/aiming-fluid-golf-navy-microfiber-golf-towel-landing-pad-bundle-a1b2c3.jpg?v=1781294468"},{"product_id":"limited-edition-divot-tool","title":"Limited Edition Divot Tool","description":"\u003c!-- META TITLE: Limited Edition Golf Divot Tool | Precision-Machined Aluminum --\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003c!-- META DESCRIPTION: A precision-machined aluminum golf divot tool, released in limited colors. Slim profile, pocket-ready design, and built for golfers who care about details. No restock planned. --\u003e\n\u003cstyle\u003e\n    \/* =========================\n      AF APPLE-STYLE DARK LUXURY — PDP DESCRIPTION MODULE (NO IMAGES)\n      Scoped: .af-le-divot\n      - exactly one H1\n      - exec summary directly after H1\n      - locked button system\n      - fast ATC via \/cart\/add.js + hard redirect to \/cart\n      - FAQ + FAQPage JSON-LD\n    ========================= *\/\n\n    .af-le-divot{\n      --bg:#050509;\n      --card:rgba(255,255,255,.03);\n      --card2:rgba(255,255,255,.02);\n      --text:#f3f4f6;\n      --muted:#9ca3af;\n      --muted2:#94a3b8;\n      --border:rgba(255,255,255,.10);\n      --border2:rgba(255,255,255,.08);\n      --accent:#22c55e;\n      --shadow:0 18px 40px rgba(0,0,0,.45);\n      font-family:-apple-system,BlinkMacSystemFont,\"SF Pro Text\",\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif;\n      background:var(--bg);\n      color:var(--text);\n      padding:44px 16px 54px;\n      line-height:1.65;\n      -webkit-font-smoothing:antialiased;\n      text-rendering:optimizeLegibility;\n      border-radius:18px;\n      border:1px solid rgba(255,255,255,.08);\n    }\n    .af-le-divot *{ box-sizing:border-box; }\n    .af-wrap{ max-width:980px; margin:0 auto; }\n\n    .af-kicker{\n      color:var(--accent);\n      text-transform:uppercase;\n      letter-spacing:.16em;\n      font-weight:900;\n      font-size:.78rem;\n      margin:0 0 10px;\n    }\n    .af-le-divot h1{\n      margin:0 0 10px;\n      font-size:clamp(1.85rem,3.6vw,2.55rem);\n      line-height:1.08;\n      letter-spacing:-.02em;\n    }\n    .af-sub{\n      margin:0 0 16px;\n      color:var(--muted2);\n      font-size:1.05rem;\n      max-width:82ch;\n    }\n\n    .af-exec-summary{\n      margin:16px 0 18px;\n      padding:16px 16px 14px;\n      border-radius:18px;\n      border:1px solid rgba(34,197,94,.22);\n      background:linear-gradient(180deg, rgba(34,197,94,.09), rgba(255,255,255,.02));\n      box-shadow:0 14px 30px rgba(0,0,0,.35);\n    }\n    .af-exec-summary .af-es-label{\n      display:inline-block;\n      font-size:.75rem;\n      font-weight:900;\n      letter-spacing:.14em;\n      text-transform:uppercase;\n      color:rgba(34,197,94,.95);\n      margin:0 0 8px;\n    }\n    .af-exec-summary p{\n      margin:0;\n      color:rgba(243,244,246,.95);\n      font-size:1.02rem;\n      max-width:92ch;\n    }\n\n    .af-toc{\n      display:flex;\n      flex-wrap:wrap;\n      gap:10px;\n      margin:12px 0 0;\n      padding:0;\n      list-style:none;\n    }\n    .af-toc a{\n      display:inline-flex;\n      align-items:center;\n      padding:9px 12px;\n      border-radius:999px;\n      border:1px solid var(--border);\n      color:rgba(243,244,246,.95);\n      text-decoration:none;\n      font-weight:800;\n      font-size:.92rem;\n      background:rgba(255,255,255,.03);\n    }\n    .af-toc a:hover{ border-color:rgba(34,197,94,.35); }\n\n    .af-grid{\n      display:grid;\n      grid-template-columns:1.05fr .95fr;\n      gap:16px;\n      align-items:start;\n      margin-top:14px;\n    }\n    @media (max-width: 900px){\n      .af-grid{ grid-template-columns:1fr; }\n    }\n    .af-card{\n      background:linear-gradient(180deg, var(--card), var(--card2));\n      border:1px solid var(--border2);\n      border-radius:20px;\n      box-shadow:var(--shadow);\n      overflow:hidden;\n    }\n    .af-card-inner{ padding:16px; }\n\n    .af-variant{ display:grid; gap:12px; }\n    .af-variant-label{ font-weight:900; margin:0; letter-spacing:.01em; }\n\n    .af-color-row{\n      display:flex;\n      flex-wrap:wrap;\n      gap:10px;\n      align-items:center;\n    }\n    .af-color-btn{\n      appearance:none;\n      border:1px solid var(--border);\n      background:rgba(255,255,255,.03);\n      color:rgba(243,244,246,.95);\n      padding:10px 12px;\n      border-radius:999px;\n      font-weight:900;\n      cursor:pointer;\n      transition:transform .08s ease, border-color .12s ease, background .12s ease;\n      user-select:none;\n      display:inline-flex;\n      align-items:center;\n      gap:10px;\n    }\n    .af-color-btn:active{ transform:scale(.98); }\n    .af-color-btn[aria-pressed=\"true\"]{\n      border-color:rgba(34,197,94,.55);\n      background:rgba(34,197,94,.10);\n      box-shadow:0 0 0 3px rgba(34,197,94,.12);\n    }\n    .af-swatch{\n      width:14px; height:14px; border-radius:999px;\n      border:1px solid rgba(255,255,255,.22);\n      display:inline-block;\n      box-shadow:inset 0 0 0 1px rgba(0,0,0,.18);\n    }\n    .af-swatch.orange{ background:#d07a1f; }\n    .af-swatch.green{ background:#1f7a44; }\n\n    .af-price{\n      display:flex;\n      align-items:baseline;\n      justify-content:space-between;\n      gap:12px;\n      padding:12px 14px;\n      border:1px solid var(--border2);\n      border-radius:16px;\n      background:rgba(255,255,255,.02);\n    }\n    .af-price strong{ font-size:1.25rem; letter-spacing:-.01em; }\n    .af-price span{ color:var(--muted); font-size:.95rem; }\n\n    .af-list{\n      margin:0;\n      padding:0;\n      list-style:none;\n      display:grid;\n      gap:10px;\n    }\n    .af-list li{\n      display:flex;\n      gap:10px;\n      align-items:flex-start;\n      padding:10px 12px;\n      border:1px solid var(--border2);\n      border-radius:16px;\n      background:rgba(255,255,255,.02);\n    }\n    .af-dot{\n      width:9px;height:9px;border-radius:999px;margin-top:6px;\n      background:var(--accent);\n      box-shadow:0 0 0 3px rgba(34,197,94,.12);\n      flex:0 0 auto;\n    }\n    .af-list b{ color:rgba(243,244,246,.98); }\n    .af-list p{ margin:0; color:var(--muted2); }\n\n    .af-sec{ margin-top:16px; }\n    .af-sec h2{\n      margin:0 0 10px;\n      font-size:1.35rem;\n      letter-spacing:-.01em;\n    }\n    .af-sec p{ margin:0 0 10px; color:rgba(243,244,246,.92); }\n\n    .af-note{ color:var(--muted); font-size:.95rem; margin:8px 0 0; }\n\n    .af-btn-wrap{ display:flex; flex-wrap:wrap; gap:10px; margin:12px 0 0; }\n    .af-btn{ display:inline-flex; align-items:center; justify-content:center; gap:10px; padding:12px 14px; border-radius:999px; font-weight:900; text-decoration:none; border:1px solid transparent; }\n    .af-btn-primary{ background:rgba(34,197,94,.14); border-color:rgba(34,197,94,.55); color:#eafff1; box-shadow:0 10px 28px rgba(34,197,94,.18), 0 0 0 3px rgba(34,197,94,.10); }\n    .af-btn-primary:hover{ background:rgba(34,197,94,.18); }\n    .af-btn-secondary{ background:rgba(255,255,255,.03); border-color:rgba(255,255,255,.12); color:rgba(243,244,246,.95); }\n    .af-btn-secondary:hover{ border-color:rgba(34,197,94,.35); }\n\n    .af-faq{\n      border-top:1px solid rgba(255,255,255,.08);\n      margin-top:20px;\n      padding-top:14px;\n    }\n    details.af-q{\n      border:1px solid var(--border2);\n      border-radius:16px;\n      background:rgba(255,255,255,.02);\n      padding:12px 12px;\n      margin:10px 0;\n    }\n    details.af-q summary{\n      cursor:pointer;\n      font-weight:900;\n      color:rgba(243,244,246,.95);\n      list-style:none;\n    }\n    details.af-q summary::-webkit-details-marker{ display:none; }\n    details.af-q p{ margin:10px 0 0; color:var(--muted2); }\n\n    .af-status{\n      margin-top:10px;\n      padding:10px 12px;\n      border-radius:14px;\n      border:1px solid rgba(255,255,255,.10);\n      background:rgba(255,255,255,.02);\n      color:rgba(243,244,246,.92);\n      font-size:.95rem;\n      display:none;\n    }\n    .af-status[data-show=\"true\"]{ display:block; }\n    .af-status.ok{ border-color:rgba(34,197,94,.35); }\n    .af-status.err{ border-color:rgba(239,68,68,.35); }\n  \u003c\/style\u003e\n\u003csection class=\"af-le-divot\" aria-label=\"Limited Edition Divot Tool PDP Content\"\u003e\n\u003cdiv class=\"af-wrap\"\u003e\n\u003cp class=\"af-kicker\"\u003eLimited Drop\u003c\/p\u003e\n\u003ch1\u003eLimited Edition Divot Tool\u003c\/h1\u003e\n\u003cdiv class=\"af-exec-summary\"\u003e\n\u003cdiv class=\"af-es-label\"\u003eTest Verdict\u003c\/div\u003e\n\u003cp\u003eTwo limited color runs. Same precision-machined tool. If you want the “designed object” feel in your pocket without paying for gimmicks, this is the drop.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cp class=\"af-sub\"\u003eSlim profile. Pocket-ready. Built for golfers who notice details. No restock planned once these colorways sell through.\u003c\/p\u003e\n\u003cul class=\"af-toc\" aria-label=\"On-page navigation\"\u003e\n\u003cli\u003e\u003ca href=\"#af-choose\"\u003eChoose Color\u003c\/a\u003e\u003c\/li\u003e\n\u003cli\u003e\u003ca href=\"#af-what\"\u003eWhat You’re Getting\u003c\/a\u003e\u003c\/li\u003e\n\u003cli\u003e\u003ca href=\"#af-standards\"\u003eTesting Standards\u003c\/a\u003e\u003c\/li\u003e\n\u003cli\u003e\u003ca href=\"#af-faq\"\u003eFAQ\u003c\/a\u003e\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cdiv class=\"af-grid\"\u003e\n\u003cdiv class=\"af-card\" id=\"af-what\" aria-label=\"Product details\"\u003e\n\u003cdiv class=\"af-card-inner\"\u003e\n\u003ch2\u003eWhat you’re getting\u003c\/h2\u003e\n\u003cul class=\"af-list\"\u003e\n\u003cli\u003e\n\u003cspan class=\"af-dot\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cb\u003ePrecision-machined aluminum body\u003c\/b\u003e\n\u003cp\u003eClean edges, tight tolerances, and a finish that reads premium without shouting.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cspan class=\"af-dot\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cb\u003eSlim carry profile\u003c\/b\u003e\n\u003cp\u003eMade to live in a pocket or bag slot without feeling bulky or annoying.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cspan class=\"af-dot\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cb\u003eLimited colorways\u003c\/b\u003e\n\u003cp\u003eSmall-batch anodized runs. When they’re gone, they’re gone.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cspan class=\"af-dot\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\n\u003cdiv\u003e\n\u003cb\u003eDesigned to be used\u003c\/b\u003e\n\u003cp\u003eAnodized aluminum will show character with real use. That’s normal.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cdiv class=\"af-sec\"\u003e\n\u003ch2\u003eColor names\u003c\/h2\u003e\n\u003cp\u003e\u003cb\u003eSignal Orange\u003c\/b\u003e is high-vis and energetic. \u003cb\u003eFairway Green\u003c\/b\u003e is calmer and more technical. Same tool. Pick the vibe you’ll actually carry.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003ca class=\"af-btn af-btn-secondary\" href=\"https:\/\/www.aimingfluidgolf.com\/collections\/divot-tools\"\u003eShop all divot tools\u003c\/a\u003e \u003ca class=\"af-btn af-btn-secondary\" href=\"https:\/\/www.aimingfluidgolf.com\/collections\/on-course-organization-system\"\u003eBuild your on-course setup\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-card\" id=\"af-choose\" aria-label=\"Choose color and add to cart\"\u003e\n\u003cdiv class=\"af-card-inner\"\u003e\n\u003cdiv class=\"af-variant\"\u003e\n\u003cp class=\"af-variant-label\"\u003eChoose your color\u003c\/p\u003e\n\u003cdiv class=\"af-color-row\" role=\"group\" aria-label=\"Color options\"\u003e\n\u003cbutton type=\"button\" class=\"af-color-btn\" data-variant-id=\"43047494615083\" data-label=\"Signal Orange\" aria-pressed=\"true\"\u003e \u003cspan class=\"af-swatch orange\" aria-hidden=\"true\"\u003e\u003c\/span\u003e Signal Orange \u003c\/button\u003e \u003cbutton type=\"button\" class=\"af-color-btn\" data-variant-id=\"43047494647851\" data-label=\"Fairway Green\" aria-pressed=\"false\"\u003e \u003cspan class=\"af-swatch green\" aria-hidden=\"true\"\u003e\u003c\/span\u003e Fairway Green \u003c\/button\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-price\" aria-label=\"Price and availability\"\u003e\n\u003cstrong id=\"afPrice\"\u003e$29.69\u003c\/strong\u003e \u003cspan id=\"afAvail\"\u003eSmall-batch colorway · no restock planned\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\u003cbutton type=\"button\" class=\"af-btn af-btn-primary\" id=\"afAddToCart\"\u003eAdd to Cart\u003c\/button\u003e\u003c\/div\u003e\n\u003cdiv class=\"af-status\" id=\"afStatus\" role=\"status\" aria-live=\"polite\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-sec\" id=\"af-standards\"\u003e\n\u003ch2\u003eTesting standards\u003c\/h2\u003e\n\u003cp\u003eWant the criteria behind our “does this actually get used?” decisions? Here are the standards we publish and hold ourselves to.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\u003ca class=\"af-btn af-btn-secondary\" href=\"\/pages\/our-golf-gear-testing-design-standards\"\u003eView Testing Standards\u003c\/a\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-sec\"\u003e\n\u003ch2\u003eExplore the system\u003c\/h2\u003e\n\u003cp class=\"af-note\"\u003eIf you’re building an on-course setup, these are the logical next steps.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003ca class=\"af-btn af-btn-secondary\" href=\"https:\/\/www.aimingfluidgolf.com\/collections\/magnetic-towels\"\u003eMagnetic Towels\u003c\/a\u003e \u003ca class=\"af-btn af-btn-secondary\" href=\"https:\/\/www.aimingfluidgolf.com\/collections\/magnetic-landing-pads\"\u003eMagnetic Landing Pads\u003c\/a\u003e \u003ca class=\"af-btn af-btn-secondary\" href=\"https:\/\/www.aimingfluidgolf.com\/collections\/golf-tees\"\u003eGolf Tees\u003c\/a\u003e \u003ca class=\"af-btn af-btn-secondary\" href=\"https:\/\/www.aimingfluidgolf.com\/collections\/hats\"\u003eHats\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-sec af-faq\" id=\"af-faq\" aria-label=\"Frequently asked questions\"\u003e\n\u003ch2\u003eFAQ\u003c\/h2\u003e\n\u003cdetails class=\"af-q\"\u003e\n\u003csummary\u003eWhat makes this “limited edition”?\u003c\/summary\u003e\n\u003cp\u003eThese are small-batch color runs. Same tool platform, limited finish availability. When this run sells through, we don’t plan to restock these colorways.\u003c\/p\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-q\"\u003e\n\u003csummary\u003eIs it different from the regular divot tool?\u003c\/summary\u003e\n\u003cp\u003eFunctionally, it’s the same tool. The difference is the limited anodized finish and the small-run nature of the drop.\u003c\/p\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-q\"\u003e\n\u003csummary\u003eWill the anodized finish scratch?\u003c\/summary\u003e\n\u003cp\u003eLike any anodized aluminum, hard impacts and abrasive contact can mark the surface over time. Normal use wear is expected and doesn’t affect function.\u003c\/p\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-q\"\u003e\n\u003csummary\u003eWhich color should I pick?\u003c\/summary\u003e\n\u003cp\u003eSignal Orange is high-vis and energetic. Fairway Green is calmer and more technical. Pick the one you’ll actually carry and use.\u003c\/p\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-q\"\u003e\n\u003csummary\u003eAre you restocking these colors?\u003c\/summary\u003e\n\u003cp\u003eWe don’t plan to restock these specific colorways once they’re gone. If you want one, don’t assume it’ll be around later.\u003c\/p\u003e\n\u003c\/details\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cscript\u003e\n  (function(){\n    \"use strict\";\n\n    var root = document.querySelector(\".af-le-divot\");\n    if(!root) return;\n\n    var btns = Array.prototype.slice.call(root.querySelectorAll(\".af-color-btn\"));\n    var atcBtn = root.querySelector(\"#afAddToCart\");\n    var statusEl = root.querySelector(\"#afStatus\");\n\n    function setPressed(activeId){\n      btns.forEach(function(b){\n        b.setAttribute(\"aria-pressed\", (b.getAttribute(\"data-variant-id\") === String(activeId)) ? \"true\" : \"false\");\n      });\n    }\n\n    function getActiveVariantId(){\n      var active = btns.find(function(b){ return b.getAttribute(\"aria-pressed\") === \"true\"; }) || btns[0];\n      return active ? active.getAttribute(\"data-variant-id\") : null;\n    }\n\n    function getActiveLabel(){\n      var active = btns.find(function(b){ return b.getAttribute(\"aria-pressed\") === \"true\"; }) || btns[0];\n      return active ? (active.getAttribute(\"data-label\") || \"Selected\") : \"Selected\";\n    }\n\n    function showStatus(msg, ok){\n      if(!statusEl) return;\n      statusEl.textContent = msg;\n      statusEl.classList.remove(\"ok\",\"err\");\n      statusEl.classList.add(ok ? \"ok\" : \"err\");\n      statusEl.setAttribute(\"data-show\",\"true\");\n    }\n\n    btns.forEach(function(b){\n      b.addEventListener(\"click\", function(){\n        setPressed(b.getAttribute(\"data-variant-id\"));\n        showStatus(getActiveLabel() + \" selected.\", true);\n        setTimeout(function(){ if(statusEl) statusEl.setAttribute(\"data-show\",\"false\"); }, 1200);\n      });\n    });\n\n    setPressed(btns[0].getAttribute(\"data-variant-id\"));\n\n    if(atcBtn){\n      atcBtn.addEventListener(\"click\", function(){\n        var variantId = getActiveVariantId();\n        if(!variantId){\n          showStatus(\"Couldn’t find a selected finish. Refresh and try again.\", false);\n          return;\n        }\n\n        atcBtn.disabled = true;\n        atcBtn.textContent = \"Adding…\";\n\n        fetch(\"\/cart\/add.js\", {\n          method: \"POST\",\n          headers: { \"Content-Type\":\"application\/json\", \"Accept\":\"application\/json\" },\n          body: JSON.stringify({ id: Number(variantId), quantity: 1 })\n        })\n        .then(function(r){\n          if(!r.ok) return r.json().then(function(err){ throw err; });\n          return r.json();\n        })\n        .then(function(){\n          showStatus(getActiveLabel() + \" added. Redirecting…\", true);\n          window.location.href = \"\/cart\";\n        })\n        .catch(function(err){\n          var msg = \"Couldn’t add to cart. Try again.\";\n          if(err \u0026\u0026 err.description) msg = err.description;\n          showStatus(msg, false);\n          atcBtn.disabled = false;\n          atcBtn.textContent = \"Add to Cart\";\n        });\n      });\n    }\n  })();\n  \u003c\/script\u003e \u003cscript type=\"application\/ld+json\"\u003e\n  {\n    \"@context\":\"https:\/\/schema.org\",\n    \"@type\":\"FAQPage\",\n    \"mainEntity\":[\n      {\"@type\":\"Question\",\"name\":\"What makes this “limited edition”?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"These are small-batch color runs. Same tool platform, limited finish availability. When this run sells through, we don’t plan to restock these colorways.\"}},\n      {\"@type\":\"Question\",\"name\":\"Is it different from the regular divot tool?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Functionally, it’s the same tool. The difference is the limited anodized finish and the small-run nature of the drop.\"}},\n      {\"@type\":\"Question\",\"name\":\"Will the anodized finish scratch?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Like any anodized aluminum, hard impacts and abrasive contact can mark the surface over time. Normal use wear is expected and doesn’t affect function.\"}},\n      {\"@type\":\"Question\",\"name\":\"Which color should I pick?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Signal Orange is high-vis and energetic. Fairway Green is calmer and more technical. Pick the one you’ll actually carry and use.\"}},\n      {\"@type\":\"Question\",\"name\":\"Are you restocking these colors?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"We don’t plan to restock these specific colorways once they’re gone. If you want one, don’t assume it’ll be around later.\"}}\n    ]\n  }\n  \u003c\/script\u003e\u003c\/section\u003e","brand":"Aiming Fluid Golf","offers":[{"title":"Signal Orange","offer_id":47801127043266,"sku":"sku-43047494615083","price":29.69,"currency_code":"USD","in_stock":true},{"title":"Fairway Green","offer_id":47801127076034,"sku":"sku-43047494647851","price":29.69,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0720\/6400\/8386\/files\/MainImage_9f836612-806b-4980-971d-6a5fab7951b1.png?v=1781294467"},{"product_id":"aiming-fluid-golf-performance-hat-tourdry™-system","title":"Aiming Fluid Golf Performance Hat (TourDry™ System)","description":"\u003cstyle\u003e\n\/* =========================\n   AF LUXURY PAGE STYLES (Scoped \u0026 Premium)\n   ========================= *\/\n.af-luxury-page {\n  background: #050509;\n  color: #f3f4f6;\n  padding: 60px 20px;\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  line-height: 1.6;\n}\n.af-luxury-page * { box-sizing: border-box; }\n\n.af-container {\n  max-width: 1000px;\n  margin: 0 auto;\n}\n\n\/* TYPOGRAPHY *\/\n.af-eyebrow {\n  color: #34d399; \/* Brand Accent *\/\n  letter-spacing: 0.15em;\n  text-transform: uppercase;\n  font-weight: 700;\n  font-size: 0.75rem;\n  margin: 0 0 12px;\n  text-align: center;\n}\n\n.af-hero h1 {\n  margin: 0 0 16px;\n  font-weight: 800;\n  line-height: 1.1;\n  font-size: clamp(2.2rem, 5vw, 3.2rem);\n  letter-spacing: -0.02em;\n  color: #fff;\n  text-align: center;\n}\n\n.af-lead {\n  font-size: 1.25rem;\n  color: #fff;\n  font-weight: 700;\n  text-align: center;\n  margin-bottom: 24px;\n}\n\n.af-lede {\n  margin: 0 auto 40px;\n  max-width: 700px;\n  color: #9ca3af;\n  font-size: 1.1rem;\n  text-align: center;\n  line-height: 1.6;\n}\n\n\/* CONSOLE CARDS (Glassmorphism) *\/\n.af-card {\n  background: #111827;\n  border: 1px solid rgba(255,255,255,0.12);\n  border-radius: 24px;\n  padding: 40px;\n  margin-bottom: 24px;\n  box-shadow: 0 20px 40px -10px rgba(0,0,0,0.5);\n  position: relative;\n  overflow: hidden;\n}\n\n.af-h2 {\n  margin: 0 0 20px;\n  font-size: 1.75rem;\n  line-height: 1.2;\n  font-weight: 700;\n  color: #fff;\n}\n\n.af-muted {\n  color: #d1d5db;\n  font-size: 1.05rem;\n  margin-bottom: 1.5rem;\n}\n\n\/* EXECUTIVE SUMMARY (Highlight Box) *\/\n.af-exec-summary {\n  background: rgba(52, 211, 153, 0.1);\n  border: 1px solid rgba(52, 211, 153, 0.25);\n  border-radius: 16px;\n  padding: 24px;\n  margin-bottom: 30px;\n  text-align: left;\n}\n.af-exec-summary strong {\n  display: block;\n  font-size: 0.75rem;\n  letter-spacing: 0.1em;\n  text-transform: uppercase;\n  color: #34d399;\n  font-weight: 800;\n  margin-bottom: 8px;\n}\n.af-exec-summary p {\n  margin: 0;\n  color: #d1d5db;\n  font-size: 1rem;\n  line-height: 1.6;\n}\n\n\/* LISTS \u0026 STEPS *\/\n.af-list, .af-steps, ul {\n  margin: 0;\n  padding-left: 1.2rem;\n  color: #d1d5db;\n}\n.af-list li, .af-steps li, ul li {\n  margin: 0.8rem 0;\n}\n.af-list li strong, ul li strong {\n  color: #fff;\n}\n\n\/* CHIPS \u0026 CALLOUTS *\/\n.af-chip-row {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 8px;\n  margin-top: 24px;\n}\n.af-chip {\n  background: rgba(255,255,255,0.08);\n  border: 1px solid rgba(255,255,255,0.15);\n  color: #e5e7eb;\n  padding: 6px 14px;\n  border-radius: 999px;\n  font-size: 0.85rem;\n  font-weight: 500;\n}\n\n\/* FAQ (Accordion Style) *\/\n.af-faq {\n  border-top: 1px solid rgba(255,255,255,0.1);\n  padding: 16px 0;\n}\n.af-faq summary {\n  cursor: pointer;\n  font-weight: 700;\n  color: #fff;\n  font-size: 1.1rem;\n  list-style: none;\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n}\n.af-faq summary::-webkit-details-marker { display: none; }\n.af-faq summary::after {\n  content: \"+\";\n  font-weight: 400;\n  color: #9ca3af;\n  font-size: 1.5rem;\n}\ndetails[open] summary::after { content: \"−\"; }\n.af-faq div {\n  margin-top: 12px;\n  color: #d1d5db;\n  line-height: 1.6;\n}\n\n\/* BUTTONS (Apple Style) *\/\n.af-btn-wrap {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 12px;\n  margin-top: 24px;\n  justify-content: center;\n}\n.af-btn {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  padding: 12px 24px;\n  border-radius: 999px;\n  font-weight: 700;\n  text-decoration: none !important;\n  font-size: 0.95rem;\n  transition: all 0.2s ease;\n  cursor: pointer;\n  border: none;\n  font-family: inherit;\n}\n.af-btn:hover { transform: translateY(-2px); }\n\n.af-btn-primary {\n  background: #34d399;\n  color: #064e3b !important;\n  box-shadow: 0 4px 12px rgba(52, 211, 153, 0.3);\n}\n.af-btn-primary:hover {\n  background: #10b981;\n  box-shadow: 0 8px 20px rgba(52, 211, 153, 0.4);\n}\n\n.af-btn-secondary {\n  background: rgba(255,255,255,0.1);\n  color: #fff !important;\n  border: 1px solid rgba(255,255,255,0.1);\n}\n.af-btn-secondary:hover {\n  background: rgba(255,255,255,0.2);\n}\n\n\/* GRIDS for Who\/Not For *\/\n.af-grid-2 {\n  display: grid;\n  grid-template-columns: 1fr;\n  gap: 20px;\n}\n@media (min-width: 768px) {\n  .af-grid-2 { grid-template-columns: 1fr 1fr; }\n}\n\u003c\/style\u003e\n\u003cdiv class=\"af-luxury-page\"\u003e\n\u003cdiv class=\"af-container\"\u003e\n\u003cheader class=\"af-hero\"\u003e\n\u003cp class=\"af-eyebrow\"\u003eOn-Course Essentials • Heat Management • TourDry® System\u003c\/p\u003e\n\u003ch1\u003ePremium Performance Golf Hat\u003c\/h1\u003e\n\u003cdiv class=\"af-exec-summary\"\u003e\n\u003cstrong\u003eTest Verdict\u003c\/strong\u003e\n\u003cp\u003eThis hat is built for full-round comfort: heat management, sweat control, and a fit that doesn’t collapse. The mechanism is straightforward: \u003cstrong\u003emesh airflow\u003c\/strong\u003e plus \u003cstrong\u003eTourDry® sweat control\u003c\/strong\u003e plus a \u003cstrong\u003estructured 6-panel front\u003c\/strong\u003e. \u003cbr\u003e\u003cbr\u003e\u003cstrong\u003eVerdict:\u003c\/strong\u003e Choose it if you play in warmth, walk rounds, or hate sweat-in-your-eyes distractions.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cp class=\"af-lead\"\u003eIf your hat becomes a sweat sponge by hole 6, it’s failing.\u003c\/p\u003e\n\u003cp class=\"af-lede\"\u003eGolf hats usually fail in real conditions: heat, sweat, and hours of movement. This one is built to stay stable on your head and out of your way: manage sweat, move air, hold shape, repeat.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003ca class=\"af-btn af-btn-secondary\" href=\"#choose\"\u003eChoose Your Setup\u003c\/a\u003e \u003ca class=\"af-btn af-btn-secondary\" href=\"\/pages\/our-golf-gear-testing-design-standards\"\u003eTesting Standards\u003c\/a\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\u003c\/div\u003e\n\u003c\/header\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eWhat problem this solves\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eWhen the crown collapses, the band gets swampy, and the fit shifts, your \"simple hat\" turns into a constant micro-distraction.\u003c\/p\u003e\n\u003cp class=\"af-muted\"\u003eThis performance hat solves two specific issues: \u003cbr\u003e\u003cstrong\u003e1. Sweat Management:\u003c\/strong\u003e Keeps moisture out of your eyes during the swing. \u003cbr\u003e\u003cstrong\u003e2. Shape Retention:\u003c\/strong\u003e Looks crisp on the 18th hole, not just the 1st.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eHow it works\u003c\/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003eAirflow:\u003c\/strong\u003e Breathable mesh back keeps air moving on hot rounds and range sessions.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eSweat Control:\u003c\/strong\u003e \u003cstrong\u003eTourDry®\u003c\/strong\u003e sweat system helps keep sweat off your face.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eShape Retention:\u003c\/strong\u003e Structured 6-panel front with hard buckram holds a clean silhouette.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eAll-Day Fit:\u003c\/strong\u003e One-size-fits-most design built for a secure, consistent feel across 18 holes.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cdiv aria-hidden=\"true\" class=\"af-chip-row\"\u003e\n\u003cspan class=\"af-chip\"\u003eTourDry® System\u003c\/span\u003e \u003cspan class=\"af-chip\"\u003eStructured 6-Panel\u003c\/span\u003e \u003cspan class=\"af-chip\"\u003eBreathable Mesh\u003c\/span\u003e \u003cspan class=\"af-chip\"\u003eAdjustable Fit\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-grid-2\"\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eWho it’s for\u003c\/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003eSummer Golfers:\u003c\/strong\u003e Built for heat and humidity.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eWalkers:\u003c\/strong\u003e Handles the extra sweat and movement of carrying\/pushing.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eStyle Conscious:\u003c\/strong\u003e Want a cap that looks crisp all day.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eWho it’s not for\u003c\/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003e\"Dad Hat\" Lovers:\u003c\/strong\u003e If you want zero structure, this isn't it.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eLowest Bidder:\u003c\/strong\u003e Not for people shopping for the cheapest cap on the internet.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection id=\"choose\" class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eChoose your setup\u003c\/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003eDefault Choice:\u003c\/strong\u003e Pick this if heat + sweat is a real factor in your rounds.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eFor Walkers:\u003c\/strong\u003e Prioritize this over heavy cotton caps (airflow matters).\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eFor Soft-Cap Lovers:\u003c\/strong\u003e Skip this structured fit and choose a softer style.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\u003ca class=\"af-btn af-btn-secondary\" href=\"\/collections\/magnetic-towels\"\u003eAdd Magnetic Towel\u003c\/a\u003e\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eUse it like this\u003c\/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003ePre-Round:\u003c\/strong\u003e Set the fit snug enough that it won’t shift on swings.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eMid-Round:\u003c\/strong\u003e Let TourDry® do its job. Less wiping, fewer distractions.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003ePost-Round:\u003c\/strong\u003e Air it out and hang dry.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eTravel:\u003c\/strong\u003e Don’t crush the front panel to keep its shape crisp.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eProof and trust\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eWe build gear around failure modes that show up on real rounds: sweat management, airflow, and fit stability. If you want the criteria behind the choices, read our standards.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003ca class=\"af-btn af-btn-secondary\" href=\"\/pages\/our-golf-gear-testing-design-standards\"\u003eRead Testing Standards\u003c\/a\u003e \u003ca class=\"af-btn af-btn-secondary\" href=\"\/collections\/on-course-organization-system\"\u003eOrganization System\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eProduct FAQ\u003c\/h2\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eIs this hat structured or soft?\u003c\/summary\u003e\n\u003cdiv\u003eStructured. It’s a 6-panel design with a firm front that holds shape so it doesn’t collapse during sweaty rounds.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eDoes the mesh back feel cheap?\u003c\/summary\u003e\n\u003cdiv\u003eNo. The mesh is there for airflow and comfort, not “trucker hat vibes.” It’s a performance choice for heat management.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eWhat is TourDry®?\u003c\/summary\u003e\n\u003cdiv\u003eTourDry® is the sweat-control system built to manage moisture at the band so sweat is less likely to run into your eyes mid-swing.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eWhere does it shine the most?\u003c\/summary\u003e\n\u003cdiv\u003eWalking rounds, summer golf, and range sessions. Anywhere heat + sweat normally turn hats into distractions.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eHow should I clean it?\u003c\/summary\u003e\n\u003cdiv\u003eSpot clean or lightly rinse, then hang dry. Avoid crushing the front panel if you want the structure to stay crisp.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eIs this a good gift?\u003c\/summary\u003e\n\u003cdiv\u003eYes. One-size-fits-most makes it a safe gift, and performance hats get worn instead of living in a drawer.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003c\/section\u003e\n\u003csection id=\"buy\" style=\"text-align: center;\" class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eMake heat a non-issue\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eIf you want a hat that stays crisp, breathes under pressure, and keeps sweat from hijacking your focus, this is the one.\u003c\/p\u003e\n\u003cdiv style=\"justify-content: center;\" class=\"af-btn-wrap\"\u003e\n\u003cbr\u003e\u003ca class=\"af-btn af-btn-secondary\" href=\"\/collections\/magnetic-towels\"\u003eShop Towels\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cp\u003e \u003c\/p\u003e","brand":"Aiming Fluid Golf","offers":[{"title":"Gray","offer_id":47801127436482,"sku":"AFGH-G","price":34.69,"currency_code":"USD","in_stock":true},{"title":"White","offer_id":47801127469250,"sku":"AFGH-W","price":34.69,"currency_code":"USD","in_stock":true},{"title":"Birdie Blue","offer_id":47801127502018,"sku":"AFGH-DKBL","price":34.69,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0720\/6400\/8386\/files\/Updated_Main_Image_3dd13a22-a718-40b9-99d8-38ed060d90ca.jpg?v=1781294467"},{"product_id":"don-t-suck™-towel-tee-bundle","title":"Don’t Suck™ Towel \u0026 Tee Bundle","description":"\u003cstyle\u003e\n\/* =========================\n   AF LUXURY PAGE STYLES (Scoped \u0026 Premium)\n   ========================= *\/\n.af-luxury-page {\n  background: #050509;\n  color: #f3f4f6;\n  padding: 60px 20px;\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  line-height: 1.6;\n}\n.af-luxury-page * { box-sizing: border-box; }\n\n.af-container { max-width: 1000px; margin: 0 auto; }\n\n\/* TYPOGRAPHY *\/\n.af-hero h1 {\n  margin: 0 0 16px;\n  font-weight: 800;\n  line-height: 1.1;\n  font-size: clamp(2rem, 5vw, 3.2rem);\n  letter-spacing: -0.02em;\n  color: #fff;\n  text-align: center;\n}\n.af-lead {\n  font-size: 1.25rem;\n  color: #fff;\n  font-weight: 700;\n  text-align: center;\n  margin-bottom: 12px;\n}\n.af-lede {\n  margin: 0 auto 22px;\n  max-width: 760px;\n  color: #9ca3af;\n  font-size: 1.1rem;\n  text-align: center;\n  line-height: 1.6;\n}\n\n\/* CARDS *\/\n.af-card {\n  background: #111827;\n  border: 1px solid rgba(255,255,255,0.12);\n  border-radius: 24px;\n  padding: 40px;\n  margin-bottom: 24px;\n  box-shadow: 0 20px 40px -10px rgba(0,0,0,0.5);\n  position: relative;\n  overflow: hidden;\n}\n.af-h2 {\n  margin: 0 0 20px;\n  font-size: 1.75rem;\n  line-height: 1.2;\n  font-weight: 700;\n  color: #fff;\n}\n.af-muted {\n  color: #d1d5db;\n  font-size: 1.05rem;\n  margin-bottom: 1.2rem;\n}\n\n\/* EXECUTIVE SUMMARY *\/\n.af-exec-summary {\n  background: rgba(52, 211, 153, 0.1);\n  border: 1px solid rgba(52, 211, 153, 0.25);\n  border-radius: 16px;\n  padding: 24px;\n  margin-bottom: 22px;\n  text-align: left;\n}\n.af-exec-summary__hdr{\n  display:flex;\n  align-items:center;\n  gap:12px;\n  flex-wrap:wrap;\n  margin-bottom:10px;\n}\n.af-exec-summary__label{\n  display:inline-flex;\n  font-size: 0.75rem;\n  letter-spacing: 0.1em;\n  text-transform: uppercase;\n  color: #34d399;\n  font-weight: 800;\n  background: rgba(52, 211, 153, 0.1);\n  padding: 4px 8px;\n  border-radius: 6px;\n}\n.af-exec-summary__note{\n  font-size: 0.95rem;\n  color: #fff;\n  font-weight: 600;\n}\n.af-exec-summary p {\n  margin: 0;\n  color: #d1d5db;\n  font-size: 1rem;\n  line-height: 1.6;\n}\n\n\/* LISTS \u0026 STEPS *\/\n.af-list, .af-steps, ul {\n  margin: 0;\n  padding-left: 1.2rem;\n  color: #d1d5db;\n}\n.af-list li, .af-steps li, ul li { margin: 0.8rem 0; }\n.af-list li strong, ul li strong { color: #fff; }\n\n\/* CALLOUTS *\/\n.af-callout {\n  background: rgba(255,255,255,0.05);\n  border-left: 3px solid #34d399;\n  border-radius: 12px;\n  padding: 16px 20px;\n  margin-top: 18px;\n  color: #d1d5db;\n  font-size: 0.95rem;\n}\n.af-callout strong { color: #fff; }\n\n\/* FAQ *\/\n.af-faq {\n  border-top: 1px solid rgba(255,255,255,0.1);\n  padding: 16px 0;\n}\n.af-faq summary {\n  cursor: pointer;\n  font-weight: 700;\n  color: #fff;\n  font-size: 1.1rem;\n  list-style: none;\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n  gap: 12px;\n}\n.af-faq summary::-webkit-details-marker { display: none; }\n.af-faq summary::after {\n  content: \"+\";\n  font-weight: 400;\n  color: #9ca3af;\n  font-size: 1.5rem;\n}\ndetails[open] summary::after { content: \"−\"; }\n.af-faq div {\n  margin-top: 12px;\n  color: #d1d5db;\n  line-height: 1.6;\n}\n\n\/* BUTTONS (Locked System) *\/\n.af-btn-wrap {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 12px;\n  margin-top: 18px;\n  justify-content: center;\n}\n.af-btn {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  padding: 12px 24px;\n  border-radius: 999px;\n  font-weight: 700;\n  text-decoration: none !important;\n  font-size: 0.95rem;\n  transition: all 0.2s ease;\n  cursor: pointer;\n  border: none;\n  font-family: inherit;\n  user-select: none;\n}\n.af-btn:hover { transform: translateY(-2px); }\n\n.af-btn-primary {\n  background: #34d399;\n  color: #064e3b !important;\n  box-shadow: 0 4px 12px rgba(52, 211, 153, 0.3);\n}\n.af-btn-primary:hover {\n  background: #10b981;\n  box-shadow: 0 8px 20px rgba(52, 211, 153, 0.4);\n}\n\n.af-btn-secondary {\n  background: rgba(255,255,255,0.1);\n  color: #fff !important;\n  border: 1px solid rgba(255,255,255,0.1);\n}\n.af-btn-secondary:hover { background: rgba(255,255,255,0.2); }\n\n\/* GRIDS *\/\n.af-grid-2 {\n  display: grid;\n  grid-template-columns: 1fr;\n  gap: 20px;\n}\n@media (min-width: 768px) {\n  .af-grid-2 { grid-template-columns: 1fr 1fr; }\n}\n.af-center{ text-align:center; }\n\u003c\/style\u003e\n\u003cdiv data-af-ds-bundle=\"\" class=\"af-luxury-page\"\u003e\n\u003cdiv class=\"af-container\"\u003e\n\u003cheader class=\"af-hero\"\u003e\n\u003ch1\u003eDon’t Suck™ Towel \u0026amp; Tee Bundle\u003c\/h1\u003e\n\u003cdiv class=\"af-exec-summary\"\u003e\n\u003cdiv class=\"af-exec-summary__hdr\"\u003e\n\u003cspan class=\"af-exec-summary__label\"\u003eTest Verdict\u003c\/span\u003e \u003cspan class=\"af-exec-summary__note\"\u003eClean contact + repeatable setup. Two boring wins that pay all round.\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cp\u003eThis bundle pairs the Don’t Suck™ \u003cstrong\u003eMagna-Anchor™\u003c\/strong\u003e magnetic golf towel (16×24) with DON’T SUCK™ tees to reduce two repeatable round killers: \u003cem\u003edirty contact\u003c\/em\u003e and \u003cem\u003einconsistent tee setup\u003c\/em\u003e. The towel supports a Scrub → Wash → Dry loop, and the tees make your start-of-hole routine more consistent.\u003cbr\u003e\u003cbr\u003e\u003cstrong\u003eVerdict:\u003c\/strong\u003e Choose it if you want a cleaner, more intentional routine. Skip it if you don’t care about consistency.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cp class=\"af-lead\"\u003eA cleaner strike starts with a cleaner routine.\u003c\/p\u003e\n\u003cp class=\"af-lede\"\u003eThe fastest way to sabotage a round isn’t a bad swing. It’s repeating the same two mistakes all day: hitting with a dirty face and changing tee setup every hole like it’s a new experiment. This is the “show up prepared” kit: fast access + repeatable starts.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003cbutton data-af-atc=\"\" class=\"af-btn af-btn-primary\" type=\"button\"\u003eAdd to Cart\u003c\/button\u003e \u003ca href=\"#choose\" class=\"af-btn af-btn-secondary\"\u003eChoose Your Setup\u003c\/a\u003e \u003ca href=\"\/pages\/our-golf-gear-testing-design-standards\" class=\"af-btn af-btn-secondary\"\u003eTesting Standards\u003c\/a\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003c\/header\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eHook: most “bundles” are lazy. This one is a routine.\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eA lot of bundles are just two SKUs holding hands. Cute. Useless. This bundle has one job: keep your contact and your setup consistent enough that your swing can do its job.\u003c\/p\u003e\n\u003cp class=\"af-muted\"\u003e\u003cstrong\u003eProblem #1:\u003c\/strong\u003e debris + moisture in grooves changes launch and spin. \u003cbr\u003e\u003cstrong\u003eProblem #2:\u003c\/strong\u003e inconsistent tee height and seating changes strike.\u003c\/p\u003e\n\u003cdiv class=\"af-callout\"\u003e\n\u003cstrong\u003eThe Fix:\u003c\/strong\u003e one repeatable flow: \u003cstrong\u003etee → clean → swing\u003c\/strong\u003e.\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eMechanism: why the towel stays useful longer\u003c\/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003eScrub:\u003c\/strong\u003e break up compacted grit with the scrub pad.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eWash:\u003c\/strong\u003e use the wash pocket to isolate moisture and grime (so you’re not smearing).\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eDry:\u003c\/strong\u003e finish on the dry zone to keep grooves usable shot after shot.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eFast access:\u003c\/strong\u003e Magna-Anchor™ retention keeps the towel reachable, not buried.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cdiv class=\"af-callout\"\u003e\n\u003cstrong\u003eTranslation:\u003c\/strong\u003e you clean more often because it’s easier, not because you “found discipline.”\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eMechanism: why tee setup becomes repeatable\u003c\/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003eStable seating:\u003c\/strong\u003e the tee head is designed to reduce ball wobble at address.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eMore consistent starts:\u003c\/strong\u003e when height and seating are predictable, strike becomes easier to repeat.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eDurability:\u003c\/strong\u003e fewer broken-tee resets means fewer routine interruptions.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cdiv class=\"af-callout\"\u003e\n\u003cstrong\u003eTranslation:\u003c\/strong\u003e fewer “what the hell was that?” tee shots caused by bad inputs.\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-grid-2\"\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eWho it’s for\u003c\/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003eRoutine builders:\u003c\/strong\u003e you want the same setup more often.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eGolfers who care about contact:\u003c\/strong\u003e you actually clean grooves mid-round.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eCart riders:\u003c\/strong\u003e fast towel access without digging.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eWho it’s not for\u003c\/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003eNovelty shoppers:\u003c\/strong\u003e this is equipment, not a gag gift.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003e“I never clean clubs” golfers:\u003c\/strong\u003e you won’t use it, so don’t pretend.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\" id=\"choose\"\u003e\n\u003ch2 class=\"af-h2\"\u003eChoose your setup\u003c\/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003eChoose the bundle\u003c\/strong\u003e if you want the minimum viable system for clean contact + consistent tee starts.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eChoose the towel alone\u003c\/strong\u003e if your biggest issue is dirty grooves and inconsistent spin\/launch.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eChoose tees alone\u003c\/strong\u003e if you already have a legit towel routine and only need repeatable starts.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eUpgrade path:\u003c\/strong\u003e add a Landing Pad if you want a consistent docking surface inside your bag between dividers.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003ca href=\"\/collections\/magnetic-towels\" class=\"af-btn af-btn-secondary\"\u003eShop Towels\u003c\/a\u003e \u003ca href=\"\/collections\/golf-tees\" class=\"af-btn af-btn-secondary\"\u003eShop Tees\u003c\/a\u003e \u003ca href=\"\/collections\/magnetic-landing-pads\" class=\"af-btn af-btn-secondary\"\u003eShop Landing Pads\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eUse it like this (real round flow)\u003c\/h2\u003e\n\u003col class=\"af-steps\"\u003e\n\u003cli\u003e\n\u003cstrong\u003eFirst tee:\u003c\/strong\u003e keep the towel reachable (not buried behind 14 headcovers).\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eTee box:\u003c\/strong\u003e set the ball, then clean the face using \u003cstrong\u003eScrub → Wash → Dry\u003c\/strong\u003e.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eApproach shots:\u003c\/strong\u003e quick wipe before scoring shots where contact matters most.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eGreenside:\u003c\/strong\u003e clean grooves so chips aren’t a coin flip.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003ePost round:\u003c\/strong\u003e rinse the wash pocket and reset the system for next time.\u003c\/li\u003e\n\u003c\/ol\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eProof and trust\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eWe design around failure modes, not fantasies. Dirty faces and sloppy setup show up in nearly every round. This bundle exists to remove those two variables without adding new ones.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003ca href=\"\/pages\/our-golf-gear-testing-design-standards\" class=\"af-btn af-btn-secondary\"\u003eTesting Standards\u003c\/a\u003e \u003ca href=\"\/pages\/golf-gear-system-hub\" class=\"af-btn af-btn-secondary\"\u003eSee System Hub\u003c\/a\u003e \u003ca href=\"\/collections\/on-course-systems\" class=\"af-btn af-btn-secondary\"\u003eShop On-Course Systems\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection id=\"af-faq\" class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eFAQ\u003c\/h2\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eIs the towel in this bundle the Stubby 16×24 size?\u003c\/summary\u003e\n\u003cdiv\u003eYes. This bundle uses the 16×24 “Stubby” format for compact speed and minimal bulk.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eWhat makes the towel a “system”?\u003c\/summary\u003e\n\u003cdiv\u003eIt’s built around the 3-stage clean loop (Scrub → Wash → Dry) plus Magna-Anchor™ access so you actually use it mid-round.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eDoes the wash pocket help the towel stay usable longer?\u003c\/summary\u003e\n\u003cdiv\u003eThat’s the point. The wash pocket isolates moisture and grime so the rest of the towel doesn’t turn into a soaked rag early in the round.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eAre the tees novelty tees?\u003c\/summary\u003e\n\u003cdiv\u003eNo. They’re designed for repeatable seating and more consistent starts. If you want novelty, this isn’t trying to entertain you.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eWhat pairs best with this bundle?\u003c\/summary\u003e\n\u003cdiv\u003eA Magnetic Landing Pad is the clean add-on for consistency because it creates a stable docking surface inside your bag between club dividers.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eIs there a bigger towel option?\u003c\/summary\u003e\n\u003cdiv\u003eYes. Choose The 40 (16×40) if you ride or use a push cart and want more surface area for wet\/dry zoning through 18 holes.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eIs this a good gift?\u003c\/summary\u003e\n\u003cdiv\u003eYes for someone who actually plays. It’s useful first, attitude second, and it won’t end up as drawer clutter.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card af-center\"\u003e\n\u003ch2 class=\"af-h2\"\u003eReady to run the routine?\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eIf you want fewer sloppy starts and fewer dirty-face surprises, this is the clean entry point. Build the habit once, benefit every round.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003cbutton data-af-atc=\"\" class=\"af-btn af-btn-primary\" type=\"button\"\u003eAdd to Cart\u003c\/button\u003e \u003ca href=\"\/collections\/dont-suck\" class=\"af-btn af-btn-secondary\"\u003eShop Don’t Suck Collection\u003c\/a\u003e \u003ca href=\"\/pages\/our-golf-gear-testing-design-standards\" class=\"af-btn af-btn-secondary\"\u003eTesting Standards\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- FAQPage JSON-LD (matches on-page FAQ) --\u003e\n\u003cp\u003e\u003cscript type=\"application\/ld+json\"\u003e\n{\n  \"@context\": \"https:\/\/schema.org\",\n  \"@type\": \"FAQPage\",\n  \"mainEntity\": [\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Is the towel in this bundle the Stubby 16×24 size?\",\n      \"acceptedAnswer\": { \"@type\": \"Answer\", \"text\": \"Yes. This bundle uses the 16×24 “Stubby” format for compact speed and minimal bulk.\" }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"What makes the towel a “system”?\",\n      \"acceptedAnswer\": { \"@type\": \"Answer\", \"text\": \"It’s built around the 3-stage clean loop (Scrub → Wash → Dry) plus Magna-Anchor™ access so you actually use it mid-round.\" }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Does the wash pocket help the towel stay usable longer?\",\n      \"acceptedAnswer\": { \"@type\": \"Answer\", \"text\": \"That’s the point. The wash pocket isolates moisture and grime so the rest of the towel doesn’t turn into a soaked rag early in the round.\" }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Are the tees novelty tees?\",\n      \"acceptedAnswer\": { \"@type\": \"Answer\", \"text\": \"No. They’re designed for repeatable seating and more consistent starts. If you want novelty, this isn’t trying to entertain you.\" }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"What pairs best with this bundle?\",\n      \"acceptedAnswer\": { \"@type\": \"Answer\", \"text\": \"A Magnetic Landing Pad is the clean add-on for consistency because it creates a stable docking surface inside your bag between club dividers.\" }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Is there a bigger towel option?\",\n      \"acceptedAnswer\": { \"@type\": \"Answer\", \"text\": \"Yes. Choose The 40 (16×40) if you ride or use a push cart and want more surface area for wet\/dry zoning through 18 holes.\" }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Is this a good gift?\",\n      \"acceptedAnswer\": { \"@type\": \"Answer\", \"text\": \"Yes for someone who actually plays. It’s useful first, attitude second, and it won’t end up as drawer clutter.\" }\n    }\n  ]\n}\n\u003c\/script\u003e \u003cscript\u003e\n\/* =========================================================\n   AF PDP ATC (Theme-Independent | No-Variant Safe)\n   - For products without variants: submit the REAL Shopify \/cart\/add form\n   - Uses requestSubmit() with MutationObserver fallback\n   - Does NOT rely on theme buttons\n   ========================================================= *\/\n(function(){\n  const root = document.querySelector('[data-af-ds-bundle]');\n  if(!root) return;\n\n  const atcBtns = Array.from(root.querySelectorAll('[data-af-atc]'));\n\n  function findProductForm(){\n    const forms = Array.from(document.querySelectorAll('form[action^=\"\/cart\/add\"]'));\n    if(!forms.length) return null;\n    const preferred = forms.find(f =\u003e f.querySelector('input[name=\"id\"], select[name=\"id\"]'));\n    return preferred || forms[0];\n  }\n\n  function submitRealCartForm(){\n    const form = findProductForm();\n    if(!form) return false;\n    try{\n      if(typeof form.requestSubmit === \"function\") form.requestSubmit();\n      else form.submit();\n      return true;\n    }catch(e){\n      try{ form.submit(); return true; }catch(_){ return false; }\n    }\n  }\n\n  function submitWithObserverFallback(){\n    if(submitRealCartForm()) return;\n    const obs = new MutationObserver(() =\u003e {\n      if(findProductForm()){\n        obs.disconnect();\n        submitRealCartForm();\n      }\n    });\n    obs.observe(document.documentElement, { childList:true, subtree:true });\n    setTimeout(() =\u003e { try{ obs.disconnect(); }catch(e){} }, 8000);\n  }\n\n  atcBtns.forEach(btn =\u003e {\n    btn.addEventListener('click', (e) =\u003e {\n      e.preventDefault();\n      submitWithObserverFallback();\n    });\n  });\n})();\n\u003c\/script\u003e\u003c\/p\u003e\n\u003csection style=\"margin: 2.5rem 0 0 0; padding: 1.75rem 1.75rem; background: #0b1220; border: 1px solid rgba(255,255,255,.12); border-radius: 16px;\" class=\"af-standards-citation\"\u003e\n\u003ch3 style=\"margin: 0 0 .75rem 0; font-size: 1.15rem; font-weight: 750; color: #ffffff;\"\u003eEvaluated Against Published Testing Standards\u003c\/h3\u003e\n\u003cp style=\"margin: 0 0 1rem 0; font-size: 1.02rem; color: #d1d5db; line-height: 1.6;\"\u003eThis product is evaluated using Aiming Fluid Golf’s published magnetic gear testing framework. The framework defines how magnetic towels and docking systems are assessed across retention, cleaning effectiveness, usability, durability, and compatibility under real on-course conditions.\u003c\/p\u003e\n\u003cp style=\"margin: 0 0 1.25rem 0; font-size: .95rem; color: #9ca3af;\"\u003eThe standards page documents evaluation criteria, common failure modes, and the scorecard logic used to assess magnetic golf gear independent of product marketing claims.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\u003ca class=\"af-btn af-btn-secondary\" href=\"\/pages\/our-golf-gear-testing-design-standards\"\u003e View Testing \u0026amp; Design Standards \u003c\/a\u003e\u003c\/div\u003e\n\u003c\/section\u003e","brand":"Aiming Fluid Golf","offers":[{"title":"Default Title","offer_id":47801127010498,"sku":"AFGT-50MT2","price":44.69,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0720\/6400\/8386\/files\/Updateoptimizedmainimage.jpg?v=1781294467"},{"product_id":"premium-golf-shoe-bag-vented-leather-shoe-storage","title":"Premium Golf Shoe Bag – Vented Leather Shoe Storage","description":"\u003cstyle\u003e\n\/* =========================\n   AF APPLE-STYLE DARK MODE — SHOE BAG PDP (FINAL VISUALS)\n   LOCKED OPTION A PALETTE\n   ========================= *\/\n:root {\n  \/* Locked Palette *\/\n  --af-graphite: #0B0D0B;\n  --af-tech: #9FB8A0;\n  --af-olive: #1A2517;\n  --af-signal: #22C55E;\n\n  \/* Functional Mappings *\/\n  --bg-color: var(--af-graphite);\n  --card-bg: #0B0D0B;\n  --text-main: #f5f5f7;\n  --text-muted: #A3A3A8;\n  \n  \/* Borders \u0026 Shadows *\/\n  --border: rgba(159, 184, 160, 0.2); \n  --border-soft: rgba(159, 184, 160, 0.1);\n  --shadow: 0 20px 40px rgba(0,0,0,0.6);\n  --glow: 0 0 20px rgba(159, 184, 160, 0.15);\n}\n\n.af-luxury-page {\n  background: var(--bg-color);\n  color: var(--text-main);\n  padding: 60px 20px;\n  font-family: -apple-system, BlinkMacSystemFont, \"SF Pro Text\", \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  line-height: 1.6;\n  -webkit-font-smoothing: antialiased;\n}\n.af-luxury-page * { box-sizing: border-box; }\n.af-container { max-width: 1000px; margin: 0 auto; }\n\n\/* HEADER \u0026 TYPOGRAPHY *\/\n.af-eyebrow {\n  color: var(--af-tech);\n  letter-spacing: .1em;\n  text-transform: uppercase;\n  font-weight: 800;\n  font-size: .75rem;\n  margin: 0 0 16px;\n  text-align: center;\n}\n.af-hero {\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  margin-bottom: 32px;\n}\n.af-hero h1 {\n  margin: 0 0 14px;\n  font-weight: 800;\n  line-height: 1.05;\n  font-size: clamp(2.5rem, 5vw, 4rem);\n  letter-spacing: -0.02em;\n  background: linear-gradient(180deg, #fff, #a1a1aa);\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  text-align: center;\n}\n.af-lead {\n  font-size: 1.3rem;\n  color: #fff;\n  font-weight: 750;\n  text-align: center;\n  margin: 12px 0 10px;\n}\n.af-lede {\n  margin: 0 auto 0;\n  max-width: 760px;\n  color: var(--text-muted);\n  font-size: 1.1rem;\n  text-align: center;\n  line-height: 1.6;\n}\n\n\/* CARDS *\/\n.af-card {\n  background: rgba(255,255,255,0.02);\n  border-radius: 24px;\n  padding: 32px;\n  margin: 24px 0;\n  border: 1px solid var(--border);\n  box-shadow: var(--shadow);\n}\n.af-card--tech {\n  background: linear-gradient(180deg, rgba(159,184,160,0.05), var(--af-graphite));\n  border: 1px solid rgba(159,184,160,0.25);\n}\n.af-card--glow {\n  box-shadow: var(--glow);\n  border-color: rgba(159,184,160,0.4);\n}\n.af-h2 {\n  margin: 0 0 12px;\n  font-size: 1.8rem;\n  line-height: 1.2;\n  font-weight: 800;\n  color: #fff;\n  letter-spacing: -0.01em;\n}\n.af-muted {\n  color: var(--text-muted);\n  font-size: 1.05rem;\n  margin: 0 0 1rem;\n}\n\n\/* VALUE SNAPSHOT MODULE *\/\n.af-pill-module {\n  display: flex;\n  flex-wrap: wrap;\n  justify-content: center;\n  gap: 12px;\n  margin: 32px 0;\n}\n.af-pill {\n  background: rgba(255,255,255,0.05);\n  border: 1px solid var(--border);\n  color: #fff;\n  padding: 10px 20px;\n  border-radius: 999px;\n  font-size: 0.95rem;\n  font-weight: 600;\n  box-shadow: 0 4px 12px rgba(0,0,0,0.2);\n  display: flex;\n  align-items: center;\n  gap: 8px;\n}\n.af-pill::before {\n  content: \"•\";\n  color: var(--af-tech);\n  font-size: 1.2rem;\n  line-height: 0;\n}\n\n\/* IMAGE WRAPPERS *\/\n.af-img-wrap {\n  margin: 0 0 24px 0;\n  border-radius: 20px;\n  overflow: hidden;\n  border: 1px solid var(--border-soft);\n  background: #000;\n  position: relative;\n}\n.af-img { display: block; width: 100%; height: auto; }\n.af-caption {\n  font-size: 0.85rem;\n  color: var(--af-tech);\n  text-align: center;\n  margin-top: 8px;\n  display: block;\n  font-weight: 600;\n  text-transform: uppercase;\n  letter-spacing: 0.05em;\n}\n\n\/* BUTTONS *\/\n.af-btn-wrap {\n  display: flex;\n  justify-content: center;\n  flex-wrap: wrap;\n  gap: 12px;\n  margin-top: 20px;\n  align-items: center;\n}\n.af-btn {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  padding: 16px 32px;\n  border-radius: 999px;\n  font-weight: 750;\n  text-decoration: none;\n  font-size: 1.05rem;\n  transition: all .2s ease;\n  border: 0;\n  cursor: pointer;\n  min-height: 52px;\n}\n.af-btn-primary {\n  background: var(--af-signal);\n  color: #000;\n  border: 1px solid var(--af-signal);\n  font-weight: 900;\n  box-shadow: 0 4px 15px rgba(34, 197, 94, 0.4);\n}\n.af-btn-primary:hover { filter: brightness(1.1); transform: translateY(-2px); }\n.af-btn-secondary {\n  background: rgba(255,255,255,0.03);\n  color: #fff;\n  border: 1px solid rgba(255,255,255,0.15);\n  font-size: 1rem;\n}\n.af-btn-secondary:hover { background: rgba(255,255,255,0.08); border-color: #fff; }\n\n\/* INTERACTION MODULE *\/\n.af-hero-interaction {\n  background: rgba(255,255,255,0.03);\n  border: 1px solid var(--af-tech);\n  border-radius: 28px;\n  padding: 24px;\n  margin: 0 auto;\n  max-width: 580px;\n  width: 100%;\n  backdrop-filter: blur(10px);\n  text-align: center;\n  box-shadow: 0 20px 50px rgba(0,0,0,0.5);\n}\n.af-interaction-label {\n  font-size: .85rem;\n  text-transform: uppercase;\n  letter-spacing: .08em;\n  color: var(--af-tech);\n  margin-bottom: 12px;\n  font-weight: 800;\n  display: block;\n}\n.af-variant-wrap {\n  display: flex;\n  justify-content: center;\n  gap: 12px;\n  margin-bottom: 16px;\n}\n.af-variant-btn {\n  background: rgba(255,255,255,0.05);\n  border: 1px solid rgba(255,255,255,0.2);\n  color: #fff;\n  padding: 12px 24px;\n  border-radius: 12px;\n  font-weight: 600;\n  cursor: pointer;\n  transition: all 0.2s;\n}\n.af-variant-btn:hover { background: rgba(255,255,255,0.1); }\n.af-variant-btn[aria-pressed=\"true\"] {\n  border-color: var(--af-signal);\n  background: rgba(34, 197, 94, 0.1);\n  color: var(--af-signal);\n  box-shadow: 0 0 15px rgba(34, 197, 94, 0.15);\n}\n\n.af-nudge {\n  text-align: center;\n  margin-top: 12px;\n  color: var(--text-muted);\n  font-size: .95rem;\n}\n\n\/* EXEC SUMMARY (HIGHLIGHTED) *\/\n.af-exec-summary {\n  background: rgba(34, 197, 94, 0.08); \/* Slight green tint *\/\n  border: 1px solid #22C55E; \/* Signal green border *\/\n  border-radius: 24px;\n  padding: 28px;\n  margin-bottom: 28px;\n  margin-top: 10px;\n  box-shadow: 0 0 20px rgba(34, 197, 94, 0.1); \/* Glow *\/\n}\n.af-exec-summary__hdr {\n  display: flex;\n  align-items: center;\n  gap: 12px;\n  margin-bottom: 16px;\n  flex-wrap: wrap;\n}\n.af-exec-summary__label {\n  font-size: 0.75rem;\n  letter-spacing: 0.1em;\n  text-transform: uppercase;\n  color: #000;\n  font-weight: 800;\n  background: #22C55E; \/* Solid signal green *\/\n  padding: 4px 10px;\n  border-radius: 6px;\n}\n.af-exec-summary__note {\n  font-size: 1.1rem;\n  color: #fff;\n  font-weight: 700;\n}\n.af-exec-summary p {\n  margin: 0;\n  color: #f3f4f6; \/* Brighter text *\/\n  font-size: 1.05rem;\n  line-height: 1.6;\n}\n.af-verdict-text {\n  display: block;\n  margin-top: 16px;\n  padding-top: 16px;\n  border-top: 1px solid rgba(34, 197, 94, 0.3);\n  font-weight: 700;\n  color: #fff;\n  font-size: 1.1rem;\n}\n.af-verdict-text strong { color: #22C55E; }\n\n\/* TOC *\/\n.af-toc {\n  display: flex;\n  justify-content: center;\n  flex-wrap: wrap;\n  gap: 10px;\n  margin-bottom: 24px;\n}\n.af-toc a { text-decoration: none; font-size: 0.9rem; padding: 8px 16px; min-height: auto; }\n\n\/* STEPS \u0026 LISTS *\/\n.af-steps, .af-list {\n  margin: 0;\n  padding-left: 1.2rem;\n  color: var(--text-muted);\n}\n.af-steps li, .af-list li {\n  margin: 0.8rem 0;\n  font-size: 1.05rem;\n}\n.af-steps li strong, .af-list li strong { color: #fff; font-weight: 700; }\n\n\/* DRAWERS \u0026 FAQ *\/\n.af-drawer, .af-faq {\n  border-top: 1px solid var(--border);\n  padding: 16px 0;\n  margin-top: 16px;\n}\n.af-drawer summary, .af-faq summary {\n  cursor: pointer;\n  font-weight: 700;\n  color: #fff;\n  font-size: 1.05rem;\n  list-style: none;\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n  padding: 4px 0;\n}\n.af-drawer summary::-webkit-details-marker { display: none; }\n.af-drawer summary::after, .af-faq summary::after { content: \"+\"; font-weight: 400; color: var(--text-muted); font-size: 1.5rem; }\n.af-drawer[open] summary::after, .af-faq[open] summary::after { content: \"−\"; }\n.af-drawer .af-drawer-body, .af-faq div { margin-top: 12px; color: var(--text-muted); line-height: 1.6; }\n\n\/* GRID *\/\n.af-grid-2 { display: grid; grid-template-columns: 1fr; gap: 24px; }\n@media (min-width: 768px) {\n  .af-grid-2 { grid-template-columns: 1fr 1fr; }\n}\n@media (max-width: 767px) {\n  .af-luxury-page { padding: 40px 16px; }\n  .af-card { padding: 24px; }\n  .af-btn { width: 100%; }\n}\n\n\/* STANDARDS *\/\n.af-standards-citation {\n  margin: 40px 0 0 0;\n  padding: 24px;\n  background: var(--af-olive);\n  border: 1px solid rgba(159,184,160,0.3);\n  border-radius: 20px;\n}\n\u003c\/style\u003e\n\u003cdiv data-af-shoe-bag=\"\" data-af-handle=\"premium-golf-shoe-bag\" class=\"af-luxury-page\"\u003e\n\u003cdiv class=\"af-container\"\u003e\n\u003cheader class=\"af-hero\"\u003e\n\u003cp class=\"af-eyebrow\"\u003eOn-Course Organization System™ • Shoe Bag\u003c\/p\u003e\n\u003ch1\u003ePremium Golf Shoe Bag\u003c\/h1\u003e\n\u003cp class=\"af-lead\"\u003eContain the mess. Protect the rest.\u003c\/p\u003e\n\u003cp class=\"af-lede\"\u003eDon’t let dirty shoes \"season\" your trunk. Isolates dirt, dampness, and odor so they don’t migrate into your gloves, towels, or car interior.\u003c\/p\u003e\n\u003cdiv class=\"af-exec-summary\"\u003e\n\u003cdiv class=\"af-exec-summary__hdr\"\u003e\n\u003cspan class=\"af-exec-summary__label\"\u003eTest Verdict\u003c\/span\u003e \u003cspan class=\"af-exec-summary__note\"\u003eContain the mess, protect the rest.\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cp\u003eThe Premium Golf Shoe Bag is built for one job: isolate dirty, damp footwear so it doesn’t migrate into gloves, towels, headcovers, or your car. The mechanism is boring on purpose: create a default home for shoes so the trunk stays clean and your pre-round routine stays repeatable.\u003c\/p\u003e\n\u003cdiv class=\"af-verdict-text\"\u003e\n\u003cstrong\u003eVerdict:\u003c\/strong\u003e Buy it if you keep shoes in the car (or travel). Skip it if your shoes live at the clubhouse.\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-toc\"\u003e\n\u003ca class=\"af-btn af-btn-secondary\" href=\"#af-problem\"\u003eThe Trunk Tax\u003c\/a\u003e \u003ca class=\"af-btn af-btn-secondary\" href=\"#af-how\"\u003eHow It Works\u003c\/a\u003e \u003ca class=\"af-btn af-btn-secondary\" href=\"#af-choose\"\u003ePick Your Setup\u003c\/a\u003e \u003ca class=\"af-btn af-btn-secondary\" href=\"#af-specs\"\u003eSpecs + Care\u003c\/a\u003e \u003ca class=\"af-btn af-btn-secondary\" href=\"#af-faq\"\u003eFAQ\u003c\/a\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-hero-interaction af-card--glow\"\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cimg loading=\"eager\" alt=\"Premium golf shoe bag in grey\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/premium_shoe_bag_grey.jpg?v=1768952013\" data-af-hero-img=\"\" class=\"af-img\"\u003e\u003c\/div\u003e\n\u003cspan class=\"af-interaction-label\"\u003eChoose Color\u003c\/span\u003e\n\u003cdiv aria-label=\"Shoe bag color\" role=\"group\" class=\"af-variant-wrap\"\u003e\n\u003cbutton aria-pressed=\"true\" data-af-color=\"Grey\" class=\"af-variant-btn\" type=\"button\"\u003eGrey\u003c\/button\u003e \u003cbutton aria-pressed=\"false\" data-af-color=\"Black\" class=\"af-variant-btn\" type=\"button\"\u003eBlack\u003c\/button\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003cbutton data-af-atc=\"\" class=\"af-btn af-btn-primary\" type=\"button\"\u003eAdd to Cart\u003c\/button\u003e \u003ca href=\"\/collections\/on-course-organization-system\" class=\"af-btn af-btn-secondary\"\u003eShop System\u003c\/a\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-nudge\"\u003eIf your trunk is your locker, this removes a daily annoyance fast.\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-pill-module\"\u003e\n\u003cdiv class=\"af-pill\"\u003eFits Size 14\u003c\/div\u003e\n\u003cdiv class=\"af-pill\"\u003eIsolates Dirt\u003c\/div\u003e\n\u003cdiv class=\"af-pill\"\u003eSystem Ready\u003c\/div\u003e\n\u003cdiv class=\"af-pill\"\u003ePremium Materials\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/header\u003e\n\u003csection id=\"af-problem\" class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eThe Trunk Tax (you’re already paying it)\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eLeaving shoes loose feels harmless… until it isn’t. Grit ends up in your trunk carpet. Dampness lingers. Odor sticks to anything fabric. Then your “quick grab” golf setup becomes a slow-motion contamination event.\u003c\/p\u003e\n\u003cp class=\"af-muted\"\u003e\u003cstrong\u003eTranslation:\u003c\/strong\u003e you lose time, you lose cleanliness, and you start the next round slightly annoyed for no good reason.\u003c\/p\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\n\u003cimg loading=\"lazy\" alt=\"Open shoe bag with golf shoes inside, demonstrating clean containment\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/course_chaos.jpg?v=1768952059\" class=\"af-img\"\u003e \u003cspan class=\"af-caption\"\u003eZip it closed. Chaos contained.\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection id=\"af-how\" class=\"af-card af-card--tech\"\u003e\n\u003ch2 class=\"af-h2\"\u003eHow it works\u003c\/h2\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\n\u003cimg loading=\"lazy\" alt=\"Internal compartments showing divider and ventilation\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/premium_golf_shoe_bag_open.jpg?v=1768952229\" class=\"af-img\"\u003e \u003cspan class=\"af-caption\"\u003eInternal Divider Protects Shoes • Mesh Protects Air Quality\u003c\/span\u003e\n\u003c\/div\u003e\n\u003col class=\"af-steps\"\u003e\n\u003cli\u003e\n\u003cstrong\u003eExit routine:\u003c\/strong\u003e shoes go into the bag every time, not onto carpet “just for a second.”\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eContainment:\u003c\/strong\u003e dirt stays with dirt. Moisture stays with moisture. Odor stays in its own zip code.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eReset:\u003c\/strong\u003e removes the “where do these go?” decision. Default homes beat willpower.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eCompatibility:\u003c\/strong\u003e stores cleanly next to your other small-gear modules so your week stays repeatable.\u003c\/li\u003e\n\u003c\/ol\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-grid-2\"\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eWho it’s for\u003c\/h2\u003e\n\u003cul class=\"af-list\"\u003e\n\u003cli\u003eGolfers who keep shoes in the car.\u003c\/li\u003e\n\u003cli\u003ePlayers who walk, practice, or travel.\u003c\/li\u003e\n\u003cli\u003eAnyone building a repeatable setup.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eWho it’s not for\u003c\/h2\u003e\n\u003cul class=\"af-list\"\u003e\n\u003cli\u003ePeople who leave shoes at the clubhouse.\u003c\/li\u003e\n\u003cli\u003eGolfers who don’t care about trunk mess.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection id=\"af-choose\" class=\"af-card af-card--tech\"\u003e\n\u003ch2 class=\"af-h2\"\u003eChoose your setup\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eUse explicit decision rules so you don’t overthink it:\u003c\/p\u003e\n\u003cul class=\"af-list\"\u003e\n\u003cli\u003e\n\u003cstrong\u003eChoose the Shoe Bag\u003c\/strong\u003e if your main issue is dirt, moisture, and smell migrating into other gear.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eChoose the On-Course Organization System™\u003c\/strong\u003e if you also want a home for small essentials (phone, keys, tees, cash).\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003ca href=\"\/collections\/all\/products\/premium-leather-golf-utility-pouch-with-zippered-closure-luxury-valuables-bag-with-diamond-stitching-360-degree-metal-clip-and-soft-interior-lining\" class=\"af-btn af-btn-secondary\"\u003eShop Organization System\u003c\/a\u003e \u003ca href=\"\/collections\/on-course-organization-system\" class=\"af-btn af-btn-secondary\"\u003eShop Utility Pouches\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection id=\"af-specs\" class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eSpecs + care\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eThis is a containment product. It doesn’t need a motivational speech. It needs to fit, zip, and do the job every week.\u003c\/p\u003e\n\u003cdetails class=\"af-drawer\"\u003e\n\u003csummary\u003eFit + capacity\u003c\/summary\u003e\n\u003cdiv class=\"af-drawer-body\"\u003eFits up to \u003cstrong\u003emen’s size 14\u003c\/strong\u003e. If you’re bigger than that, you’re basically a small aircraft, and you should check dimensions before ordering.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-drawer\"\u003e\n\u003csummary\u003eMoisture + odor reality check\u003c\/summary\u003e\n\u003cdiv class=\"af-drawer-body\"\u003eIt \u003cstrong\u003eisolates\u003c\/strong\u003e odor from the rest of your gear. It does not magically “delete” odor. Best practice: let shoes dry between rounds. This bag prevents the spread; it’s not a deodorizer.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-drawer\"\u003e\n\u003csummary\u003eCleaning\u003c\/summary\u003e\n\u003cdiv class=\"af-drawer-body\"\u003eIf the inside gets gritty, shake it out and wipe it down. If it gets damp, unzip and let it air out. Simple rules: contain first, then reset.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003c\/section\u003e\n\u003csection id=\"af-faq\" class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003ePremium Golf Shoe Bag FAQ\u003c\/h2\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eWhat problem does this solve best?\u003c\/summary\u003e\n\u003cdiv\u003eContaining dirt, moisture, and odor so they don’t transfer into the rest of your gear or your trunk.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eWill it fit large shoes?\u003c\/summary\u003e\n\u003cdiv\u003eYes. It fits up to men’s size 14.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eIs it compatible with any golf bag?\u003c\/summary\u003e\n\u003cdiv\u003eYes. It’s separate from your golf bag, so it works whether you use a stand bag, cart bag, or push cart.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eDoes it eliminate odor?\u003c\/summary\u003e\n\u003cdiv\u003eIt isolates odor from other gear. For best results, dry shoes between rounds. This is containment, not a deodorizer.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eShould I also get the utility pouch?\u003c\/summary\u003e\n\u003cdiv\u003eGet the pouch if your small essentials keep migrating. The shoe bag isolates footwear; the pouch consolidates essentials.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\" style=\"text-align: center;\"\u003e\n\u003ch2 class=\"af-h2\"\u003eMake your trunk boring again\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eBoring is good. Boring means your shoes are contained, your gear stays cleaner, and your round starts with fewer distractions.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003cbutton data-af-atc=\"\" class=\"af-btn af-btn-primary\" type=\"button\"\u003eAdd to Cart\u003c\/button\u003e \u003ca href=\"\/pages\/golf-gear-system-hub\" class=\"af-btn af-btn-secondary\"\u003eSee System Hub\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-standards-citation\"\u003e\n\u003ch3 style=\"margin: 0 0 .75rem 0; font-size: 1.15rem; font-weight: 900; color: #ffffff;\"\u003eEvaluated Against Published Testing Standards\u003c\/h3\u003e\n\u003cp style=\"margin: 0 0 1rem 0; font-size: 1.02rem; color: #d1d5db; line-height: 1.6;\"\u003eWe design around routines and failure modes: what actually creates friction during real golf weeks. Shoe mess is predictable, so the fix is a predictable home.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\u003ca href=\"\/pages\/our-golf-gear-testing-design-standards\" class=\"af-btn af-btn-secondary\"\u003eRead Testing Standards\u003c\/a\u003e\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cp\u003e\u003cscript type=\"application\/ld+json\"\u003e\n{\n  \"@context\": \"https:\/\/schema.org\",\n  \"@type\": \"FAQPage\",\n  \"mainEntity\": [\n    {\n      \"@type\": \"Question\",\n      \"name\": \"What problem does this solve best?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Containing dirt, moisture, and odor so they don’t transfer into the rest of your gear or your trunk.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Will it fit large shoes?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Yes. It fits up to men’s size 14.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Is it compatible with any golf bag?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Yes. It’s separate from your golf bag, so it works whether you use a stand bag, cart bag, or push cart.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Does it eliminate odor?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"It isolates odor from other gear. For best results, dry shoes between rounds. This is containment, not a deodorizer.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Should I also get the utility pouch?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Get the pouch if your small essentials keep migrating. The shoe bag isolates footwear; the pouch consolidates essentials.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"How does this fit the System?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"It handles footwear containment. Pair with the utility pouch for a complete pre-round flow.\"\n      }\n    }\n  ]\n}\n\u003c\/script\u003e \u003cscript\u003e\n\/* =========================================================\n   AF PDP ATC (UPDATED FIX)\n   - Hardcoded Grey Variant ID for absolute safety\n   - Dynamically fetches Black variant if needed\n   ========================================================= *\/\n(function(){\n  const root = document.querySelector('[data-af-shoe-bag]');\n  if(!root) return;\n\n  const handle = root.getAttribute('data-af-handle') || 'premium-golf-shoe-bag';\n\n  const IMG_GREY  = \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/premium_shoe_bag_grey.jpg?v=1768952013\";\n  const IMG_BLACK = \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/premium_shoe_bag_black.jpg?v=1768952030\";\n\n  const heroImg = root.querySelector('[data-af-hero-img]');\n  const variantBtns = Array.from(root.querySelectorAll('[data-af-color]'));\n  const atcBtns = Array.from(root.querySelectorAll('[data-af-atc]'));\n\n  let productData = null;\n\n  \/\/ SAFETY HARDCODE FOR GREY\n  const HARDCODED_IDS = {\n    \"Grey\": 42715031306283\n  };\n\n  function setPressed(color){\n    variantBtns.forEach(btn =\u003e btn.setAttribute('aria-pressed', String(btn.getAttribute('data-af-color') === color)));\n  }\n\n  function setHero(color){\n    if(!heroImg) return;\n    if(color === \"Black\"){\n      heroImg.src = IMG_BLACK;\n      heroImg.alt = \"Premium golf shoe bag in black, designed to contain dirty shoes and protect the rest of your gear\";\n    } else {\n      heroImg.src = IMG_GREY;\n      heroImg.alt = \"Premium golf shoe bag in grey, designed to contain dirty shoes and protect the rest of your gear\";\n    }\n  }\n\n  async function loadProduct(){\n    if(productData) return productData;\n    const res = await fetch(`\/products\/${handle}.js`, { credentials: 'same-origin' });\n    if(!res.ok) throw new Error('Product fetch failed');\n    productData = await res.json();\n    return productData;\n  }\n\n  function findVariantIdByColor(color){\n    \/\/ 1. Check Hardcoded ID\n    if(HARDCODED_IDS[color]) return HARDCODED_IDS[color];\n\n    \/\/ 2. Fetch Logic (Fallback for Black)\n    if(!productData || !Array.isArray(productData.variants)) return null;\n    const c = (color || '').toLowerCase();\n    const v = productData.variants.find(variant =\u003e {\n      const opts = [variant.option1, variant.option2, variant.option3]\n        .filter(Boolean)\n        .map(x =\u003e String(x).toLowerCase());\n      return opts.some(opt =\u003e opt.includes(c)); \n    });\n    return v ? v.id : null;\n  }\n\n  async function addToCart(){\n    const activeBtn = variantBtns.find(btn =\u003e btn.getAttribute('aria-pressed') === 'true');\n    const color = activeBtn ? activeBtn.getAttribute('data-af-color') : \"Grey\";\n    \n    try {\n      await loadProduct();\n      const variantId = findVariantIdByColor(color);\n      \n      if(!variantId) {\n        alert(\"Variant not found. Please try again.\");\n        return;\n      }\n\n      const payload = { items: [{ id: variantId, quantity: 1 }] };\n\n      const res = await fetch('\/cart\/add.js', {\n        method: 'POST',\n        headers: { 'Content-Type': 'application\/json', 'Accept': 'application\/json' },\n        credentials: 'same-origin',\n        body: JSON.stringify(payload)\n      });\n\n      if(!res.ok) throw new Error('Add to cart failed');\n      window.location.href = '\/cart';\n\n    } catch(e){\n      console.error(e);\n      window.location.href = '\/cart'; \n    }\n  }\n\n  variantBtns.forEach(btn =\u003e {\n    btn.addEventListener('click', () =\u003e {\n      const color = btn.getAttribute('data-af-color');\n      setPressed(color);\n      setHero(color);\n    });\n  });\n\n  atcBtns.forEach(btn =\u003e {\n    btn.addEventListener('click', (e) =\u003e {\n      e.preventDefault();\n      addToCart();\n    });\n  });\n\n  \/\/ Init\n  setPressed(\"Grey\");\n  setHero(\"Grey\");\n\n})();\n\u003c\/script\u003e\u003c\/p\u003e","brand":"Aiming Fluid Golf","offers":[{"title":"Black","offer_id":47801127370946,"sku":"sku-42715031273515","price":119.69,"currency_code":"USD","in_stock":true},{"title":"Gray","offer_id":47801127403714,"sku":"sku-42715031306283","price":119.69,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0720\/6400\/8386\/files\/premium_shoe_bag_black.jpg?v=1781294468"},{"product_id":"don-t-suck™-golf-tees-pureflight™-4-prong-design-50-pack","title":"DON’T SUCK™ Golf Tees – PureFlight™ 4-Prong Design (50-Pack)","description":"\u003cstyle\u003e\n\/* =========================\n   AF LUXURY PAGE STYLES (Scoped \u0026 Premium)\n   ========================= *\/\n.af-luxury-page {\n  background: #050509;\n  color: #f3f4f6;\n  padding: 60px 20px;\n  font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  line-height: 1.6;\n}\n.af-luxury-page * { box-sizing: border-box; }\n\n.af-container { max-width: 1000px; margin: 0 auto; }\n\n\/* TYPOGRAPHY *\/\n.af-eyebrow{\n  color:#34d399;\n  letter-spacing:.15em;\n  text-transform:uppercase;\n  font-weight:700;\n  font-size:.75rem;\n  margin:0 0 12px;\n  text-align:center;\n}\n.af-hero h1{\n  margin:0 0 16px;\n  font-weight:800;\n  line-height:1.1;\n  font-size:clamp(2.2rem,5vw,3.2rem);\n  letter-spacing:-.02em;\n  color:#fff;\n  text-align:center;\n}\n.af-lead{\n  font-size:1.2rem;\n  color:#fff;\n  font-weight:700;\n  text-align:center;\n  margin: 0 0 10px;\n}\n.af-lede{\n  margin:0 auto 22px;\n  max-width:760px;\n  color:#9ca3af;\n  font-size:1.1rem;\n  text-align:center;\n  line-height:1.6;\n}\n\n\/* CARDS *\/\n.af-card{\n  background:#111827;\n  border:1px solid rgba(255,255,255,.12);\n  border-radius:24px;\n  padding:40px;\n  margin-bottom:24px;\n  box-shadow:0 20px 40px -10px rgba(0,0,0,.5);\n  position:relative;\n  overflow:hidden;\n}\n.af-h2{\n  margin:0 0 20px;\n  font-size:1.75rem;\n  line-height:1.2;\n  font-weight:700;\n  color:#fff;\n}\n.af-muted{\n  color:#d1d5db;\n  font-size:1.05rem;\n  margin-bottom:1.2rem;\n}\n\n\/* EXEC SUMMARY *\/\n.af-exec-summary{\n  background:rgba(52,211,153,.1);\n  border:1px solid rgba(52,211,153,.25);\n  border-radius:16px;\n  padding:24px;\n  margin-bottom:22px;\n  text-align:left;\n}\n.af-exec-summary__hdr{\n  display:flex;\n  align-items:center;\n  gap:12px;\n  flex-wrap:wrap;\n  margin-bottom:10px;\n}\n.af-exec-summary__label{\n  font-size:.75rem;\n  letter-spacing:.1em;\n  text-transform:uppercase;\n  color:#34d399;\n  font-weight:800;\n  background:rgba(52,211,153,.1);\n  padding:4px 8px;\n  border-radius:6px;\n}\n.af-exec-summary__note{\n  font-size:.95rem;\n  color:#fff;\n  font-weight:600;\n}\n.af-exec-summary p{\n  margin:0;\n  color:#d1d5db;\n  font-size:1rem;\n  line-height:1.6;\n}\n\n\/* LISTS *\/\n.af-list, .af-steps, ul{\n  margin:0;\n  padding-left:1.2rem;\n  color:#d1d5db;\n}\n.af-list li, .af-steps li, ul li{ margin:.8rem 0; }\n.af-list li strong, ul li strong{ color:#fff; }\n\n\/* CHIPS *\/\n.af-chip-row{\n  display:flex;\n  flex-wrap:wrap;\n  gap:8px;\n  margin-top:18px;\n}\n.af-chip{\n  background:rgba(255,255,255,.08);\n  border:1px solid rgba(255,255,255,.15);\n  color:#e5e7eb;\n  padding:6px 14px;\n  border-radius:999px;\n  font-size:.85rem;\n  font-weight:500;\n}\n\n\/* IMAGES (Locked Wrap) *\/\n.af-img-wrap{\n  width:100%;\n  border-radius:16px;\n  overflow:hidden;\n  border:1px solid rgba(255,255,255,.1);\n  margin-top:16px;\n}\n.af-img{\n  width:100%;\n  height:auto;\n  display:block;\n}\n\n\/* FAQ *\/\n.af-faq{\n  border-top:1px solid rgba(255,255,255,.1);\n  padding:16px 0;\n}\n.af-faq summary{\n  cursor:pointer;\n  font-weight:700;\n  color:#fff;\n  font-size:1.1rem;\n  list-style:none;\n  display:flex;\n  justify-content:space-between;\n  align-items:center;\n  gap:12px;\n}\n.af-faq summary::-webkit-details-marker{ display:none; }\n.af-faq summary::after{\n  content:\"+\";\n  font-weight:400;\n  color:#9ca3af;\n  font-size:1.5rem;\n}\ndetails[open] summary::after{ content:\"−\"; }\n.af-faq div{ margin-top:12px; color:#d1d5db; line-height:1.6; }\n\n\/* BUTTONS (Locked System) *\/\n.af-btn-wrap{\n  display:flex;\n  flex-wrap:wrap;\n  gap:12px;\n  margin-top:18px;\n  justify-content:center;\n}\n.af-btn{\n  display:inline-flex;\n  align-items:center;\n  justify-content:center;\n  padding:12px 24px;\n  border-radius:999px;\n  font-weight:700;\n  text-decoration:none !important;\n  font-size:.95rem;\n  transition:all .2s ease;\n  cursor:pointer;\n  border:none;\n  font-family:inherit;\n  user-select:none;\n}\n.af-btn:hover{ transform:translateY(-2px); }\n.af-btn-primary{\n  background:#34d399;\n  color:#064e3b !important;\n  box-shadow:0 4px 12px rgba(52,211,153,.3);\n}\n.af-btn-primary:hover{\n  background:#10b981;\n  box-shadow:0 8px 20px rgba(52,211,153,.4);\n}\n.af-btn-secondary{\n  background:rgba(255,255,255,.1);\n  color:#fff !important;\n  border:1px solid rgba(255,255,255,.1);\n}\n.af-btn-secondary:hover{ background:rgba(255,255,255,.2); }\n\n\/* GRIDS *\/\n.af-grid-2{\n  display:grid;\n  grid-template-columns:1fr;\n  gap:20px;\n}\n@media (min-width:768px){\n  .af-grid-2{ grid-template-columns:1fr 1fr; }\n}\n.af-center{ text-align:center; }\n\u003c\/style\u003e\n\u003cdiv data-af-tees-pdp=\"\" class=\"af-luxury-page\"\u003e\n\u003cdiv class=\"af-container\"\u003e\n\u003cheader class=\"af-hero\"\u003e\n\u003cp class=\"af-eyebrow\"\u003eOn-Course Essentials • Repeatable Setup • PureFlight™ Tech\u003c\/p\u003e\n\u003ch1\u003eDON’T SUCK™ Golf Tees (50-Pack)\u003c\/h1\u003e\n\u003cdiv class=\"af-exec-summary\"\u003e\n\u003cdiv class=\"af-exec-summary__hdr\"\u003e\n\u003cspan class=\"af-exec-summary__label\"\u003eTest Verdict\u003c\/span\u003e \u003cspan class=\"af-exec-summary__note\"\u003eRemove the dumb variable: inconsistent setup.\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cp\u003eMost tee shots don’t fail because you “need more tips.” They fail because your setup changes without permission: height drifts, the ball wobbles, the tee snaps, and your routine resets mid-hole. The 4-prong head stabilizes the ball, and \u003cstrong\u003ePureFlight™ Tech\u003c\/strong\u003e reduces unnecessary contact at impact so launches are cleaner and more repeatable.\u003cbr\u003e\u003cbr\u003e\u003cstrong\u003eVerdict:\u003c\/strong\u003e Choose these if you want the same start-of-hole routine more often. Skip them if you treat tees like party favors.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cp class=\"af-lead\"\u003eA tee shot shouldn’t feel like a science experiment.\u003c\/p\u003e\n\u003cp class=\"af-lede\"\u003eConsistency isn’t sexy. It’s just how you stop donating strokes. These tees are built to make the first move of every hole boring, stable, and repeatable.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003cbutton data-af-atc=\"\" class=\"af-btn af-btn-primary\" type=\"button\"\u003eAdd to Cart\u003c\/button\u003e \u003ca href=\"#choose\" class=\"af-btn af-btn-secondary\"\u003eChoose Your Setup\u003c\/a\u003e \u003ca href=\"\/pages\/our-golf-gear-testing-design-standards\" class=\"af-btn af-btn-secondary\"\u003eTesting Standards\u003c\/a\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\u003c\/div\u003e\n\u003c\/header\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eHook: the tee is tiny… and it controls the entire hole\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eHere’s the annoying truth: the tee shot is the only shot you take with perfect conditions and unlimited time. So when it goes sideways, it’s usually because a small variable slipped in unnoticed.\u003c\/p\u003e\n\u003cp class=\"af-muted\"\u003eThe usual culprit is tee consistency: height drift, wobble, and broken wood tees forcing a mid-routine reset. That’s not “golf being hard.” That’s bad inputs.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eConflict: broken tees + inconsistent height = random launches\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eA snapped wood tee steals momentum. A ball that isn’t seated the same way creates those “why did that launch weird?” moments. The worst part is you can’t diagnose it after the fact, because it looks like a swing problem.\u003c\/p\u003e\n\u003cp class=\"af-muted\"\u003eDON’T SUCK™ tees are built to remove that noise: \u003cstrong\u003estable seating\u003c\/strong\u003e, \u003cstrong\u003erepeatable height\u003c\/strong\u003e, and \u003cstrong\u003edurability\u003c\/strong\u003e that doesn’t crumble if you breathe on it.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eJourney: how the design removes variables\u003c\/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003eStep 1 — 4-Prong Stability:\u003c\/strong\u003e Reduces ball wobble at address so setup is less fussy.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eStep 2 — PureFlight™ Tech:\u003c\/strong\u003e Head geometry minimizes unnecessary contact at impact for cleaner launches.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eStep 3 — Durability:\u003c\/strong\u003e Premium plastic outlasts wood tees so you stop reloading constantly.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eStep 4 — Organization:\u003c\/strong\u003e Includes a reusable pouch so tees don’t become bag confetti.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cdiv aria-hidden=\"true\" class=\"af-chip-row\"\u003e\n\u003cspan class=\"af-chip\"\u003ePureFlight™ Tech\u003c\/span\u003e \u003cspan class=\"af-chip\"\u003e4-Prong Stability\u003c\/span\u003e \u003cspan class=\"af-chip\"\u003eHigh Durability\u003c\/span\u003e \u003cspan class=\"af-chip\"\u003e50-Pack\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-grid-2\"\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eWho it’s for\u003c\/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003eConsistency seekers:\u003c\/strong\u003e You want the same tee height and feel every time.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eRoutine builders:\u003c\/strong\u003e You hate “broken-tee distractions.”\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eValue hunters:\u003c\/strong\u003e One pack lasts much longer than wood tees.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eWho it’s not for\u003c\/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003eNovelty buyers:\u003c\/strong\u003e These aren’t gag tees. They’re equipment.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eRange grinders:\u003c\/strong\u003e If you machine-gun buckets, cheap wood tees are fine.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\" id=\"choose\"\u003e\n\u003ch2 class=\"af-h2\"\u003eChoose your setup\u003c\/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cstrong\u003eDefault choice:\u003c\/strong\u003e Choose DON’T SUCK™ tees for “same setup, more often.”\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eFull routine:\u003c\/strong\u003e Pair tees with a magnetic towel system so clean contact and consistent setup happen together.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eCasual play:\u003c\/strong\u003e If you play 5 rounds a year, basic wood tees are fine.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003ca href=\"\/collections\/golf-tees\" class=\"af-btn af-btn-secondary\"\u003eShop All Tees\u003c\/a\u003e \u003ca href=\"\/collections\/magnetic-towels\" class=\"af-btn af-btn-secondary\"\u003eAdd Magnetic Towel\u003c\/a\u003e \u003ca href=\"\/collections\/magnetic-landing-pads\" class=\"af-btn af-btn-secondary\"\u003eAdd Landing Pad\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eUse it like this\u003c\/h2\u003e\n\u003col class=\"af-steps\"\u003e\n\u003cli\u003e\n\u003cstrong\u003ePick one driver tee height:\u003c\/strong\u003e match your preferred ball position and stick to it.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eSeat stable:\u003c\/strong\u003e press into turf until the tee doesn’t wiggle. Don’t bury it out of fear.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eCheck wobble:\u003c\/strong\u003e if the ball rocks, fix it now instead of “hoping.”\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eSwing:\u003c\/strong\u003e the tee’s job is to be invisible to the outcome.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eRecover + reuse:\u003c\/strong\u003e pick it up. Repeat the same setup next hole.\u003c\/li\u003e\n\u003c\/ol\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eProof and trust\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eThe goal isn’t hype. It’s reducing friction and removing variables where they actually matter: the first move of every hole. If your setup is repeatable, your strike becomes more repeatable.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003ca href=\"\/pages\/our-golf-gear-testing-design-standards\" class=\"af-btn af-btn-secondary\"\u003eRead Testing Standards\u003c\/a\u003e \u003ca href=\"\/pages\/golf-bag-essentials-the-ultimate-magnetic-accessory-system-guide\" class=\"af-btn af-btn-secondary\"\u003eSystem Guide\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection id=\"af-faq\" class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eProduct FAQ\u003c\/h2\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eAre these better than wood tees?\u003c\/summary\u003e\n\u003cdiv\u003eFor repeatability and durability, yes. Wood tees deform and snap, which changes height and resets your routine. Plastic tees hold shape longer and keep setup more consistent.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eWhat is PureFlight™ Tech?\u003c\/summary\u003e\n\u003cdiv\u003eIt’s the head geometry designed to reduce unnecessary contact at impact, supporting cleaner launches and a more consistent strike.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eDo these add distance?\u003c\/summary\u003e\n\u003cdiv\u003eThey don’t create magic speed. But consistent height and cleaner contact help you access your normal distance more often instead of the random low-launch mishits.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eCan I use them for irons and hybrids?\u003c\/summary\u003e\n\u003cdiv\u003eYes. Stable seating works well for par-3 tee shots, hybrids, and fairway woods when you want a controlled launch.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eAre they unbreakable?\u003c\/summary\u003e\n\u003cdiv\u003eNo tee is unbreakable. These are significantly more durable than wood, and a 50-pack should last a long time for most golfers.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eWho are these NOT for?\u003c\/summary\u003e\n\u003cdiv\u003eNovelty buyers, heavy range grinders, or anyone who only cares about the cheapest possible option regardless of performance.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card af-center\" id=\"buy\"\u003e\n\u003ch2 class=\"af-h2\"\u003eTransformation: make the start of the hole repeatable\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eIf you’re trying to eliminate variables, start with the one you touch on every tee shot. Make your setup boring. Then let your swing do the talking.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003cbutton data-af-atc=\"\" class=\"af-btn af-btn-primary\" type=\"button\"\u003eAdd to Cart\u003c\/button\u003e \u003ca href=\"\/collections\/golf-tees\" class=\"af-btn af-btn-secondary\"\u003eShop All Tees\u003c\/a\u003e \u003ca href=\"\/pages\/golf-gear-system-hub\" class=\"af-btn af-btn-secondary\"\u003eSee System Hub\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- FAQPage JSON-LD (matches on-page FAQ) --\u003e\n\u003cp\u003e\u003cscript type=\"application\/ld+json\"\u003e\n{\n  \"@context\": \"https:\/\/schema.org\",\n  \"@type\": \"FAQPage\",\n  \"mainEntity\": [\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Are these better than wood tees?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"For repeatability and durability, yes. Wood tees deform and snap, which changes height and resets your routine. Plastic tees hold shape longer and keep setup more consistent.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"What is PureFlight™ Tech?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"It’s the head geometry designed to reduce unnecessary contact at impact, supporting cleaner launches and a more consistent strike.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Do these add distance?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"They don’t create magic speed. But consistent height and cleaner contact help you access your normal distance more often instead of random low-launch mishits.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Can I use them for irons and hybrids?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Yes. Stable seating works well for par-3 tee shots, hybrids, and fairway woods when you want a controlled launch.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Are they unbreakable?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"No tee is unbreakable. These are significantly more durable than wood, and a 50-pack should last a long time for most golfers.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Who are these NOT for?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Novelty buyers, heavy range grinders, or anyone who only cares about the cheapest possible option regardless of performance.\"\n      }\n    }\n  ]\n}\n\u003c\/script\u003e \u003cscript\u003e\n\/* =========================================================\n   AF PDP ATC (Theme-Independent | No-Variant Safe)\n   - For products without variants: submit the REAL Shopify \/cart\/add form\n   - Uses requestSubmit() with MutationObserver fallback\n   - Does NOT rely on theme buttons\n   ========================================================= *\/\n(function(){\n  const root = document.querySelector('[data-af-tees-pdp]');\n  if(!root) return;\n\n  const atcBtns = Array.from(root.querySelectorAll('[data-af-atc]'));\n\n  function findProductForm(){\n    const forms = Array.from(document.querySelectorAll('form[action^=\"\/cart\/add\"]'));\n    if(!forms.length) return null;\n\n    \/\/ Prefer a form that actually contains the variant id input\/select\n    const preferred = forms.find(f =\u003e f.querySelector('input[name=\"id\"], select[name=\"id\"]'));\n    return preferred || forms[0];\n  }\n\n  function submitRealCartForm(){\n    const form = findProductForm();\n    if(!form) return false;\n\n    try{\n      if(typeof form.requestSubmit === \"function\") form.requestSubmit();\n      else form.submit();\n      return true;\n    }catch(e){\n      try{ form.submit(); return true; }catch(_){ return false; }\n    }\n  }\n\n  function submitWithObserverFallback(){\n    if(submitRealCartForm()) return;\n\n    const obs = new MutationObserver(() =\u003e {\n      if(findProductForm()){\n        obs.disconnect();\n        submitRealCartForm();\n      }\n    });\n    obs.observe(document.documentElement, { childList:true, subtree:true });\n    setTimeout(() =\u003e { try{ obs.disconnect(); }catch(e){} }, 8000);\n  }\n\n  atcBtns.forEach(btn =\u003e {\n    btn.addEventListener('click', (e) =\u003e {\n      e.preventDefault();\n      submitWithObserverFallback();\n    });\n  });\n})();\n\u003c\/script\u003e\u003c\/p\u003e","brand":"Aiming Fluid Golf","offers":[{"title":"Default Title","offer_id":47801127534786,"sku":"AFGT-50","price":16.69,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0720\/6400\/8386\/files\/ChatGPT_Image_May_5_2026_01_29_22_PM_1.png?v=1781294467"},{"product_id":"foldable-metal-divot-tool","title":"Foldable Metal Divot Tool","description":"\u003cstyle\u003e\n\/* =========================\n   AF APPLE-STYLE DARK MODE — DIVOT TOOL PDP (THEME-PROOF VARIANT SWITCH)\n   Uses the same working framework as Stubby.\n   ========================= *\/\n:root{\n  --bg-color:#000;\n  --card-bg:#1c1c1e;\n  --text-main:#f5f5f7;\n  --text-muted:#86868b;\n  --accent:#22c55e;\n  --border:rgba(255,255,255,.10);\n}\n\n#af-divot-pdp.af-luxury-page{\n  background:var(--bg-color);\n  color:var(--text-main);\n  padding:60px 20px;\n  font-family:-apple-system,BlinkMacSystemFont,\"SF Pro Text\",\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif;\n  line-height:1.6;\n  -webkit-font-smoothing:antialiased;\n}\n#af-divot-pdp *{ box-sizing:border-box; }\n#af-divot-pdp .af-container{ max-width:1000px; margin:0 auto; }\n\n#af-divot-pdp .af-eyebrow{\n  color:var(--accent);\n  letter-spacing:.1em;\n  text-transform:uppercase;\n  font-weight:700;\n  font-size:.75rem;\n  margin:0 0 16px;\n  text-align:center;\n}\n#af-divot-pdp .af-hero{\n  display:flex;\n  flex-direction:column;\n  align-items:center;\n  margin-bottom:40px;\n}\n#af-divot-pdp .af-hero h1{\n  margin:0 0 20px;\n  font-weight:700;\n  line-height:1.1;\n  font-size:clamp(2.3rem,5vw,3.6rem);\n  letter-spacing:-.02em;\n  background:linear-gradient(180deg,#fff,#a1a1aa);\n  -webkit-background-clip:text;\n  -webkit-text-fill-color:transparent;\n  text-align:center;\n}\n#af-divot-pdp .af-lead{\n  font-size:1.2rem;\n  color:#fff;\n  font-weight:600;\n  text-align:center;\n  margin:14px 0 10px;\n}\n#af-divot-pdp .af-lede{\n  margin:0 auto 24px;\n  max-width:760px;\n  color:var(--text-muted);\n  font-size:1.1rem;\n  text-align:center;\n  line-height:1.6;\n}\n\n\/* Executive summary *\/\n#af-divot-pdp .af-exec-summary{\n  background:#151516;\n  border:1px solid rgba(34,197,94,.30);\n  border-radius:20px;\n  padding:24px;\n  margin:0 auto 26px;\n  max-width:820px;\n  text-align:left;\n}\n#af-divot-pdp .af-exec-summary strong{\n  display:block;\n  font-size:.75rem;\n  letter-spacing:.05em;\n  text-transform:uppercase;\n  color:var(--accent);\n  font-weight:700;\n  margin-bottom:8px;\n}\n#af-divot-pdp .af-exec-summary p{\n  margin:0;\n  color:#d1d5db;\n  font-size:1.05rem;\n  line-height:1.6;\n}\n\n\/* Interaction module *\/\n#af-divot-pdp .af-hero-interaction{\n  background:rgba(28,28,30,.60);\n  border:1px solid var(--border);\n  border-radius:24px;\n  padding:24px;\n  margin:18px auto;\n  max-width:560px;\n  width:100%;\n  backdrop-filter:blur(10px);\n  text-align:center;\n}\n#af-divot-pdp .af-interaction-label{\n  font-size:.8rem;\n  text-transform:uppercase;\n  letter-spacing:.05em;\n  color:var(--text-muted);\n  margin-bottom:12px;\n  font-weight:600;\n  display:block;\n}\n\n\/* Swatches *\/\n#af-divot-pdp .af-swatch-row{\n  display:flex;\n  justify-content:center;\n  gap:12px;\n  margin-bottom:10px;\n  flex-wrap:wrap;\n}\n#af-divot-pdp .af-swatch{\n  width:32px;\n  height:32px;\n  border-radius:50%;\n  border:2px solid rgba(255,255,255,.20);\n  cursor:pointer;\n  transition:transform .2s,border-color .2s,box-shadow .2s;\n  padding:0;\n  background:#111;\n}\n#af-divot-pdp .af-swatch:hover{ transform:scale(1.1); border-color:#fff; }\n#af-divot-pdp .af-swatch[aria-selected=\"true\"]{\n  border-color:rgba(34,197,94,.95);\n  box-shadow:0 0 0 4px rgba(34,197,94,.18);\n}\n\n\/* Divot tool swatch colors *\/\n#af-divot-pdp .af-swatch[data-af-finish=\"Black\"]{ background:#111; }\n#af-divot-pdp .af-swatch[data-af-finish=\"Silver\"]{ background:linear-gradient(135deg,#c9c9c9,#6b7280); }\n#af-divot-pdp .af-swatch[data-af-finish=\"Gunmetal\"]{ background:#374151; }\n#af-divot-pdp .af-swatch[data-af-finish=\"Blue\"]{ background:#1e3a8a; }\n#af-divot-pdp .af-swatch[data-af-finish=\"Red\"]{ background:#991b1b; }\n\n#af-divot-pdp .af-nudge{\n  text-align:center;\n  margin-top:10px;\n  color:var(--text-muted);\n  font-size:.9rem;\n}\n\n\/* Cards *\/\n#af-divot-pdp .af-card{\n  background:var(--card-bg);\n  border-radius:24px;\n  padding:40px;\n  margin:24px 0;\n  border:1px solid var(--border);\n  box-shadow:0 20px 40px rgba(0,0,0,.40);\n}\n#af-divot-pdp .af-h2{\n  margin:0 0 16px;\n  font-size:1.8rem;\n  line-height:1.2;\n  font-weight:600;\n  color:#fff;\n  letter-spacing:-.01em;\n}\n#af-divot-pdp .af-muted{\n  color:var(--text-muted);\n  font-size:1.05rem;\n  margin:0 0 1rem;\n}\n#af-divot-pdp .af-bullets{\n  margin:0;\n  padding-left:1.2rem;\n  color:var(--text-muted);\n}\n#af-divot-pdp .af-bullets li{ margin:.8rem 0; }\n#af-divot-pdp .af-bullets li strong{ color:#fff; font-weight:600; }\n\n\/* Chips *\/\n#af-divot-pdp .af-chip-row{\n  display:flex;\n  flex-wrap:wrap;\n  gap:10px;\n  margin-top:18px;\n  justify-content:center;\n}\n#af-divot-pdp .af-chip{\n  background:#2c2c2e;\n  border:1px solid #3a3a3c;\n  color:#e5e5e7;\n  padding:8px 16px;\n  border-radius:999px;\n  font-size:.9rem;\n  font-weight:500;\n}\n\n\/* Buttons *\/\n#af-divot-pdp .af-btn-wrap{\n  display:flex;\n  justify-content:center;\n  flex-wrap:wrap;\n  gap:12px;\n  margin-top:16px;\n}\n#af-divot-pdp .af-btn{\n  display:inline-flex;\n  align-items:center;\n  justify-content:center;\n  padding:14px 28px;\n  border-radius:999px;\n  font-weight:600;\n  text-decoration:none;\n  font-size:1rem;\n  transition:all .2s ease;\n  border:0;\n  cursor:pointer;\n}\n#af-divot-pdp .af-btn-primary{\n  background:var(--accent);\n  color:#000;\n  border:1px solid var(--accent);\n}\n#af-divot-pdp .af-btn-primary:hover{\n  background:#16a34a;\n  border-color:#16a34a;\n  transform:translateY(-2px);\n}\n#af-divot-pdp .af-btn-secondary{\n  background:#2c2c2e;\n  color:#fff;\n  border:1px solid #3a3a3c;\n}\n#af-divot-pdp .af-btn-secondary:hover{\n  background:#3a3a3c;\n  border-color:#48484a;\n  transform:translateY(-2px);\n}\n\n\/* Grid *\/\n#af-divot-pdp .af-grid-2{ display:grid; grid-template-columns:1fr; gap:24px; }\n@media (min-width:768px){ #af-divot-pdp .af-grid-2{ grid-template-columns:1fr 1fr; } }\n\n\/* FAQ *\/\n#af-divot-pdp .af-faq{ border-top:1px solid #2c2c2e; padding:20px 0; }\n#af-divot-pdp .af-faq summary{\n  cursor:pointer;\n  font-weight:600;\n  color:#fff;\n  font-size:1.1rem;\n  list-style:none;\n  display:flex;\n  justify-content:space-between;\n  align-items:center;\n}\n#af-divot-pdp .af-faq summary::-webkit-details-marker{ display:none; }\n#af-divot-pdp .af-faq summary::after{ content:\"+\"; font-weight:400; color:var(--text-muted); font-size:1.5rem; }\n#af-divot-pdp details[open] summary::after{ content:\"−\"; }\n#af-divot-pdp .af-faq div{ margin-top:12px; color:var(--text-muted); line-height:1.6; }\n\u003c\/style\u003e\n\u003cdiv id=\"af-divot-pdp\" class=\"af-luxury-page\"\u003e\n\u003cdiv class=\"af-container\"\u003e\n\u003cheader class=\"af-hero\"\u003e\n\u003cp class=\"af-eyebrow\"\u003eOn-Course Essentials • Pocket Safe • Foldable Metal\u003c\/p\u003e\n\u003c!-- Exactly one H1 --\u003e\n\u003ch1\u003ePremium Foldable Divot Tool\u003c\/h1\u003e\n\u003cdiv class=\"af-exec-summary\"\u003e\n\u003cstrong\u003eTest Verdict\u003c\/strong\u003e\n\u003cp\u003eMost divot tools fail for a dumb reason: you don’t carry them. Fixed prongs jab your pocket, plastic bends on firm greens, and the tool ends up abandoned. This one is built around \u003cstrong\u003epocket-safe carry\u003c\/strong\u003e and \u003cstrong\u003econfident repair\u003c\/strong\u003e: foldable deployment, solid metal leverage, and a routine that’s easy enough you’ll actually do it. \u003cbr\u003e\u003cbr\u003e\u003cstrong\u003eVerdict:\u003c\/strong\u003e Buy it if you want a tool you’ll keep on you. Skip it if you’re committed to being “that guy” who uses a tee.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cp class=\"af-lead\"\u003eCarry it every round. Repair marks without stabbing your leg.\u003c\/p\u003e\n\u003cp class=\"af-lede\"\u003eProper green repair is the smallest habit with the biggest impact. The catch is brutal: you have to actually carry the tool. This one stays closed in your pocket and opens fast when you need it.\u003c\/p\u003e\n\u003c!-- Variant + ATC module (same framework as Stubby) --\u003e\n\u003cdiv data-af-variant-sync=\"\" class=\"af-hero-interaction\"\u003e\n\u003cspan class=\"af-interaction-label\"\u003ePick Your Finish\u003c\/span\u003e\n\u003cdiv aria-label=\"Choose finish\" role=\"listbox\" class=\"af-swatch-row\"\u003e\n\u003cbutton aria-selected=\"false\" aria-label=\"Black finish\" data-af-finish=\"Black\" type=\"button\" class=\"af-swatch\"\u003e\u003c\/button\u003e \u003cbutton aria-selected=\"false\" aria-label=\"Silver finish\" data-af-finish=\"Silver\" type=\"button\" class=\"af-swatch\"\u003e\u003c\/button\u003e \u003cbutton aria-selected=\"false\" aria-label=\"Gunmetal finish\" data-af-finish=\"Gunmetal\" type=\"button\" class=\"af-swatch\"\u003e\u003c\/button\u003e \u003cbutton aria-selected=\"false\" aria-label=\"Blue finish\" data-af-finish=\"Blue\" type=\"button\" class=\"af-swatch\"\u003e\u003c\/button\u003e \u003cbutton aria-selected=\"false\" aria-label=\"Red finish\" data-af-finish=\"Red\" type=\"button\" class=\"af-swatch\"\u003e\u003c\/button\u003e\n\u003c\/div\u003e\n\u003cdiv data-af-status=\"\" class=\"af-nudge\"\u003ePick a finish. I’ll sync the variant and force the gallery to switch.\u003c\/div\u003e\n\u003cspan class=\"af-interaction-label\"\u003eCarry + Repair\u003c\/span\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003ca class=\"af-btn af-btn-primary\" href=\"#choose\"\u003eLock in my setup\u003c\/a\u003e \u003ca class=\"af-btn af-btn-secondary\" href=\"#how\"\u003eSee how it works\u003c\/a\u003e \u003cbutton data-af-atc=\"\" class=\"af-btn af-btn-primary\" type=\"button\"\u003eAdd to cart\u003c\/button\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-nudge\"\u003eTip: Pair with a magnetic towel system so you stop cleaning grooves with regret.\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003ca class=\"af-btn af-btn-secondary\" href=\"\/pages\/our-golf-gear-testing-design-standards\"\u003eTesting Standards\u003c\/a\u003e \u003ca class=\"af-btn af-btn-secondary\" href=\"\/collections\/divot-tools\"\u003eShop Divot Tools\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/header\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eThe problem isn’t ball marks. It’s friction.\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eIf carrying the tool is annoying, you won’t carry it. If it feels flimsy, you won’t trust it. Both lead to the same outcome: greens get wrecked and you look like you were raised by wolves.\u003c\/p\u003e\n\u003cp class=\"af-muted\"\u003eFoldable solves carry friction. Metal solves leverage friction. The rest is just you doing the smallest right thing for 10 seconds.\u003c\/p\u003e\n\u003cdiv aria-hidden=\"true\" class=\"af-chip-row\"\u003e\n\u003cspan class=\"af-chip\"\u003eFoldable\u003c\/span\u003e \u003cspan class=\"af-chip\"\u003ePocket Safe\u003c\/span\u003e \u003cspan class=\"af-chip\"\u003eMetal Build\u003c\/span\u003e \u003cspan class=\"af-chip\"\u003eConfident Leverage\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\" id=\"how\"\u003e\n\u003ch2 class=\"af-h2\"\u003eHow it works\u003c\/h2\u003e\n\u003cul class=\"af-bullets\"\u003e\n\u003cli\u003e\n\u003cstrong\u003ePocket-safe fold:\u003c\/strong\u003e prongs retract so nothing stabs or snags.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eFast deployment:\u003c\/strong\u003e open it quickly so you actually use it.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eRepair logic:\u003c\/strong\u003e push turf inward toward the center, don’t pry upward.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eClose + carry:\u003c\/strong\u003e the best tool is the one still in your pocket on hole 14.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-grid-2\"\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eWho it’s for\u003c\/h2\u003e\n\u003cul class=\"af-bullets\"\u003e\n\u003cli\u003e\n\u003cstrong\u003eWalkers:\u003c\/strong\u003e sits flat in-pocket without digging into your leg.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eFirm greens:\u003c\/strong\u003e metal leverage beats bending plastic.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003ePeople with standards:\u003c\/strong\u003e you repair marks because you’re not a menace.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eWho it’s not for\u003c\/h2\u003e\n\u003cul class=\"af-bullets\"\u003e\n\u003cli\u003e\n\u003cstrong\u003eFreebie loyalists:\u003c\/strong\u003e if a tournament handout is “good enough,” keep it.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eZero-change types:\u003c\/strong\u003e if you never repair marks, a tool won’t fix your values.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\" id=\"choose\"\u003e\n\u003ch2 class=\"af-h2\"\u003eChoose your setup\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003ePick a finish above. Then add it to cart from the button in the hero module. Fast, clean, done.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003ca class=\"af-btn af-btn-secondary\" href=\"\/collections\/magnetic-towels\"\u003eAdd a Magnetic Towel\u003c\/a\u003e \u003ca class=\"af-btn af-btn-secondary\" href=\"\/collections\/on-course-systems\"\u003eShop On-Course Systems\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection aria-label=\"Product FAQ\" class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eProduct FAQ\u003c\/h2\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eDoes the finish change the tool?\u003c\/summary\u003e\n\u003cdiv\u003eNo. Same tool. Same function. Pick based on visibility and preference.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eHow do I repair a ball mark correctly?\u003c\/summary\u003e\n\u003cdiv\u003eInsert just outside the mark, push turf inward toward the center from multiple angles, then smooth with a putter. Don’t pry upward.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eWhy metal over plastic?\u003c\/summary\u003e\n\u003cdiv\u003eDurability and leverage. Plastic tends to flex or snap when greens are firm.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eWhat pairs best with this?\u003c\/summary\u003e\n\u003cdiv\u003eA magnetic towel system for groove cleaning and a Landing Pad for a consistent home base inside your bag between dividers.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003c\/section\u003e\n\u003csection aria-label=\"Final call to action\" style=\"text-align: center;\" class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eFix the green. Respect the course.\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003ePick a finish, add to cart, and stop pretending a tee is a divot tool.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003ca class=\"af-btn af-btn-primary\" href=\"\/collections\/divot-tools\"\u003eShop Divot Tools\u003c\/a\u003e \u003ca class=\"af-btn af-btn-secondary\" href=\"\/pages\/our-golf-gear-testing-design-standards\"\u003eTesting Standards\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003c!-- FAQ schema --\u003e \u003cscript type=\"application\/ld+json\"\u003e\n    {\n      \"@context\":\"https:\/\/schema.org\",\n      \"@type\":\"FAQPage\",\n      \"mainEntity\":[\n        {\"@type\":\"Question\",\"name\":\"Does the finish change the tool?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"No. Same tool and function. Choose based on visibility and preference.\"}},\n        {\"@type\":\"Question\",\"name\":\"How do I repair a ball mark correctly?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Insert just outside the mark, push turf inward toward the center from multiple angles, then smooth with a putter. Avoid prying upward.\"}},\n        {\"@type\":\"Question\",\"name\":\"Why metal over plastic?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Metal typically provides better durability and leverage, especially on firmer greens. Plastic can flex or snap under higher force.\"}},\n        {\"@type\":\"Question\",\"name\":\"What pairs best with this divot tool?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Pair it with a magnetic towel system for groove cleaning and a Landing Pad for a consistent home base inside your bag between dividers.\"}}\n      ]\n    }\n    \u003c\/script\u003e \u003c!-- Variant sync script (same mechanics as Stubby, updated for divot tool variants) --\u003e \u003cscript\u003e\n    (function(){\n      const finishToVariantId = {\n        \"Black\": \"40559932932139\",\n        \"Silver\": \"40559932964907\",\n        \"Blue\": \"40970142777387\",\n        \"Gunmetal\": \"40987345322027\",\n        \"Red\": \"40987345354795\"\n      };\n\n      const finishToImage = {\n        \"Silver\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated_Main_Image_53ee84b2-a667-4cbe-9b82-8dc4e30f7cd1.jpg?v=1765461229\",\n        \"Red\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated_Main_Image_f80e0dc3-5114-403f-b3ed-745988acaa86.jpg?v=1765461229\",\n        \"Gunmetal\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated_Main_Image_7dd024f1-ccc8-4e13-afb5-fbcbc0e1916a.jpg?v=1765461229\",\n        \"Blue\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated_Main_Image_c4d93332-f0a1-4151-9651-a12fbcba885d.png?v=1765461229\",\n        \"Black\": \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated_Main_Image.png?v=1765461229\"\n      };\n\n      const module = document.querySelector('#af-divot-pdp [data-af-variant-sync]');\n      if(!module) return;\n\n      const status = module.querySelector('[data-af-status]');\n      const swatches = Array.from(module.querySelectorAll('[data-af-finish]'));\n      const atcBtn = module.querySelector('[data-af-atc]');\n\n      function setStatus(msg){ if(status) status.textContent = msg; }\n      function stripQuery(url){ return (url||'').split('?')[0]; }\n\n      \/\/ Find native variant select OR radio inputs.\n      const variantSelect =\n        document.querySelector('form[action^=\"\/cart\/add\"] select[name=\"id\"]') ||\n        document.querySelector('form[action*=\"\/cart\/add\"] select[name=\"id\"]') ||\n        document.querySelector('select[name=\"id\"]');\n\n      const variantRadios = Array.from(document.querySelectorAll('input[type=\"radio\"][name=\"id\"]'));\n\n      \/\/ Find native theme Add to Cart\n      const nativeAtc =\n        document.querySelector('form[action^=\"\/cart\/add\"] button[type=\"submit\"], form[action^=\"\/cart\/add\"] [type=\"submit\"]') ||\n        document.querySelector('form[action*=\"\/cart\/add\"] button[type=\"submit\"], form[action*=\"\/cart\/add\"] [type=\"submit\"]') ||\n        document.querySelector('button[name=\"add\"], button[type=\"submit\"][name=\"add\"]');\n\n      function setSelectedSwatch(finishLabel){\n        swatches.forEach(btn =\u003e btn.setAttribute('aria-selected', btn.dataset.afFinish === finishLabel ? 'true' : 'false'));\n      }\n\n      function setVariantById(variantId){\n        let didSet = false;\n\n        if(variantSelect \u0026\u0026 variantSelect.options){\n          const opt = Array.from(variantSelect.options).find(o =\u003e String(o.value) === String(variantId));\n          if(opt){\n            variantSelect.value = opt.value;\n            variantSelect.dispatchEvent(new Event('change', { bubbles:true }));\n            didSet = true;\n          }\n        }\n\n        if(!didSet \u0026\u0026 variantRadios.length){\n          const radio = variantRadios.find(r =\u003e String(r.value) === String(variantId));\n          if(radio){\n            radio.checked = true;\n            radio.dispatchEvent(new Event('change', { bubbles:true }));\n            didSet = true;\n          }\n        }\n\n        return didSet;\n      }\n\n      \/\/ Keep search inside product area\n      function getProductRoot(){\n        const addForm = document.querySelector('form[action^=\"\/cart\/add\"], form[action*=\"\/cart\/add\"]');\n        if(addForm) return addForm.closest('section, .shopify-section, main, body') || document;\n        return document;\n      }\n\n      function clickGalleryItemByUrl(url){\n        const root = getProductRoot();\n        const target = stripQuery(url);\n\n        const candidates = Array.from(root.querySelectorAll(\n          'button, a, img, source, [data-src], [data-zoom], [data-image], [href]'\n        ));\n\n        for(const el of candidates){\n          const attrs = [\n            el.getAttribute('src'),\n            el.getAttribute('href'),\n            el.getAttribute('data-src'),\n            el.getAttribute('data-zoom'),\n            el.getAttribute('data-image'),\n            el.getAttribute('srcset')\n          ].filter(Boolean);\n\n          if(attrs.some(a =\u003e stripQuery(a).includes(target))){\n            const clickable = el.closest('button, a') || (el.tagName === 'BUTTON' || el.tagName === 'A' ? el : null);\n            if(clickable){\n              clickable.click();\n              return true;\n            }\n          }\n        }\n        return false;\n      }\n\n      function bruteSwapActiveMedia(url, finishLabel){\n        const root = getProductRoot();\n        const imgCandidates = [];\n\n        const activeWrappers = Array.from(root.querySelectorAll(\n          '[aria-current=\"true\"], .is-selected, .is-active, .active, [data-active=\"true\"], [data-selected=\"true\"]'\n        ));\n\n        activeWrappers.forEach(w =\u003e {\n          imgCandidates.push(...Array.from(w.querySelectorAll('img')));\n          Array.from(w.querySelectorAll('picture source')).forEach(s =\u003e s.setAttribute('srcset', url));\n        });\n\n        if(imgCandidates.length === 0){\n          imgCandidates.push(...Array.from(root.querySelectorAll('img')).filter(i =\u003e {\n            const s = (i.getAttribute('src') || '');\n            return s.includes('cdn.shopify.com') \u0026\u0026 !s.includes('logo') \u0026\u0026 !s.includes('icon');\n          }).slice(0,3));\n        }\n\n        if(imgCandidates.length === 0) return false;\n\n        imgCandidates.forEach(img =\u003e {\n          img.src = url;\n          img.removeAttribute('srcset');\n          img.removeAttribute('sizes');\n          const oldAlt = img.getAttribute('alt') || 'Foldable divot tool';\n          const baseAlt = oldAlt.split('—')[0].trim();\n          img.setAttribute('alt', baseAlt + ' — ' + finishLabel);\n        });\n\n        return true;\n      }\n\n      function selectFinish(finishLabel){\n        const variantId = finishToVariantId[finishLabel];\n        const imgUrl = finishToImage[finishLabel];\n\n        setSelectedSwatch(finishLabel);\n\n        \/\/ 1) Sync Shopify variant\n        const ok = variantId ? setVariantById(variantId) : false;\n\n        \/\/ 2) Force gallery switch\n        if(imgUrl){\n          const clicked = clickGalleryItemByUrl(imgUrl);\n          setTimeout(() =\u003e {\n            if(clicked){\n              setStatus('Selected: ' + finishLabel + '.');\n              return;\n            }\n            const swapped = bruteSwapActiveMedia(imgUrl, finishLabel);\n            setStatus(swapped\n              ? ('Selected: ' + finishLabel + '.')\n              : ('Selected: ' + finishLabel + '. (Gallery element not found in this theme.)')\n            );\n          }, 80);\n        } else {\n          setStatus('Selected: ' + finishLabel + '.');\n        }\n\n        if(!ok){\n          \/\/ Variant input not detected (theme oddity). Still keep finish selection for ATC fallback.\n          setStatus('Selected: ' + finishLabel + '. (Variant control not found. ATC will use fallback link.)');\n        }\n      }\n\n      \/\/ Swatch clicks\n      swatches.forEach(btn =\u003e btn.addEventListener('click', () =\u003e selectFinish(btn.dataset.afFinish)));\n\n      \/\/ ATC button\n      if(atcBtn){\n        atcBtn.addEventListener('click', () =\u003e {\n          const selected = swatches.find(b =\u003e b.getAttribute('aria-selected') === 'true');\n          const finish = selected ? selected.dataset.afFinish : null;\n          const variantId = finish ? finishToVariantId[finish] : null;\n\n          \/\/ Prefer native theme ATC (best)\n          if(nativeAtc){\n            nativeAtc.click();\n            return;\n          }\n\n          \/\/ Fallback: direct add by variant ID\n          if(variantId){\n            window.location.href = '\/cart\/add?id=' + encodeURIComponent(variantId) + '\u0026quantity=1';\n            return;\n          }\n\n          setStatus('Pick a finish first. Then add to cart.');\n        });\n      }\n\n      \/\/ Default selection: Gunmetal (matches your “recommended” from earlier)\n      selectFinish('Gunmetal');\n\n    })();\n    \u003c\/script\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e","brand":"Aiming Fluid Golf","offers":[{"title":"Black","offer_id":47801127567554,"sku":"AFDT-B","price":24.69,"currency_code":"USD","in_stock":true},{"title":"Silver","offer_id":47801127600322,"sku":"AFDT-S","price":24.69,"currency_code":"USD","in_stock":true},{"title":"Blue","offer_id":47801127633090,"sku":"AFDT-BL","price":24.69,"currency_code":"USD","in_stock":true},{"title":"Gunmetal","offer_id":47801127665858,"sku":"AFDT-G","price":24.69,"currency_code":"USD","in_stock":true},{"title":"Red","offer_id":47801127698626,"sku":"AFDT-R","price":24.69,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0720\/6400\/8386\/files\/Updated_Main_Image_7dd024f1-ccc8-4e13-afb5-fbcbc0e1916a.jpg?v=1781294468"},{"product_id":"the-40-magnetic-golf-towel-landing-pad-system","title":"The 40 Magnetic Golf Towel + Landing Pad System","description":"\u003cstyle\u003e\n\/* =========================\n   AF LUXURY PAGE STYLES (Locked Option A)\n   ========================= *\/\n:root {\n  --af-graphite: #0B0D0B;\n  --af-tech: #9FB8A0;\n  --af-olive: #1A2517;\n  --af-signal: #22C55E;\n  \n  --bg-color: var(--af-graphite);\n  --card-bg: #0B0D0B;\n  --text-main: #f5f5f7;\n  --text-muted: #A3A3A8;\n  --border: rgba(159, 184, 160, 0.2); \n  --border-soft: rgba(159, 184, 160, 0.1);\n  --shadow: 0 20px 40px rgba(0,0,0,0.6);\n}\n\n.af-luxury-page {\n  background: var(--bg-color);\n  color: var(--text-main);\n  padding: 60px 20px;\n  font-family: -apple-system, BlinkMacSystemFont, \"SF Pro Text\", \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n  line-height: 1.6;\n  -webkit-font-smoothing: antialiased;\n}\n.af-luxury-page * { box-sizing: border-box; }\n.af-container { max-width: 1000px; margin: 0 auto; }\n\n\/* TYPOGRAPHY *\/\n.af-eyebrow {\n  color: var(--af-tech);\n  letter-spacing: .1em;\n  text-transform: uppercase;\n  font-weight: 800;\n  font-size: .75rem;\n  margin: 0 0 16px;\n  text-align: center;\n}\n.af-hero {\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  margin-bottom: 24px;\n}\n.af-hero h1 {\n  margin: 0 0 14px;\n  font-weight: 800;\n  line-height: 1.05;\n  font-size: clamp(2.25rem, 5vw, 3.75rem);\n  letter-spacing: -0.02em;\n  background: linear-gradient(180deg, #fff, #a1a1aa);\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n  text-align: center;\n}\n.af-lead {\n  font-size: 1.2rem;\n  color: #fff;\n  font-weight: 750;\n  text-align: center;\n  margin: 12px 0 10px;\n}\n.af-lede {\n  margin: 0 auto 0;\n  max-width: 760px;\n  color: var(--text-muted);\n  font-size: 1.05rem;\n  text-align: center;\n  line-height: 1.65;\n}\n\n\/* CARDS *\/\n.af-card {\n  background: rgba(255,255,255,0.02);\n  border-radius: 24px;\n  padding: 34px;\n  margin: 18px 0;\n  border: 1px solid var(--border);\n  box-shadow: var(--shadow);\n}\n.af-card--tech {\n  background: linear-gradient(180deg, rgba(159,184,160,0.08), var(--af-graphite));\n  border: 1px solid rgba(159,184,160,0.3);\n}\n.af-h2 {\n  margin: 0 0 12px;\n  font-size: 1.7rem;\n  line-height: 1.2;\n  font-weight: 750;\n  color: #fff;\n  letter-spacing: -0.01em;\n}\n.af-muted {\n  color: var(--text-muted);\n  font-size: 1.02rem;\n  margin: 0 0 .9rem;\n}\n\n\/* EXEC SUMMARY *\/\n.af-exec-summary {\n  background: var(--af-olive);\n  border: 1px solid rgba(159,184,160,0.3);\n  border-radius: 20px;\n  padding: 20px;\n  margin: 0 auto 18px;\n  max-width: 860px;\n  text-align: left;\n}\n.af-exec-summary strong {\n  display: block;\n  font-size: .75rem;\n  letter-spacing: .05em;\n  text-transform: uppercase;\n  color: var(--af-tech);\n  font-weight: 900;\n  margin-bottom: 8px;\n}\n.af-exec-summary p {\n  margin: 0;\n  color: #e5e7eb;\n  font-size: 1.02rem;\n  line-height: 1.65;\n}\n\n\/* IMAGE WRAPPERS \u0026 VIDEO *\/\n.af-img-wrap {\n  margin: 0 0 14px 0;\n  border-radius: 18px;\n  overflow: hidden;\n  border: 1px solid var(--border-soft);\n  background: rgba(255,255,255,0.02);\n}\n.af-img {\n  display: block;\n  width: 100%;\n  height: auto;\n}\nvideo.af-img {\n  width: 100%;\n  height: auto;\n  display: block;\n  border-radius: 18px;\n  object-fit: cover;\n}\n\n\/* LISTS *\/\n.af-bullets { margin: 0; padding-left: 1.2rem; color: var(--text-muted); }\n.af-bullets li { margin: .75rem 0; }\n.af-bullets li strong { color: #fff; font-weight: 750; }\n\n\/* CHIPS *\/\n.af-chip-row {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 10px;\n  margin-top: 16px;\n  justify-content: center;\n}\n.af-chip {\n  background: rgba(159,184,160,0.1);\n  border: 1px solid rgba(159,184,160,0.25);\n  color: #e5e5e7;\n  padding: 8px 16px;\n  border-radius: 999px;\n  font-size: .9rem;\n  font-weight: 650;\n}\n\n\/* BUTTONS *\/\n.af-btn-wrap {\n  display: flex;\n  justify-content: center;\n  flex-wrap: wrap;\n  gap: 12px;\n  margin-top: 16px;\n  align-items: center;\n}\n.af-btn {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  padding: 14px 28px;\n  border-radius: 999px;\n  font-weight: 750;\n  text-decoration: none;\n  font-size: 1rem;\n  transition: all .2s ease;\n  border: 0;\n  cursor: pointer;\n  min-height: 48px;\n}\n.af-btn-primary {\n  background: var(--af-signal);\n  color: #000;\n  border: 1px solid var(--af-signal);\n  font-weight: 900;\n  box-shadow: 0 4px 12px rgba(34, 197, 94, 0.3);\n}\n.af-btn-primary:hover {\n  filter: brightness(1.1);\n  transform: translateY(-2px);\n}\n.af-btn-secondary {\n  background: transparent;\n  color: #fff;\n  border: 1px solid rgba(255,255,255,0.2);\n  font-size: .95rem;\n  padding: 12px 24px;\n}\n.af-btn-secondary:hover {\n  background: rgba(255,255,255,0.06);\n  border-color: rgba(255,255,255,0.4);\n  transform: translateY(-2px);\n}\n\n\/* INTERACTION MODULE *\/\n.af-hero-interaction {\n  background: rgba(255,255,255,0.03);\n  border: 1px solid var(--af-tech);\n  border-radius: 24px;\n  padding: 22px;\n  margin: 0 auto;\n  max-width: 560px;\n  width: 100%;\n  backdrop-filter: blur(10px);\n  text-align: center;\n  box-shadow: 0 10px 30px rgba(0,0,0,0.5);\n}\n.af-interaction-label {\n  font-size: .8rem;\n  text-transform: uppercase;\n  letter-spacing: .05em;\n  color: var(--af-tech);\n  margin-bottom: 10px;\n  font-weight: 800;\n  display: block;\n  text-align: center;\n}\n.af-swatch-row {\n  display: flex;\n  justify-content: center;\n  gap: 12px;\n  margin-bottom: 14px;\n  flex-wrap: wrap;\n}\n.af-swatch {\n  width: 32px; height: 32px; border-radius: 50%;\n  border: 2px solid rgba(255,255,255,0.2);\n  cursor: pointer;\n  transition: transform .2s, border-color .2s, box-shadow .2s;\n  padding: 0;\n  background: #111;\n  position: relative;\n}\n.af-swatch:hover { transform: scale(1.1); border-color: #fff; }\n.af-swatch[aria-selected=\"true\"] {\n  border-color: var(--af-signal);\n  box-shadow: 0 0 0 4px rgba(34, 197, 94, 0.2);\n  transform: scale(1.1);\n}\n\n.af-nudge {\n  text-align: center;\n  margin-top: 10px;\n  color: var(--text-muted);\n  font-size: .92rem;\n}\n\n\/* WORKFLOW STEPS *\/\n.af-steps {\n  display: grid;\n  grid-template-columns: 1fr; \/* Default mobile 1 col *\/\n  gap: 16px;\n  margin-top: 14px;\n}\n.af-step {\n  background: rgba(159,184,160,0.08);\n  border: 1px solid rgba(159,184,160,0.25);\n  border-radius: 18px;\n  padding: 24px;\n  display: flex;\n  flex-direction: column;\n  align-items: flex-start;\n  text-align: left;\n}\n.af-step h3 {\n  margin: 14px 0 8px 0;\n  font-size: 1.25rem;\n  font-weight: 900;\n  color: var(--af-signal);\n  text-transform: uppercase;\n  letter-spacing: 0.02em;\n}\n.af-step p {\n  margin: 0;\n  color: #d1d5db;\n  font-size: 1.05rem;\n  line-height: 1.5;\n}\n.af-step .af-chip {\n  color: var(--af-signal);\n  border-color: rgba(34, 197, 94, 0.5);\n  background: rgba(34, 197, 94, 0.1);\n}\n\n\/* COMPARISON TABLE *\/\n.af-compare-table {\n  width: 100%;\n  border-collapse: separate;\n  border-spacing: 0;\n  margin: 20px 0;\n  font-size: 0.95rem;\n  color: var(--text-main);\n  border: 1px solid var(--border);\n  border-radius: 12px;\n  overflow: hidden;\n}\n.af-compare-table caption {\n  font-weight: 700;\n  text-align: left;\n  margin-bottom: 10px;\n  color: var(--af-tech);\n  text-transform: uppercase;\n  font-size: 0.8rem;\n  letter-spacing: 0.05em;\n}\n.af-compare-table th, .af-compare-table td {\n  padding: 12px 16px;\n  text-align: left;\n  border-bottom: 1px solid var(--border-soft);\n}\n.af-compare-table th {\n  background: rgba(159,184,160,0.1);\n  color: #fff;\n  font-weight: 700;\n}\n.af-compare-table td:first-child {\n  font-weight: 600;\n  color: var(--af-tech);\n  width: 30%;\n}\n.af-compare-table tr:last-child td { border-bottom: none; }\n\n@media (max-width: 600px) {\n  .af-compare-table thead { display: none; }\n  .af-compare-table, .af-compare-table tbody, .af-compare-table tr, .af-compare-table td {\n    display: block; width: 100%;\n  }\n  .af-compare-table tr {\n    margin-bottom: 16px;\n    background: rgba(255,255,255,0.03);\n    border: 1px solid var(--border);\n    border-radius: 12px;\n    padding: 12px;\n  }\n  .af-compare-table td {\n    padding: 8px 0;\n    border-bottom: 1px solid var(--border-soft);\n    display: flex;\n    justify-content: space-between;\n    align-items: center;\n  }\n  .af-compare-table td:last-child { border-bottom: none; }\n  .af-compare-table td::before {\n    content: attr(data-label);\n    font-weight: 700;\n    color: var(--af-tech);\n    margin-right: 12px;\n    text-transform: uppercase;\n    font-size: 0.75rem;\n  }\n}\n\n\/* GRIDS *\/\n.af-grid-2 { display: grid; grid-template-columns: 1fr; gap: 18px; }\n@media (min-width: 768px) {\n  .af-grid-2 { grid-template-columns: 1fr 1fr; }\n  .af-bundle-preview { grid-template-columns: 1fr 1fr !important; }\n}\n@media (max-width: 767px) {\n  .af-luxury-page { padding: 40px 16px; }\n  .af-card { padding: 26px; }\n  .af-btn { width: 100%; }\n}\n\n\/* FAQ *\/\n.af-faq { border-top: 1px solid var(--border); padding: 18px 0; }\n.af-faq summary {\n  cursor: pointer;\n  font-weight: 750;\n  color: #fff;\n  font-size: 1.05rem;\n  list-style: none;\n  display: flex;\n  justify-content: space-between;\n  align-items: center;\n  padding: 4px 0;\n}\n.af-faq summary::-webkit-details-marker { display: none; }\n.af-faq summary::after { content: \"+\"; font-weight: 400; color: var(--text-muted); font-size: 1.5rem; }\ndetails[open] summary::after { content: \"−\"; }\n.af-faq div { margin-top: 10px; color: var(--text-muted); line-height: 1.6; }\n\n\/* STANDARDS *\/\n.af-standards-citation {\n  margin: 2.2rem 0 0 0;\n  padding: 1.75rem 1.75rem;\n  background: var(--af-olive);\n  border: 1px solid rgba(159,184,160,0.3);\n  border-radius: 16px;\n}\n\u003c\/style\u003e\n\u003cdiv class=\"af-luxury-page\"\u003e\n\u003cdiv class=\"af-container\"\u003e\n\u003cheader class=\"af-hero\"\u003e\n\u003cp class=\"af-eyebrow\"\u003eInstant Access Bundle • The 40 + Landing Pad\u003c\/p\u003e\n\u003ch1\u003eThe 40 + Landing Pad — Instant Access Bundle\u003c\/h1\u003e\n\u003cdiv class=\"af-exec-summary\"\u003e\n\u003cstrong\u003eTest Verdict\u003c\/strong\u003e\n\u003cp\u003eThe 40 gives you maximum surface area for true wet\/dry separation, but big towels can be a hassle if they don't have a home. This bundle solves that. The Landing Pad creates a \u003cstrong\u003eguaranteed steel-core docking point inside your bag between club dividers\u003c\/strong\u003e, keeping your 16x40 towel secure, balanced, and off the ground. \u003cbr\u003e\u003cbr\u003e\u003cstrong\u003eVerdict:\u003c\/strong\u003e The ultimate system for riders and mud-season players.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cp class=\"af-lead\"\u003eMax coverage + guaranteed access.\u003c\/p\u003e\n\u003cp class=\"af-lede\"\u003eUpgrade your setup with the system designed for heavy-duty cleaning and automatic retention.\u003c\/p\u003e\n\u003cdiv style=\"margin-top: 14px;\" class=\"af-btn-wrap\"\u003e\n\u003ca class=\"af-btn af-btn-primary\" href=\"#bundle-hero\"\u003eAdd Bundle to cart\u003c\/a\u003e \u003ca style=\"border: 0; color: var(--text-muted);\" class=\"af-btn af-btn-secondary\" href=\"\/pages\/our-golf-gear-testing-design-standards\"\u003eTesting Standards\u003c\/a\u003e \u003ca style=\"border: 0; color: var(--text-muted);\" class=\"af-btn af-btn-secondary\" href=\"\/collections\/magnetic-towels\"\u003eShop Magnetic Towels\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/header\u003e\n\u003csection class=\"af-card af-card--tech\" id=\"bundle-hero\"\u003e\n\u003ch2 class=\"af-h2\"\u003eThe 40 + Landing Pad (Instant Access)\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eSelect your towel finish. The Landing Pad is included in the bundle.\u003c\/p\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated_Main_70852911-336a-4f52-8952-ad7a71331ee4.jpg?v=1769717226\" alt=\"The 40 towel + landing pad bundle\" data-af-bundle-img=\"\" class=\"af-img\" loading=\"lazy\"\u003e\u003c\/div\u003e\n\u003cspan data-af-label-bundle=\"\" class=\"af-interaction-label\"\u003ePick Finish: Grey\u003c\/span\u003e\n\u003cdiv class=\"af-swatch-row\" role=\"listbox\" aria-label=\"Choose bundle finish\"\u003e\n\u003cbutton style=\"background-color: #4b5563;\" class=\"af-swatch\" type=\"button\" data-af-color-bundle=\"Grey\" aria-label=\"Grey\" aria-selected=\"false\"\u003e\u003c\/button\u003e \u003cbutton style=\"background-color: #14532d;\" class=\"af-swatch\" type=\"button\" data-af-color-bundle=\"Green\" aria-label=\"Green\" aria-selected=\"false\"\u003e\u003c\/button\u003e \u003cbutton style=\"background-color: #1e3a8a;\" class=\"af-swatch\" type=\"button\" data-af-color-bundle=\"Blue\" aria-label=\"Blue\" aria-selected=\"false\"\u003e\u003c\/button\u003e \u003cbutton style=\"background-color: #111;\" class=\"af-swatch\" type=\"button\" data-af-color-bundle=\"Black\" aria-label=\"Black\" aria-selected=\"false\"\u003e\u003c\/button\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\u003cbutton type=\"button\" class=\"af-btn af-btn-primary\" data-af-atc-bundle=\"\"\u003eAdd The 40 Bundle to Cart\u003c\/button\u003e\u003c\/div\u003e\n\u003cdiv style=\"margin-top: 12px;\" data-af-status-bundle=\"\" class=\"af-nudge\"\u003eTip: Landing Pad mounts inside the bag between club dividers.\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eIndependent on-course test\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eSee the routine under real pace: clean → re-dock → move on.\u003c\/p\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cvideo poster=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated_Main_70852911-336a-4f52-8952-ad7a71331ee4.jpg?v=1769717226\" preload=\"metadata\" playsinline=\"\" controls=\"controls\" class=\"af-img\"\u003e\n      \u003csource type=\"video\/mp4\" src=\"https:\/\/cdn.shopify.com\/videos\/c\/o\/v\/01bd39c9ab2c44e6b5036037fc35b895.mp4\"\u003e\u003c\/video\u003e\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card af-card--tech\" id=\"workflow\"\u003e\n\u003ch2 class=\"af-h2\"\u003eScrub → Wash → Dry (The 40 Routine)\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eWith The 40, you have more room to work. Keep one side wet, one side dry.\u003c\/p\u003e\n\u003cdiv class=\"af-steps\" aria-label=\"Scrub Wash Dry steps\"\u003e\n\u003cdiv class=\"af-step\"\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cimg class=\"af-img\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Gemini_Generated_Image_x5yyywx5yyywx5yy.png?v=1770299282\" alt=\"Close-up of a golf iron clubface\" loading=\"lazy\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cvideo poster=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Gemini_Generated_Image_x5yyywx5yyywx5yy.png?v=1770299282\" preload=\"metadata\" playsinline=\"\" controls=\"controls\" class=\"af-img\"\u003e\n    \u003csource type=\"video\/quicktime\" src=\"https:\/\/cdn.shopify.com\/videos\/c\/o\/v\/60c75c71626e4e409c45f976ad497ce7.mov\"\u003e\n    \u003csource type=\"video\/mp4\" src=\"https:\/\/cdn.shopify.com\/videos\/c\/o\/v\/60c75c71626e4e409c45f976ad497ce7.mov\"\u003e\u003c\/source\u003e\u003c\/video\u003e\u003c\/div\u003e\n\u003ch3\u003eScrub\u003c\/h3\u003e\n\u003cp\u003e\u003cstrong data-end=\"347\" data-start=\"311\"\u003eLoosen what wiping can’t remove.\u003c\/strong\u003e\u003cbr data-end=\"350\" data-start=\"347\"\u003ePacked sand, mud, and grass lock into grooves and don’t come out with a casual wipe. The scrub pad applies focused friction to break debris free so the grooves can actually do their job instead of masking spin and launch.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-step\"\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cimg class=\"af-img\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Gemini_Generated_Image_8sxn1w8sxn1w8sxn.png?v=1770299798\" alt=\"Golf ball being rinsed inside a wet wash pocket\" loading=\"lazy\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cvideo poster=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Gemini_Generated_Image_8sxn1w8sxn1w8sxn.png?v=1770299798\" preload=\"metadata\" playsinline=\"\" controls=\"controls\" class=\"af-img\"\u003e\n    \u003csource type=\"video\/quicktime\" src=\"https:\/\/cdn.shopify.com\/videos\/c\/o\/v\/40052d60ea544d01bf589309f85e13f3.mov\"\u003e\n    \u003csource type=\"video\/mp4\" src=\"https:\/\/cdn.shopify.com\/videos\/c\/o\/v\/40052d60ea544d01bf589309f85e13f3.mov\"\u003e\u003c\/source\u003e\u003c\/video\u003e\u003c\/div\u003e\n\u003ch3\u003eWash\u003c\/h3\u003e\n\u003cp\u003eUse the \u003cstrong\u003edual wash pockets\u003c\/strong\u003e to \u003cstrong data-end=\"633\" data-start=\"591\"\u003eFlush contamination out of the system.\u003c\/strong\u003e\u003cbr data-end=\"636\" data-start=\"633\"\u003eOnce debris is loosened, it has to go somewhere. The wet wash pocket rinses grime away instead of smearing it across the towel. This keeps dirt isolated and prevents re-contaminating the ball, face, or grips.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-step\"\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cimg class=\"af-img\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Gemini_Generated_Image_wqabnrwqabnrwqab.jpg?v=1770300553\" alt=\"Clean, dry golf ball held in a dry microfiber towel\" loading=\"lazy\"\u003e\u003c\/div\u003e\n\u003ch3\u003eDry\u003c\/h3\u003e\n\u003cp\u003e\u003cstrong data-end=\"907\" data-start=\"863\"\u003eRestore clean contact and true feedback.\u003c\/strong\u003e\u003cbr data-end=\"910\" data-start=\"907\"\u003eDrying isn’t cosmetic. A clean, dry ball and face restore predictable friction at impact and a truer roll on the green. This is the step that turns “clean enough” into consistent results.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\" id=\"stubby-bundle\"\u003e\n\u003ch2 class=\"af-h2\"\u003ePrefer something smaller? Stubby Bundle\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eIf The 40 feels too big, grab the compact Stubby (16×24) + Landing Pad bundle instead.\u003c\/p\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated_Main.jpg?v=1769716373\" alt=\"Stubby towel + landing pad bundle\" data-af-stubby-img=\"\" class=\"af-img\" loading=\"lazy\"\u003e\u003c\/div\u003e\n\u003cspan data-af-label-stubby=\"\" class=\"af-interaction-label\"\u003ePick Finish: Black\u003c\/span\u003e\n\u003cdiv class=\"af-swatch-row\" role=\"listbox\" aria-label=\"Choose Stubby bundle finish\"\u003e\n\u003cbutton style=\"background-color: #111;\" aria-label=\"Black\" data-af-color-stubby=\"Black\" class=\"af-swatch\" type=\"button\"\u003e\u003c\/button\u003e \u003cbutton style=\"background-color: #1e3a8a;\" aria-label=\"Blue\" data-af-color-stubby=\"Blue\" class=\"af-swatch\" type=\"button\"\u003e\u003c\/button\u003e \u003cbutton style=\"background-color: #14532d;\" aria-label=\"Augusta Green\" data-af-color-stubby=\"Augusta Green\" class=\"af-swatch\" type=\"button\"\u003e\u003c\/button\u003e \u003cbutton style=\"background-color: #0ea5e9;\" aria-label=\"Birdie Blue\" data-af-color-stubby=\"Birdie Blue\" class=\"af-swatch\" type=\"button\"\u003e\u003c\/button\u003e \u003cbutton style=\"background-color: #4b5563;\" aria-label=\"Grey\" data-af-color-stubby=\"Grey\" class=\"af-swatch\" type=\"button\"\u003e\u003c\/button\u003e \u003cbutton style=\"background-color: #374151;\" aria-label=\"Gunmetal Grey\" data-af-color-stubby=\"Gunmetal Grey\" class=\"af-swatch\" type=\"button\"\u003e\u003c\/button\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\u003cbutton type=\"button\" class=\"af-btn af-btn-secondary\" data-af-atc-stubby-bundle=\"\"\u003eAdd Stubby Bundle\u003c\/button\u003e\u003c\/div\u003e\n\u003cdiv style=\"margin-top: 12px;\" data-af-status-stubby=\"\" class=\"af-nudge\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\" id=\"towel-only\"\u003e\n\u003ch2 class=\"af-h2\"\u003eJust need the towel?\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eIf you already have a Landing Pad, grab The 40 solo.\u003c\/p\u003e\n\u003cdiv class=\"af-hero-interaction\"\u003e\n\u003cdiv class=\"af-img-wrap\"\u003e\u003cimg class=\"af-img\" data-af-towel-only-img=\"\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/mAIN_IMAGE_UPDATE_28.jpg?v=1767904750\" alt=\"Magna-Anchor Magnetic Towel — The 40\" loading=\"lazy\"\u003e\u003c\/div\u003e\n\u003cspan data-af-label-towel=\"\" class=\"af-interaction-label\"\u003ePick Finish: Black\u003c\/span\u003e\n\u003cdiv class=\"af-swatch-row\" role=\"listbox\" aria-label=\"Choose towel finish\"\u003e\n\u003cbutton style=\"background-color: #111;\" class=\"af-swatch\" type=\"button\" data-af-color-towel=\"Black\" aria-label=\"Black\" aria-selected=\"false\"\u003e\u003c\/button\u003e \u003cbutton style=\"background-color: #1e3a8a;\" class=\"af-swatch\" type=\"button\" data-af-color-towel=\"Blue\" aria-label=\"Blue\" aria-selected=\"false\"\u003e\u003c\/button\u003e \u003cbutton style=\"background-color: #14532d;\" class=\"af-swatch\" type=\"button\" data-af-color-towel=\"Green\" aria-label=\"Green\" aria-selected=\"false\"\u003e\u003c\/button\u003e \u003cbutton style=\"background-color: #4b5563;\" class=\"af-swatch\" type=\"button\" data-af-color-towel=\"Grey\" aria-label=\"Grey\" aria-selected=\"false\"\u003e\u003c\/button\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\u003cbutton class=\"af-btn af-btn-secondary\" data-af-atc-towel=\"\"\u003eAdd The 40 Only\u003c\/button\u003e\u003c\/div\u003e\n\u003cdiv style=\"margin-top: 12px;\" data-af-status-towel=\"\" class=\"af-nudge\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\"\u003e\n\u003ch2 class=\"af-h2\"\u003eBundle vs. Towel Only\u003c\/h2\u003e\n\u003ctable class=\"af-compare-table\"\u003e\n\u003ccaption\u003eQuick Spec Check\u003c\/caption\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth scope=\"col\"\u003eFeature\u003c\/th\u003e\n\u003cth scope=\"col\"\u003eBundle (The 40 + Pad)\u003c\/th\u003e\n\u003cth scope=\"col\"\u003eThe 40 Only\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003cth scope=\"row\"\u003eWhat you get\u003c\/th\u003e\n\u003ctd data-label=\"Bundle\"\u003eTowel + Steel Docking Pad\u003c\/td\u003e\n\u003ctd data-label=\"Towel Only\"\u003eTowel Only\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth scope=\"row\"\u003eBest for\u003c\/th\u003e\n\u003ctd data-label=\"Bundle\"\u003eAny Bag (Stand or Cart)\u003c\/td\u003e\n\u003ctd data-label=\"Towel Only\"\u003eMagnet-Friendly Bags\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth scope=\"row\"\u003eRoutine adherence\u003c\/th\u003e\n\u003ctd data-label=\"Bundle\"\u003eHighest (Guaranteed Home)\u003c\/td\u003e\n\u003ctd data-label=\"Towel Only\"\u003eVariable (Depends on Bag)\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr\u003e\n\u003cth scope=\"row\"\u003eDocking reliability\u003c\/th\u003e\n\u003ctd data-label=\"Bundle\"\u003e100% Consistent\u003c\/td\u003e\n\u003ctd data-label=\"Towel Only\"\u003eDepends on Surface\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-card\" aria-label=\"Product FAQ\"\u003e\n\u003ch2 class=\"af-h2\"\u003eSystem FAQ\u003c\/h2\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eWhere does the Landing Pad mount?\u003c\/summary\u003e\n\u003cdiv\u003eInside your golf bag between club dividers. It’s a stable internal docking surface for the towel. It does not mount on cart frames or rails.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eDoes The 40 drag on the ground?\u003c\/summary\u003e\n\u003cdiv\u003eBecause of the center magnet, The 40 hangs balanced (approx 20\" drop). If you use the Landing Pad high on your bag, it stays off the ground. If you have a very short Sunday bag, check the Stubby.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eWhy dual wash pockets?\u003c\/summary\u003e\n\u003cdiv\u003eSeparation. You can keep one pocket soaked for mud\/sand and the other damp for balls, while the rest of the towel stays dry for your hands.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eCan I buy the towel without the pad?\u003c\/summary\u003e\n\u003cdiv\u003eYes, see the \"Just need the towel?\" section above. However, the bundle is recommended for the most consistent experience.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails class=\"af-faq\"\u003e\n\u003csummary\u003eCan I wash the towel?\u003c\/summary\u003e\n\u003cdiv\u003eYes. Wash cold on gentle\/low spin and air dry. Avoid high heat; hot dryers can degrade microfiber performance over time.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003c\/section\u003e\n\u003csection style=\"text-align: center;\" class=\"af-card\" aria-label=\"Final call to action\"\u003e\n\u003ch2 class=\"af-h2\"\u003eClean contact. Reliable feedback. Fewer “what the hell was that” shots.\u003c\/h2\u003e\n\u003cp class=\"af-muted\"\u003eStart with the bundle. Upgrade your system.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003cbutton class=\"af-btn af-btn-primary\" type=\"button\" data-af-atc-bundle=\"\"\u003eAdd Bundle to cart\u003c\/button\u003e \u003ca class=\"af-btn af-btn-secondary\" href=\"#towel-only\"\u003eAdd towel only\u003c\/a\u003e \u003ca class=\"af-btn af-btn-secondary\" href=\"\/pages\/our-golf-gear-testing-design-standards\"\u003eTesting Standards\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection class=\"af-standards-citation\"\u003e\n\u003ch3 style=\"margin: 0 0 .75rem 0; font-size: 1.15rem; font-weight: 900; color: #ffffff;\"\u003eEvaluated Against Published Testing Standards\u003c\/h3\u003e\n\u003cp style=\"margin: 0 0 1rem 0; font-size: 1.02rem; color: #d1d5db; line-height: 1.6;\"\u003eThis product is evaluated using Aiming Fluid Golf’s published magnetic gear testing framework. The framework defines how magnetic towels and docking systems are assessed across retention, cleaning effectiveness, usability, durability, and compatibility under real on-course conditions.\u003c\/p\u003e\n\u003cp style=\"margin: 0 0 1.25rem 0; font-size: .95rem; color: #cbd5d1;\"\u003eThe standards page documents evaluation criteria, common failure modes, and the scorecard logic used to assess magnetic golf gear independent of product marketing claims.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\u003ca href=\"\/pages\/our-golf-gear-testing-design-standards\" class=\"af-btn af-btn-secondary\"\u003eView Testing \u0026amp; Design Standards\u003c\/a\u003e\u003c\/div\u003e\n\u003c\/section\u003e\n\u003cscript type=\"application\/ld+json\"\u003e\n{\n  \"@context\":\"https:\/\/schema.org\",\n  \"@type\":\"FAQPage\",\n  \"mainEntity\":[\n    {\"@type\":\"Question\",\"name\":\"Where does the Landing Pad mount?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Inside your golf bag between club dividers. It’s a stable internal docking surface for the towel. It does not mount on cart frames or rails.\"}},\n    {\"@type\":\"Question\",\"name\":\"Does The 40 drag on the ground?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Because of the center magnet, The 40 hangs balanced (approx 20\\\" drop). If you use the Landing Pad high on your bag, it stays off the ground. If you have a very short Sunday bag, check the Stubby.\"}},\n    {\"@type\":\"Question\",\"name\":\"Why dual wash pockets?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Separation. You can keep one pocket soaked for mud\/sand and the other damp for balls, while the rest of the towel stays dry for your hands.\"}},\n    {\"@type\":\"Question\",\"name\":\"Can I buy the towel without the pad?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Yes, see the \\\"Just need the towel?\\\" section above. However, the bundle is recommended for the most consistent experience.\"}},\n    {\"@type\":\"Question\",\"name\":\"Can I wash the towel?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Yes. Wash cold on gentle\/low spin and air dry. Avoid high heat; hot dryers can degrade microfiber performance over time.\"}}\n  ]\n}\n\u003c\/script\u003e \u003cscript\u003e\n(function(){\n  \/\/ --- DATA MAPS (THE 40 BUNDLE) ---\n  const bundleMap = {\n    \"Grey\": { img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated_Main_70852911-336a-4f52-8952-ad7a71331ee4.jpg?v=1769717226\", id: \"42694796181547\" },\n    \"Green\": { img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated_Main_a9bf27d1-982b-4134-838c-4ba64802284c.jpg?v=1769717110\", id: \"42694796148779\" },\n    \"Blue\": { img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated_Main_5dc2ca4f-7081-4422-9bb5-ab1ed1d87985.jpg?v=1769717255\", id: \"42694796116011\" },\n    \"Black\": { img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated_Main_21196650-eeaf-4b5b-a449-9e56e0c587a1.jpg?v=1769716887\", id: \"42694796214315\" }\n  };\n  \n  \/\/ --- DATA MAPS (STUBBY BUNDLE - ALTERNATIVE) ---\n  const stubbyMap = {\n    \"Birdie Blue\": { img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated_Main_Image_8b752204-9ca3-4e0b-a73c-0103ff9c5dc4.jpg?v=1769716337\", id: \"42694042091563\" },\n    \"Gunmetal Grey\": { img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated_Main_884c27fa-8120-4b53-89d4-73c7cb6bab01.jpg?v=1769716030\", id: \"42694042157099\" },\n    \"Grey\": { img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated_Main_c9189ce2-a536-4749-8f59-2eb39cc1f865.jpg?v=1769716373\", id: \"42694042124331\" },\n    \"Augusta Green\": { img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated_Main_3b5d1151-cbb9-4ad0-8fb3-67c875bf4ebd.jpg?v=1769715608\", id: \"42694042255403\" },\n    \"Blue\": { img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated_Main_87e9e13c-04a3-42bd-92df-ee89f7b17e34.jpg?v=1769716373\", id: \"42694042222635\" },\n    \"Black\": { img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated_Main.jpg?v=1769716373\", id: \"42694042189867\" }\n  };\n\n  \/\/ --- DATA MAPS (THE 40 TOWEL ONLY) ---\n  const towelOnlyMap = {\n    \"Green\": { img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/mAIN_IMAGE_UPDATE_29.jpg?v=1767904750\", id: \"40882080153643\" },\n    \"Grey\": { img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/mAIN_IMAGE_UPDATE_26.jpg?v=1764811297\", id: \"40882080088107\" },\n    \"Blue\": { img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/mAIN_IMAGE_UPDATE_27.jpg?v=1767904750\", id: \"40882080055339\" },\n    \"Black\": { img: \"https:\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/mAIN_IMAGE_UPDATE_28.jpg?v=1767904750\", id: \"40882080022571\" }\n  };\n\n  \/\/ --- STATE ---\n  let selectedBundleFinish = 'Grey';\n  let selectedStubbyFinish = 'Black';\n  let selectedTowelOnlyFinish = 'Grey';\n\n  \/\/ --- HELPERS ---\n  function getAttr(el, name){ return el.getAttribute(name); }\n  function setStatus(el, msg){ if(el) el.textContent = msg; }\n  \n  \/\/ Generic Add to Cart (Single item)\n  async function addToCart(items, statusEl){\n    if(statusEl) statusEl.textContent = \"Adding...\";\n    try{\n        const res = await fetch('\/cart\/add.js', {\n            method: 'POST',\n            headers: { 'Content-Type': 'application\/json' },\n            body: JSON.stringify({ items })\n        });\n        if(!res.ok) throw new Error();\n        window.location.href = '\/cart';\n    } catch(e){\n        if(statusEl) statusEl.textContent = \"Add failed.\";\n    }\n  }\n\n  \/\/ --- 1. THE 40 BUNDLE LOGIC ---\n  const bundleSwatches = document.querySelectorAll('[data-af-color-bundle]');\n  const bundleImg = document.querySelector('[data-af-bundle-img]');\n  const bundleAtc = document.querySelectorAll('[data-af-atc-bundle]');\n  const bundleLabel = document.querySelector('[data-af-label-bundle]');\n\n  bundleSwatches.forEach(btn =\u003e btn.addEventListener('click', () =\u003e {\n    const f = getAttr(btn, 'data-af-color-bundle');\n    selectedBundleFinish = f;\n    bundleSwatches.forEach(b =\u003e b.setAttribute('aria-selected', getAttr(b, 'data-af-color-bundle') === f));\n    if(bundleMap[f] \u0026\u0026 bundleImg) bundleImg.src = bundleMap[f].img;\n    if(bundleLabel) bundleLabel.textContent = \"Pick Finish: \" + f;\n  }));\n\n  bundleAtc.forEach(btn =\u003e btn.addEventListener('click', async () =\u003e {\n    const id = Number(bundleMap[selectedBundleFinish].id);\n    await addToCart([{ id, quantity: 1 }], null);\n  }));\n\n  \/\/ --- 2. STUBBY BUNDLE LOGIC (ALTERNATIVE) ---\n  const stubbySwatches = document.querySelectorAll('[data-af-color-stubby]');\n  const stubbyImg = document.querySelector('[data-af-stubby-img]');\n  const stubbyAtc = document.querySelectorAll('[data-af-atc-stubby-bundle]');\n  const stubbyLabel = document.querySelector('[data-af-label-stubby]');\n\n  stubbySwatches.forEach(btn =\u003e btn.addEventListener('click', () =\u003e {\n    const f = getAttr(btn, 'data-af-color-stubby');\n    selectedStubbyFinish = f;\n    stubbySwatches.forEach(b =\u003e b.setAttribute('aria-selected', getAttr(b, 'data-af-color-stubby') === f));\n    if(stubbyMap[f] \u0026\u0026 stubbyImg) stubbyImg.src = stubbyMap[f].img;\n    if(stubbyLabel) stubbyLabel.textContent = \"Pick Finish: \" + f;\n  }));\n\n  stubbyAtc.forEach(btn =\u003e btn.addEventListener('click', async () =\u003e {\n    const id = Number(stubbyMap[selectedStubbyFinish].id);\n    await addToCart([{ id, quantity: 1 }], null);\n  }));\n\n  \/\/ --- 3. TOWEL ONLY LOGIC (The 40) ---\n  const towelSwatches = document.querySelectorAll('[data-af-color-towel]');\n  const towelImg = document.querySelector('[data-af-towel-only-img]');\n  const towelAtc = document.querySelector('[data-af-atc-towel]');\n  const towelLabel = document.querySelector('[data-af-label-towel]');\n\n  towelSwatches.forEach(btn =\u003e btn.addEventListener('click', () =\u003e {\n    const f = getAttr(btn, 'data-af-color-towel');\n    selectedTowelOnlyFinish = f;\n    towelSwatches.forEach(b =\u003e b.setAttribute('aria-selected', getAttr(b, 'data-af-color-towel') === f));\n    if(towelOnlyMap[f] \u0026\u0026 towelImg) towelImg.src = towelOnlyMap[f].img;\n    if(towelLabel) towelLabel.textContent = \"Pick Finish: \" + f;\n  }));\n\n  if(towelAtc){\n    towelAtc.addEventListener('click', async () =\u003e {\n        const id = Number(towelOnlyMap[selectedTowelOnlyFinish].id);\n        await addToCart([{ id, quantity: 1 }], null);\n    });\n  }\n\n  \/\/ Init Defaults\n  if(bundleSwatches.length) bundleSwatches[0].click(); \n  if(stubbySwatches.length) stubbySwatches[0].click();\n  if(towelSwatches.length) towelSwatches[0].click();\n\n})();\n\u003c\/script\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e","brand":"Aiming Fluid Golf","offers":[{"title":"Navy","offer_id":47801127731394,"sku":"AFLTLPB-BL","price":59.69,"currency_code":"USD","in_stock":true},{"title":"Green","offer_id":47801127764162,"sku":"AFLTLPB-GR","price":59.69,"currency_code":"USD","in_stock":true},{"title":"Gray","offer_id":47801127796930,"sku":"AFLTLPB-G","price":59.69,"currency_code":"USD","in_stock":true},{"title":"Black","offer_id":47801127829698,"sku":"AFLTLPB-BK","price":59.69,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0720\/6400\/8386\/files\/Updated_Main_5dc2ca4f-7081-4422-9bb5-ab1ed1d87985.jpg?v=1781294467"}],"url":"https:\/\/lifelineusa.store\/collections\/aiming-fluid-golf.oembed","provider":"LifeLineUSA","version":"1.0","type":"link"}