{"product_id":"xtk_2027","title":"XTK","description":"\u003cp\u003eDesarrollada para dominar los senderos con velocidad, precisión y confianza. XTK combina un cuadro de fibra de carbono con una plataforma moderna de montaña, ofreciendo una conducción ágil, eficiente y preparada para afrontar los desafíos del trail y el cross-country.\u003c\/p\u003e\n\u003cp\u003eEquipada con transmisión Shimano Deore de 12 velocidades, suspensión de aire SR Suntour con bloqueo remoto y dropper post, XTK ofrece el equilibrio ideal entre rendimiento, control y capacidad para llevar cada rodada al siguiente nivel.\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e\n\n\u003cstyle\u003e\n\/* ===== Especificaciones XTK — sin marcos, fondos transparentes ===== *\/\n.xtk{\n  --xtk-line:#e3e8e6; --xtk-head:rgba(4,120,87,.07); --xtk-sub:#111614;\n  --xtk-txt:#111827; --xtk-mut:#6b7280;\n  --xtk-accent:#047857;        \/* esmeralda *\/\n  --xtk-accent-soft:rgba(4,120,87,.09);\n  --xtk-black:#111614;         \/* negro del cuadro *\/\n  all:initial;\n  display:block; container-type:inline-size;\n  box-sizing:border-box; width:100%; max-width:650px;\n  font-family:-apple-system,BlinkMacSystemFont,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif;\n  color:var(--xtk-txt); line-height:1.45; text-align:left;\n  background:transparent;\n}\n.xtk *,.xtk *::before,.xtk *::after{box-sizing:border-box}\n\n.xtk .xtk-title{\n  margin:0 0 4px; padding:0; font-size:19px; font-weight:700;\n  letter-spacing:.02em; line-height:1.25; text-transform:none;\n}\n.xtk .xtk-badge{\n  font-size:11px; font-weight:700; color:var(--xtk-accent);\n  letter-spacing:.08em; margin-left:8px; vertical-align:2px; white-space:nowrap;\n}\n.xtk .xtk-sub{margin:0 0 16px; padding:0; font-size:13px; color:var(--xtk-mut)}\n\n.xtk .xtk-switch{\n  display:flex; width:100%; flex-wrap:nowrap; gap:4px; padding:3px; margin:0 0 16px;\n  border:1px solid var(--xtk-line); border-radius:9px; background:transparent;\n  max-width:100%;\n}\n.xtk .xtk-switch button{\n  appearance:none; -webkit-appearance:none; margin:0;\n  border:1px solid var(--xtk-line);\n  background:rgba(0,0,0,.02); cursor:pointer; font-family:inherit; font-size:13px;\n  font-weight:600; color:var(--xtk-mut); letter-spacing:.04em; line-height:1;\n  padding:9px 0; border-radius:7px;\n  transition:background .16s,color .16s,border-color .16s;\n  text-transform:none; white-space:nowrap; min-width:0; flex:1 1 0;\n}\n.xtk .xtk-switch button:hover{\n  color:var(--xtk-txt); background:rgba(0,0,0,.05); border-color:#c9ccd2;\n}\n.xtk .xtk-switch button:focus-visible{outline:2px solid var(--xtk-accent); outline-offset:2px}\n.xtk .xtk-switch button[aria-selected=\"true\"]{\n  background:var(--xtk-accent);\n  color:#fff;\n  border-color:var(--xtk-accent);\n  font-weight:700;\n}\n@media (prefers-reduced-motion: reduce){\n  .xtk .xtk-switch button{transition:none}\n}\n\n.xtk .xtk-scroll{width:100%; max-width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch}\n\n\/* Tabla sin marcos: solo separadores horizontales *\/\n.xtk table{\n  width:100%; max-width:100%; table-layout:fixed;\n  border-collapse:collapse; border-spacing:0; border:0;\n  font-size:12.5px; background:transparent; margin:0;\n}\n.xtk thead th{\n  background:var(--xtk-head); text-align:left; padding:10px;\n  font-weight:600; font-size:12.5px; color:var(--xtk-txt);\n  border:0; border-bottom:2px solid var(--xtk-accent);\n  text-transform:none; letter-spacing:0;\n}\n.xtk th.xtk-c1,.xtk td.xtk-c1{width:36%}\n.xtk td{\n  padding:9px 10px; border:0; border-bottom:1px solid var(--xtk-line);\n  vertical-align:top; background:transparent; color:var(--xtk-txt); font-size:12.5px;\n  overflow-wrap:anywhere; word-break:normal; hyphens:auto;\n}\n.xtk td.xtk-c1{font-weight:600}\n.xtk tr.xtk-group td{\n  background:var(--xtk-black); color:#f3f6f5; font-weight:700;\n  font-size:11.5px; letter-spacing:.09em; padding:10px;\n  border:0; border-left:3px solid var(--xtk-accent);\n}\n.xtk tbody tr:not(.xtk-group):hover td{background:var(--xtk-accent-soft); transition:background .16s}\n.xtk td.xtk-c1{color:#0b3f31}\n\n\/* ===== Modo apilado (tarjetas) ===== *\/\n@container (max-width: 400px){\n  .xtk .xtk-scroll{overflow-x:visible}\n  .xtk table{table-layout:auto; border:0; display:block; width:100%}\n  .xtk thead{display:none}\n  .xtk tbody{display:block; width:100%}\n  .xtk tbody tr{display:block; width:100%; margin:0}\n\n  .xtk tbody tr:not(.xtk-group){\n    border:0; border-bottom:1px solid var(--xtk-line); padding:2px 0;\n  }\n  .xtk td{\n    display:block; width:100%; max-width:100%; min-width:0;\n    border:0; padding:7px 2px; white-space:normal;\n    overflow-wrap:break-word; word-break:break-word;\n  }\n  .xtk td.xtk-c1{\n    width:auto; font-size:10.5px; font-weight:700; letter-spacing:.06em;\n    color:var(--xtk-mut); padding-bottom:0; line-height:1.35;\n  }\n  .xtk td:not(.xtk-c1){padding-top:3px; padding-bottom:12px; line-height:1.5}\n\n  .xtk tbody tr.xtk-group{border:0; padding:0; margin:0}\n  .xtk tr.xtk-group td{\n    padding:10px 12px; line-height:1.3;\n    border:0; border-left:3px solid var(--xtk-accent);\n  }\n  .xtk tbody tr.xtk-group:not(:first-child) td{\n    border-top:14px solid transparent; background-clip:padding-box;\n  }\n\n  .xtk .xtk-title{font-size:17px; line-height:1.3}\n  .xtk .xtk-badge{display:inline-block; margin-left:0; margin-top:4px; vertical-align:baseline}\n  .xtk .xtk-sub{font-size:12.5px}\n  .xtk .xtk-switch{gap:6px}\n  .xtk .xtk-switch button{padding:10px 6px; font-size:12.5px; letter-spacing:.03em; text-align:center}\n}\n\n@supports not (container-type: inline-size){\n  @media (max-width: 420px){\n    .xtk .xtk-scroll{overflow-x:visible}\n    .xtk table{table-layout:auto; border:0; display:block; width:100%}\n    .xtk thead{display:none}\n    .xtk tbody{display:block; width:100%}\n    .xtk tbody tr{display:block; width:100%; margin:0}\n    .xtk tbody tr:not(.xtk-group){border:0; border-bottom:1px solid var(--xtk-line); padding:2px 0}\n    .xtk td{\n      display:block; width:100%; max-width:100%; min-width:0;\n      border:0; padding:7px 2px; white-space:normal;\n      overflow-wrap:break-word; word-break:break-word;\n    }\n    .xtk td.xtk-c1{\n      width:auto; font-size:10.5px; font-weight:700; letter-spacing:.06em;\n      color:var(--xtk-mut); padding-bottom:0; line-height:1.35;\n    }\n    .xtk td:not(.xtk-c1){padding-top:3px; padding-bottom:12px; line-height:1.5}\n    .xtk tbody tr.xtk-group{border:0; padding:0; margin:0}\n    .xtk tr.xtk-group td{padding:10px 12px; line-height:1.3; border:0; border-left:3px solid var(--xtk-accent)}\n    .xtk tbody tr.xtk-group:not(:first-child) td{\n      border-top:14px solid transparent; background-clip:padding-box;\n    }\n    .xtk .xtk-title{font-size:17px; line-height:1.3}\n    .xtk .xtk-badge{display:inline-block; margin-left:0; margin-top:4px; vertical-align:baseline}\n    .xtk .xtk-sub{font-size:12.5px}\n    .xtk .xtk-switch{gap:6px}\n    .xtk .xtk-switch button{padding:10px 6px; font-size:12.5px; letter-spacing:.03em; text-align:center}\n  }\n}\n\n@media print{\n  .xtk .xtk-switch{display:none}\n  .xtk td,.xtk th{font-size:10px}\n}\n\u003c\/style\u003e\n\n\u003cdiv class=\"xtk\" id=\"xtk-specs\"\u003e\n  \u003ch2 class=\"xtk-title\"\u003eESPECIFICACIONES XTK \u003cspan class=\"xtk-badge\" data-xtk=\"badge\"\u003eTALLA S\u003c\/span\u003e\n\u003c\/h2\u003e\n  \u003cp class=\"xtk-sub\"\u003eMTB 29\" · Fibra de carbono · Tallas S · M · L\u003c\/p\u003e\n\n  \u003cdiv class=\"xtk-switch\" role=\"tablist\" aria-label=\"Talla\"\u003e\n    \u003cbutton type=\"button\" role=\"tab\" data-xtk-k=\"s\" aria-selected=\"true\" aria-controls=\"xtk-panel\"\u003eS\u003c\/button\u003e\n    \u003cbutton type=\"button\" role=\"tab\" data-xtk-k=\"m\" aria-selected=\"false\" aria-controls=\"xtk-panel\" tabindex=\"-1\"\u003eM\u003c\/button\u003e\n    \u003cbutton type=\"button\" role=\"tab\" data-xtk-k=\"l\" aria-selected=\"false\" aria-controls=\"xtk-panel\" tabindex=\"-1\"\u003eL\u003c\/button\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"xtk-scroll\" id=\"xtk-panel\" role=\"tabpanel\"\u003e\n    \u003ctable\u003e\n      \u003cthead\u003e\n        \u003ctr\u003e\n\u003cth class=\"xtk-c1\" scope=\"col\"\u003eCategoría\u003c\/th\u003e\n\u003cth scope=\"col\"\u003eEspecificación\u003c\/th\u003e\n\u003c\/tr\u003e\n      \u003c\/thead\u003e\n      \u003ctbody data-xtk=\"body\"\u003e\u003c\/tbody\u003e\n    \u003c\/table\u003e\n  \u003c\/div\u003e\n\u003c\/div\u003e\n\n\u003cscript\u003e\n(function(){\n  var root = document.getElementById('xtk-specs');\n  if(!root || root.dataset.xtkInit) return;\n  root.dataset.xtkInit = '1';\n\n  \/* Especificación común a las tres tallas.\n     Los valores que cambian por talla se marcan con {clave} y se\n     sustituyen desde VAR. *\/\n  var BASE = [\n    {t:'h', c:'CUADRO'},\n    {t:'r', c:'CUADRO', v:'CUADRO MTB 29\", XTK, CARBON, BOOST, COLOR ESMERALDA - NEGRO'},\n    {t:'r', c:'HORQUILLA DELANTERA', v:'SUSPENSIÓN SR SUNTOUR, XCR32-BOOST-AIR 29\", MAGNESIO, RECORRIDO 100MM, BLOQUEO REMOTO, COLOR NEGRO'},\n    {t:'r', c:'SUSPENSIÓN TRASERA', v:'-'},\n    {t:'r', c:'EFFECTIVE TOP TUBE LENGHT', v:'{ett}'},\n    {t:'r', c:'HEAD TUBE LENGHT', v:'115 MM'},\n    {t:'r', c:'SEAT TUBE LENGHT', v:'{stt}'},\n    {t:'r', c:'WHEELBASE', v:'{wb}'},\n\n    {t:'h', c:'FRENOS'},\n    {t:'r', c:'FRENO TRASERO', v:'FRENO DE DISCO TRASERO SHIMANO BR-MT200, NEGRO'},\n    {t:'r', c:'FRENO DELANTERO', v:'FRENO DE DISCO DELANTERO SHIMANO BR-MT200, NEGRO'},\n    {t:'r', c:'ROTOR TRASERO', v:'ROTOR PARA FRENO DE DISCO SHIMANO, SM-RT10, S 160 MM'},\n    {t:'r', c:'ROTOR DELANTERO', v:'ROTOR PARA FRENO DE DISCO SHIMANO, SM-RT10, M 180 MM'},\n\n    {t:'h', c:'TRANSMISIÓN'},\n    {t:'r', c:'MANDO IZQUIERDO', v:'-'},\n    {t:'r', c:'MANDO DERECHO', v:'PALANCA DERECHA DE CAMBIO SHIMANO, DEORE, SL-M6100-R, 12V'},\n    {t:'r', c:'DESVIADOR TRASERO', v:'DESVIADOR TRASERO SHIMANO, DEORE, RD-M6100, MONTAJE DIRECTO'},\n    {t:'r', c:'DESVIADOR DELANTERO', v:'-'},\n    {t:'r', c:'MULTIPLICACIÓN', v:'MULTIPLICACIÓN SHIMANO, DEORE, FC-MT510-1, 32T, 175 MM'},\n    {t:'r', c:'JUEGO DE CENTRO', v:'JUEGO DE CENTRO SHIMANO, BB-MT500-PA, PRESSFIT'},\n    {t:'r', c:'CASSETTE', v:'CASSETTE SHIMANO, DEORE, CS-M6100-12, 10-12-14-16-18-21-24-28-33-39-45-51T'},\n    {t:'r', c:'CADENA', v:'CADENA KMC X12, 118 LINKS'},\n    {t:'r', c:'PEDALES', v:'PEDALES 9\/16\", PVC, NEGRO'},\n\n    {t:'h', c:'RUEDAS'},\n    {t:'r', c:'RINES', v:'RINES VITAL, DOBLE PARED, F:32H\/R:32H, ALUMINIO, NEGRO'},\n    {t:'r', c:'LLANTAS', v:'LLANTAS CONTINENTAL, TRINOTAL TRAILRAP, 29\" X 2.40\"'},\n    {t:'r', c:'MAZA DELANTERA', v:'MAZA DELANTERA SHIMANO DEORE, HB-MT400-B, 32H'},\n    {t:'r', c:'MAZA TRASERA', v:'MAZA TRASERA SHIMANO DEORE, FH-MT410-B, 32H, 12 VELOCIDADES'},\n\n    {t:'h', c:'DIRECCIÓN'},\n    {t:'r', c:'JUEGO DE DIRECCIÓN', v:'JUEGO DE DIRECCIÓN SEMI INTEGRADO, SRS 1 1\/8\", NEGRO'},\n    {t:'r', c:'MANUBRIO', v:'MANUBRIO FSA VDRIVE, BB: 31.8 MM W: 740 MM, ALUMINIO, NEGRO'},\n    {t:'r', c:'POSTE DE MANUBRIO', v:'{stem}'},\n    {t:'r', c:'PUÑOS', v:'PUÑOS, NEGRO'},\n\n    {t:'h', c:'ASIENTO'},\n    {t:'r', c:'ASIENTO', v:'ASIENTO KRBO, NEGRO'},\n    {t:'r', c:'POSTE DE ASIENTO', v:'{dropper}'}\n  ];\n\n  var VAR = {\n    s: {\n      ett:'578.3 MM', stt:'368 MM', wb:'1103.7 MM',\n      stem:'POSTE DE MANUBRIO FSA COMET, BB: 31.8 MM E: 60 MM +-7D, ALUMINIO, NEGRO',\n      dropper:'POSTE DROPPER, 27.2, L:390, RECORRIDO 100MM, ALUMINIO, NEGRO BLOQUEO REMOTO'\n    },\n    m: {\n      ett:'583.5 MM', stt:'419 MM', wb:'1109 MM',\n      stem:'POSTE DE MANUBRIO FSA COMET, BB: 31.8 MM E: 60 MM +-7D, ALUMINIO, NEGRO',\n      dropper:'POSTE DROPPER, 27.2, L:435, RECORRIDO 100MM, ALUMINIO, NEGRO BLOQUEO REMOTO'\n    },\n    l: {\n      ett:'593.4 MM', stt:'470 MM', wb:'1118.8 MM',\n      stem:'POSTE DE MANUBRIO FSA COMET, BB: 31.8 MM E: 70 MM +-7D, ALUMINIO, NEGRO',\n      dropper:'POSTE DROPPER, 27.2, L:435, RECORRIDO 100MM, ALUMINIO, NEGRO BLOQUEO REMOTO'\n    }\n  };\n\n  var LABEL = {s:'TALLA S', m:'TALLA M', l:'TALLA L'};\n  var body  = root.querySelector('[data-xtk=\"body\"]');\n  var badge = root.querySelector('[data-xtk=\"badge\"]');\n\n  function esc(s){\n    return String(s).replace(\/[\u0026\u003c\u003e\"]\/g, function(c){\n      return {'\u0026':'\u0026amp;','\u003c':'\u0026lt;','\u003e':'\u0026gt;','\"':'\u0026quot;'}[c];\n    });\n  }\n\n  function render(k){\n    var vars = VAR[k];\n    if(!vars) return;\n    var out = '';\n    for(var i=0;i\u003cBASE.length;i++){\n      var r = BASE[i];\n      if(r.t === 'h'){\n        out += '\u003ctr class=\"xtk-group\"\u003e\u003ctd colspan=\"2\"\u003e' + esc(r.c) + '\u003c\/td\u003e\u003c\/tr\u003e';\n      }else{\n        var v = r.v.replace(\/\\{(\\w+)\\}\/g, function(_, key){ return vars[key] || ''; });\n        out += '\u003ctr\u003e\u003ctd class=\"xtk-c1\"\u003e' + esc(r.c) + '\u003c\/td\u003e\u003ctd\u003e' + esc(v) + '\u003c\/td\u003e\u003c\/tr\u003e';\n      }\n    }\n    body.innerHTML = out;\n    badge.textContent = LABEL[k] || k.toUpperCase();\n  }\n\n  var btns = root.querySelectorAll('.xtk-switch button');\n\n  function select(b){\n    Array.prototype.forEach.call(btns, function(x){\n      x.setAttribute('aria-selected','false'); x.tabIndex = -1;\n    });\n    b.setAttribute('aria-selected','true'); b.tabIndex = 0;\n    render(b.getAttribute('data-xtk-k'));\n  }\n\n  Array.prototype.forEach.call(btns, function(b, i){\n    b.addEventListener('click', function(e){ e.preventDefault(); select(b); });\n    b.addEventListener('keydown', function(e){\n      var d = e.key === 'ArrowRight' ? 1 : e.key === 'ArrowLeft' ? -1 : 0;\n      if(!d) return;\n      e.preventDefault();\n      var n = btns[(i + d + btns.length) % btns.length];\n      select(n); n.focus();\n    });\n  });\n\n  render('s');\n})();\n\u003c\/script\u003e","brand":"KRBO","offers":[{"title":"Deore \/ S \/ Naranja\/Esmeralda","offer_id":43587529211971,"sku":null,"price":44990.0,"currency_code":"MXN","in_stock":true},{"title":"Deore \/ S \/ Grafito\/negro","offer_id":43587529277507,"sku":null,"price":44990.0,"currency_code":"MXN","in_stock":true},{"title":"Deore \/ M \/ Naranja\/Esmeralda","offer_id":43587529343043,"sku":null,"price":44990.0,"currency_code":"MXN","in_stock":true},{"title":"Deore \/ M \/ Grafito\/negro","offer_id":43587529408579,"sku":null,"price":44990.0,"currency_code":"MXN","in_stock":true},{"title":"Deore \/ L \/ Naranja\/Esmeralda","offer_id":43587529474115,"sku":null,"price":44990.0,"currency_code":"MXN","in_stock":true},{"title":"Deore \/ L \/ Grafito\/negro","offer_id":43587529539651,"sku":null,"price":44990.0,"currency_code":"MXN","in_stock":true},{"title":"Deore Di2 \/ S \/ Naranja\/Esmeralda","offer_id":43588404346947,"sku":null,"price":54990.0,"currency_code":"MXN","in_stock":true},{"title":"Deore Di2 \/ S \/ Grafito\/negro","offer_id":43588404379715,"sku":null,"price":54990.0,"currency_code":"MXN","in_stock":true},{"title":"Deore Di2 \/ M \/ Naranja\/Esmeralda","offer_id":43588404412483,"sku":null,"price":54990.0,"currency_code":"MXN","in_stock":true},{"title":"Deore Di2 \/ M \/ Grafito\/negro","offer_id":43588404445251,"sku":null,"price":54990.0,"currency_code":"MXN","in_stock":true},{"title":"Deore Di2 \/ L \/ Naranja\/Esmeralda","offer_id":43588404478019,"sku":null,"price":54990.0,"currency_code":"MXN","in_stock":true},{"title":"Deore Di2 \/ L \/ Grafito\/negro","offer_id":43588404510787,"sku":null,"price":54990.0,"currency_code":"MXN","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0583\/6206\/9059\/files\/310441_1.jpg?v=1784905541","url":"https:\/\/alubike.com.mx\/products\/xtk_2027","provider":"Alubike","version":"1.0","type":"link"}