{"product_id":"panos-magicos-de-limpieza-x-10-unidades","title":"Paños magicos de limpieza x 10 unidades","description":"\u003cstyle data-tutrend-lp-vars\u003e.tt-lp { --lp-bg: #F6F6F7; --lp-text: #15151F; --lp-text2: #5B5B66; --lp-surface: #FFFFFF; --lp-surface-border: rgba(0,0,0,0.06); --lp-hairline: rgba(0,0,0,0.10); --lp-accent: #2563EB; --lp-accent-ink: #FFFFFF; --lp-price: #2563EB; --lp-font: Arial, Helvetica, sans-serif; --lp-radius: 11px; --lp-cta-radius: 9px; --lp-pill-radius: 8px; }\n.tt-lp.lp-tpl--cards {}\u003c\/style\u003e\n\u003c!-- TuTrend landing start --\u003e\n\u003cdiv class=\"tt-lp lp-tpl--cards\"\u003e\n\u003cdiv class=\"tt-lp-hero-split\"\u003e\n\u003cdiv class=\"tt-lp-hero-media\"\u003e\n\u003cdiv class=\"tt-lp-hero-carousel\" data-tt-carousel data-tt-carousel-scroll data-slide-count=\"6\"\u003e\n\u003cdiv class=\"tt-lp-hero-carousel-track\" data-tt-carousel-track\u003e\n\u003cdiv class=\"tt-lp-hero-carousel-slide\" data-tt-slide-idx=\"0\" data-active=\"true\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0719\/1465\/1718\/files\/hero_b1_ffac2e4c-a421-4109-96b7-f290c1f826f4.webp?v=1784089948\" alt=\"Paños magicos de limpieza x 10 unidades\" loading=\"eager\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"tt-lp-hero-carousel-slide\" data-tt-slide-idx=\"1\" data-active=\"false\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0719\/1465\/1718\/files\/ease_of_use_b1.webp?v=1784089948\" alt=\"Paños magicos de limpieza x 10 unidades\" loading=\"lazy\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"tt-lp-hero-carousel-slide\" data-tt-slide-idx=\"2\" data-active=\"false\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0719\/1465\/1718\/files\/benefits_env_b1_9013196a-18bd-4d2e-a05e-5f7a8c215d8a.webp?v=1784089948\" alt=\"Paños magicos de limpieza x 10 unidades\" loading=\"lazy\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"tt-lp-hero-carousel-slide\" data-tt-slide-idx=\"3\" data-active=\"false\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0719\/1465\/1718\/files\/product_angles_b1_773f5cf7-378a-4f12-bd07-0247510e4cd0.webp?v=1784089948\" alt=\"Paños magicos de limpieza x 10 unidades\" loading=\"lazy\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"tt-lp-hero-carousel-slide\" data-tt-slide-idx=\"4\" data-active=\"false\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0719\/1465\/1718\/files\/materials_quality_b1.webp?v=1784089948\" alt=\"Paños magicos de limpieza x 10 unidades\" loading=\"lazy\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"tt-lp-hero-carousel-slide\" data-tt-slide-idx=\"5\" data-active=\"false\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0719\/1465\/1718\/files\/spec_sheet_b1.webp?v=1784089948\" alt=\"Paños magicos de limpieza x 10 unidades\" loading=\"lazy\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cbutton type=\"button\" class=\"tt-lp-hero-carousel-arrow tt-lp-hero-carousel-arrow--prev\" data-tt-carousel-prev aria-label=\"Imagen anterior\"\u003e‹\u003c\/button\u003e\u003cbutton type=\"button\" class=\"tt-lp-hero-carousel-arrow tt-lp-hero-carousel-arrow--next\" data-tt-carousel-next aria-label=\"Imagen siguiente\"\u003e›\u003c\/button\u003e\u003cdiv class=\"tt-lp-hero-carousel-thumbs\" data-tt-carousel-dots\u003e\n\u003cbutton type=\"button\" class=\"tt-lp-hero-carousel-thumb\" data-tt-slide-idx=\"0\" data-active=\"true\" aria-label=\"Ver imagen 1\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0719\/1465\/1718\/files\/hero_b1_ffac2e4c-a421-4109-96b7-f290c1f826f4.webp?v=1784089948\" alt=\"\" loading=\"lazy\"\u003e\u003c\/button\u003e\u003cbutton type=\"button\" class=\"tt-lp-hero-carousel-thumb\" data-tt-slide-idx=\"1\" data-active=\"false\" aria-label=\"Ver imagen 2\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0719\/1465\/1718\/files\/ease_of_use_b1.webp?v=1784089948\" alt=\"\" loading=\"lazy\"\u003e\u003c\/button\u003e\u003cbutton type=\"button\" class=\"tt-lp-hero-carousel-thumb\" data-tt-slide-idx=\"2\" data-active=\"false\" aria-label=\"Ver imagen 3\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0719\/1465\/1718\/files\/benefits_env_b1_9013196a-18bd-4d2e-a05e-5f7a8c215d8a.webp?v=1784089948\" alt=\"\" loading=\"lazy\"\u003e\u003c\/button\u003e\u003cbutton type=\"button\" class=\"tt-lp-hero-carousel-thumb\" data-tt-slide-idx=\"3\" data-active=\"false\" aria-label=\"Ver imagen 4\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0719\/1465\/1718\/files\/product_angles_b1_773f5cf7-378a-4f12-bd07-0247510e4cd0.webp?v=1784089948\" alt=\"\" loading=\"lazy\"\u003e\u003c\/button\u003e\u003cbutton type=\"button\" class=\"tt-lp-hero-carousel-thumb\" data-tt-slide-idx=\"4\" data-active=\"false\" aria-label=\"Ver imagen 5\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0719\/1465\/1718\/files\/materials_quality_b1.webp?v=1784089948\" alt=\"\" loading=\"lazy\"\u003e\u003c\/button\u003e\u003cbutton type=\"button\" class=\"tt-lp-hero-carousel-thumb\" data-tt-slide-idx=\"5\" data-active=\"false\" aria-label=\"Ver imagen 6\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0719\/1465\/1718\/files\/spec_sheet_b1.webp?v=1784089948\" alt=\"\" loading=\"lazy\"\u003e\u003c\/button\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tt-lp-hero-info\"\u003e\n\u003cdiv class=\"tt-lp-stars\"\u003e\n\u003cspan class=\"tt-lp-stars-row\"\u003e★★★★★\u003c\/span\u003e\u003cspan class=\"tt-lp-stars-text\"\u003e4.8\/5 · Más de 200 reseñas\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tt-lp-hero-text\"\u003e\n\u003ch1 class=\"tt-lp-hero-title\"\u003ePaños magicos de limpieza x 10 unidades\u003c\/h1\u003e\n\u003cp class=\"tt-lp-hero-subtitle\"\u003eDescubre el poder del tejido de diamante para eliminar grasa y óxido en segundos sin químicos fuertes.\u003c\/p\u003e\n\u003cul class=\"tt-lp-hero-checks\"\u003e\n\u003cli class=\"tt-lp-hero-check\"\u003e\u003cspan\u003e✨ Limpieza mágica\u003c\/span\u003e\u003c\/li\u003e\n\u003cli class=\"tt-lp-hero-check\"\u003e\u003cspan\u003e💎 Tejido reforzado\u003c\/span\u003e\u003c\/li\u003e\n\u003cli class=\"tt-lp-hero-check\"\u003e\u003cspan\u003e🍳 Cuida tus ollas\u003c\/span\u003e\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tt-lp-offer\" data-tt-qty=\"1\"\u003e\n\u003cdiv class=\"tt-lp-offer-head\"\u003e\n\u003cspan class=\"tt-lp-offer-head-line\"\u003e\u003c\/span\u003e\u003cspan\u003eOFERTA ESPECIAL\u003c\/span\u003e\u003cspan class=\"tt-lp-offer-head-line\"\u003e\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cbutton type=\"button\" class=\"tt-lp-offer-opt is-selected\" data-tt-opt-qty=\"1\"\u003e\u003cspan class=\"tt-lp-offer-radio\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003cspan class=\"tt-lp-offer-label\"\u003eCompra 1 paquete\u003c\/span\u003e\u003cspan class=\"tt-lp-offer-prices\"\u003e\u003cspan class=\"tt-lp-offer-now\"\u003e$79.900\u003c\/span\u003e\u003cspan class=\"tt-lp-offer-before\"\u003e$139.900\u003c\/span\u003e\u003c\/span\u003e\u003c\/button\u003e\u003cbutton type=\"button\" class=\"tt-lp-offer-opt\" data-tt-opt-qty=\"2\"\u003e\u003cspan class=\"tt-lp-offer-flag\"\u003e¡Solo hoy!\u003c\/span\u003e\u003cspan class=\"tt-lp-offer-radio\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003cspan class=\"tt-lp-offer-label\"\u003eCompra 2 paquetes\u003c\/span\u003e\u003cspan class=\"tt-lp-offer-prices\"\u003e\u003cspan class=\"tt-lp-offer-now\"\u003e$119.850\u003c\/span\u003e\u003cspan class=\"tt-lp-offer-before\"\u003e$279.800\u003c\/span\u003e\u003c\/span\u003e\u003c\/button\u003e\u003cbutton type=\"button\" class=\"tt-lp-offer-opt\" data-tt-opt-qty=\"3\"\u003e\u003cspan class=\"tt-lp-offer-flag\"\u003e⭐ Mejor precio\u003c\/span\u003e\u003cspan class=\"tt-lp-offer-radio\" aria-hidden=\"true\"\u003e\u003c\/span\u003e\u003cspan class=\"tt-lp-offer-label\"\u003eCompra 3 paquetes\u003c\/span\u003e\u003cspan class=\"tt-lp-offer-prices\"\u003e\u003cspan class=\"tt-lp-offer-now\"\u003e$155.805\u003c\/span\u003e\u003cspan class=\"tt-lp-offer-before\"\u003e$419.700\u003c\/span\u003e\u003c\/span\u003e\u003c\/button\u003e\u003cp class=\"tt-lp-offer-hint\"\u003eElige 2 o más paquetes y desbloquea la garantía por 1 año 👇\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tt-lp-perks\"\u003e\n\u003cdiv class=\"tt-lp-perk is-unlocked\"\u003e\n\u003cspan class=\"tt-lp-perk-flag tt-lp-perk-flag--unlocked\"\u003eINCLUIDO\u003c\/span\u003e\u003cspan class=\"tt-lp-perk-icon\"\u003e💵\u003c\/span\u003e\u003cspan class=\"tt-lp-perk-caption\"\u003ePago contra entrega\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tt-lp-perk is-unlocked\"\u003e\n\u003cspan class=\"tt-lp-perk-flag tt-lp-perk-flag--unlocked\"\u003eGRATIS\u003c\/span\u003e\u003cspan class=\"tt-lp-perk-icon\"\u003e🚚\u003c\/span\u003e\u003cspan class=\"tt-lp-perk-caption\"\u003eEnvío gratis a toda Colombia\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tt-lp-perk\" data-tt-perk-locked=\"\"\u003e\n\u003cspan class=\"tt-lp-perk-flag tt-lp-perk-flag--locked\"\u003eCON 2+ UNIDS.\u003c\/span\u003e\u003cspan class=\"tt-lp-perk-flag tt-lp-perk-flag--unlocked\"\u003eGRATIS\u003c\/span\u003e\u003cspan class=\"tt-lp-perk-icon\"\u003e🛡️\u003cspan class=\"tt-lp-perk-lock\" aria-hidden=\"true\"\u003e🔒\u003c\/span\u003e\u003c\/span\u003e\u003cspan class=\"tt-lp-perk-caption\"\u003eGarantía de satisfacción por 1 año\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tt-lp-cta-wrap\"\u003e\u003ca href=\"\/rsi-btn-hook\" class=\"tt-lp-cta-btn\"\u003eCOMPRAR AHORA | PAGA EN CASA 📦\u003c\/a\u003e\u003c\/div\u003e\n\u003cp class=\"tt-lp-return-note\"\u003e✓ 100 días de devolución sin complicaciones\u003c\/p\u003e\n\u003cdiv class=\"tt-lp-stock\"\u003e\n\u003cdiv class=\"tt-lp-stock-track\"\u003e\u003cdiv class=\"tt-lp-stock-fill\" style=\"width:90%\"\u003e\u003c\/div\u003e\u003c\/div\u003e\n\u003cdiv class=\"tt-lp-stock-row\"\u003e\n\u003cspan\u003e🔥 Quedan pocas unidades\u003c\/span\u003e\u003cspan class=\"tt-lp-stock-pct\"\u003e90% vendido\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tt-lp-mini-carousel\" data-tt-mini-carousel\u003e\n\u003cdiv class=\"tt-lp-mini-track\" data-tt-mini-track\u003e\n\u003cdiv class=\"tt-lp-mini-slide\"\u003e\u003cdiv class=\"tt-lp-mini-review\"\u003e\n\u003cp class=\"tt-lp-mini-review-body\"\u003e“Increíble, mis ollas de acero que estaban negras por debajo volvieron a brillar en un momento y lo mejor es que no me dolió la mano restregando.”\u003c\/p\u003e\n\u003cdiv class=\"tt-lp-mini-review-meta\"\u003e\n\u003cspan class=\"tt-lp-mini-review-name\"\u003eJavier Vargas H.\u003c\/span\u003e\u003cspan class=\"tt-lp-mini-review-stars\"\u003e★★★★★\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\u003c\/div\u003e\n\u003cdiv class=\"tt-lp-mini-slide\"\u003e\u003cdiv class=\"tt-lp-mini-review\"\u003e\n\u003cp class=\"tt-lp-mini-review-body\"\u003e“Ya no compro más esponjas de brillo que se oxidan y huelen feo. Estos paños se lavan fácil y quitan la grasa de la estufa súper rápido.”\u003c\/p\u003e\n\u003cdiv class=\"tt-lp-mini-review-meta\"\u003e\n\u003cspan class=\"tt-lp-mini-review-name\"\u003eCarlos Castaño V.\u003c\/span\u003e\u003cspan class=\"tt-lp-mini-review-stars\"\u003e★★★★\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\u003c\/div\u003e\n\u003cdiv class=\"tt-lp-mini-slide\"\u003e\u003cdiv class=\"tt-lp-mini-review\"\u003e\n\u003cp class=\"tt-lp-mini-review-body\"\u003e“Me encantó que vienen 10, me sirven para el baño y la cocina. No rayan el vidrio de la estufa y quitan las manchas de agua del lavamanos.”\u003c\/p\u003e\n\u003cdiv class=\"tt-lp-mini-review-meta\"\u003e\n\u003cspan class=\"tt-lp-mini-review-name\"\u003eYeison Toro Echeverri\u003c\/span\u003e\u003cspan class=\"tt-lp-mini-review-stars\"\u003e★★★★★\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tt-lp-mini-nav\"\u003e\n\u003cbutton type=\"button\" class=\"tt-lp-mini-arrow\" data-tt-mini-prev aria-label=\"Reseña anterior\"\u003e‹\u003c\/button\u003e\u003cdiv class=\"tt-lp-mini-dots\" data-tt-mini-dots\u003e\n\u003cbutton type=\"button\" class=\"tt-lp-mini-dot\" data-tt-mini-i=\"0\" data-active=\"true\" aria-label=\"Reseña 1\"\u003e\u003c\/button\u003e\u003cbutton type=\"button\" class=\"tt-lp-mini-dot\" data-tt-mini-i=\"1\" data-active=\"false\" aria-label=\"Reseña 2\"\u003e\u003c\/button\u003e\u003cbutton type=\"button\" class=\"tt-lp-mini-dot\" data-tt-mini-i=\"2\" data-active=\"false\" aria-label=\"Reseña 3\"\u003e\u003c\/button\u003e\n\u003c\/div\u003e\n\u003cbutton type=\"button\" class=\"tt-lp-mini-arrow\" data-tt-mini-next aria-label=\"Reseña siguiente\"\u003e›\u003c\/button\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tt-lp-info\"\u003e\n\u003cdetails class=\"tt-lp-info-item\"\u003e\u003csummary class=\"tt-lp-info-q\"\u003e\u003cspan class=\"tt-lp-info-icon\" aria-hidden=\"true\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003ccircle cx=\"12\" cy=\"12\" r=\"9\"\u003e\u003c\/circle\u003e\u003cpath d=\"M9.4 9.6a2.7 2.7 0 1 1 3.7 2.5c-.8.32-1.1.84-1.1 1.7\"\u003e\u003c\/path\u003e\u003ccircle cx=\"12\" cy=\"16.8\" r=\"0.5\" fill=\"currentColor\" stroke=\"none\"\u003e\u003c\/circle\u003e\u003c\/svg\u003e\u003c\/span\u003e\u003cspan class=\"tt-lp-info-t\"\u003eModo de uso\u003c\/span\u003e\u003c\/summary\u003e\u003cdiv class=\"tt-lp-info-a\"\u003e\n\u003cp\u003e\u003cstrong\u003ePaso 1: Humedece el paño mágico.\u003c\/strong\u003e Moja el paño con un poco de agua y, si prefieres, una gota de jabón suave para activar su tecnología.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003ePaso 2: Frota sobre la superficie.\u003c\/strong\u003e Pasa el paño con movimientos circulares sobre la grasa u óxido; verás cómo la rejilla levanta la suciedad sin rayar.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003ePaso 3: Enjuaga y disfruta.\u003c\/strong\u003e Pasa un poco de agua para retirar los residuos y admira cómo tus ollas recuperan su brillo original de inmediato.\u003c\/p\u003e\n\u003c\/div\u003e\u003c\/details\u003e\u003cdetails class=\"tt-lp-info-item\"\u003e\u003csummary class=\"tt-lp-info-q\"\u003e\u003cspan class=\"tt-lp-info-icon\" aria-hidden=\"true\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M9 3h6M10 3v6l-5 8a2 2 0 0 0 1.7 3h10.6a2 2 0 0 0 1.7-3l-5-8V3\"\u003e\u003c\/path\u003e\u003cpath d=\"M7.5 14h9\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/span\u003e\u003cspan class=\"tt-lp-info-t\"\u003eMateriales\u003c\/span\u003e\u003c\/summary\u003e\u003cdiv class=\"tt-lp-info-a\"\u003e\n\u003cp\u003e\u003cstrong\u003eFibra Ultrafina.\u003c\/strong\u003e Permite una absorción máxima de líquidos y atrapa partículas de polvo minúsculas.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003ePVA de Alta Calidad.\u003c\/strong\u003e Aporta la resistencia necesaria para frotar superficies duras sin romperse ni desgastarse.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eTejido de Rejilla.\u003c\/strong\u003e Diseño geométrico que actúa como micro-cuchillas suaves para levantar grasa pegada.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eAlambre Suave Sintético.\u003c\/strong\u003e Refuerza la estructura del paño para eliminar óxido sin tener la agresividad del metal puro.\u003c\/p\u003e\n\u003c\/div\u003e\u003c\/details\u003e\u003cdetails class=\"tt-lp-info-item\"\u003e\u003csummary class=\"tt-lp-info-q\"\u003e\u003cspan class=\"tt-lp-info-icon\" aria-hidden=\"true\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M2 6h12v10H2z\"\u003e\u003c\/path\u003e\u003cpath d=\"M14 9h4l3 3v4h-7\"\u003e\u003c\/path\u003e\u003ccircle cx=\"6.5\" cy=\"17.5\" r=\"1.8\"\u003e\u003c\/circle\u003e\u003ccircle cx=\"17.5\" cy=\"17.5\" r=\"1.8\"\u003e\u003c\/circle\u003e\u003c\/svg\u003e\u003c\/span\u003e\u003cspan class=\"tt-lp-info-t\"\u003eEnvío y entrega\u003c\/span\u003e\u003c\/summary\u003e\u003cdiv class=\"tt-lp-info-a\"\u003e\u003cp\u003eEnvío gratis a toda Colombia con pago contra entrega: pides hoy y pagas cuando lo recibes en tu casa. Te compartimos la guía de seguimiento apenas tu pedido despache.\u003c\/p\u003e\u003c\/div\u003e\u003c\/details\u003e\u003cdetails class=\"tt-lp-info-item\"\u003e\u003csummary class=\"tt-lp-info-q\"\u003e\u003cspan class=\"tt-lp-info-icon\" aria-hidden=\"true\"\u003e\u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003crect x=\"5\" y=\"4.5\" width=\"14\" height=\"16.5\" rx=\"2\"\u003e\u003c\/rect\u003e\u003cpath d=\"M9 4.5V3h6v1.5\"\u003e\u003c\/path\u003e\u003cpath d=\"M9 13.2l2.1 2.1 4-4.2\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/span\u003e\u003cspan class=\"tt-lp-info-t\"\u003eSobre el producto\u003c\/span\u003e\u003c\/summary\u003e\u003cdiv class=\"tt-lp-info-a\"\u003e\n\u003cp\u003e✓ 10 Paños mágicos reforzados\u003c\/p\u003e\n\u003cp\u003e✓ Limpieza profunda sin rayones\u003c\/p\u003e\n\u003cp\u003e✓ Eliminación de grasa rebelde\u003c\/p\u003e\n\u003cp\u003e✓ Material ecológico y duradero\u003c\/p\u003e\n\u003cp\u003e✓ Ahorro en esponjas desechables\u003c\/p\u003e\n\u003cp\u003e✓ Manos protegidas siempre\u003c\/p\u003e\n\u003c\/div\u003e\u003c\/details\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003csection class=\"tt-lp-cause\"\u003e\u003ch2 class=\"tt-lp-cause-title\"\u003eTus ollas no están viejas. Solo tienen grasa acumulada.\u003c\/h2\u003e\n\u003cp class=\"tt-lp-cause-body\"\u003eLa verdadera razón por la que nada quita ese óxido es que las esponjas comunes solo rayan la superficie sin penetrar la suciedad. Los métodos tradicionales dañan el material de tus implementos y tus manos con químicos agresivos. Este paño usa tecnología de rejilla para levantar la mugre desde la base sin dejar un solo rasguño.\u003c\/p\u003e\n\u003cdiv class=\"tt-lp-cause-image\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0719\/1465\/1718\/files\/root_cause_b1_2153ebf1-2a88-4c62-be98-5c9f3c84a6f3.webp?v=1784089948\" alt=\"\" loading=\"lazy\"\u003e\u003c\/div\u003e\u003c\/section\u003e\n\u003csection class=\"tt-lp-solution\"\u003e\u003csection class=\"tt-lp-transition\"\u003e\u003cp class=\"tt-lp-transition-pre\"\u003eEs momento de \u003cspan\u003esimplificar tu limpieza\u003c\/span\u003e y proteger lo que más quieres en tu hogar.\u003c\/p\u003e\n\u003ch2 class=\"tt-lp-transition-main\"\u003ePor eso llegaron los paños mágicos de rejilla, la solución definitiva para que \u003cspan\u003etus ollas y estufa luzcan como nuevas\u003c\/span\u003e sin maltratar tus manos.\u003c\/h2\u003e\u003c\/section\u003e\u003cdiv class=\"tt-lp-solution-image\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0719\/1465\/1718\/files\/solution_reveal_b1_949cd419-26d4-4af6-ae5c-c24745961eff.webp?v=1784089948\" alt=\"\" loading=\"lazy\"\u003e\u003c\/div\u003e\u003c\/section\u003e\n\u003csection class=\"tt-lp-longform tt-lp-longform--benefits\"\u003e\u003cdiv class=\"tt-lp-longform-image\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0719\/1465\/1718\/files\/benefits_infographic_b1_4cb3d0f7-3304-4549-adb5-d6b65fc0087c.webp?v=1784089948\" alt=\"\" loading=\"lazy\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"tt-lp-longform-content\"\u003e\n\u003cp class=\"tt-lp-longform-body\"\u003eMás de 8.000 hogares en Colombia ya eliminaron el óxido difícil sin dañar sus manos.\u003c\/p\u003e\n\u003cul class=\"tt-lp-longform-bullets\"\u003e\n\u003cli class=\"tt-lp-longform-bullet\"\u003e\n\u003cspan class=\"tt-lp-longform-check\"\u003e✓\u003c\/span\u003e\u003cspan\u003eComposición de fibra ultrafina y PVA de alta resistencia.\u003c\/span\u003e\n\u003c\/li\u003e\n\u003cli class=\"tt-lp-longform-bullet\"\u003e\n\u003cspan class=\"tt-lp-longform-check\"\u003e✓\u003c\/span\u003e\u003cspan\u003eSeguro para todas las superficies, incluso teflón y acero.\u003c\/span\u003e\n\u003c\/li\u003e\n\u003cli class=\"tt-lp-longform-bullet\"\u003e\n\u003cspan class=\"tt-lp-longform-check\"\u003e✓\u003c\/span\u003e\u003cspan\u003eApto para uso en cocina, baño y cualquier área del hogar.\u003c\/span\u003e\n\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\u003c\/section\u003e\n\u003csection class=\"tt-lp-steps tt-lp-band\"\u003e\u003ch2 class=\"tt-lp-band-title\"\u003e3 SIMPLES PASOS PARA UN BRILLO TOTAL\u003c\/h2\u003e\n\u003cp class=\"tt-lp-band-sub\"\u003eUna rutina de limpieza que transforma tu cocina desde el primer contacto.\u003c\/p\u003e\n\u003cdiv class=\"tt-lp-step\"\u003e\n\u003cdiv class=\"tt-lp-step-image\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0719\/1465\/1718\/files\/how_to_use_b1_dbbe0542-0567-41bc-a1c1-fe217bd0f882.webp?v=1784089948\" alt=\"\" loading=\"lazy\"\u003e\u003c\/div\u003e\n\u003ch3 class=\"tt-lp-step-title\"\u003e\n\u003cspan class=\"tt-lp-step-num\"\u003e1\u003c\/span\u003e\u003cspan\u003eHumedece el paño mágico\u003c\/span\u003e\n\u003c\/h3\u003e\n\u003cp class=\"tt-lp-step-body\"\u003eMoja el paño con un poco de agua y, si prefieres, una gota de jabón suave para activar su tecnología.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tt-lp-step\"\u003e\n\u003cdiv class=\"tt-lp-step-image\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0719\/1465\/1718\/files\/how_to_use_2_b1_4e2e014c-9f0d-4ffa-8b30-a9647c167e51.webp?v=1784089948\" alt=\"\" loading=\"lazy\"\u003e\u003c\/div\u003e\n\u003ch3 class=\"tt-lp-step-title\"\u003e\n\u003cspan class=\"tt-lp-step-num\"\u003e2\u003c\/span\u003e\u003cspan\u003eFrota sobre la superficie\u003c\/span\u003e\n\u003c\/h3\u003e\n\u003cp class=\"tt-lp-step-body\"\u003ePasa el paño con movimientos circulares sobre la grasa u óxido; verás cómo la rejilla levanta la suciedad sin rayar.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tt-lp-step\"\u003e\n\u003cdiv class=\"tt-lp-step-image\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0719\/1465\/1718\/files\/how_to_use_3_b1_4b5d708e-2b70-46a8-ba3b-998b99afade8.webp?v=1784089948\" alt=\"\" loading=\"lazy\"\u003e\u003c\/div\u003e\n\u003ch3 class=\"tt-lp-step-title\"\u003e\n\u003cspan class=\"tt-lp-step-num\"\u003e3\u003c\/span\u003e\u003cspan\u003eEnjuaga y disfruta\u003c\/span\u003e\n\u003c\/h3\u003e\n\u003cp class=\"tt-lp-step-body\"\u003ePasa un poco de agua para retirar los residuos y admira cómo tus ollas recuperan su brillo original de inmediato.\u003c\/p\u003e\n\u003c\/div\u003e\u003c\/section\u003e\n\u003csection class=\"tt-lp-guarantee tt-lp-band\"\u003e\u003ch2 class=\"tt-lp-band-title\"\u003e¡ÚNETE A LA FAMILIA DE LIMPIEZA!\u003c\/h2\u003e\n\u003cdiv class=\"tt-lp-guar-photo\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0719\/1465\/1718\/files\/guarantee_b1_0e8b2886-7cf4-4cda-b698-e701992db23c.webp?v=1784089948\" alt=\"Paños magicos de limpieza x 10 unidades\" loading=\"lazy\"\u003e\u003c\/div\u003e\n\u003ch3 class=\"tt-lp-guar-title\"\u003e100 días de prueba sin riesgo\u003c\/h3\u003e\n\u003cp class=\"tt-lp-guarantee-body\"\u003eEstamos tan seguros de que estos paños cambiarán tu forma de limpiar que ofrecemos garantía de satisfacción total. Pide hoy con tranquilidad, pagas en casa y si no ves el resultado, nos encargamos de todo.\u003c\/p\u003e\n\u003cdiv class=\"tt-lp-cta-wrap\"\u003e\u003ca href=\"\/rsi-btn-hook\" class=\"tt-lp-cta-btn\"\u003e¡Obtén tu paquete de paños hoy!\u003c\/a\u003e\u003c\/div\u003e\u003c\/section\u003e\n\u003csection class=\"tt-lp-matspecs\"\u003e\u003csection class=\"tt-lp-materials\"\u003e\u003ch2 class=\"tt-lp-materials-title\"\u003eCALIDAD QUE SE SIENTE\u003c\/h2\u003e\n\u003cdiv class=\"tt-lp-materials-image\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0719\/1465\/1718\/files\/materials_section_b1.webp?v=1784089948\" alt=\"Paños magicos de limpieza x 10 unidades\" loading=\"lazy\"\u003e\u003c\/div\u003e\n\u003cp class=\"tt-lp-materials-body\"\u003eFabricados con una mezcla premium de fibras sintéticas y PVA, estos paños resisten el uso diario intenso sin perder su forma ni su capacidad de limpieza. Es una herramienta diseñada para durar meses en tu cocina.\u003c\/p\u003e\u003c\/section\u003e\u003csection class=\"tt-lp-specs\"\u003e\u003ch2 class=\"tt-lp-specs-title\"\u003eLO QUE NECESITAS SABER\u003c\/h2\u003e\n\u003cdiv class=\"tt-lp-specs-image\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0719\/1465\/1718\/files\/specs_section_b1.webp?v=1784089948\" alt=\"Paños magicos de limpieza x 10 unidades\" loading=\"lazy\"\u003e\u003c\/div\u003e\n\u003cp class=\"tt-lp-specs-body\"\u003eCada paquete incluye 10 paños de 20x20 cm. Son compatibles con cualquier jabón de cocina y seguros para usar en acero, cerámica, vidrio y plástico.\u003c\/p\u003e\u003c\/section\u003e\u003c\/section\u003e\n\u003csection class=\"tt-lp-compare\"\u003e\u003ch2 class=\"tt-lp-compare-title\"\u003eLA DIFERENCIA ES CLARA\u003c\/h2\u003e\n\u003cdiv class=\"tt-lp-compare-table\" role=\"table\"\u003e\n\u003cdiv class=\"tt-lp-compare-head\" role=\"row\"\u003e\n\u003cspan class=\"tt-lp-compare-attr\" role=\"columnheader\"\u003e\u003c\/span\u003e\u003cspan class=\"tt-lp-compare-col tt-lp-compare-col--us\" role=\"columnheader\"\u003eNosotros\u003c\/span\u003e\u003cspan class=\"tt-lp-compare-col tt-lp-compare-col--them\" role=\"columnheader\"\u003eGenérico\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tt-lp-compare-row\" role=\"row\"\u003e\n\u003cspan class=\"tt-lp-compare-attr\" role=\"cell\"\u003eNo raya superficies\u003c\/span\u003e\u003cspan class=\"tt-lp-compare-col tt-lp-compare-col--us\" role=\"cell\"\u003e\u003cspan class=\"tt-lp-compare-mark tt-lp-compare-mark--yes\" aria-label=\"Sí\"\u003e✓\u003c\/span\u003e\u003c\/span\u003e\u003cspan class=\"tt-lp-compare-col tt-lp-compare-col--them\" role=\"cell\"\u003e\u003cspan class=\"tt-lp-compare-mark tt-lp-compare-mark--no\" aria-label=\"No\"\u003e✕\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tt-lp-compare-row\" role=\"row\"\u003e\n\u003cspan class=\"tt-lp-compare-attr\" role=\"cell\"\u003eElimina óxido real\u003c\/span\u003e\u003cspan class=\"tt-lp-compare-col tt-lp-compare-col--us\" role=\"cell\"\u003e\u003cspan class=\"tt-lp-compare-mark tt-lp-compare-mark--yes\" aria-label=\"Sí\"\u003e✓\u003c\/span\u003e\u003c\/span\u003e\u003cspan class=\"tt-lp-compare-col tt-lp-compare-col--them\" role=\"cell\"\u003e\u003cspan class=\"tt-lp-compare-mark tt-lp-compare-mark--warn\" aria-label=\"Parcial\"\u003e~\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tt-lp-compare-row\" role=\"row\"\u003e\n\u003cspan class=\"tt-lp-compare-attr\" role=\"cell\"\u003eSin olores retenidos\u003c\/span\u003e\u003cspan class=\"tt-lp-compare-col tt-lp-compare-col--us\" role=\"cell\"\u003e\u003cspan class=\"tt-lp-compare-mark tt-lp-compare-mark--yes\" aria-label=\"Sí\"\u003e✓\u003c\/span\u003e\u003c\/span\u003e\u003cspan class=\"tt-lp-compare-col tt-lp-compare-col--them\" role=\"cell\"\u003e\u003cspan class=\"tt-lp-compare-mark tt-lp-compare-mark--no\" aria-label=\"No\"\u003e✕\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tt-lp-compare-row\" role=\"row\"\u003e\n\u003cspan class=\"tt-lp-compare-attr\" role=\"cell\"\u003ePago contra entrega\u003c\/span\u003e\u003cspan class=\"tt-lp-compare-col tt-lp-compare-col--us\" role=\"cell\"\u003e\u003cspan class=\"tt-lp-compare-mark tt-lp-compare-mark--yes\" aria-label=\"Sí\"\u003e✓\u003c\/span\u003e\u003c\/span\u003e\u003cspan class=\"tt-lp-compare-col tt-lp-compare-col--them\" role=\"cell\"\u003e\u003cspan class=\"tt-lp-compare-mark tt-lp-compare-mark--no\" aria-label=\"No\"\u003e✕\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tt-lp-compare-row\" role=\"row\"\u003e\n\u003cspan class=\"tt-lp-compare-attr\" role=\"cell\"\u003eGarantía de satisfacción\u003c\/span\u003e\u003cspan class=\"tt-lp-compare-col tt-lp-compare-col--us\" role=\"cell\"\u003e\u003cspan class=\"tt-lp-compare-mark tt-lp-compare-mark--yes\" aria-label=\"Sí\"\u003e✓\u003c\/span\u003e\u003c\/span\u003e\u003cspan class=\"tt-lp-compare-col tt-lp-compare-col--them\" role=\"cell\"\u003e\u003cspan class=\"tt-lp-compare-mark tt-lp-compare-mark--no\" aria-label=\"No\"\u003e✕\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"tt-lp-compare-row\" role=\"row\"\u003e\n\u003cspan class=\"tt-lp-compare-attr\" role=\"cell\"\u003eEnvío gratis\u003c\/span\u003e\u003cspan class=\"tt-lp-compare-col tt-lp-compare-col--us\" role=\"cell\"\u003e\u003cspan class=\"tt-lp-compare-mark tt-lp-compare-mark--yes\" aria-label=\"Sí\"\u003e✓\u003c\/span\u003e\u003c\/span\u003e\u003cspan class=\"tt-lp-compare-col tt-lp-compare-col--them\" role=\"cell\"\u003e\u003cspan class=\"tt-lp-compare-mark tt-lp-compare-mark--warn\" aria-label=\"Parcial\"\u003e~\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\u003c\/section\u003e\n\u003cdiv class=\"tt-lp-badge-cta\"\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0719\/1465\/1718\/files\/badge_cta_b1_c4fd8a04-27f7-4708-a1a8-ba72dd74de6e.webp?v=1784089948\" alt=\"Sellos de seguridad\" loading=\"lazy\"\u003e\u003c\/div\u003e\n\u003csection class=\"tt-lp-faqs\"\u003e\u003ch2 class=\"tt-lp-faqs-title\"\u003ePREGUNTAS FRECUENTES\u003c\/h2\u003e\n\u003cdetails class=\"tt-lp-faq-item\"\u003e\u003csummary class=\"tt-lp-faq-q\"\u003e¿Realmente quita el óxido de las ollas viejas?\u003c\/summary\u003e\u003cp class=\"tt-lp-faq-a\"\u003eSí, gracias a su tejido de rejilla de diamante está diseñado para levantar el óxido y las manchas de quemado más difíciles sin esfuerzo.\u003c\/p\u003e\u003c\/details\u003e\u003cdetails class=\"tt-lp-faq-item\"\u003e\u003csummary class=\"tt-lp-faq-q\"\u003e¿Puedo usarlo en sartenes de teflón sin que se pelen?\u003c\/summary\u003e\u003cp class=\"tt-lp-faq-a\"\u003eAbsolutamente. A diferencia de las esponjas de alambre, este material es firme con la mugre pero suave con los recubrimientos delicados.\u003c\/p\u003e\u003c\/details\u003e\u003cdetails class=\"tt-lp-faq-item\"\u003e\u003csummary class=\"tt-lp-faq-q\"\u003e¿Son desechables o se pueden lavar?\u003c\/summary\u003e\u003cp class=\"tt-lp-faq-a\"\u003eSon totalmente reutilizables. Después de usarlos, solo debes lavarlos con agua y jabón, se secan rápido y quedan listos para la próxima limpieza.\u003c\/p\u003e\u003c\/details\u003e\u003cdetails class=\"tt-lp-faq-item\"\u003e\u003csummary class=\"tt-lp-faq-q\"\u003e¿Cuánto tarda el envío a mi ciudad?\u003c\/summary\u003e\u003cp class=\"tt-lp-faq-a\"\u003eRealizamos envíos a toda Colombia y normalmente tarda de 3 a 5 días hábiles en llegar a la puerta de tu casa.\u003c\/p\u003e\u003c\/details\u003e\u003c\/section\u003e\n\u003cdiv class=\"tt-lp-cta-wrap tt-lp-cta-wrap--final\"\u003e\u003ca href=\"\/rsi-btn-hook\" class=\"tt-lp-cta-btn tt-lp-cta-btn--final\"\u003eCOMPRAR AHORA | PAGA EN CASA 📦\u003c\/a\u003e\u003c\/div\u003e\n\u003cdiv class=\"tt-lp-cta-dock\" data-tt-cta-dock aria-hidden=\"true\"\u003e\u003cdiv class=\"tt-lp-cta-dock-inner\"\u003e\n\u003cdiv class=\"tt-lp-cta-dock-product\"\u003e\n\u003cimg class=\"tt-lp-cta-dock-thumb\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0719\/1465\/1718\/files\/hero_b1_ffac2e4c-a421-4109-96b7-f290c1f826f4.webp?v=1784089948\" alt=\"\" loading=\"lazy\"\u003e\u003cspan class=\"tt-lp-cta-dock-name\"\u003ePaños magicos de limpieza x 10 unidades\u003c\/span\u003e\n\u003c\/div\u003e\n\u003ca href=\"\/rsi-btn-hook\" class=\"tt-lp-cta-dock-btn\"\u003eCOMPRAR AHORA | PAGA EN CASA 📦\u003c\/a\u003e\n\u003c\/div\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- TuTrend landing end --\u003e\n\u003cscript data-tutrend-lp\u003e\n(function(){\n  \/\/ ── Hero carrusel: flechas + miniaturas. En MOBILE (\u003c1000px) el hero marcado\n  \/\/    con data-tt-carousel-scroll es un FILMSTRIP con scroll horizontal nativo\n  \/\/    (scroll-snap); el activo se deriva de la posición del scroll. En desktop\n  \/\/    (y en el carrusel de testimonios) se usa el crossfade por opacidad. ──\n  var carousels = document.querySelectorAll('[data-tt-carousel]');\n  carousels.forEach(function(carousel){\n    if (carousel.getAttribute('data-tt-carousel-init') === '1') return;\n    carousel.setAttribute('data-tt-carousel-init', '1');\n    var track = carousel.querySelector('[data-tt-carousel-track]');\n    var slides = carousel.querySelectorAll('[data-tt-carousel-track] [data-tt-slide-idx]');\n    var dots = carousel.querySelectorAll('[data-tt-carousel-dots] [data-tt-slide-idx]');\n    var total = parseInt(carousel.getAttribute('data-slide-count') || '0', 10);\n    var mq = carousel.hasAttribute('data-tt-carousel-scroll') ? window.matchMedia('(max-width: 999px)') : null;\n    function scrollMode(){ return !!(mq \u0026\u0026 mq.matches \u0026\u0026 track); }\n    var idx = 0;\n    function mark(i){\n      idx = ((i % total) + total) % total;\n      slides.forEach(function(s){\n        s.setAttribute('data-active', (parseInt(s.getAttribute('data-tt-slide-idx'), 10) === idx) ? 'true' : 'false');\n      });\n      dots.forEach(function(d){\n        d.setAttribute('data-active', (parseInt(d.getAttribute('data-tt-slide-idx'), 10) === idx) ? 'true' : 'false');\n      });\n    }\n    function go(n){\n      if (total \u003c= 1) return;\n      var t = ((n % total) + total) % total;\n      if (scrollMode()) { track.scrollTo({ left: t * track.clientWidth, behavior: 'smooth' }); }\n      else { mark(t); }\n    }\n    var prevBtn = carousel.querySelector('[data-tt-carousel-prev]');\n    var nextBtn = carousel.querySelector('[data-tt-carousel-next]');\n    if (prevBtn) prevBtn.addEventListener('click', function(){ go(idx - 1); });\n    if (nextBtn) nextBtn.addEventListener('click', function(){ go(idx + 1); });\n    dots.forEach(function(d){\n      d.addEventListener('click', function(){\n        go(parseInt(d.getAttribute('data-tt-slide-idx'), 10) || 0);\n      });\n    });\n    \/\/ DESKTOP (crossfade, estilo bleame): la IMAGEN entera es clickeable — mitad\n    \/\/ izquierda = anterior, mitad derecha = siguiente. Al mover el mouse aparece\n    \/\/ SOLO la flecha del lado correspondiente (via data-tt-hover-side, que el CSS\n    \/\/ desktop revela). En MOBILE (scrollMode = filmstrip) no aplica: se scrollea.\n    if (track \u0026\u0026 carousel.hasAttribute('data-tt-carousel-scroll')) {\n      var sideOf = function(e){\n        var r = track.getBoundingClientRect();\n        return (e.clientX - r.left) \u003c r.width \/ 2 ? 'prev' : 'next';\n      };\n      track.addEventListener('click', function(e){\n        if (scrollMode() || total \u003c= 1) return;\n        go(sideOf(e) === 'prev' ? idx - 1 : idx + 1);\n      });\n      track.addEventListener('mousemove', function(e){\n        if (scrollMode() || total \u003c= 1) { carousel.removeAttribute('data-tt-hover-side'); return; }\n        var s = sideOf(e);\n        if (carousel.getAttribute('data-tt-hover-side') !== s) carousel.setAttribute('data-tt-hover-side', s);\n      });\n      track.addEventListener('mouseleave', function(){ carousel.removeAttribute('data-tt-hover-side'); });\n    }\n    if (mq) {\n      \/\/ MOBILE: el scroll nativo mueve el filmstrip → derivar el activo de la posición.\n      var raf = null;\n      track.addEventListener('scroll', function(){\n        if (!scrollMode() || raf) return;\n        raf = requestAnimationFrame(function(){\n          raf = null;\n          mark(Math.round(track.scrollLeft \/ (track.clientWidth || 1)));\n        });\n      }, { passive: true });\n      \/\/ Arrastre con MOUSE (touch\/trackpad ya scrollean nativo): arrastrar el\n      \/\/ filmstrip de lado. Sin esto, en desktop no hay forma de scrollear (el\n      \/\/ scrollbar va oculto). Solo activo en modo filmstrip (mobile).\n      var down = false, sx = 0, sl0 = 0;\n      track.addEventListener('pointerdown', function(e){\n        if (!scrollMode() || e.pointerType === 'touch') return;\n        down = true; sx = e.clientX; sl0 = track.scrollLeft;\n        track.style.scrollSnapType = 'none'; track.style.cursor = 'grabbing';\n        try { track.setPointerCapture(e.pointerId); } catch(err){}\n      });\n      track.addEventListener('pointermove', function(e){\n        if (down) track.scrollLeft = sl0 - (e.clientX - sx);\n      });\n      function endDrag(){\n        if (!down) return;\n        down = false; track.style.scrollSnapType = ''; track.style.cursor = '';\n        var i = Math.round(track.scrollLeft \/ (track.clientWidth || 1));\n        track.scrollTo({ left: i * track.clientWidth, behavior: 'smooth' });\n      }\n      track.addEventListener('pointerup', endDrag);\n      track.addEventListener('pointercancel', endDrag);\n      track.addEventListener('dragstart', function(e){ e.preventDefault(); });\n      \/\/ Al cruzar el breakpoint (rotar\/resize): mantener el slide actual coherente.\n      mq.addEventListener('change', function(){\n        if (scrollMode()) { track.scrollTo({ left: idx * track.clientWidth }); }\n        else { mark(idx); }\n      });\n    } else {\n      \/\/ Testimonios \/ fallback sin scroll: swipe táctil manual sobre el crossfade.\n      var startX = 0, deltaX = 0;\n      carousel.addEventListener('touchstart', function(e){ startX = e.touches[0].clientX; deltaX = 0; }, { passive: true });\n      carousel.addEventListener('touchmove', function(e){ deltaX = e.touches[0].clientX - startX; }, { passive: true });\n      carousel.addEventListener('touchend', function(){ if (Math.abs(deltaX) \u003e 40) { go(deltaX \u003c 0 ? idx + 1 : idx - 1); } });\n    }\n  });\n\n  \/\/ ── Carrusel de mini-testimonios del buy-box: scroll horizontal + flechas + dots ──\n  document.querySelectorAll('[data-tt-mini-carousel]').forEach(function(mc){\n    if (mc.getAttribute('data-tt-mini-init') === '1') return;\n    mc.setAttribute('data-tt-mini-init', '1');\n    var track = mc.querySelector('[data-tt-mini-track]');\n    var dots = mc.querySelectorAll('[data-tt-mini-dots] [data-tt-mini-i]');\n    if (!track) return;\n    function cur(){ return Math.round(track.scrollLeft \/ (track.clientWidth || 1)); }\n    function sync(){\n      var i = cur();\n      dots.forEach(function(d){ d.setAttribute('data-active', (parseInt(d.getAttribute('data-tt-mini-i'),10) === i) ? 'true' : 'false'); });\n    }\n    function go(i){ track.scrollTo({ left: i * track.clientWidth, behavior: 'smooth' }); }\n    var prev = mc.querySelector('[data-tt-mini-prev]'), next = mc.querySelector('[data-tt-mini-next]');\n    var n = dots.length || 1;\n    if (prev) prev.addEventListener('click', function(){ go((cur() - 1 + n) % n); });\n    if (next) next.addEventListener('click', function(){ go((cur() + 1) % n); });\n    dots.forEach(function(d){ d.addEventListener('click', function(){ go(parseInt(d.getAttribute('data-tt-mini-i'),10) || 0); }); });\n    var raf = null;\n    track.addEventListener('scroll', function(){ if (raf) return; raf = requestAnimationFrame(function(){ raf = null; sync(); }); }, { passive: true });\n    \/\/ Arrastre con MOUSE (touch\/trackpad ya scrollean nativo).\n    var mdown = false, msx = 0, msl = 0;\n    track.addEventListener('pointerdown', function(e){\n      if (e.pointerType === 'touch') return;\n      mdown = true; msx = e.clientX; msl = track.scrollLeft;\n      track.style.scrollSnapType = 'none'; track.style.cursor = 'grabbing'; track.style.userSelect = 'none';\n      try { track.setPointerCapture(e.pointerId); } catch(err){}\n    });\n    track.addEventListener('pointermove', function(e){ if (mdown) track.scrollLeft = msl - (e.clientX - msx); });\n    function endMiniDrag(){ if (!mdown) return; mdown = false; track.style.scrollSnapType = ''; track.style.cursor = ''; track.style.userSelect = ''; go(cur()); }\n    track.addEventListener('pointerup', endMiniDrag);\n    track.addEventListener('pointercancel', endMiniDrag);\n    track.addEventListener('dragstart', function(e){ e.preventDefault(); });\n  });\n\n  \/\/ ── Comparador antes\/después: arrastrar la barra revela cada mitad ──\n  document.querySelectorAll('[data-tt-ba]').forEach(function(ba){\n    if (ba.getAttribute('data-tt-ba-init') === '1') return;\n    ba.setAttribute('data-tt-ba-init', '1');\n    function setPos(clientX){\n      var r = ba.getBoundingClientRect();\n      var pct = ((clientX - r.left) \/ r.width) * 100;\n      pct = Math.max(0, Math.min(100, pct));\n      ba.style.setProperty('--ba-pos', pct + '%');\n    }\n    var dragging = false;\n    ba.addEventListener('pointerdown', function(e){\n      dragging = true;\n      try { ba.setPointerCapture(e.pointerId); } catch(err){}\n      setPos(e.clientX);\n    });\n    ba.addEventListener('pointermove', function(e){ if (dragging) setPos(e.clientX); });\n    ba.addEventListener('pointerup', function(){ dragging = false; });\n    ba.addEventListener('pointercancel', function(){ dragging = false; });\n  });\n\n  \/\/ ── Oferta 1\/2 unidades + desbloqueo de perks + quantity p\/ Releasit ──\n  var offer = document.querySelector('.tt-lp-offer');\n  if (offer \u0026\u0026 offer.getAttribute('data-tt-offer-init') !== '1') {\n    offer.setAttribute('data-tt-offer-init', '1');\n    var opts = offer.querySelectorAll('.tt-lp-offer-opt');\n    \/\/ ── Sync con las Ofertas de Cantidad de Releasit ──\n    \/\/ Releasit guarda su config en window._RSI_COD_FORM_QUANTIY_OFFERS (array de\n    \/\/ ofertas; cada tier {qty, pres, ...} donde `pres` = pre-seleccionado) y\n    \/\/ renderiza el form COD on-demand leyendo ese global. Al elegir \"Compra N\"\n    \/\/ marcamos pres=true en el tier qty===N de ESTE producto → el form abre con\n    \/\/ esa cantidad. Best-effort y NO destructivo: si Releasit no está \/ cambia su\n    \/\/ shape, degrada sin romper la landing (todo en try\/catch).\n    function ttRsiProductId(){\n      try { var el = document.getElementById('rsi-cod-form-product-cache');\n        if (el) return String((JSON.parse(el.textContent) || {}).id || ''); } catch(e){}\n      return '';\n    }\n    function ttRsiSyncPres(qty){\n      try {\n        var offers = window._RSI_COD_FORM_QUANTIY_OFFERS;\n        var pid = ttRsiProductId();\n        if (offers \u0026\u0026 offers.length) {\n          offers.forEach(function(off){\n            var pids = (off.pIds || []).map(String);\n            if (pid \u0026\u0026 pids.indexOf(pid) === -1) return;\n            (off.offers || []).forEach(function(t){ t.pres = (String(t.qty) === String(qty)); });\n          });\n        }\n        \/\/ Releasit RECUERDA la última selección en `_rsi.form.quantityOffers.\n        \/\/ savedSelection` y en el init del form ESA memoria PISA el `.pres` (por\n        \/\/ eso quedaba pegado en 2 al volver a 1). La limpiamos y fijamos\n        \/\/ selectedOfferIn al tier de la cantidad elegida (cuando el form ya cargó\n        \/\/ su currentOffer) → el form respeta la selección de la landing.\n        var qo = window._rsi \u0026\u0026 _rsi.form \u0026\u0026 _rsi.form.quantityOffers;\n        if (qo) {\n          qo.savedSelection = false;\n          var co = qo.currentOffer;\n          if (co \u0026\u0026 co.offers) {\n            var tier = co.offers.filter(function(t){ return String(t.qty) === String(qty); })[0];\n            if (tier) qo.selectedOfferIn = tier;\n          }\n        }\n      } catch(e){}\n    }\n    \/\/ Fallback DOM: cuando el form de Releasit aparece, selecciona el tier cuya\n    \/\/ etiqueta matchea la cantidad (los títulos de Releasit son \"...N unidades...\").\n    function ttRsiTierMatch(txt, qty){\n      \/\/ Ancla noun-agnóstica (2026-07-14): \"compra N \" — cubre los títulos con\n      \/\/ sustantivo del producto (\"compra 2 cremas\") Y los genéricos (\"compra 2\n      \/\/ unidades\"). Chequea que el char SIGUIENTE no sea dígito (evita que \"1\"\n      \/\/ matchee \"compra 12\"). El char anterior no importa (\"¡compra…\").\n      var anchor = 'compra ' + qty;\n      var ai = txt.indexOf(anchor);\n      if (ai \u003e= 0){\n        var after = txt.charCodeAt(ai + anchor.length);  \/\/ NaN al final del str\n        if (!(after \u003e= 48 \u0026\u0026 after \u003c= 57)) return true;\n      }\n      \/\/ Fallback histórico: \"N unidad(es)\"\/\"N combo(s)\" para productos ya\n      \/\/ publicados sin \"compra\" al frente o configs manuales del merchant.\n      \/\/ Evita \"12\" cuando qty=\"2\" chequeando que el char ANTERIOR no sea dígito.\n      var words = [' unidad', ' combo', ' pieza', ' pack', ' und'];\n      for (var w = 0; w \u003c words.length; w++){\n        var idx = txt.indexOf(qty + words[w]);\n        if (idx \u003c 0) continue;\n        var prev = idx \u003e 0 ? txt.charCodeAt(idx - 1) : 0;\n        if (prev \u003e= 48 \u0026\u0026 prev \u003c= 57) continue;  \/\/ dígito antes → \"12\", no\n        return true;\n      }\n      return false;\n    }\n    function ttRsiClickTier(qty){\n      try {\n        \/\/ Clases REALES del form de Releasit (de get-form-script.min.js): cada\n        \/\/ tier es un `.rsi-quantity-offers-offer-container` (clickeable → dispara\n        \/\/ el handler nativo que setea selectedOfferIn + savedSelection + UI).\n        var nodes = document.querySelectorAll('[class*=\"rsi-quantity-offers-offer-container\"],[class*=\"rsi-quantity-offers-item\"],[class*=\"rsi-quantity-offers-offer\"]');\n        for (var i = 0; i \u003c nodes.length; i++){\n          var el = nodes[i];\n          if (el.offsetParent !== null \u0026\u0026 el.clientHeight \u003e 8 \u0026\u0026 el.clientHeight \u003c 260 \u0026\u0026\n              ttRsiTierMatch((el.textContent || '').toLowerCase(), qty)){\n            el.click();\n            return true;\n          }\n        }\n      } catch(e){}\n      return false;\n    }\n    function ttRsiWatchForm(qty){\n      \/\/ Selecciona el tier de la cantidad ELEGIDA cuando el form aparece — para\n      \/\/ TODA cantidad (incluida 1): Releasit RECUERDA la última selección, así\n      \/\/ que al volver con \"1 unidad\" hay que resetearlo activamente (si no, sigue\n      \/\/ en 2). Reintenta ~6s hasta que el form rinde el tier.\n      var n = 0, iv = setInterval(function(){ n++;\n        if (ttRsiClickTier(qty) || n \u003e 30) clearInterval(iv); }, 200);\n    }\n    function applyQty(qty, animate){\n      offer.setAttribute('data-tt-qty', qty);\n      opts.forEach(function(o){\n        o.classList.toggle('is-selected', o.getAttribute('data-tt-opt-qty') === qty);\n      });\n      document.querySelectorAll('.tt-lp-perk[data-tt-perk-locked]').forEach(function(p){\n        var unlocked = parseInt(qty, 10) \u003e= 2;\n        if (unlocked \u0026\u0026 !p.classList.contains('is-unlocked')) {\n          p.classList.add('is-unlocked');\n          if (animate) { p.classList.remove('tt-perk-pop'); void p.offsetWidth; p.classList.add('tt-perk-pop'); }\n        } else if (!unlocked) {\n          p.classList.remove('is-unlocked', 'tt-perk-pop');\n        }\n      });\n      \/\/ Cantidad para el form COD: (1) marca el tier en la config de Releasit;\n      \/\/ (2) input[name=quantity] si el tema lo rinde; (3) sessionStorage.\n      try {\n        ttRsiSyncPres(qty);\n        document.querySelectorAll('input[name=\"quantity\"]').forEach(function(q){\n          q.value = qty;\n          q.dispatchEvent(new Event('input', { bubbles: true }));\n          q.dispatchEvent(new Event('change', { bubbles: true }));\n        });\n        sessionStorage.setItem('tt_lp_qty', qty);\n      } catch(e){}\n    }\n    opts.forEach(function(o){\n      o.addEventListener('click', function(){\n        applyQty(o.getAttribute('data-tt-opt-qty') || '1', true);\n      });\n    });\n    var storedQty = null;\n    try { storedQty = sessionStorage.getItem('tt_lp_qty'); } catch(e){}\n    applyQty(storedQty === '2' ? '2' : '1', false);\n    \/\/ Al clickear cualquier CTA (abre el form COD de Releasit): re-marca el tier\n    \/\/ en la config + observa el form para seleccionarlo (fallback DOM).\n    document.querySelectorAll('a[href*=\"rsi-btn-hook\"]').forEach(function(a){\n      a.addEventListener('click', function(){\n        var q = offer.getAttribute('data-tt-qty') || '1';\n        ttRsiSyncPres(q);\n        ttRsiWatchForm(q);\n      });\n    });\n  }\n\n  \/\/ ── Reveal on scroll: los bloques del cuerpo aparecen (fade + subida) al\n  \/\/ entrar al viewport. PROGRESIVO: si no hay IntersectionObserver o el user\n  \/\/ pidió reduced-motion, se sale sin ocultar nada (contenido siempre visible).\n  \/\/ Solo se ocultan (via `.tt-reveal`) los bloques que arrancan DEBAJO del\n  \/\/ viewport → los de arriba nunca parpadean.\n  (function(){\n    \/\/ Nivel 2: el hero (hero_html) y el contenido (content_html) son DOS `.tt-lp`\n    \/\/ en secciones distintas → hay que operar document-wide, no sobre el primer\n    \/\/ `.tt-lp`, y esperar a DOMContentLoaded (el script del hero corre ANTES de\n    \/\/ que el content_html esté en el DOM). El guard va en \u003chtml\u003e para que el 2º\n    \/\/ ejemplar (el content_html trae SU copia de este script) no re-corra.\n    function initReveal(){\n      var docEl = document.documentElement;\n      if (docEl.getAttribute('data-tt-reveal-init') === '1') return;\n      docEl.setAttribute('data-tt-reveal-init', '1');\n      var reduce = window.matchMedia \u0026\u0026 window.matchMedia('(prefers-reduced-motion: reduce)').matches;\n      if (reduce || !('IntersectionObserver' in window)) return;\n      var roots = document.querySelectorAll('.tt-lp');\n      if (!roots.length) return;\n      var sel = '.tt-lp-cause,.tt-lp-ba,.tt-lp-transition,.tt-lp-longform,.tt-lp-pain,'\n        + '.tt-lp-pain-image,.tt-lp-solution-image,.tt-lp-steps,.tt-lp-ing,'\n        + '.tt-lp-guarantee,.tt-lp-badge-cta,.tt-lp-faqs,.tt-lp-mini-review,.tt-lp-info';\n      var els = document.querySelectorAll(sel);\n      if (!els.length) return;\n      \/\/ `.tt-reveal-on` a TODOS los `.tt-lp` (el CSS gatea `.tt-lp.tt-reveal-on`).\n      for (var r = 0; r \u003c roots.length; r++) roots[r].classList.add('tt-reveal-on');\n      var io = new IntersectionObserver(function(entries){\n        entries.forEach(function(e){\n          if (e.isIntersecting){ e.target.classList.add('tt-reveal-in'); io.unobserve(e.target); }\n        });\n      }, { threshold: 0.12, rootMargin: '0px 0px -8% 0px' });\n      var vh = window.innerHeight || document.documentElement.clientHeight;\n      els.forEach(function(el){\n        \/\/ No ocultar lo que ya está en (o casi en) pantalla al cargar.\n        if (el.getBoundingClientRect().top \u003c vh * 0.85) return;\n        el.classList.add('tt-reveal');\n        io.observe(el);\n      });\n    }\n    if (document.readyState === 'loading') document.addEventListener('DOMContentLoaded', initReveal);\n    else initReveal();\n  })();\n\n  \/\/ ── CTA dock (desktop): la barra fija inferior aparece cuando el usuario pasa\n  \/\/    el hero al scrollear. Ancla = el carrusel del hero (`[data-tt-carousel]`,\n  \/\/    la media sticky): mientras está pinado en pantalla el dock queda oculto;\n  \/\/    cuando el hero se scrollea del todo, la media se va → dock visible.\n  \/\/    Document-wide + DOMContentLoaded con guard en \u003chtml\u003e: en Nivel 2 el dock\n  \/\/    vive en el hero_html y este script corre en DOS secciones (hero +\n  \/\/    content) → el guard evita doble init. En mobile el CSS mantiene el dock\n  \/\/    display:none, así que togglear la clase es inocuo.\n  (function(){\n    function initDock(){\n      var docEl = document.documentElement;\n      if (docEl.getAttribute('data-tt-cta-dock-init') === '1') return;\n      var dock = document.querySelector('[data-tt-cta-dock]');\n      if (!dock) return;\n      docEl.setAttribute('data-tt-cta-dock-init', '1');\n      \/\/ ⭐ position:fixed se rompe si un ANCESTRO tiene transform\/filter (crea un\n      \/\/ containing block): el tema Dawn le pone `transform` a\n      \/\/ `.product__info-wrapper.scroll-trigger` (animación slide-in) → el dock\n      \/\/ quedaba anclado a ESE wrapper y se iba con el scroll en vez de pegarse al\n      \/\/ viewport. Fix universal (cualquier tema\/Nivel): reparentar el dock a\n      \/\/ \u003cbody\u003e (sin ancestro transformado), copiando las variables de color del\n      \/\/ `.tt-lp` de origen (se pierden al salir de su árbol).\n      if (dock.parentElement !== document.body) {\n        var src = dock.closest('.tt-lp') || dock.parentElement;\n        if (src) {\n          var cs0 = getComputedStyle(src);\n          ['--lp-bg','--lp-text','--lp-accent','--lp-accent-ink','--lp-cta-radius','--lp-font'].forEach(function(v){\n            var val = cs0.getPropertyValue(v);\n            if (val) dock.style.setProperty(v, val.trim());\n          });\n        }\n        document.body.appendChild(dock);\n      }\n      function show(v){\n        dock.classList.toggle('tt-lp-cta-dock--visible', v);\n        dock.setAttribute('aria-hidden', v ? 'false' : 'true');\n      }\n      var anchor = document.querySelector('[data-tt-carousel]');\n      if (!anchor || !('IntersectionObserver' in window)) { show(true); return; }\n      new IntersectionObserver(function(entries){\n        entries.forEach(function(e){ show(!e.isIntersecting); });\n      }, { threshold: 0 }).observe(anchor);\n    }\n    if (document.readyState === 'loading') document.addEventListener('DOMContentLoaded', initDock);\n    else initDock();\n  })();\n})();\n\u003c\/script\u003e","brand":"TuTrend","offers":[{"title":"Default Title","offer_id":45467214315590,"sku":null,"price":79900.0,"currency_code":"COP","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0719\/1465\/1718\/files\/main_hero_b1_c082aeb9-71a8-4385-91bd-833451d0b8c2.webp?v=1784089947","url":"https:\/\/alias-retail.com\/products\/panos-magicos-de-limpieza-x-10-unidades","provider":"Alias Retail","version":"1.0","type":"link"}