{"product_id":"cotopaxi-todo-1l-shoulder-bag","title":"Cotopaxi Todo 1L Shoulder Bag","description":"\u003cmeta charset=\"UTF-8\"\u003e\n\u003cmeta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"\u003e\n\u003cstyle\u003e\n@import url('https:\/\/fonts.googleapis.com\/css2?family=Barlow+Condensed:wght@400;600;700;800\u0026family=Barlow:wght@300;400;500\u0026display=swap');\n:root {\n  --black: #0a0a0a;\n  --white: #ffffff;\n  --mid: #f5f5f5;\n  --border: #e0e0e0;\n  --text-muted: #777;\n  --text-body: #222;\n}\n* {\n  box-sizing: border-box;\n  margin: 0;\n  padding: 0;\n}\n.spur-wrap {\n  font-family: 'Barlow', sans-serif;\n  background: var(--white);\n  color: var(--black);\n  max-width: 1100px;\n  margin: 0 auto;\n  padding: 48px 24px;\n}\n.spur-header {\n  display: flex;\n  align-items: flex-end;\n  justify-content: space-between;\n  margin-bottom: 48px;\n  border-bottom: 1px solid var(--border);\n  padding-bottom: 24px;\n  flex-wrap: wrap;\n  gap: 12px;\n}\n.spur-title {\n  font-family: 'Barlow Condensed', sans-serif;\n  font-size: clamp(28px, 5vw, 48px);\n  font-weight: 800;\n  letter-spacing: -0.02em;\n  line-height: 1;\n  text-transform: uppercase;\n}\n.spur-meta {\n  font-size: 12px;\n  font-weight: 500;\n  letter-spacing: 0.12em;\n  text-transform: uppercase;\n  color: var(--text-muted);\n}\n.spur-tabs {\n  display: flex;\n  gap: 4px;\n  margin-bottom: 32px;\n}\n.spur-tab {\n  font-family: 'Barlow Condensed', sans-serif;\n  font-size: 14px;\n  font-weight: 700;\n  letter-spacing: 0.1em;\n  text-transform: uppercase;\n  padding: 10px 24px;\n  background: var(--mid);\n  color: var(--text-muted);\n  border: 1px solid var(--border);\n  cursor: pointer;\n  transition: all 0.15s;\n  border-radius: 2px;\n}\n.spur-tab:hover {\n  color: var(--black);\n  border-color: #aaa;\n}\n.spur-tab.active {\n  background: var(--black);\n  color: var(--white);\n  border-color: var(--black);\n}\n.spur-panel {\n  display: none;\n}\n.spur-panel.active {\n  display: block;\n}\n.spec-category {\n  font-family: 'Barlow Condensed', sans-serif;\n  font-size: 11px;\n  font-weight: 700;\n  letter-spacing: 0.2em;\n  text-transform: uppercase;\n  color: var(--black);\n  padding: 20px 0 8px;\n  border-bottom: 2px solid var(--black);\n  margin-bottom: 0;\n}\n.spec-row {\n  display: grid;\n  grid-template-columns: 200px 1fr;\n  border-bottom: 1px solid var(--border);\n  transition: background 0.1s;\n}\n.spec-row:hover {\n  background: var(--mid);\n}\n.spec-key {\n  font-size: 12px;\n  font-weight: 500;\n  letter-spacing: 0.05em;\n  text-transform: uppercase;\n  color: var(--text-muted);\n  padding: 12px 16px 12px 0;\n  align-self: start;\n}\n.spec-val {\n  font-size: 14px;\n  font-weight: 300;\n  color: var(--text-body);\n  padding: 12px 0;\n  line-height: 1.5;\n}\n@media (max-width: 600px) {\n  .spec-row {\n    grid-template-columns: 1fr;\n  }\n  .spec-key {\n    padding-bottom: 2px;\n  }\n  .spec-val {\n    padding-top: 0;\n    padding-bottom: 12px;\n  }\n}\n\u003c\/style\u003e\n\u003cdiv class=\"spur-wrap\"\u003e\n\u003cdiv class=\"spur-header\"\u003e\n\u003cdiv class=\"spur-title\"\u003eTodo 1L Shoulder Bag\u003c\/div\u003e\n\u003cdiv class=\"spur-meta\"\u003eA sleek shoulder bag for minimalist adventures\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spur-tabs\"\u003e\n\u003cbutton class=\"spur-tab active\" onclick=\"showPanel('specs', this)\"\u003eSpecs\u003c\/button\u003e\n\u003c\/div\u003e\n\u003cdiv id=\"panel-specs\" class=\"spur-panel active\"\u003e\n\u003cdiv class=\"spec-category\"\u003eDescription\u003c\/div\u003e\n\u003cdiv style=\"padding: 16px 0;\"\u003e\n\u003cp style=\"font-size: 14px; font-weight: 300; color: var(--text-body); line-height: 1.6;\"\u003eFor days where all you need is a phone, wallet, and sunnies, the Todo 1L Shoulder Bag is the perfect companion to your weekend. Two zippered compartments keep your gear organized, and the adjustable strap can be worn across your body or around your hips as a belt bag.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spec-category\"\u003eShell\u003c\/div\u003e\n\u003cdiv class=\"spec-row\"\u003e\n\u003cdiv class=\"spec-key\"\u003eMain Body\u003c\/div\u003e\n\u003cdiv class=\"spec-val\"\u003e100% recycled polyester 300D x 900D\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spec-row\"\u003e\n\u003cdiv class=\"spec-key\"\u003eLining\u003c\/div\u003e\n\u003cdiv class=\"spec-val\"\u003e100% recycled 150D ripstop polyester\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spec-category\"\u003eFeatures\u003c\/div\u003e\n\u003cdiv class=\"spec-row\"\u003e\n\u003cdiv class=\"spec-key\"\u003eCarry\u003c\/div\u003e\n\u003cdiv class=\"spec-val\"\u003eCan be carried cross-body or as a belt\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spec-row\"\u003e\n\u003cdiv class=\"spec-key\"\u003ePockets\u003c\/div\u003e\n\u003cdiv class=\"spec-val\"\u003eAccessory pocket\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spec-row\"\u003e\n\u003cdiv class=\"spec-key\"\u003eAttachment\u003c\/div\u003e\n\u003cdiv class=\"spec-val\"\u003eDaisy chain loops\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spec-category\"\u003eDetails\u003c\/div\u003e\n\u003cdiv class=\"spec-row\"\u003e\n\u003cdiv class=\"spec-key\"\u003eCapacity\u003c\/div\u003e\n\u003cdiv class=\"spec-val\"\u003e1L (61.0237 cu in)\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"spec-row\"\u003e\n\u003cdiv class=\"spec-key\"\u003eDimensions\u003c\/div\u003e\n\u003cdiv class=\"spec-val\"\u003e7.5 x 6 x 3 in (20 x 15 x 8 cm)\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cscript\u003e\nfunction showPanel(id, btn) {\n  document.querySelectorAll('.spur-panel').forEach(p =\u003e p.classList.remove('active'));\n  document.querySelectorAll('.spur-tab').forEach(t =\u003e t.classList.remove('active'));\n  document.getElementById('panel-' + id).classList.add('active');\n  btn.classList.add('active');\n}\n\u003c\/script\u003e","brand":"Cotopaxi","offers":[{"title":"Aster \/ OS","offer_id":51640303649088,"sku":"TODO1-S26-AST","price":45.0,"currency_code":"USD","in_stock":false},{"title":"Cotopaxi Black \/ OS","offer_id":51640303681856,"sku":"TD1-F25-CPBLK","price":45.0,"currency_code":"USD","in_stock":false},{"title":"Cream \/ OS","offer_id":51640303714624,"sku":"TD1-F25-CREAM","price":45.0,"currency_code":"USD","in_stock":false},{"title":"Deep Sea \/ OS","offer_id":51640303747392,"sku":"TD1-F25-DPSEA","price":45.0,"currency_code":"USD","in_stock":false},{"title":"Honeycomb \/ OS","offer_id":51640303780160,"sku":"TODO1-S26-HNYC","price":45.0,"currency_code":"USD","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0446\/7487\/5549\/files\/TODO1-S26-AST_fc1848f8-946e-440f-9000-505d799092a0.jpg?v=1776373122","url":"https:\/\/spokex.com\/products\/cotopaxi-todo-1l-shoulder-bag","provider":"SX Collective","version":"1.0","type":"link"}