{"product_id":"canilleras-de-futbol-largas","title":"Canilleras de Fútbol Largas","description":"\u003cstyle\u003e\n#mg3105{\n  --g:#08a56e;\n  --soft:#eff8f3;\n  --ink:#18382d;\n  max-width:880px;\n  margin:24px auto;\n  font-family:inherit;\n  color:var(--ink);\n  line-height:1.65;\n}\n#mg3105 *{box-sizing:border-box}\n#mg3105 h2,#mg3105 h3,#mg3105 p{margin:0}\n\n#mg3105 .mg-hero{\n  padding:34px 26px;\n  background:var(--soft);\n  border-radius:20px;\n}\n#mg3105 .mg-eyebrow{\n  display:block;\n  color:var(--g);\n  font-size:12px;\n  font-weight:700;\n  text-transform:uppercase;\n  letter-spacing:1.2px;\n  margin-bottom:12px;\n}\n#mg3105 h2{\n  font-size:clamp(27px,4.5vw,40px);\n  line-height:1.16;\n  letter-spacing:-.8px;\n  font-weight:750;\n}\n#mg3105 h2 span{color:var(--g)}\n#mg3105 .mg-hero p{\n  margin-top:18px;\n  max-width:670px;\n  font-size:17px;\n}\n#mg3105 .mg-section{padding:28px 5px}\n#mg3105 h3{\n  font-size:clamp(22px,3.4vw,28px);\n  line-height:1.25;\n  letter-spacing:-.4px;\n  font-weight:700;\n}\n#mg3105 .mg-section p{\n  margin-top:12px;\n  font-size:16px;\n}\n#mg3105 .mg-points{\n  list-style:none;\n  margin:20px 0 0;\n  padding:0;\n}\n#mg3105 .mg-points li{\n  position:relative;\n  padding:0 0 0 20px;\n  margin-top:12px;\n  font-size:16px;\n}\n#mg3105 .mg-points li::before{\n  content:\"\";\n  position:absolute;\n  left:0;\n  top:10px;\n  width:7px;\n  height:7px;\n  border-radius:50%;\n  background:var(--g);\n}\n#mg3105 .mg-image{margin:0 0 25px}\n#mg3105 .mg-image[hidden]{display:none}\n#mg3105 .mg-image img{\n  display:block;\n  width:100%;\n  height:auto;\n  border-radius:16px;\n}\n#mg3105 .mg-sizebox{\n  padding:25px;\n  border:1px solid #dcebe3;\n  border-radius:18px;\n  background:#fff;\n}\n#mg3105 .mg-sizes{\n  display:flex;\n  flex-wrap:wrap;\n  gap:10px;\n  margin:18px 0;\n}\n#mg3105 .mg-size{\n  flex:1;\n  min-width:58px;\n  padding:12px;\n  border:1px solid #c7dbd1;\n  border-radius:10px;\n  background:#fff;\n  color:var(--ink);\n  font-family:inherit;\n  font-size:17px;\n  font-weight:700;\n  cursor:pointer;\n}\n#mg3105 .mg-size[aria-pressed=\"true\"]{\n  border-color:var(--g);\n  background:var(--g);\n  color:#fff;\n}\n#mg3105 .mg-size:disabled{\n  opacity:.4;\n  text-decoration:line-through;\n  cursor:not-allowed;\n}\n#mg3105 .mg-choice{\n  min-height:25px;\n  font-size:14px;\n}\n#mg3105 .mg-table-wrap{\n  overflow-x:auto;\n  margin-top:20px;\n  border:1px solid #dcebe3;\n  border-radius:12px;\n}\n#mg3105 table{\n  border-collapse:collapse;\n  width:100%;\n  min-width:420px;\n  margin:0;\n  font-size:14px;\n}\n#mg3105 th{\n  background:var(--g);\n  color:#fff;\n  padding:13px 10px;\n  text-align:center;\n  font-weight:700;\n}\n#mg3105 td{\n  padding:13px 10px;\n  text-align:center;\n  border-bottom:1px solid #dcebe3;\n  color:var(--ink);\n}\n#mg3105 tbody tr:nth-child(even){\n  background:var(--soft);\n}\n#mg3105 tbody tr[data-selected=\"true\"]{\n  background:#d8f3e5;\n  box-shadow:inset 4px 0 var(--g);\n}\n#mg3105 tbody tr:last-child td{\n  border-bottom:0;\n}\n#mg3105 .mg-measure{\n  margin-top:18px;\n  padding:17px;\n  background:var(--soft);\n  border-radius:12px;\n  font-size:14px;\n}\n#mg3105 .mg-measure p{\n  margin:7px 0 0;\n}\n#mg3105 .mg-note{\n  margin-top:10px;\n  font-size:12px;\n  color:#5c7167;\n}\n#mg3105 .mg-buy{\n  display:flex;\n  align-items:center;\n  gap:12px;\n  justify-content:center;\n  width:100%;\n  margin-top:23px;\n  padding:17px 20px;\n  background:var(--g);\n  border:0;\n  border-radius:12px;\n  color:#fff;\n  font-family:inherit;\n  font-size:17px;\n  font-weight:700;\n  cursor:pointer;\n}\n#mg3105 .mg-buy:hover{\n  background:#07885b;\n}\n#mg3105 .mg-buy:disabled{\n  opacity:.55;\n  cursor:not-allowed;\n}\n#mg3105 .mg-buy svg{\n  width:23px;\n  height:23px;\n  flex-shrink:0;\n}\n#mg3105 .mg-buy span{\n  flex:1;\n}\n#mg3105 button:focus-visible,\n#mg3105 summary:focus-visible{\n  outline:3px solid var(--ink);\n  outline-offset:3px;\n}\n#mg3105 .mg-status{\n  min-height:24px;\n  margin-top:10px;\n  font-size:14px;\n}\n#mg3105 .mg-faq{\n  padding:30px 5px 10px;\n}\n#mg3105 .mg-faq h3{\n  margin-bottom:17px;\n}\n#mg3105 details{\n  margin-top:10px;\n  border:1px solid #dcebe3;\n  border-radius:12px;\n  background:#fff;\n}\n#mg3105 summary{\n  padding:16px;\n  cursor:pointer;\n  font-size:15px;\n  font-weight:700;\n}\n#mg3105 details p{\n  padding:0 16px 17px;\n  font-size:14px;\n}\n#mg3105-cart{\n  position:fixed;\n  inset:0 0 0 auto;\n  width:min(440px,100%);\n  max-width:100%;\n  height:100dvh;\n  max-height:100dvh;\n  margin:0;\n  padding:24px;\n  border:0;\n  background:#fff;\n  color:#18382d;\n  font-family:inherit;\n}\n#mg3105-cart::backdrop{\n  background:rgba(0,0,0,.45);\n}\n#mg3105-cart .mg-cart-head{\n  display:flex;\n  align-items:center;\n  justify-content:space-between;\n  gap:15px;\n}\n#mg3105-cart h2{\n  margin:0;\n  font-size:24px;\n}\n#mg3105-cart button{\n  padding:10px 14px;\n  border:0;\n  border-radius:8px;\n  background:#eff8f3;\n  font:inherit;\n  cursor:pointer;\n}\n#mg3105-cart ul{\n  list-style:none;\n  padding:0;\n  margin:22px 0;\n}\n#mg3105-cart li{\n  padding:15px 0;\n  border-bottom:1px solid #dcebe3;\n  line-height:1.5;\n}\n#mg3105-cart .mg-cart-link{\n  display:block;\n  margin-top:20px;\n  padding:15px;\n  background:#08a56e;\n  color:#fff;\n  text-decoration:none;\n  text-align:center;\n  border-radius:10px;\n  font-weight:700;\n}\n@media(max-width:600px){\n  #mg3105{margin:18px auto}\n  #mg3105 .mg-hero{padding:27px 20px}\n  #mg3105 .mg-hero p{font-size:16px}\n  #mg3105 .mg-sizebox{padding:20px 15px}\n  #mg3105 .mg-section{padding:25px 3px}\n  #mg3105 th,#mg3105 td{padding:12px 7px}\n}\n\u003c\/style\u003e\n\u003csection id=\"mg3105\" aria-label=\"Canilleras de fútbol largas negras\"\u003e\n\u003cdiv class=\"mg-hero\"\u003e\n\u003cspan class=\"mg-eyebrow\"\u003e Canilleras de fútbol largas · Color negro \u003c\/span\u003e\n\u003ch2\u003eQue tu atención esté en la pelota.\u003cbr\u003e\u003cspan\u003eNo en acomodarte las canilleras.\u003c\/span\u003e\n\u003c\/h2\u003e\n\u003cp\u003eEl formato elástico envuelve la pierna y mantiene el acolchado integrado en su lugar, para acompañarte cuando corrés, frenás y cambiás de dirección.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"mg-section\"\u003e\n\u003ch3\u003eEl acolchado acompaña tus movimientos.\u003c\/h3\u003e\n\u003cp\u003eLos paneles de espuma con diseño hexagonal ayudan a amortiguar los golpes sobre la zona cubierta. Al estar integrados a la manga, se colocan junto con ella.\u003c\/p\u003e\n\u003cul class=\"mg-points\"\u003e\n\u003cli\u003e\n\u003cstrong\u003eAjuste elástico:\u003c\/strong\u003e se adapta a la forma de la pierna.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eFormato largo:\u003c\/strong\u003e cubre desde debajo de la rodilla hacia el tobillo.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eTejido transpirable:\u003c\/strong\u003e ayuda a que la humedad no se acumule durante el uso.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003c!-- Imagen de uso: agregá la URL en IMAGEN_USO dentro del script. --\u003e\n\u003cfigure class=\"mg-image\" hidden=\"\"\u003e\u003cimg alt=\"Canilleras largas negras con acolchado hexagonal colocadas en las piernas\" loading=\"lazy\"\u003e\u003c\/figure\u003e\n\u003cdiv class=\"mg-sizebox\"\u003e\n\u003ch3\u003eElegí tu talle.\u003c\/h3\u003e\n\u003cp style=\"margin-top: 10px;\"\u003eCompará las medidas antes de elegir. Un buen ajuste ayuda a que acompañen tus movimientos.\u003c\/p\u003e\n\u003cdiv class=\"mg-sizes\" role=\"group\" aria-label=\"Elegir talle\"\u003e\n\u003cbutton type=\"button\" class=\"mg-size\" data-size=\"S\" aria-pressed=\"false\"\u003eS\u003c\/button\u003e \u003cbutton type=\"button\" class=\"mg-size\" data-size=\"M\" aria-pressed=\"false\"\u003eM\u003c\/button\u003e \u003cbutton type=\"button\" class=\"mg-size\" data-size=\"L\" aria-pressed=\"false\"\u003eL\u003c\/button\u003e \u003cbutton type=\"button\" class=\"mg-size\" data-size=\"XL\" aria-pressed=\"false\"\u003eXL\u003c\/button\u003e\n\u003c\/div\u003e\n\u003cp class=\"mg-choice\" aria-live=\"polite\"\u003eSeleccioná un talle.\u003c\/p\u003e\n\u003cdiv class=\"mg-table-wrap\" role=\"region\" aria-label=\"Guía de talles en centímetros\" tabindex=\"0\"\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth scope=\"col\"\u003eTalle\u003c\/th\u003e\n\u003cth scope=\"col\"\u003eLargo total\u003c\/th\u003e\n\u003cth scope=\"col\"\u003eContorno superior\u003c\/th\u003e\n\u003cth scope=\"col\"\u003eContorno inferior\u003c\/th\u003e\n\u003c\/tr\u003e\n\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr data-row=\"S\"\u003e\n\u003cth scope=\"row\"\u003eS\u003c\/th\u003e\n\u003ctd\u003e28 cm\u003c\/td\u003e\n\u003ctd\u003e24–30 cm\u003c\/td\u003e\n\u003ctd\u003e14–17 cm\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr data-row=\"M\"\u003e\n\u003cth scope=\"row\"\u003eM\u003c\/th\u003e\n\u003ctd\u003e29 cm\u003c\/td\u003e\n\u003ctd\u003e26–32 cm\u003c\/td\u003e\n\u003ctd\u003e16–19 cm\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr data-row=\"L\"\u003e\n\u003cth scope=\"row\"\u003eL\u003c\/th\u003e\n\u003ctd\u003e30 cm\u003c\/td\u003e\n\u003ctd\u003e28–34 cm\u003c\/td\u003e\n\u003ctd\u003e18–21 cm\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr data-row=\"XL\"\u003e\n\u003cth scope=\"row\"\u003eXL\u003c\/th\u003e\n\u003ctd\u003e31 cm\u003c\/td\u003e\n\u003ctd\u003e30–38 cm\u003c\/td\u003e\n\u003ctd\u003e20–23 cm\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"mg-measure\"\u003e\n\u003cstrong\u003eCómo medirte\u003c\/strong\u003e\n\u003cp\u003eDe pie, rodeá la pierna por debajo de la rodilla con una cinta métrica, sin apretar, para comparar el contorno superior. Medí también donde termina la manga para comparar el contorno inferior y verificá el largo total.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cp class=\"mg-note\"\u003eMedidas aproximadas. Margen de variación: 1–2 cm.\u003c\/p\u003e\n\u003cbutton type=\"button\" class=\"mg-buy\" disabled\u003e \u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" aria-hidden=\"true\"\u003e\n        \u003cpath d=\"M3 3h2l2.2 11.2a2 2 0 0 0 2 1.6H18a2 2 0 0 0 2-1.6L21 7H6\"\u003e\u003c\/path\u003e\n        \u003ccircle cx=\"10\" cy=\"20\" r=\"1\"\u003e\u003c\/circle\u003e\n        \u003ccircle cx=\"18\" cy=\"20\" r=\"1\"\u003e\u003c\/circle\u003e\n      \u003c\/svg\u003e \u003cspan\u003eElegí un talle\u003c\/span\u003e \u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" aria-hidden=\"true\"\u003e\n        \u003cpath d=\"M4 12h15m-6-6 6 6-6 6\"\u003e\u003c\/path\u003e\n      \u003c\/svg\u003e \u003c\/button\u003e\n\u003cdiv class=\"mg-status\" role=\"status\" aria-live=\"polite\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"mg-faq\"\u003e\n\u003ch3\u003eLo que necesitás saber.\u003c\/h3\u003e\n\u003cdetails\u003e\n\u003csummary\u003e¿El acolchado viene integrado?\u003c\/summary\u003e\n\u003cp\u003eSí. Los paneles hexagonales forman parte de la manga. Te colocás la canillera completa, sin ubicar una pieza suelta dentro de ella.\u003c\/p\u003e\n\u003c\/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003e¿Cómo elijo el talle?\u003c\/summary\u003e\n\u003cp\u003eCompará el largo y los contornos de la tabla con tus medidas. Priorizá el ajuste sobre la pierna en lugar de elegir solo por edad o peso.\u003c\/p\u003e\n\u003c\/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003e¿Son rígidas?\u003c\/summary\u003e\n\u003cp\u003eSon mangas elásticas con acolchado flexible. Su formato acompaña la pierna y permite doblarla al moverte.\u003c\/p\u003e\n\u003c\/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003e¿Cómo las lavo?\u003c\/summary\u003e\n\u003cp\u003eLavalas a mano y dejalas secar de forma natural. Evitá la exposición intensa al sol y el calor directo.\u003c\/p\u003e\n\u003c\/details\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003e\u003c\/p\u003e\u003cdialog id=\"mg3105-cart\" aria-labelledby=\"mg3105-cart-title\"\u003e\n\u003cdiv class=\"mg-cart-head\"\u003e\n\u003ch2 id=\"mg3105-cart-title\"\u003eTu carrito\u003c\/h2\u003e\n\u003cbutton type=\"button\" data-close=\"\" aria-label=\"Cerrar carrito\"\u003e Cerrar \u003c\/button\u003e\n\u003c\/div\u003e\n\u003cdiv data-content=\"\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003ca class=\"mg-cart-link\" href=\"\/cart\"\u003eVer carrito\u003c\/a\u003e \u003c\/dialog\u003e \u003cscript\u003e\n(function(){\n  var root=document.getElementById('mg3105');\n  if(!root || root.dataset.ready) return;\n  root.dataset.ready='true';\n\n  \/* Pegá entre las comillas la URL de la imagen de uso. *\/\n  var IMAGEN_USO='';\n\n  var SKU_POR_TALLE={\n    S:'3105-1',\n    M:'3105-2',\n    L:'3105-3',\n    XL:'3105-4'\n  };\n\n  if(IMAGEN_USO){\n    var picture=root.querySelector('.mg-image');\n    var image=picture.querySelector('img');\n\n    image.src=IMAGEN_USO;\n    picture.hidden=false;\n\n    image.addEventListener('error',function(){\n      picture.hidden=true;\n    });\n  }\n\n  var base=window.Shopify \u0026\u0026 window.Shopify.routes\n    ? window.Shopify.routes.root\n    : '\/';\n\n  var sizes=Array.from(root.querySelectorAll('.mg-size'));\n  var buy=root.querySelector('.mg-buy');\n  var buyLabel=buy.querySelector('span');\n  var choice=root.querySelector('.mg-choice');\n  var status=root.querySelector('.mg-status');\n  var modal=document.getElementById('mg3105-cart');\n\n  var variants={};\n  var selected='';\n  var loaded=false;\n  var busy=false;\n\n  modal.querySelector('a').href=base+'cart';\n\n  modal.querySelector('[data-close]').addEventListener('click',function(){\n    modal.close();\n  });\n\n  modal.addEventListener('click',function(e){\n    if(e.target!==modal) return;\n\n    var b=modal.getBoundingClientRect();\n\n    if(\n      e.clientX\u003cb.left ||\n      e.clientX\u003eb.right ||\n      e.clientY\u003cb.top ||\n      e.clientY\u003eb.bottom\n    ){\n      modal.close();\n    }\n  });\n\n  async function json(url,options){\n    var response=await fetch(url,options);\n    var data=await response.json();\n\n    if(!response.ok){\n      throw new Error(\n        data.description ||\n        data.message ||\n        'No pudimos completar la solicitud.'\n      );\n    }\n\n    return data;\n  }\n\n  function update(){\n    var v=variants[selected];\n\n    sizes.forEach(function(button){\n      var size=button.dataset.size;\n\n      button.setAttribute(\n        'aria-pressed',\n        String(size===selected)\n      );\n\n      button.disabled=\n        busy ||\n        (\n          loaded \u0026\u0026\n          (!variants[size] || !variants[size].available)\n        );\n    });\n\n    root.querySelectorAll('[data-row]').forEach(function(row){\n      row.dataset.selected=String(row.dataset.row===selected);\n    });\n\n    buy.disabled=\n      busy ||\n      !loaded ||\n      !v ||\n      !v.available;\n\n    if(!busy){\n      buyLabel.textContent=\n        !selected ? 'Elegí un talle' :\n        !loaded ? 'Cargando disponibilidad…' :\n        !v || !v.available ? 'Talle sin stock' :\n        'Agregar al carrito';\n    }\n\n    choice.textContent=selected\n      ? 'Talle seleccionado: '+selected+\n        (\n          loaded \u0026\u0026 (!v || !v.available)\n            ? ' · Sin stock'\n            : ''\n        )\n      : 'Seleccioná un talle.';\n  }\n\n  function choose(size){\n    selected=size;\n    status.textContent='';\n    update();\n\n    var v=variants[size];\n    if(!v) return;\n\n    var scope=root.closest('.shopify-section') || document;\n\n    scope.querySelectorAll(\n      'form[action*=\"\/cart\/add\"] [name=\"id\"]'\n    ).forEach(function(field){\n      field.value=String(v.id);\n      field.dispatchEvent(\n        new Event('change',{bubbles:true})\n      );\n    });\n  }\n\n  sizes.forEach(function(button){\n    button.addEventListener('click',function(){\n      choose(button.dataset.size);\n    });\n  });\n\n  async function loadVariants(){\n    try{\n      var match=location.pathname.match(\/\\\/products\\\/([^\/]+)\/);\n\n      if(!match){\n        throw new Error(\n          'Abrí la página del producto para consultar disponibilidad.'\n        );\n      }\n\n      var product=await json(\n        base+'products\/'+match[1]+'.js'\n      );\n\n      Object.keys(SKU_POR_TALLE).forEach(function(size){\n        variants[size]=product.variants.find(function(v){\n          return String(v.sku || '').trim()===SKU_POR_TALLE[size];\n        });\n      });\n\n      if(!Object.values(variants).some(Boolean)){\n        throw new Error(\n          'No pudimos identificar los talles. Revisá las opciones del producto.'\n        );\n      }\n\n      loaded=true;\n\n      var urlId=new URLSearchParams(\n        location.search\n      ).get('variant');\n\n      var initial=Object.keys(variants).find(function(size){\n        return variants[size] \u0026\u0026\n          String(variants[size].id)===urlId;\n      });\n\n      if(!selected \u0026\u0026 initial){\n        selected=initial;\n      }\n\n      update();\n\n    }catch(error){\n      status.textContent=error.message;\n      buy.disabled=true;\n      buyLabel.textContent='Disponibilidad no disponible';\n    }\n  }\n\n  function money(cents,currency){\n    return new Intl.NumberFormat('es-UY',{\n      style:'currency',\n      currency:currency || 'UYU'\n    }).format(cents\/100);\n  }\n\n  async function openFallback(){\n    var content=modal.querySelector('[data-content]');\n    content.textContent='Cargando tu carrito…';\n\n    if(!modal.open){\n      modal.showModal();\n    }\n\n    try{\n      var cart=await json(base+'cart.js');\n      var list=document.createElement('ul');\n\n      cart.items.forEach(function(item){\n        var li=document.createElement('li');\n        var title=document.createElement('strong');\n        var detail=document.createElement('div');\n\n        title.textContent=item.product_title || item.title;\n\n        var variant=\n          item.variant_title \u0026\u0026\n          item.variant_title!=='Default Title'\n            ? item.variant_title+' · '\n            : '';\n\n        detail.textContent=\n          variant+\n          'Cantidad: '+item.quantity+\n          ' · '+money(item.final_line_price,cart.currency);\n\n        li.append(title,detail);\n        list.appendChild(li);\n      });\n\n      var subtotal=document.createElement('p');\n\n      subtotal.textContent=\n        'Subtotal: '+money(cart.total_price,cart.currency);\n\n      content.replaceChildren(list,subtotal);\n\n    }catch(error){\n      content.textContent=\n        'El producto se agregó. Podés revisar tu compra desde “Ver carrito”.';\n    }\n  }\n\n  buy.addEventListener('click',async function(){\n    if(busy) return;\n\n    var variant=variants[selected];\n\n    if(!loaded || !variant || !variant.available){\n      return;\n    }\n\n    busy=true;\n    update();\n\n    buyLabel.textContent='Agregando…';\n    status.textContent='';\n\n    var added=false;\n\n    try{\n      var drawer=document.querySelector('cart-drawer');\n\n      var nativeDrawer=\n        drawer \u0026\u0026\n        typeof drawer.getSectionsToRender==='function' \u0026\u0026\n        typeof drawer.renderContents==='function';\n\n      var payload={\n        items:[{\n          id:variant.id,\n          quantity:1\n        }]\n      };\n\n      if(nativeDrawer){\n        var sections=drawer.getSectionsToRender().map(function(s){\n          return s.id;\n        });\n\n        if(sections.length){\n          payload.sections=sections.slice(0,5);\n        }\n\n        payload.sections_url=location.pathname;\n\n        if(typeof drawer.setActiveElement==='function'){\n          drawer.setActiveElement(buy);\n        }\n      }\n\n      var result=await json(base+'cart\/add.js',{\n        method:'POST',\n        headers:{\n          'Content-Type':'application\/json',\n          'Accept':'application\/json'\n        },\n        body:JSON.stringify(payload)\n      });\n\n      added=true;\n      buyLabel.textContent='Agregado al carrito';\n\n      status.textContent=\n        'Se agregó el talle '+selected+' al carrito.';\n\n      try{\n        if(nativeDrawer \u0026\u0026 result.sections){\n          drawer.classList.remove('is-empty');\n          drawer.renderContents(result);\n        }else{\n          await openFallback();\n        }\n      }catch(drawerError){\n        await openFallback();\n      }\n\n    }catch(error){\n      status.textContent=added\n        ? 'El producto se agregó. Revisá tu carrito antes de agregarlo otra vez.'\n        : error.message;\n\n    }finally{\n      setTimeout(function(){\n        busy=false;\n        update();\n      },added ? 1800 : 0);\n    }\n  });\n\n  loadVariants();\n})();\n\u003c\/script\u003e\u003cp\u003e\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e","brand":"Clara (Yiwu Mayhome Import\u0026export Co.,ltd) (0.0 Unidades - 119,38 $)","offers":[{"title":"S","offer_id":67951835709754,"sku":"3105-1","price":590.0,"currency_code":"UYU","in_stock":false},{"title":"M","offer_id":67951835644218,"sku":"3105-2","price":590.0,"currency_code":"UYU","in_stock":false},{"title":"L","offer_id":67951835676986,"sku":"3105-3","price":590.0,"currency_code":"UYU","in_stock":false},{"title":"XL","offer_id":67951835742522,"sku":"3105-4","price":590.0,"currency_code":"UYU","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0758\/3698\/1562\/files\/Portada_bd66eb2a-b633-466c-a7e2-4c872698c311.png?v=1794250911","url":"https:\/\/milgenialuruguay.com\/products\/canilleras-de-futbol-largas","provider":"MilGenial Uruguay","version":"1.0","type":"link"}