{"title":"Magna-Anchor Access System | Magnetic Golf Towel Docking System","description":"","products":[{"product_id":"magnetic-golf-towel-small-stubby-v2-with-scrub-pad","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":"aimingfluidgolf.com","offers":[{"title":"Blue","offer_id":40882080710699,"sku":"AFMST2-BL","price":29.69,"currency_code":"USD","in_stock":true},{"title":"Black","offer_id":40882080677931,"sku":"AFMST2-B","price":29.69,"currency_code":"USD","in_stock":true},{"title":"Gunmetal Grey","offer_id":41151790088235,"sku":"MGTS-GG","price":29.69,"currency_code":"USD","in_stock":true},{"title":"Grey","offer_id":40882080743467,"sku":"AFMST2-G","price":29.69,"currency_code":"USD","in_stock":true},{"title":"Green","offer_id":40882080776235,"sku":"AFMST2-GR","price":29.69,"currency_code":"USD","in_stock":true},{"title":"Birdie Blue","offer_id":42663187546155,"sku":"AFMST2-BBL","price":29.69,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/aiming-fluid-golf-navy-magnetic-golf-towel-waffle-weave-a1b2c3.jpg?v=1778111368"},{"product_id":"magnetic-golf-towel-large-16x40","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":"aimingfluidgolf.com","offers":[{"title":"Black","offer_id":40882080022571,"sku":"AFMLT2-B","price":39.69,"currency_code":"USD","in_stock":true},{"title":"Blue","offer_id":40882080055339,"sku":"AFMLT2-BL","price":39.69,"currency_code":"USD","in_stock":true},{"title":"Grey","offer_id":40882080088107,"sku":"AFMLT2-G","price":39.69,"currency_code":"USD","in_stock":true},{"title":"Green","offer_id":40882080153643,"sku":"AFMLT2-GR","price":39.69,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/mAIN_IMAGE_UPDATE_26.jpg?v=1772219535"},{"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":"aimingfluidgolf.com","offers":[{"title":"Default Title","offer_id":41134232010795,"sku":"AFMH","price":24.95,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/ChatGPT_Image_May_5_2026_05_58_33_AM.png?v=1778119905"},{"product_id":"magnetic-golf-towel-magnetic-landing-pad-premium-microfiber-waffle-weave-i-scrub-pad-i-wash-pocket-i-golf-gift-i-cart-carry-and-tour-bag-magnetic-landing-pad-16-x-24-golf-towel","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":"aimingfluidgolf.com","offers":[{"title":"Navy","offer_id":41968679813163,"sku":"AFMTLP-BL","price":39.69,"currency_code":"USD","in_stock":true},{"title":"Black","offer_id":41968679845931,"sku":"AFMTLP-B","price":39.69,"currency_code":"USD","in_stock":true},{"title":"Light Gray","offer_id":41968679878699,"sku":"AFMTLP-G","price":39.69,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/aiming-fluid-golf-light-duty-magnetic-towel-landing-pad-system-a1b2c3d4.jpg?v=1778111491"},{"product_id":"stubby-towel-landing-pad-on-course-cleaning-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":"aimingfluidgolf.com","offers":[{"title":"Birdie Blue","offer_id":42694042091563,"sku":"AFSTLPB-BB","price":49.69,"currency_code":"USD","in_stock":true},{"title":"Gray","offer_id":42694042124331,"sku":"AFSTLPB-G","price":49.69,"currency_code":"USD","in_stock":true},{"title":"Gunmetal Grey","offer_id":42694042157099,"sku":"AFSTLPB-GG","price":49.69,"currency_code":"USD","in_stock":true},{"title":"Black","offer_id":42694042189867,"sku":"AFSTLPB-BK","price":49.69,"currency_code":"USD","in_stock":true},{"title":"Navy","offer_id":42694042222635,"sku":"AFSTLPB-BL","price":49.69,"currency_code":"USD","in_stock":true},{"title":"Green","offer_id":42694042255403,"sku":"AFSTLPB-GR","price":49.69,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/aiming-fluid-golf-navy-microfiber-golf-towel-landing-pad-bundle-a1b2c3.jpg?v=1778111623"},{"product_id":"16x40-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":"aimingfluidgolf.com","offers":[{"title":"Navy","offer_id":42694796116011,"sku":"AFLTLPB-BL","price":59.69,"currency_code":"USD","in_stock":true},{"title":"Green","offer_id":42694796148779,"sku":"AFLTLPB-GR","price":59.69,"currency_code":"USD","in_stock":true},{"title":"Gray","offer_id":42694796181547,"sku":"AFLTLPB-G","price":59.69,"currency_code":"USD","in_stock":true},{"title":"Black","offer_id":42694796214315,"sku":"AFLTLPB-BK","price":59.69,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/Updated_Main_5dc2ca4f-7081-4422-9bb5-ab1ed1d87985.jpg?v=1769717255"},{"product_id":"shamrock-magnetic-golf-towel-limited","title":"Shamrock Magnetic Golf Towel — Limited Edition (1 of 25)","description":"\u003cp\u003e \u003c\/p\u003e\n\u003cstyle\u003e\n    \/* =========================\n       AF APPLE-STYLE DARK LUXURY (OPTION A)\n       Consistent Deep Navy\/Green Palette\n    ========================= *\/\n    #af-shamrock-le-pdp {\n      --bg-color: #050509;      \/* Deepest Navy\/Black *\/\n      --card-bg: #0f172a;       \/* Slate 900 *\/\n      --card-border: #1e293b;   \/* Slate 800 *\/\n      --text-main: #f8fafc;     \/* Clean White *\/\n      --text-muted: #94a3b8;    \/* Cool Grey *\/\n      --text-body: #d1d5db;     \/* Light Grey for readability *\/\n      --accent: #22c55e;        \/* Signal Green *\/\n      --accent-hover: #4ade80;\n      --border: rgba(148, 163, 184, 0.18);\n      --shadow: 0 22px 56px rgba(0,0,0,0.55);\n\n      font-family: -apple-system, BlinkMacSystemFont, \"SF Pro Text\", \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif;\n      background-color: var(--bg-color);\n      color: var(--text-main);\n      padding: clamp(18px, 3vw, 34px);\n      border-radius: 18px;\n      line-height: 1.6;\n      -webkit-font-smoothing: antialiased;\n    }\n\n    #af-shamrock-le-pdp * { box-sizing: border-box; }\n    #af-shamrock-le-pdp a { color: inherit; text-decoration: none; transition: color 0.2s; }\n    #af-shamrock-le-pdp .af-wrap { max-width: 980px; margin: 0 auto; }\n    \n    #af-shamrock-le-pdp .af-kicker {\n      color: var(--text-muted);\n      letter-spacing: .08em;\n      text-transform: uppercase;\n      font-size: 12px;\n      font-weight: 700;\n      margin: 0 0 10px 0;\n    }\n    \n    #af-shamrock-le-pdp h1 {\n      font-size: clamp(28px, 4vw, 44px);\n      line-height: 1.08;\n      margin: 0 0 14px 0;\n      font-weight: 900;\n      letter-spacing: -0.02em;\n      background: linear-gradient(180deg, #ffffff, #94a3b8);\n      -webkit-background-clip: text;\n      -webkit-text-fill-color: transparent;\n    }\n    \n    #af-shamrock-le-pdp .af-sub {\n      color: var(--text-body);\n      font-size: 16px;\n      line-height: 1.6;\n      margin: 0 0 18px 0;\n    }\n\n    \/* Exec Summary (LOCKED RULE: right after H1) *\/\n    #af-shamrock-le-pdp .af-exec-summary {\n      margin: 14px 0 18px 0;\n      background: rgba(9, 12, 10, 0.92);\n      border: 1px solid rgba(34, 197, 94, 0.28);\n      border-radius: 18px;\n      padding: 16px 18px;\n      box-shadow: var(--shadow);\n    }\n    #af-shamrock-le-pdp .af-exec-head {\n      display: flex; align-items: center; justify-content: space-between; gap: 10px;\n      margin: 0 0 10px 0;\n    }\n    #af-shamrock-le-pdp .af-exec-label {\n      font-size: 12px;\n      letter-spacing: .08em;\n      text-transform: uppercase;\n      font-weight: 900;\n      color: rgba(34, 197, 94, 0.9);\n      margin: 0;\n    }\n    #af-shamrock-le-pdp .af-exec-pill {\n      font-size: 12px;\n      font-weight: 600;\n      color: var(--text-main);\n      border: 1px solid var(--border);\n      padding: 6px 10px;\n      border-radius: 999px;\n      background: rgba(0,0,0,0.3);\n      white-space: nowrap;\n    }\n    #af-shamrock-le-pdp .af-exec-body {\n      margin: 0;\n      color: #e5e7eb;\n      line-height: 1.65;\n      font-size: 15px;\n    }\n\n    \/* TOC pills *\/\n    #af-shamrock-le-pdp .af-toc {\n      display: flex;\n      flex-wrap: wrap;\n      gap: 10px;\n      margin: 16px 0 24px 0;\n      padding: 0;\n      list-style: none;\n    }\n    #af-shamrock-le-pdp .af-toc a {\n      display: inline-flex;\n      align-items: center;\n      gap: 8px;\n      border: 1px solid var(--border);\n      background: var(--card-bg);\n      padding: 10px 14px;\n      border-radius: 999px;\n      color: var(--text-body);\n      font-size: 13px;\n      font-weight: 600;\n      line-height: 1;\n      transition: all 0.2s ease;\n    }\n    #af-shamrock-le-pdp .af-toc a:hover { \n      border-color: rgba(255,255,255,0.3); \n      color: var(--text-main);\n      background: #1e293b;\n    }\n\n    \/* Cards + grid *\/\n    #af-shamrock-le-pdp .af-grid {\n      display: grid;\n      grid-template-columns: repeat(12, 1fr);\n      gap: 16px;\n      margin: 14px 0 0 0;\n    }\n    #af-shamrock-le-pdp .af-card {\n      grid-column: span 12;\n      background: var(--card-bg);\n      border: 1px solid var(--card-border);\n      border-radius: 20px;\n      padding: 20px;\n      box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);\n    }\n    #af-shamrock-le-pdp .af-card h2 {\n      font-size: 18px;\n      font-weight: 700;\n      color: var(--text-main);\n      margin: 0 0 12px 0;\n      letter-spacing: -0.01em;\n    }\n    #af-shamrock-le-pdp .af-card p {\n      margin: 0 0 12px 0;\n      color: var(--text-body);\n      line-height: 1.6;\n      font-size: 15px;\n    }\n    #af-shamrock-le-pdp .af-list {\n      margin: 10px 0 0 0;\n      padding: 0 0 0 18px;\n      color: var(--text-body);\n      line-height: 1.6;\n      font-size: 15px;\n    }\n    #af-shamrock-le-pdp .af-list li { margin: 8px 0; }\n    #af-shamrock-le-pdp .af-list li strong { color: var(--text-main); }\n\n    \/* Spec tiles *\/\n    #af-shamrock-le-pdp .af-tiles {\n      display: grid;\n      grid-template-columns: repeat(2, minmax(0, 1fr));\n      gap: 12px;\n      margin-top: 16px;\n    }\n    #af-shamrock-le-pdp .af-tile {\n      border: 1px solid var(--card-border);\n      background: rgba(0,0,0,0.2);\n      border-radius: 16px;\n      padding: 14px;\n    }\n    #af-shamrock-le-pdp .af-tile .k {\n      color: var(--text-muted);\n      font-size: 12px;\n      letter-spacing: .06em;\n      text-transform: uppercase;\n      font-weight: 700;\n      margin: 0 0 6px 0;\n    }\n    #af-shamrock-le-pdp .af-tile .v {\n      margin: 0;\n      font-size: 14px;\n      color: var(--text-main);\n      line-height: 1.45;\n    }\n\n    \/* Buttons (LOCKED SYSTEM) *\/\n    #af-shamrock-le-pdp .af-btn-wrap {\n      display: flex;\n      flex-wrap: wrap;\n      gap: 10px;\n      margin-top: 16px;\n    }\n    #af-shamrock-le-pdp .af-btn {\n      display: inline-flex;\n      align-items: center;\n      justify-content: center;\n      padding: 12px 18px;\n      border-radius: 999px;\n      font-size: 14px;\n      font-weight: 700;\n      border: 1px solid transparent;\n      transition: all 0.2s ease;\n      white-space: nowrap;\n    }\n    #af-shamrock-le-pdp .af-btn-primary {\n      background: var(--accent);\n      color: #041008;\n      box-shadow: 0 4px 14px rgba(34,197,94,0.25);\n    }\n    #af-shamrock-le-pdp .af-btn-primary:hover { \n      background: var(--accent-hover);\n      transform: scale(1.02);\n    }\n    #af-shamrock-le-pdp .af-btn-secondary {\n      background: #020617;\n      color: var(--text-main);\n      border-color: rgba(148, 163, 184, 0.25);\n    }\n    #af-shamrock-le-pdp .af-btn-secondary:hover {\n      border-color: rgba(255,255,255,0.3);\n      background: #0f172a;\n    }\n\n    \/* FAQ *\/\n    #af-shamrock-le-pdp details {\n      border: 1px solid var(--border);\n      background: #07070b;\n      border-radius: 16px;\n      padding: 14px;\n      margin: 12px 0;\n    }\n    #af-shamrock-le-pdp summary {\n      cursor: pointer;\n      list-style: none;\n      font-weight: 700;\n      color: var(--text-main);\n      outline: none;\n      display: flex;\n      justify-content: space-between;\n      align-items: center;\n    }\n    #af-shamrock-le-pdp summary::-webkit-details-marker { display: none; }\n    #af-shamrock-le-pdp summary::after { content: \"+\"; color: var(--text-muted); font-weight: 400; font-size: 1.2rem;}\n    #af-shamrock-le-pdp details[open] summary::after { content: \"−\"; }\n    #af-shamrock-le-pdp .af-faq-a {\n      margin-top: 10px;\n      color: var(--text-body);\n      line-height: 1.6;\n      font-size: 15px;\n    }\n\n    \/* Responsive *\/\n    @media (min-width: 860px) {\n      #af-shamrock-le-pdp .af-card--left { grid-column: span 7; }\n      #af-shamrock-le-pdp .af-card--right { grid-column: span 5; }\n      #af-shamrock-le-pdp .af-tiles { grid-template-columns: repeat(1, minmax(0, 1fr)); }\n    }\n  \u003c\/style\u003e\n\u003csection class=\"af-page\" id=\"af-shamrock-le-pdp\"\u003e\n\u003cdiv class=\"af-wrap\"\u003e\n\u003cp class=\"af-kicker\"\u003eLimited Release\u003c\/p\u003e\n\u003ch1\u003eShamrock Magnetic Golf Towel — Limited Edition (1 of 25)\u003c\/h1\u003e\n\u003cp class=\"af-sub\"\u003eA seasonal drop built on the same on-course loop: clean contact, repeatable routine, and controlled docking. When this retail allocation sells out, it stays sold out.\u003c\/p\u003e\n\u003cdiv class=\"af-exec-summary\"\u003e\n\u003cdiv class=\"af-exec-head\"\u003e\n\u003cp class=\"af-exec-label\"\u003eTest Verdict\u003c\/p\u003e\n\u003cspan class=\"af-exec-pill\"\u003eScarcity + System Compatibility\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cp class=\"af-exec-body\"\u003eThis Shamrock edition uses the same magnetic control and Scrub → Wash → Dry workflow as the core magnetic towels, but in a capped run (1 of 25). The point isn’t “holiday.” It’s owning a cleaner, faster routine with a towel you won’t see on every cart path, while keeping full compatibility with your existing docking setup.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cul class=\"af-toc\"\u003e\n\u003cli\u003e\u003ca href=\"#af-what-it-is\"\u003eWhat It Is\u003c\/a\u003e\u003c\/li\u003e\n\u003cli\u003e\u003ca href=\"#af-what-makes-it-limited\"\u003eWhat Makes It Limited\u003c\/a\u003e\u003c\/li\u003e\n\u003cli\u003e\u003ca href=\"#af-how-to-use\"\u003eHow To Use During a Round\u003c\/a\u003e\u003c\/li\u003e\n\u003cli\u003e\u003ca href=\"#af-compatibility\"\u003eCompatibility\u003c\/a\u003e\u003c\/li\u003e\n\u003cli\u003e\u003ca href=\"#af-whats-included\"\u003eWhat’s Included\u003c\/a\u003e\u003c\/li\u003e\n\u003cli\u003e\u003ca href=\"#af-care\"\u003eCare\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 id=\"af-what-it-is\" class=\"af-card af-card--left\"\u003e\n\u003ch2\u003eWhat It Is\u003c\/h2\u003e\n\u003cp\u003eA limited-edition magnetic golf towel designed for the same practical job every round: keep clubfaces and balls clean without the “where did my towel go?” routine.\u003c\/p\u003e\n\u003cp\u003eThe Shamrock design is the collectible layer. The function is the system: dock, grab, clean, re-dock.\u003c\/p\u003e\n\u003cdiv class=\"af-tiles\"\u003e\n\u003cdiv class=\"af-tile\"\u003e\n\u003cp class=\"k\"\u003eBuilt For\u003c\/p\u003e\n\u003cp class=\"v\"\u003eGolfers who want a repeatable cleaning routine and a limited drop they won’t see everywhere.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-tile\"\u003e\n\u003cp class=\"k\"\u003eCore Idea\u003c\/p\u003e\n\u003cp class=\"v\"\u003eMagnets help towels stay attached. Systems help towels return to the same place every time.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-tile\"\u003e\n\u003cp class=\"k\"\u003eCleaning System\u003c\/p\u003e\n\u003cp class=\"v\"\u003e\u003cstrong\u003eScrub\u003c\/strong\u003e → \u003cstrong\u003eWash\u003c\/strong\u003e → \u003cstrong\u003eDry\u003c\/strong\u003e (fixed terminology and order).\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-tile\"\u003e\n\u003cp class=\"k\"\u003eDrop Status\u003c\/p\u003e\n\u003cp class=\"v\"\u003eRetail allocation sells out, then stays sold out.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003ca href=\"\/collections\/magnetic-towels\" class=\"af-btn af-btn-secondary\"\u003eShop Magnetic Towels\u003c\/a\u003e \u003ca href=\"\/collections\/magnetic-landing-pads\" class=\"af-btn af-btn-secondary\"\u003eShop Magnetic Landing Pads\u003c\/a\u003e \u003ca href=\"\/pages\/our-golf-gear-testing-design-standards\" class=\"af-btn af-btn-secondary\"\u003eTesting \u0026amp; Design Standards\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv id=\"af-what-makes-it-limited\" class=\"af-card af-card--right\"\u003e\n\u003ch2\u003eWhat Makes It Limited\u003c\/h2\u003e\n\u003cp\u003e“Limited” only matters if it’s enforced. This run is capped at \u003cstrong\u003e25 total units\u003c\/strong\u003e. Your towel is marked as \u003cstrong\u003e1 of 25\u003c\/strong\u003e.\u003c\/p\u003e\n\u003cul class=\"af-list\"\u003e\n\u003cli\u003e\n\u003cstrong\u003eCapped run:\u003c\/strong\u003e 25 total produced.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eRetail allocation:\u003c\/strong\u003e once the on-site allocation is gone, the listing remains as a sold-out archive.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eNo quiet restock:\u003c\/strong\u003e sold out means sold out.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cp style=\"margin-top: 10px; color: var(--text-muted); font-size: 14px;\"\u003eIf you’re seeing this page after sellout, that’s the point: drops leave proof.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv id=\"af-how-to-use\" class=\"af-card\"\u003e\n\u003ch2\u003eHow To Use During a Round\u003c\/h2\u003e\n\u003cp\u003eMost towels fail because access is inconsistent: clipped too low, buried, dragging, or wandering around the bag. This setup is meant to make cleaning automatic.\u003c\/p\u003e\n\u003cul class=\"af-list\"\u003e\n\u003cli\u003e\n\u003cstrong\u003eDock:\u003c\/strong\u003e keep it in a consistent spot on your bag so your hand goes to the same place every time.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eScrub:\u003c\/strong\u003e break up dirt on grooves and ball cover when the shot matters (not after the damage is done).\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eWash:\u003c\/strong\u003e use the wet zone when you actually need moisture, not a soaked towel everywhere.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eDry:\u003c\/strong\u003e finish with a dry pass so faces aren’t launching mystery spin.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eRe-dock:\u003c\/strong\u003e end each interaction the same way. That’s how it becomes a routine, not an accessory.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003cdiv id=\"af-compatibility\" class=\"af-card\"\u003e\n\u003ch2\u003eCompatibility\u003c\/h2\u003e\n\u003cp\u003eThis limited edition is built to slot into the same on-course ecosystem as the core magnetic towel setup. If you already run a consistent docking routine, nothing changes except the look and the scarcity.\u003c\/p\u003e\n\u003cul class=\"af-list\"\u003e\n\u003cli\u003eDesigned for repeatable docking on your bag setup.\u003c\/li\u003e\n\u003cli\u003ePairs naturally with a fixed docking target if you run one.\u003c\/li\u003e\n\u003cli\u003eDrop design doesn’t change the workflow.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003cdiv id=\"af-whats-included\" class=\"af-card\"\u003e\n\u003ch2\u003eWhat’s Included\u003c\/h2\u003e\n\u003cul class=\"af-list\"\u003e\n\u003cli\u003e1× Shamrock Limited Edition magnetic golf towel (marked 1 of 25)\u003c\/li\u003e\n\u003cli\u003eIntegrated carabiner\/attachment hardware (as shown)\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cp style=\"margin-top: 12px;\"\u003eWant the full “always the same spot” loop? That’s a docking decision, not a towel decision.\u003c\/p\u003e\n\u003cdiv class=\"af-btn-wrap\"\u003e\n\u003ca href=\"\/collections\/on-course-systems\" class=\"af-btn af-btn-primary\"\u003eBuild Your On-Course System\u003c\/a\u003e \u003ca href=\"\/collections\/on-course-organization-system\" class=\"af-btn af-btn-secondary\"\u003eOn-Course Organization\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv id=\"af-care\" class=\"af-card\"\u003e\n\u003ch2\u003eCare\u003c\/h2\u003e\n\u003cp\u003eTreat it like performance gear, not a kitchen rag. Keep it clean and it stays effective.\u003c\/p\u003e\n\u003cul class=\"af-list\"\u003e\n\u003cli\u003eRinse out heavy grit after rounds to protect fabric and stitching.\u003c\/li\u003e\n\u003cli\u003eWash as needed; avoid harsh chemicals that can prematurely age materials.\u003c\/li\u003e\n\u003cli\u003eAir dry when possible to preserve feel and structure.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003cdiv id=\"af-faq\" class=\"af-card\"\u003e\n\u003ch2\u003eFAQ\u003c\/h2\u003e\n\u003cdetails\u003e\n\u003csummary\u003eIs this actually limited, or will it restock later?\u003c\/summary\u003e\n\u003cdiv class=\"af-faq-a\"\u003eThis run is capped at 25 total units. Retail allocation will sell out and the page stays up as a sold-out archive rather than quietly reappearing later.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eWill the Shamrock edition work the same as the core magnetic towels?\u003c\/summary\u003e\n\u003cdiv class=\"af-faq-a\"\u003eYes. The limited edition layer is the design and scarcity. The use case stays the same: consistent access and a repeatable cleaning loop built around Scrub → Wash → Dry.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eWhat happens when it sells out?\u003c\/summary\u003e\n\u003cdiv class=\"af-faq-a\"\u003eThe listing remains live and shows sold out. That’s intentional: it keeps the drop history visible and lets you join the next release instead of hunting for a dead link.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eIs the “1 of 25” number unique per towel?\u003c\/summary\u003e\n\u003cdiv class=\"af-faq-a\"\u003eThe run is marked as 1 of 25 for the edition. (If you ever decide to do individually serialized numbering like #03\/25, that would be a separate, explicitly labeled program.)\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eWhere should I mount\/dock it on the bag?\u003c\/summary\u003e\n\u003cdiv class=\"af-faq-a\"\u003eThe goal is repeatability: pick a spot your hand reaches without thinking, and keep it consistent round-to-round. If your bag setup benefits from a fixed docking target, pair it with your preferred docking solution.\u003c\/div\u003e\n\u003c\/details\u003e\n\u003cdiv style=\"margin-top: 18px;\" class=\"af-btn-wrap\"\u003e\n\u003ca href=\"\/collections\/magnetic-towels\" class=\"af-btn af-btn-secondary\"\u003eBack to Magnetic Towels\u003c\/a\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 \u0026amp; Design Standards\u003c\/a\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cscript type=\"application\/ld+json\"\u003e\n  {\n    \"@context\": \"https:\/\/schema.org\",\n    \"@type\": \"FAQPage\",\n    \"mainEntity\": [\n      {\n        \"@type\": \"Question\",\n        \"name\": \"Is this actually limited, or will it restock later?\",\n        \"acceptedAnswer\": {\n          \"@type\": \"Answer\",\n          \"text\": \"This run is capped at 25 total units. Retail allocation will sell out and the page stays up as a sold-out archive rather than quietly reappearing later.\"\n        }\n      },\n      {\n        \"@type\": \"Question\",\n        \"name\": \"Will the Shamrock edition work the same as the core magnetic towels?\",\n        \"acceptedAnswer\": {\n          \"@type\": \"Answer\",\n          \"text\": \"Yes. The limited edition layer is the design and scarcity. The use case stays the same: consistent access and a repeatable cleaning loop built around Scrub \\u2192 Wash \\u2192 Dry.\"\n        }\n      },\n      {\n        \"@type\": \"Question\",\n        \"name\": \"What happens when it sells out?\",\n        \"acceptedAnswer\": {\n          \"@type\": \"Answer\",\n          \"text\": \"The listing remains live and shows sold out. That’s intentional: it keeps the drop history visible and lets you join the next release instead of hunting for a dead link.\"\n        }\n      },\n      {\n        \"@type\": \"Question\",\n        \"name\": \"Is the “1 of 25” number unique per towel?\",\n        \"acceptedAnswer\": {\n          \"@type\": \"Answer\",\n          \"text\": \"The run is marked as 1 of 25 for the edition. If you ever decide to do individually serialized numbering like #03\/25, that would be a separate, explicitly labeled program.\"\n        }\n      },\n      {\n        \"@type\": \"Question\",\n        \"name\": \"Where should I mount\/dock it on the bag?\",\n        \"acceptedAnswer\": {\n          \"@type\": \"Answer\",\n          \"text\": \"Pick a spot your hand reaches without thinking and keep it consistent round-to-round. If your bag setup benefits from a fixed docking target, pair it with your preferred docking solution.\"\n        }\n      }\n    ]\n  }\n  \u003c\/script\u003e \u003cscript type=\"application\/ld+json\"\u003e\n  {\n    \"@context\":\"https:\/\/schema.org\",\n    \"@type\":\"Article\",\n    \"headline\":\"Shamrock Magnetic Golf Towel — Limited Edition (1 of 25)\",\n    \"author\":{\"@type\":\"Organization\",\"name\":\"Aiming Fluid Golf\"},\n    \"publisher\":{\"@type\":\"Organization\",\"name\":\"Aiming Fluid Golf\"},\n    \"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"\/products\/shamrock-magnetic-golf-towel-limited-edition\"},\n    \"description\":\"Limited-run Shamrock magnetic golf towel built around a repeatable Scrub → Wash → Dry cleaning loop. Page remains live as a sold-out archive after retail allocation sells out.\"\n  }\n  \u003c\/script\u003e\u003c\/section\u003e","brand":"Aiming Fluid Golf","offers":[{"title":"Default Title","offer_id":43118190886955,"sku":null,"price":49.69,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0555\/0830\/3915\/files\/ShamrockMain.jpg?v=1772475818"}],"url":"https:\/\/www.aimingfluidgolf.com\/collections\/magna-anchor-access-system.oembed","provider":"Aiming Fluid Golf","version":"1.0","type":"link"}