{"product_id":"fabric-basket-liner-liner-only","title":"Doublure de panier en tissu, doublure uniquement","description":"\u003cstyle\u003e\n.pd-4309042{font-family:inherit;color:#2c2924;line-height:1.6;max-width:1080px;margin:0 auto}\n.pd-4309042 *{box-sizing:border-box}\n.pd-4309042 img{display:block;width:100%;height:auto}\n.pd-4309042 section{margin:0 0 18px;padding:28px;background:#f6f3ee;border:1px solid #e6e0d6;border-radius:16px}\n.pd-4309042 h2{margin:0 0 10px;font-size:26px;line-height:1.25;font-weight:560;letter-spacing:-.02em}\n.pd-4309042 .pd-kicker{margin:0 0 8px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#7a7368}\n.pd-4309042 p{margin:0 0 16px;font-size:16px}\n.pd-4309042 figure{margin:0}\n.pd-4309042 figcaption{padding:10px 2px 0;font-size:13px;color:#6f685e}\n.pd-4309042 figcaption b{display:block;color:#2c2924;font-weight:600;margin-bottom:2px}\n.pd-4309042 .pd-story{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:28px;align-items:center}\n.pd-4309042 .pd-story .pd-copy{order:1}\n.pd-4309042 .pd-story img{order:2}\n.pd-4309042 .pd-story img,.pd-4309042 .pd-track img,.pd-4309042 .pd-shots img{border-radius:12px;width:100%;aspect-ratio:3\/4;object-fit:cover;background:#f3efe8}\n.pd-4309042 .pd-shots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}\n.pd-4309042 .pd-shots.pd-n2{grid-template-columns:repeat(2,minmax(0,1fr))}\n.pd-4309042 .pd-shots.pd-n1{grid-template-columns:minmax(0,420px)}\n.pd-4309042 .pd-shots figure{min-width:0}\n.pd-4309042 .pd-nav.pd-shots-nav{display:none}\n.pd-4309042 .pd-carousel{position:relative;min-width:0}\n.pd-4309042 .pd-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;border-radius:12px;background:#f3efe8}\n.pd-4309042 .pd-track::-webkit-scrollbar{display:none}\n.pd-4309042 .pd-track figure{flex:0 0 100%;scroll-snap-align:start;min-width:0}\n.pd-4309042 .pd-nav{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:14px}\n.pd-4309042 .pd-nav button{width:40px;height:40px;border-radius:50%;border:1px solid #c9c0b4;background:#fff;color:#2c2924;font-size:18px;line-height:1;cursor:pointer}\n.pd-4309042 .pd-dots{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;max-width:240px}\n.pd-4309042 .pd-dots button{width:8px;height:8px;padding:0;border:0;border-radius:50%;background:#cfc6ba}\n.pd-4309042 .pd-dots button[aria-current=\"true\"]{background:#2c2924}\n.pd-4309042 .pd-count{min-width:58px;text-align:center;font-size:13px;color:#6f685e}\n.pd-4309042 .pd-spec{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:28px;align-items:start}\n.pd-4309042 .pd-spec-copy{min-width:0}\n.pd-4309042 table{width:100%;border-collapse:collapse;font-size:15px}\n.pd-4309042 th,.pd-4309042 td{text-align:left;padding:11px 0;border-bottom:1px solid #e2dbd1;vertical-align:top}\n.pd-4309042 th{width:34%;font-weight:600;color:#3d3832;padding-right:12px}\n@media(max-width:760px){\n.pd-4309042 section{padding:20px 16px;border-radius:12px}\n.pd-4309042 h2{font-size:22px}\n.pd-4309042 .pd-story,.pd-4309042 .pd-spec{grid-template-columns:1fr}\n.pd-4309042 .pd-story .pd-copy{order:-1}\n.pd-4309042 .pd-shots{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:0;scrollbar-width:none}\n.pd-4309042 .pd-shots::-webkit-scrollbar{display:none}\n.pd-4309042 .pd-shots figure{flex:0 0 100%;scroll-snap-align:start}\n.pd-4309042 .pd-shots.pd-n1{grid-template-columns:1fr}\n.pd-4309042 .pd-nav.pd-shots-nav{display:flex}\n.pd-4309042 .pd-nav.pd-shots-nav.pd-hide{display:none}\n.pd-4309042 .pd-dots{display:none}\n}\n\n.pd-live .pd-nav .pd-arrow{position:relative;display:inline-flex !important;align-items:center !important;justify-content:center !important;width:40px !important;height:40px !important;min-width:40px !important;max-width:40px !important;flex:0 0 40px !important;padding:0 !important;margin:0;border:1px solid #c9c0b4;border-radius:50%;background:#fff;color:#2c2924;line-height:0 !important;font-size:0 !important;box-sizing:border-box;cursor:pointer;overflow:hidden;-webkit-appearance:none;appearance:none}\n.pd-live .pd-nav .pd-arrow svg{position:absolute;left:50%;top:50%;width:18px;height:18px;display:block;transform:translate(-50%,-50%);pointer-events:none}\n.pd-live.pd-live .pd-track,.pd-live.pd-live .pd-track img,.pd-live.pd-live .pd-shots img{touch-action:pan-y;-webkit-user-drag:none;user-select:none}\n.pd-live.pd-live .pd-track{overflow:hidden;scroll-snap-type:none;-webkit-overflow-scrolling:auto}\n@media(max-width:760px){\n.pd-live.pd-live .pd-shots,.pd-live.pd-live .pd-shots img{overflow:hidden;scroll-snap-type:none;touch-action:pan-y;-webkit-overflow-scrolling:auto}\n}\n@media(min-width:761px){\n.pd-live .pd-shots\u003e[data-pd-clone]{display:none !important}\n}\n\n.pd-live .pd-viewport{overflow:hidden;touch-action:pan-y;border-radius:12px;min-width:0}\n@media(min-width:761px){\n.pd-live .pd-viewport:has(\u003e .pd-shots){overflow:visible;border-radius:0}\n}\n\n.pd-live .pd-shot{position:relative;min-width:0;max-width:100%}\n.pd-live .pd-shot .pd-arrow{position:absolute !important;top:50% !important;transform:translateY(-50%) !important;z-index:3;width:44px !important;height:44px !important;min-width:44px !important;max-width:44px !important;margin:0 !important;padding:0 !important;border:0 !important;border-radius:50%;background:rgba(255,255,255,.94) !important;color:#2c2924 !important;box-shadow:0 1px 6px rgba(44,41,36,.16);display:inline-flex !important;align-items:center !important;justify-content:center !important;line-height:0 !important;font-size:0 !important;cursor:pointer}\n.pd-live .pd-shot .pd-arrow svg{display:none !important}\n.pd-live .pd-shot .pd-arrow::before{content:\"\";display:block;width:9px;height:9px;border-top:2px solid currentColor;border-right:2px solid currentColor;box-sizing:border-box}\n.pd-live .pd-shot .pd-prev{left:10px !important;right:auto !important}\n.pd-live .pd-shot .pd-prev::before{transform:rotate(-135deg);margin-left:3px}\n.pd-live .pd-shot .pd-next{right:10px !important;left:auto !important}\n.pd-live .pd-shot .pd-next::before{transform:rotate(45deg);margin-right:3px}\n.pd-live .pd-nav{position:static}\n@media(min-width:761px){\n.pd-live .pd-shots-slider .pd-arrow{display:none !important}\n}\n@media(max-width:760px){\n.pd-live .pd-dots{display:flex !important;flex-wrap:nowrap;overflow-x:auto;max-width:180px;scrollbar-width:none}\n.pd-live .pd-dots::-webkit-scrollbar{display:none}\n}\n\u003c\/style\u003e\n\u003cdiv class=\"pd-4309042 pd-live pd-boot-live\" ontouchstart=\"this.pdApi=this.pdApi||(function(root){\n  function setup(box){\n    var track=box.querySelector(\u0026#x27;.pd-shots\u0026#x27;)||box.querySelector(\u0026#x27;.pd-track\u0026#x27;);\n    if(!track) return null;\n    var figs=[];\n    var i;\n    for(i=0;i\u0026lt;track.children.length;i++){\n      if(track.children[i].tagName===\u0026#x27;FIGURE\u0026#x27; \u0026amp;\u0026amp; !track.children[i].getAttribute(\u0026#x27;data-pd-clone\u0026#x27;)) figs.push(track.children[i]);\n    }\n    var n=figs.length;\n    if(2\u0026gt;n) return null;\n    if(!track.getAttribute(\u0026#x27;data-pd-ready\u0026#x27;)){\n      var last=figs[n-1].cloneNode(true);\n      var first=figs[0].cloneNode(true);\n      last.setAttribute(\u0026#x27;data-pd-clone\u0026#x27;,\u0026#x27;1\u0026#x27;);\n      first.setAttribute(\u0026#x27;data-pd-clone\u0026#x27;,\u0026#x27;1\u0026#x27;);\n      last.setAttribute(\u0026#x27;aria-hidden\u0026#x27;,\u0026#x27;true\u0026#x27;);\n      first.setAttribute(\u0026#x27;aria-hidden\u0026#x27;,\u0026#x27;true\u0026#x27;);\n      track.insertBefore(last, figs[0]);\n      track.appendChild(first);\n      track.setAttribute(\u0026#x27;data-pd-ready\u0026#x27;,\u0026#x27;1\u0026#x27;);\n    }\n    var index=1;\n    var countEl=box.querySelector(\u0026#x27;.pd-count\u0026#x27;);\n    var dots=box.querySelectorAll(\u0026#x27;.pd-dots button\u0026#x27;);\n    var isShots=track.className.indexOf(\u0026#x27;pd-shots\u0026#x27;)!==-1;\n    var nav=box.querySelector(\u0026#x27;.pd-nav\u0026#x27;);\n    var drag=null;\n    function live(){\n      if(!isShots) return true;\n      if(!nav) return false;\n      return window.getComputedStyle(nav).display!==\u0026#x27;none\u0026#x27;;\n    }\n    function width(){ return track.clientWidth||1; }\n    function logical(){\n      var v=index-1;\n      if(0\u0026gt;v) v=n-1;\n      if(v\u0026gt;=n) v=0;\n      return v;\n    }\n    function paint(animate){\n      track.style.transition=animate?\u0026#x27;transform .32s ease\u0026#x27;:\u0026#x27;none\u0026#x27;;\n      track.style.transform=\u0026#x27;translate3d(\u0026#x27;+(-index*width())+\u0026#x27;px,0,0)\u0026#x27;;\n    }\n    function show(){\n      var v=logical();\n      if(countEl) countEl.textContent=(v+1)+\u0026#x27; \/ \u0026#x27;+n;\n      for(var d=0;d\u0026lt;dots.length;d++) dots[d].setAttribute(\u0026#x27;aria-current\u0026#x27;, d===v?\u0026#x27;true\u0026#x27;:\u0026#x27;false\u0026#x27;);\n    }\n    function mode(){\n      var on=live();\n      var kids=track.children;\n      var k;\n      for(k=0;k\u0026lt;kids.length;k++){\n        if(!on){\n          kids[k].style.flex=\u0026#x27;\u0026#x27;;\n          kids[k].style.width=\u0026#x27;\u0026#x27;;\n          kids[k].style.minWidth=\u0026#x27;\u0026#x27;;\n          if(kids[k].getAttribute(\u0026#x27;data-pd-clone\u0026#x27;)) kids[k].style.display=\u0026#x27;none\u0026#x27;;\n        }else{\n          kids[k].style.display=\u0026#x27;\u0026#x27;;\n          kids[k].style.flex=\u0026#x27;0 0 100%\u0026#x27;;\n          kids[k].style.width=\u0026#x27;100%\u0026#x27;;\n          kids[k].style.minWidth=\u0026#x27;0\u0026#x27;;\n          kids[k].style.maxWidth=\u0026#x27;100%\u0026#x27;;\n        }\n      }\n      var view=track.parentNode;\n      if(view \u0026amp;\u0026amp; view.className.indexOf(\u0026#x27;pd-viewport\u0026#x27;)!==-1){\n        view.style.touchAction=\u0026#x27;pan-y\u0026#x27;;\n        if(on) view.style.overflow=\u0026#x27;hidden\u0026#x27;;\n        else if(isShots) view.style.overflow=\u0026#x27;visible\u0026#x27;;\n      }\n      if(!on){\n        track.style.transform=\u0026#x27;none\u0026#x27;;\n        track.style.transition=\u0026#x27;none\u0026#x27;;\n        return;\n      }\n      track.style.overflow=\u0026#x27;visible\u0026#x27;;\n      track.style.touchAction=\u0026#x27;pan-y\u0026#x27;;\n      track.style.scrollSnapType=\u0026#x27;none\u0026#x27;;\n      paint(false);\n      show();\n    }\n    function settle(){\n      if(index\u0026lt;1){ index=n; paint(false); }\n      else if(index\u0026gt;n){ index=1; paint(false); }\n    }\n    track.addEventListener(\u0026#x27;transitionend\u0026#x27;, function(e){\n      if(e.target!==track || e.propertyName!==\u0026#x27;transform\u0026#x27;) return;\n      settle();\n      show();\n    });\n    window.addEventListener(\u0026#x27;resize\u0026#x27;, mode);\n    mode();\n    return {\n      track:track,\n      start:function(e){\n        if(!live() || !e.touches || e.touches.length!==1) return;\n        settle();\n        drag={x:e.touches[0].clientX,y:e.touches[0].clientY,dx:0,dy:0,lock:\u0026#x27;\u0026#x27;};\n        track.style.transition=\u0026#x27;none\u0026#x27;;\n      },\n      move:function(e){\n        if(!drag || !e.touches || e.touches.length!==1) return;\n        drag.dx=e.touches[0].clientX-drag.x;\n        drag.dy=e.touches[0].clientY-drag.y;\n        if(!drag.lock){\n          if(10\u0026gt;Math.abs(drag.dx) \u0026amp;\u0026amp; 10\u0026gt;Math.abs(drag.dy)) return;\n          drag.lock=Math.abs(drag.dx)\u0026gt;Math.abs(drag.dy)?\u0026#x27;x\u0026#x27;:\u0026#x27;y\u0026#x27;;\n        }\n        if(drag.lock!==\u0026#x27;x\u0026#x27;) return;\n        if(e.cancelable) e.preventDefault();\n        track.style.transform=\u0026#x27;translate3d(\u0026#x27;+(-index*width()+drag.dx)+\u0026#x27;px,0,0)\u0026#x27;;\n      },\n      end:function(){\n        if(!drag) return;\n        var dx=drag.dx;\n        var lock=drag.lock;\n        drag=null;\n        if(lock!==\u0026#x27;x\u0026#x27;){ paint(true); return; }\n        var limit=Math.min(48, width()*0.18);\n        if(dx\u0026lt;=-limit) index+=1;\n        else if(dx\u0026gt;=limit) index-=1;\n        paint(true);\n        show();\n        root.pdSkip=1;\n        window.setTimeout(function(){ root.pdSkip=0; }, 450);\n      },\n      cancel:function(){ drag=null; paint(true); },\n      click:function(e){\n        if(root.pdSkip){ root.pdSkip=0; return; }\n        var btn=e.target \u0026amp;\u0026amp; e.target.closest ? e.target.closest(\u0026#x27;button\u0026#x27;) : null;\n        if(!btn || !box.contains(btn) || !live()) return;\n        e.preventDefault();\n        if(btn.className.indexOf(\u0026#x27;pd-prev\u0026#x27;)!==-1) index-=1;\n        else if(btn.className.indexOf(\u0026#x27;pd-next\u0026#x27;)!==-1) index+=1;\n        else if(btn.parentNode \u0026amp;\u0026amp; btn.parentNode.className.indexOf(\u0026#x27;pd-dots\u0026#x27;)!==-1){\n          var buttons=btn.parentNode.querySelectorAll(\u0026#x27;button\u0026#x27;);\n          for(var b=0;b\u0026lt;buttons.length;b++) if(buttons[b]===btn) index=b+1;\n        }else return;\n        paint(true);\n        show();\n      }\n    };\n  }\n  var controls=[];\n  var boxes=root.querySelectorAll(\u0026#x27;[data-pd]\u0026#x27;);\n  for(var n=0;n\u0026lt;boxes.length;n++){\n    var api=setup(boxes[n]);\n    if(api) controls.push(api);\n  }\n  function owner(e){\n    var node=e \u0026amp;\u0026amp; e.target;\n    if(!node || !node.closest) return null;\n    var box=node.closest(\u0026#x27;[data-pd]\u0026#x27;);\n    if(!box) return null;\n    for(var i=0;i\u0026lt;controls.length;i++) if(box.contains(controls[i].track)) return controls[i];\n    return null;\n  }\n  var active=null;\n  return {\n    start:function(e){ active=owner(e); if(active) active.start(e); },\n    move:function(e){ if(active) active.move(e); },\n    end:function(){ if(active) active.end(); active=null; },\n    cancel:function(){ if(active) active.cancel(); active=null; },\n    click:function(e){ var item=owner(e); if(item) item.click(e); }\n  };\n})(this);\nif(event \u0026amp;\u0026amp; event.touches) this.pdApi.start(event);\" ontouchmove=\"if(this.pdApi)this.pdApi.move(event);\" ontouchend=\"if(this.pdApi)this.pdApi.end(event);\" ontouchcancel=\"if(this.pdApi)this.pdApi.cancel(event);\" onclick=\"if(!this.pdApi){this.pdApi=this.pdApi||(function(root){\n  function setup(box){\n    var track=box.querySelector(\u0026#x27;.pd-shots\u0026#x27;)||box.querySelector(\u0026#x27;.pd-track\u0026#x27;);\n    if(!track) return null;\n    var figs=[];\n    var i;\n    for(i=0;i\u0026lt;track.children.length;i++){\n      if(track.children[i].tagName===\u0026#x27;FIGURE\u0026#x27; \u0026amp;\u0026amp; !track.children[i].getAttribute(\u0026#x27;data-pd-clone\u0026#x27;)) figs.push(track.children[i]);\n    }\n    var n=figs.length;\n    if(2\u0026gt;n) return null;\n    if(!track.getAttribute(\u0026#x27;data-pd-ready\u0026#x27;)){\n      var last=figs[n-1].cloneNode(true);\n      var first=figs[0].cloneNode(true);\n      last.setAttribute(\u0026#x27;data-pd-clone\u0026#x27;,\u0026#x27;1\u0026#x27;);\n      first.setAttribute(\u0026#x27;data-pd-clone\u0026#x27;,\u0026#x27;1\u0026#x27;);\n      last.setAttribute(\u0026#x27;aria-hidden\u0026#x27;,\u0026#x27;true\u0026#x27;);\n      first.setAttribute(\u0026#x27;aria-hidden\u0026#x27;,\u0026#x27;true\u0026#x27;);\n      track.insertBefore(last, figs[0]);\n      track.appendChild(first);\n      track.setAttribute(\u0026#x27;data-pd-ready\u0026#x27;,\u0026#x27;1\u0026#x27;);\n    }\n    var index=1;\n    var countEl=box.querySelector(\u0026#x27;.pd-count\u0026#x27;);\n    var dots=box.querySelectorAll(\u0026#x27;.pd-dots button\u0026#x27;);\n    var isShots=track.className.indexOf(\u0026#x27;pd-shots\u0026#x27;)!==-1;\n    var nav=box.querySelector(\u0026#x27;.pd-nav\u0026#x27;);\n    var drag=null;\n    function live(){\n      if(!isShots) return true;\n      if(!nav) return false;\n      return window.getComputedStyle(nav).display!==\u0026#x27;none\u0026#x27;;\n    }\n    function width(){ return track.clientWidth||1; }\n    function logical(){\n      var v=index-1;\n      if(0\u0026gt;v) v=n-1;\n      if(v\u0026gt;=n) v=0;\n      return v;\n    }\n    function paint(animate){\n      track.style.transition=animate?\u0026#x27;transform .32s ease\u0026#x27;:\u0026#x27;none\u0026#x27;;\n      track.style.transform=\u0026#x27;translate3d(\u0026#x27;+(-index*width())+\u0026#x27;px,0,0)\u0026#x27;;\n    }\n    function show(){\n      var v=logical();\n      if(countEl) countEl.textContent=(v+1)+\u0026#x27; \/ \u0026#x27;+n;\n      for(var d=0;d\u0026lt;dots.length;d++) dots[d].setAttribute(\u0026#x27;aria-current\u0026#x27;, d===v?\u0026#x27;true\u0026#x27;:\u0026#x27;false\u0026#x27;);\n    }\n    function mode(){\n      var on=live();\n      var kids=track.children;\n      var k;\n      for(k=0;k\u0026lt;kids.length;k++){\n        if(!on){\n          kids[k].style.flex=\u0026#x27;\u0026#x27;;\n          kids[k].style.width=\u0026#x27;\u0026#x27;;\n          kids[k].style.minWidth=\u0026#x27;\u0026#x27;;\n          if(kids[k].getAttribute(\u0026#x27;data-pd-clone\u0026#x27;)) kids[k].style.display=\u0026#x27;none\u0026#x27;;\n        }else{\n          kids[k].style.display=\u0026#x27;\u0026#x27;;\n          kids[k].style.flex=\u0026#x27;0 0 100%\u0026#x27;;\n          kids[k].style.width=\u0026#x27;100%\u0026#x27;;\n          kids[k].style.minWidth=\u0026#x27;0\u0026#x27;;\n          kids[k].style.maxWidth=\u0026#x27;100%\u0026#x27;;\n        }\n      }\n      var view=track.parentNode;\n      if(view \u0026amp;\u0026amp; view.className.indexOf(\u0026#x27;pd-viewport\u0026#x27;)!==-1){\n        view.style.touchAction=\u0026#x27;pan-y\u0026#x27;;\n        if(on) view.style.overflow=\u0026#x27;hidden\u0026#x27;;\n        else if(isShots) view.style.overflow=\u0026#x27;visible\u0026#x27;;\n      }\n      if(!on){\n        track.style.transform=\u0026#x27;none\u0026#x27;;\n        track.style.transition=\u0026#x27;none\u0026#x27;;\n        return;\n      }\n      track.style.overflow=\u0026#x27;visible\u0026#x27;;\n      track.style.touchAction=\u0026#x27;pan-y\u0026#x27;;\n      track.style.scrollSnapType=\u0026#x27;none\u0026#x27;;\n      paint(false);\n      show();\n    }\n    function settle(){\n      if(index\u0026lt;1){ index=n; paint(false); }\n      else if(index\u0026gt;n){ index=1; paint(false); }\n    }\n    track.addEventListener(\u0026#x27;transitionend\u0026#x27;, function(e){\n      if(e.target!==track || e.propertyName!==\u0026#x27;transform\u0026#x27;) return;\n      settle();\n      show();\n    });\n    window.addEventListener(\u0026#x27;resize\u0026#x27;, mode);\n    mode();\n    return {\n      track:track,\n      start:function(e){\n        if(!live() || !e.touches || e.touches.length!==1) return;\n        settle();\n        drag={x:e.touches[0].clientX,y:e.touches[0].clientY,dx:0,dy:0,lock:\u0026#x27;\u0026#x27;};\n        track.style.transition=\u0026#x27;none\u0026#x27;;\n      },\n      move:function(e){\n        if(!drag || !e.touches || e.touches.length!==1) return;\n        drag.dx=e.touches[0].clientX-drag.x;\n        drag.dy=e.touches[0].clientY-drag.y;\n        if(!drag.lock){\n          if(10\u0026gt;Math.abs(drag.dx) \u0026amp;\u0026amp; 10\u0026gt;Math.abs(drag.dy)) return;\n          drag.lock=Math.abs(drag.dx)\u0026gt;Math.abs(drag.dy)?\u0026#x27;x\u0026#x27;:\u0026#x27;y\u0026#x27;;\n        }\n        if(drag.lock!==\u0026#x27;x\u0026#x27;) return;\n        if(e.cancelable) e.preventDefault();\n        track.style.transform=\u0026#x27;translate3d(\u0026#x27;+(-index*width()+drag.dx)+\u0026#x27;px,0,0)\u0026#x27;;\n      },\n      end:function(){\n        if(!drag) return;\n        var dx=drag.dx;\n        var lock=drag.lock;\n        drag=null;\n        if(lock!==\u0026#x27;x\u0026#x27;){ paint(true); return; }\n        var limit=Math.min(48, width()*0.18);\n        if(dx\u0026lt;=-limit) index+=1;\n        else if(dx\u0026gt;=limit) index-=1;\n        paint(true);\n        show();\n        root.pdSkip=1;\n        window.setTimeout(function(){ root.pdSkip=0; }, 450);\n      },\n      cancel:function(){ drag=null; paint(true); },\n      click:function(e){\n        if(root.pdSkip){ root.pdSkip=0; return; }\n        var btn=e.target \u0026amp;\u0026amp; e.target.closest ? e.target.closest(\u0026#x27;button\u0026#x27;) : null;\n        if(!btn || !box.contains(btn) || !live()) return;\n        e.preventDefault();\n        if(btn.className.indexOf(\u0026#x27;pd-prev\u0026#x27;)!==-1) index-=1;\n        else if(btn.className.indexOf(\u0026#x27;pd-next\u0026#x27;)!==-1) index+=1;\n        else if(btn.parentNode \u0026amp;\u0026amp; btn.parentNode.className.indexOf(\u0026#x27;pd-dots\u0026#x27;)!==-1){\n          var buttons=btn.parentNode.querySelectorAll(\u0026#x27;button\u0026#x27;);\n          for(var b=0;b\u0026lt;buttons.length;b++) if(buttons[b]===btn) index=b+1;\n        }else return;\n        paint(true);\n        show();\n      }\n    };\n  }\n  var controls=[];\n  var boxes=root.querySelectorAll(\u0026#x27;[data-pd]\u0026#x27;);\n  for(var n=0;n\u0026lt;boxes.length;n++){\n    var api=setup(boxes[n]);\n    if(api) controls.push(api);\n  }\n  function owner(e){\n    var node=e \u0026amp;\u0026amp; e.target;\n    if(!node || !node.closest) return null;\n    var box=node.closest(\u0026#x27;[data-pd]\u0026#x27;);\n    if(!box) return null;\n    for(var i=0;i\u0026lt;controls.length;i++) if(box.contains(controls[i].track)) return controls[i];\n    return null;\n  }\n  var active=null;\n  return {\n    start:function(e){ active=owner(e); if(active) active.start(e); },\n    move:function(e){ if(active) active.move(e); },\n    end:function(){ if(active) active.end(); active=null; },\n    cancel:function(){ if(active) active.cancel(); active=null; },\n    click:function(e){ var item=owner(e); if(item) item.click(e); }\n  };\n})(this);\nif(event \u0026amp;\u0026amp; event.touches) this.pdApi.start(event);}if(this.pdApi\u0026amp;\u0026amp;event)this.pdApi.click(event);\"\u003e\n\u003csection\u003e\n\u003cdiv class=\"pd-story\"\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0680\/6349\/4302\/files\/46f655b6ec93c9a4a232.webp?v=1794320468\" alt=\"Doublure en tissu placée dans un panier en rotin. Le panier n\u0026#x27;est pas inclus.\"\u003e\n\u003cdiv class=\"pd-copy\"\u003e\n\u003cp class=\"pd-kicker\"\u003eDans le panier\u003c\/p\u003e\n\u003ch2\u003eUne doublure en tissu, présentée dans un panier pour l'ajustement\u003c\/h2\u003e\n\u003cp\u003eCe produit est uniquement la doublure en tissu. Les photos la placent dans un panier en rotin pour montrer l'ajustement. Le panier, les serviettes et la pièce ne sont pas inclus.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection\u003e\n\u003cp class=\"pd-kicker\"\u003eDétail\u003c\/p\u003e\n\u003ch2\u003eUn bord en tissu cousu\u003c\/h2\u003e\n\u003cp\u003eLa doublure est en tissu, avec un bord supérieur relié. Le rotin qui l’entoure n’est là que pour montrer l’ajustement.\u003c\/p\u003e\n\u003cdiv data-pd\u003e\n\u003cdiv class=\"pd-shot pd-shots-slider\"\u003e\u003cdiv class=\"pd-viewport\"\u003e\u003cdiv class=\"pd-shots pd-n3\"\u003e\n\u003cfigure\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0680\/6349\/4302\/files\/9b884d22c85a4060182e.webp?v=1794320516\" alt=\"Bord lié\"\u003e\u003cfigcaption\u003eBord lié\u003c\/figcaption\u003e\u003c\/figure\u003e\u003cfigure\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0680\/6349\/4302\/files\/b0fd168b235d031cc720.webp?v=1794320519\" alt=\"Jante cousue\"\u003e\u003cfigcaption\u003eJante cousue\u003c\/figcaption\u003e\u003c\/figure\u003e\u003cfigure\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0680\/6349\/4302\/files\/9cee09531855cd49d1a6.webp?v=1794320522\" alt=\"Coin de doublure\"\u003e\u003cfigcaption\u003eCoin de doublure\u003c\/figcaption\u003e\u003c\/figure\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003cbutton type=\"button\" class=\"pd-arrow pd-prev\" aria-label=\"Détail précédent\"\u003e\u003csvg viewBox=\"0 0 24 24\" aria-hidden=\"true\" focusable=\"false\"\u003e\u003cpath d=\"M15.1 5.6 8.9 12l6.2 6.4\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/button\u003e\u003cbutton type=\"button\" class=\"pd-arrow pd-next\" aria-label=\"Détail suivant\"\u003e\u003csvg viewBox=\"0 0 24 24\" aria-hidden=\"true\" focusable=\"false\"\u003e\u003cpath d=\"M8.9 5.6 15.1 12 8.9 18.4\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/button\u003e\u003c\/div\u003e\u003cdiv class=\"pd-nav pd-shots-nav\"\u003e\u003cdiv class=\"pd-dots\"\u003e\u003cbutton type=\"button\" aria-label=\"Bord lié\" aria-current=\"true\"\u003e\u003c\/button\u003e\u003cbutton type=\"button\" aria-label=\"Jante cousue\"\u003e\u003c\/button\u003e\u003cbutton type=\"button\" aria-label=\"Coin de doublure\"\u003e\u003c\/button\u003e\u003c\/div\u003e\u003cspan class=\"pd-count\"\u003e1 \/ 3\u003c\/span\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csection\u003e\n\u003cdiv class=\"pd-spec\"\u003e\n\u003cdiv class=\"pd-carousel\" data-pd\u003e\n\u003cdiv class=\"pd-shot pd-style-slider\"\u003e\u003cdiv class=\"pd-viewport\"\u003e\u003cdiv class=\"pd-track\"\u003e\n\u003cfigure\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0680\/6349\/4302\/files\/8c322af4ad7962234383.webp?v=1794320462\" alt=\"36 × 26 × 24 cm (14.2 × 10.2 × 9.4 in)\"\u003e\u003cfigcaption\u003e\u003cb\u003e36 × 26 × 24 cm (14.2 × 10.2 × 9.4 in)\u003c\/b\u003e\u003c\/figcaption\u003e\u003c\/figure\u003e\u003cfigure\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0680\/6349\/4302\/files\/7be62d23e69457d9bec0.webp?v=1794320462\" alt=\"45 × 36 × 30 cm (17.7 × 14.2 × 11.8 in)\"\u003e\u003cfigcaption\u003e\u003cb\u003e45 × 36 × 30 cm (17.7 × 14.2 × 11.8 in)\u003c\/b\u003e\u003c\/figcaption\u003e\u003c\/figure\u003e\u003cfigure\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0680\/6349\/4302\/files\/07d4fa7ceee8fe7a86bb.webp?v=1794320468\" alt=\"40 × 36 × 30 cm (15.7 × 14.2 × 11.8 in)\"\u003e\u003cfigcaption\u003e\u003cb\u003e40 × 36 × 30 cm (15.7 × 14.2 × 11.8 in)\u003c\/b\u003e\u003c\/figcaption\u003e\u003c\/figure\u003e\u003cfigure\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0680\/6349\/4302\/files\/25e1ffdf82bcb391372d.webp?v=1794320475\" alt=\"50 × 33 × 30 cm (19.7 × 13 × 11.8 in)\"\u003e\u003cfigcaption\u003e\u003cb\u003e50 × 33 × 30 cm (19.7 × 13 × 11.8 in)\u003c\/b\u003e\u003c\/figcaption\u003e\u003c\/figure\u003e\u003cfigure\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0680\/6349\/4302\/files\/9071f9ca4edb268bc3f1.webp?v=1794320481\" alt=\"56 × 40 × 20 cm (22 × 15.7 × 7.9 in)\"\u003e\u003cfigcaption\u003e\u003cb\u003e56 × 40 × 20 cm (22 × 15.7 × 7.9 in)\u003c\/b\u003e\u003c\/figcaption\u003e\u003c\/figure\u003e\u003cfigure\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0680\/6349\/4302\/files\/bcdbefa21ac23d7ee1be.webp?v=1794320487\" alt=\"38 × 28 × 32 cm (15 × 11 × 12.6 in)\"\u003e\u003cfigcaption\u003e\u003cb\u003e38 × 28 × 32 cm (15 × 11 × 12.6 in)\u003c\/b\u003e\u003c\/figcaption\u003e\u003c\/figure\u003e\u003cfigure\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0680\/6349\/4302\/files\/c87b77c9ee9e6151a019.webp?v=1794320490\" alt=\"30 × 20 × 10 cm (11.8 × 7.9 × 3.9 in)\"\u003e\u003cfigcaption\u003e\u003cb\u003e30 × 20 × 10 cm (11.8 × 7.9 × 3.9 in)\u003c\/b\u003e\u003c\/figcaption\u003e\u003c\/figure\u003e\u003cfigure\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0680\/6349\/4302\/files\/df77144422ed44078ea5.webp?v=1794320493\" alt=\"36 × 26 × 16 cm (14.2 × 10.2 × 6.3 in)\"\u003e\u003cfigcaption\u003e\u003cb\u003e36 × 26 × 16 cm (14.2 × 10.2 × 6.3 in)\u003c\/b\u003e\u003c\/figcaption\u003e\u003c\/figure\u003e\u003cfigure\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0680\/6349\/4302\/files\/6a11379e05fcb9853ddb.webp?v=1794320497\" alt=\"38 × 28 × 18 cm (15 × 11 × 7.1 in)\"\u003e\u003cfigcaption\u003e\u003cb\u003e38 × 28 × 18 cm (15 × 11 × 7.1 in)\u003c\/b\u003e\u003c\/figcaption\u003e\u003c\/figure\u003e\u003cfigure\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0680\/6349\/4302\/files\/88d84b6aa7aa8b6d2549.webp?v=1794320499\" alt=\"60 × 40 × 40 cm (23.6 × 15.7 × 15.7 in)\"\u003e\u003cfigcaption\u003e\u003cb\u003e60 × 40 × 40 cm (23.6 × 15.7 × 15.7 in)\u003c\/b\u003e\u003c\/figcaption\u003e\u003c\/figure\u003e\u003cfigure\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0680\/6349\/4302\/files\/711277fca2c101342443.webp?v=1794320503\" alt=\"Doublure de panier à linge, avec poignées latérales\"\u003e\u003cfigcaption\u003e\u003cb\u003eDoublure de panier à linge, avec poignées latérales\u003c\/b\u003e\u003c\/figcaption\u003e\u003c\/figure\u003e\u003cfigure\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0680\/6349\/4302\/files\/613dbdbf33354cef7d39.webp?v=1794320510\" alt=\"Doublure pour panier à linge, 36 × 38 cm (14.2 × 15 in)\"\u003e\u003cfigcaption\u003e\u003cb\u003eDoublure pour panier à linge, 36 × 38 cm (14.2 × 15 in)\u003c\/b\u003e\u003c\/figcaption\u003e\u003c\/figure\u003e\u003cfigure\u003e\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0680\/6349\/4302\/files\/99a50c9ecd2832a69014.webp?v=1794320512\" alt=\"45 × 30 × 28 cm (17.7 × 11.8 × 11 in)\"\u003e\u003cfigcaption\u003e\u003cb\u003e45 × 30 × 28 cm (17.7 × 11.8 × 11 in)\u003c\/b\u003e\u003c\/figcaption\u003e\u003c\/figure\u003e\n\u003c\/div\u003e\u003c\/div\u003e\u003cbutton type=\"button\" class=\"pd-arrow pd-prev\" aria-label=\"Style précédent\"\u003e\u003csvg viewBox=\"0 0 24 24\" aria-hidden=\"true\" focusable=\"false\"\u003e\u003cpath d=\"M15.1 5.6 8.9 12l6.2 6.4\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/button\u003e\u003cbutton type=\"button\" class=\"pd-arrow pd-next\" aria-label=\"Style suivant\"\u003e\u003csvg viewBox=\"0 0 24 24\" aria-hidden=\"true\" focusable=\"false\"\u003e\u003cpath d=\"M8.9 5.6 15.1 12 8.9 18.4\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\u003c\/button\u003e\u003c\/div\u003e\u003cdiv class=\"pd-nav\"\u003e\u003cdiv class=\"pd-dots\"\u003e\u003cbutton type=\"button\" aria-label=\"36 × 26 × 24 cm (14.2 × 10.2 × 9.4 in)\" aria-current=\"true\"\u003e\u003c\/button\u003e\u003cbutton type=\"button\" aria-label=\"45 × 36 × 30 cm (17.7 × 14.2 × 11.8 in)\"\u003e\u003c\/button\u003e\u003cbutton type=\"button\" aria-label=\"40 × 36 × 30 cm (15.7 × 14.2 × 11.8 in)\"\u003e\u003c\/button\u003e\u003cbutton type=\"button\" aria-label=\"50 × 33 × 30 cm (19.7 × 13 × 11.8 in)\"\u003e\u003c\/button\u003e\u003cbutton type=\"button\" aria-label=\"56 × 40 × 20 cm (22 × 15.7 × 7.9 in)\"\u003e\u003c\/button\u003e\u003cbutton type=\"button\" aria-label=\"38 × 28 × 32 cm (15 × 11 × 12.6 in)\"\u003e\u003c\/button\u003e\u003cbutton type=\"button\" aria-label=\"30 × 20 × 10 cm (11.8 × 7.9 × 3.9 in)\"\u003e\u003c\/button\u003e\u003cbutton type=\"button\" aria-label=\"36 × 26 × 16 cm (14.2 × 10.2 × 6.3 in)\"\u003e\u003c\/button\u003e\u003cbutton type=\"button\" aria-label=\"38 × 28 × 18 cm (15 × 11 × 7.1 in)\"\u003e\u003c\/button\u003e\u003cbutton type=\"button\" aria-label=\"60 × 40 × 40 cm (23.6 × 15.7 × 15.7 in)\"\u003e\u003c\/button\u003e\u003cbutton type=\"button\" aria-label=\"Doublure de panier à linge, avec poignées latérales\"\u003e\u003c\/button\u003e\u003cbutton type=\"button\" aria-label=\"Doublure pour panier à linge, 36 × 38 cm (14.2 × 15 in)\"\u003e\u003c\/button\u003e\u003cbutton type=\"button\" aria-label=\"45 × 30 × 28 cm (17.7 × 11.8 × 11 in)\"\u003e\u003c\/button\u003e\u003c\/div\u003e\u003cspan class=\"pd-count\"\u003e1 \/ 13\u003c\/span\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"pd-spec-copy\"\u003e\n\u003cp class=\"pd-kicker\"\u003eOptions\u003c\/p\u003e\n\u003ch2\u003eChoisissez une option répertoriée\u003c\/h2\u003e\n\u003cp\u003eLes styles illustrés utilisent leur propre photo. Les mesures, lorsqu'elles sont répertoriées, concernent l'option elle-même.\u003c\/p\u003e\n\u003ctable\u003e\u003ctbody\u003e\u003ctr\u003e\u003cth\u003eMatière\u003c\/th\u003e\u003ctd\u003eTissu\u003c\/td\u003e\u003c\/tr\u003e\u003ctr\u003e\u003cth\u003eForme\u003c\/th\u003e\u003ctd\u003eDoublure de panier en tissu, doublure uniquement\u003c\/td\u003e\u003c\/tr\u003e\u003ctr\u003e\u003cth\u003eOptions\u003c\/th\u003e\u003ctd\u003eLa taille suit l'option sélectionnée.\u003c\/td\u003e\u003c\/tr\u003e\u003ctr\u003e\u003cth\u003eTaille\u003c\/th\u003e\u003ctd\u003eAffiché en pouces et en centimètres sur l’option sélectionnée.\u003c\/td\u003e\u003c\/tr\u003e\u003ctr\u003e\u003cth\u003eInclus\u003c\/th\u003e\u003ctd\u003eUniquement la doublure en tissu. Le panier n'est pas inclus.\u003c\/td\u003e\u003c\/tr\u003e\u003c\/tbody\u003e\u003c\/table\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003csvg class=\"pd-boot\" aria-hidden=\"true\" focusable=\"false\" width=\"0\" height=\"0\" style=\"position:absolute;width:0;height:0;overflow:hidden\" onload=\"var r=this.closest(\u0026#x27;.pd-live\u0026#x27;);if(r\u0026amp;\u0026amp;!r.pdApi\u0026amp;\u0026amp;r.onclick)r.onclick();\"\u003e\u003c\/svg\u003e\u003c\/div\u003e\n","brand":"Monulo","offers":[{"title":"36 × 26 × 24 cm (14,2 × 10,2 × 9,4 po)","offer_id":67984730947742,"sku":"TBAI-HD-93-L02-0599","price":110.0,"currency_code":"USD","in_stock":true},{"title":"45 × 36 × 30 cm (17,7 × 14,2 × 11,8 po)","offer_id":67984730980510,"sku":"TBAI-HD-93-L02-0600","price":112.0,"currency_code":"USD","in_stock":true},{"title":"40 × 36 × 30 cm (15,7 × 14,2 × 11,8 po)","offer_id":67984731013278,"sku":"TBAI-HD-93-L02-0601","price":112.0,"currency_code":"USD","in_stock":true},{"title":"50 × 33 × 30 cm (19,7 × 13 × 11,8 po)","offer_id":67984731046046,"sku":"TBAI-HD-93-L02-0602","price":145.0,"currency_code":"USD","in_stock":true},{"title":"56 × 40 × 20 cm (22 × 15,7 × 7,9 po)","offer_id":67984731078814,"sku":"TBAI-HD-93-L02-0603","price":145.0,"currency_code":"USD","in_stock":true},{"title":"38 × 28 × 32 cm (15 × 11 × 12,6 po)","offer_id":67984731111582,"sku":"TBAI-HD-93-L02-0604","price":112.0,"currency_code":"USD","in_stock":true},{"title":"30 × 20 × 10 cm (11,8 × 7,9 × 3,9 po)","offer_id":67984731144350,"sku":"TBAI-HD-93-L02-0605","price":87.0,"currency_code":"USD","in_stock":true},{"title":"36 × 26 × 16 cm (14,2 × 10,2 × 6,3 po)","offer_id":67984731177118,"sku":"TBAI-HD-93-L02-0606","price":107.0,"currency_code":"USD","in_stock":true},{"title":"38 × 28 × 18 cm (15 × 11 × 7,1 po)","offer_id":67984731209886,"sku":"TBAI-HD-93-L02-0607","price":107.0,"currency_code":"USD","in_stock":true},{"title":"60 × 40 × 40 cm (23,6 × 15,7 × 15,7 po)","offer_id":67984731242654,"sku":"TBAI-HD-93-L02-0608","price":145.0,"currency_code":"USD","in_stock":true},{"title":"Doublure pour panier à linge, avec poignées latérales","offer_id":67984731275422,"sku":"TBAI-HD-93-L02-0609","price":72.0,"currency_code":"USD","in_stock":true},{"title":"Doublure pour panier à linge, 36 × 38 cm (14,2 × 15 po)","offer_id":67984731308190,"sku":"TBAI-HD-93-L02-0610","price":107.0,"currency_code":"USD","in_stock":true},{"title":"45 × 30 × 28 cm (17,7 × 11,8 × 11 po)","offer_id":67984731340958,"sku":"TBAI-HD-93-L02-0611","price":107.0,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0680\/6349\/4302\/files\/8c322af4ad7962234383.webp?v=1794320462","url":"https:\/\/www.monulo.com\/fr\/products\/fabric-basket-liner-liner-only","provider":"Monulo","version":"1.0","type":"link"}