{"product_id":"jovani-farmhous-fluted-wood-drum-ceiling-light","title":"Jovani Farmhous Fluted Resin Drum Ceiling Light","description":"\u003cdiv class=\"ping-product-detail\" id=\"ppd-35643\"\u003e\n\u003cstyle\u003e\n@import url('https:\/\/fonts.googleapis.com\/css2?family=Poppins:wght@400;500;600\u0026display=swap');\n#ppd-35643{max-width:1200px;margin:0 auto;padding:8px 16px 40px;background:#fff;color:#000;font-family:'Poppins',sans-serif;line-height:2em;font-size:15px;letter-spacing:1px;}\n#ppd-35643 *,#ppd-35643 *::before,#ppd-35643 *::after{box-sizing:border-box;}\n#ppd-35643 img{display:block;width:100%;height:auto;border-radius:0;}\n#ppd-35643 .ppd-section{margin:0 0 4px;}\n#ppd-35643 .ppd-divider{border:0;border-top:0.5px solid rgba(122,122,122,.48);margin:0;padding:10px 0;}\n#ppd-35643 h2.ppd-title,#ppd-35643 h3.ppd-heading{text-align:center;font-family:'Poppins',sans-serif;font-weight:600;color:#000;margin:0;line-height:1em;}\n#ppd-35643 h2.ppd-title{font-size:25px;letter-spacing:1px;padding:16px 0 12px;}\n#ppd-35643 h3.ppd-heading{font-size:24px;letter-spacing:1.6px;line-height:1.3;padding:14px 0 10px;}\n#ppd-35643 .ppd-sub{text-align:center;color:#707070;font-size:15px;letter-spacing:1px;line-height:2em;margin:0 0 12px;}\n#ppd-35643 .ppd-intro{text-align:center;color:#707070;font-size:15px;letter-spacing:1px;line-height:2em;max-width:920px;margin:0 auto 16px;}\n#ppd-35643 ul.ppd-bullets{list-style:none;margin:0 0 16px;padding:0 10px;color:#000;font-size:15px;letter-spacing:1px;line-height:2em;}\n#ppd-35643 ul.ppd-bullets li{margin:0 0 4px;text-align:center;}\n#ppd-35643 ul.ppd-list{margin:0;padding:0 10px 0 26px;color:#000;font-size:14px;letter-spacing:1px;line-height:2em;}\n#ppd-35643 ul.ppd-list li{margin:0;}\n#ppd-35643 .ppd-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start;}\n#ppd-35643 .ppd-grid-2+.ppd-grid-2{margin-top:20px;}\n#ppd-35643 .ppd-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}\n#ppd-35643 .ppd-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}\n#ppd-35643 .ppd-grid-2.ppd-middle{align-items:center;}\n#ppd-35643 .ppd-spec{display:grid;grid-template-columns:1.15fr 1fr;gap:32px;align-items:center;max-width:1100px;margin:0 auto;}\n#ppd-35643 .ppd-cols{display:grid;gap:24px;align-items:center;}\n#ppd-35643 .ppd-cols-2{grid-template-columns:1fr 1fr;}\n#ppd-35643 .ppd-cols-3{grid-template-columns:1fr 1fr 1fr;}\n#ppd-35643 .ppd-cols-4{grid-template-columns:repeat(4,1fr);}\n#ppd-35643 .ppd-col\u003e*+*{margin-top:14px;}\n#ppd-35643 .ppd-col h4{margin:0;font-size:16px;font-weight:600;letter-spacing:1px;}\n#ppd-35643 .ppd-spec-media\u003e*+*{margin-top:16px;}\n#ppd-35643 .ppd-spec table{width:100%;border-collapse:collapse;font-size:14px;letter-spacing:1px;}\n#ppd-35643 .ppd-spec table td,#ppd-35643 .ppd-spec table th{border:1px solid #e3e3e3;padding:10px 14px;text-align:left;vertical-align:top;}\n#ppd-35643 .ppd-feature{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start;}\n#ppd-35643 .ppd-feature-col\u003e*{margin-bottom:16px;}\n#ppd-35643 .ppd-feature-col\u003e*:last-child{margin-bottom:0;}\n#ppd-35643 figure.ppd-figure{margin:0;}\n#ppd-35643 figure.ppd-figure figcaption{text-align:center;color:#707070;font-size:14px;letter-spacing:1px;padding-top:8px;}\n#ppd-35643 .ppd-hero-img{box-shadow:0 2px 14px rgba(0,0,0,.08);}\n#ppd-35643 .ppd-review{border:1px solid #eee;border-radius:8px;padding:16px;text-align:center;background:#fff;transition:box-shadow .25s,transform .25s;}\n#ppd-35643 .ppd-review:hover{box-shadow:0 6px 18px rgba(0,0,0,.08);transform:translateY(-2px);}\n#ppd-35643 .ppd-stars{color:#f6a623;font-size:15px;letter-spacing:2px;margin-bottom:10px;}\n#ppd-35643 .ppd-review img{aspect-ratio:4\/5;object-fit:cover;width:100%;border-radius:4px;}\n#ppd-35643 .ppd-review h4{margin:12px 0 6px;font-size:15px;font-weight:600;color:#000;letter-spacing:1px;}\n#ppd-35643 .ppd-review p{margin:0;color:#707070;font-size:14px;letter-spacing:1px;line-height:1.8;}\n#ppd-35643 .ppd-card{display:block;text-decoration:none;color:inherit;}\n#ppd-35643 .ppd-card img{transition:transform .3s,box-shadow .3s;}\n#ppd-35643 .ppd-card:hover img{transform:translateY(-3px);box-shadow:0 8px 20px rgba(0,0,0,.12);}\n#ppd-35643 .ppd-card-label{text-align:center;font-size:14px;color:#707070;letter-spacing:1px;padding-top:8px;}\n#ppd-35643 .ppd-video{position:relative;display:block;width:100%;aspect-ratio:16\/10;border:0;border-radius:8px;overflow:hidden;cursor:pointer;background:linear-gradient(135deg,#3d3a36,#191817);padding:0;}\n#ppd-35643 .ppd-video .ppd-play{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#fff;font-size:14px;}\n#ppd-35643 .ppd-video .ppd-play::before{content:\"\";width:56px;height:56px;border-radius:50%;background:rgba(255,255,255,.16);border:2px solid rgba(255,255,255,.85);background-image:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M8 5v14l11-7z'\/%3E%3C\/svg%3E\");background-repeat:no-repeat;background-position:55% 50%;background-size:26px;transition:transform .2s;}\n#ppd-35643 .ppd-video:hover .ppd-play::before{transform:scale(1.08);}\n#ppd-35643 .ppd-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}\n#ppd-35643 .ppd-carousel{position:relative;--pv:4;}\n#ppd-35643 .ppd-viewport{overflow:hidden;}\n#ppd-35643 .ppd-track{display:flex;margin:0 -8px;transition:transform .45s ease;}\n#ppd-35643 .ppd-slide{flex:0 0 calc(100% \/ var(--pv));padding:0 8px;min-width:0;}\n#ppd-35643 .ppd-slide img+img{margin-top:16px;}\n#ppd-35643 .ppd-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:38px;height:38px;border:0;border-radius:50%;background:rgba(255,255,255,.92);box-shadow:0 1px 6px rgba(0,0,0,.18);color:#333;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:opacity .2s,background .2s;}\n#ppd-35643 .ppd-arrow:hover{background:#fff;}\n#ppd-35643 .ppd-arrow[disabled]{opacity:.35;cursor:default;}\n#ppd-35643 .ppd-arrow-prev{left:14px;}\n#ppd-35643 .ppd-arrow-next{right:14px;}\n#ppd-35643 .ppd-arrow svg{width:18px;height:18px;}\n#ppd-35643 .ppd-dots{display:flex;justify-content:center;gap:8px;padding:14px 0 0;}\n#ppd-35643 .ppd-dots button{width:9px;height:9px;padding:0;border:0;border-radius:50%;background:#cfcfcf;cursor:pointer;transition:background .2s,transform .2s;}\n#ppd-35643 .ppd-dots button::before{content:none;}\n#ppd-35643 .ppd-dots button.is-active{background:#1c1c1c;transform:scale(1.15);}\n#ppd-35643 .ppd-reveal{opacity:0;transform:translateY(16px);transition:opacity .6s ease,transform .6s ease;}\n#ppd-35643 .ppd-reveal.is-visible{opacity:1;transform:none;}\n@media (max-width:1024px){\n  #ppd-35643 h3.ppd-heading{font-size:22px;letter-spacing:2.5px;line-height:4em;}\n  #ppd-35643 .ppd-grid-4{grid-template-columns:repeat(2,1fr);}\n}\n@media (max-width:767px){\n  #ppd-35643{padding:8px 12px 28px;font-size:14px;line-height:1.9em;letter-spacing:1px;}\n  #ppd-35643 h2.ppd-title{font-size:20px;letter-spacing:1px;padding:12px 0 10px;}\n  #ppd-35643 h3.ppd-heading{font-size:20px;letter-spacing:2.1px;line-height:2.3em;}\n  #ppd-35643 ul.ppd-list{line-height:1.9em;font-size:13px;}\n  #ppd-35643 ul.ppd-bullets{text-align:left;padding:0 4px;}\n  #ppd-35643 ul.ppd-bullets li{padding-left:14px;text-indent:-14px;}\n  #ppd-35643 .ppd-grid-2,#ppd-35643 .ppd-grid-3,#ppd-35643 .ppd-grid-4,#ppd-35643 .ppd-spec,#ppd-35643 .ppd-feature,#ppd-35643 .ppd-cols-2,#ppd-35643 .ppd-cols-3,#ppd-35643 .ppd-cols-4{grid-template-columns:1fr;gap:16px;}\n  #ppd-35643 .ppd-divider{padding:8px 0;}\n  #ppd-35643 .ppd-arrow{width:32px;height:32px;}\n  #ppd-35643 .ppd-arrow-prev{left:8px;}\n  #ppd-35643 .ppd-arrow-next{right:8px;}\n}\n@media (min-width:1025px){\n  #ppd-35643 .ppd-hide-desktop{display:none !important;}\n}\n@media (min-width:768px) and (max-width:1024px){\n  #ppd-35643 .ppd-hide-tablet{display:none !important;}\n}\n@media (max-width:767px){\n  #ppd-35643 .ppd-hide-phone{display:none !important;}\n}\n@media (prefers-reduced-motion:reduce){\n  #ppd-35643 .ppd-track{transition:none;}\n  #ppd-35643 .ppd-reveal{opacity:1;transform:none;transition:none;}\n}\n\u003c\/style\u003e\n\u003csection class=\"ppd-section ppd-reveal\"\u003e\n\u003ch2 class=\"ppd-title\"\u003eFarmhous Fluted Wood Drum Ceiling Light\u003c\/h2\u003e\n\u003cp class=\"ppd-intro\" style=\"text-align: center;\"\u003ePresenting the Farmhouse Fluted Resin Drum Ceiling Light. It boasts a uniquely fluted resin shade available in Whitewashed Wood or Black Resin Stain. The interior gold finish enhances its warm glow. This farmhouse light combines rustic charm with modern elegance, perfect for adding a stylish touch to your space.\u003c\/p\u003e\n\u003c\/section\u003e\n\u003chr class=\"ppd-divider\"\u003e\n\u003csection class=\"ppd-section ppd-reveal\"\u003e\n\u003cdiv class=\"ppd-cols ppd-cols-2\"\u003e\n\u003cdiv class=\"ppd-col\"\u003e\n\u003cimg alt=\"\" loading=\"lazy\" src=\"https:\/\/cdn.freepicturecdn.com\/blockandreview\/product-body-html\/4136184\/8f4f0406a79af18b.jpg\"\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ppd-col\"\u003e\n\u003cdiv\u003e\n\u003ctable border=\"2\" class=\"aligncenter\" style=\"width: 532.453px; height: 288px;\"\u003e\n\u003ctbody\u003e\n\u003ctr style=\"height: 40px;\"\u003e\n\u003ctd style=\"width: 205px; height: 40px; text-align: center;\"\u003e\u003cstrong\u003eMaterial\u003c\/strong\u003e\u003c\/td\u003e\n\u003ctd style=\"width: 317.453px; height: 40px;\"\u003e\n\u003cp\u003eMetal, Resin\u003c\/p\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"height: 27px;\"\u003e\n\u003ctd style=\"width: 205px; height: 27px; text-align: center;\"\u003e\u003cstrong\u003eProduct Dimensions\u003c\/strong\u003e\u003c\/td\u003e\n\u003ctd style=\"width: 317.453px; height: 27px;\"\u003e11.75\"Hx12.5\"Wx12.5\"D\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"height: 27px;\"\u003e\n\u003ctd style=\"width: 205px; height: 27px; text-align: center;\"\u003e\u003cstrong\u003eVoltage\u003c\/strong\u003e\u003c\/td\u003e\n\u003ctd style=\"width: 317.453px; height: 27px;\"\u003e110~240 Volts\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"height: 27.6563px;\"\u003e\n\u003ctd style=\"width: 205px; height: 27.6563px; text-align: center;\"\u003e\u003cstrong\u003eBulb Base\u003c\/strong\u003e\u003c\/td\u003e\n\u003ctd style=\"width: 317.453px; height: 27.6563px;\"\u003eE26(not included.)\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"height: 27px;\"\u003e\n\u003ctd style=\"width: 205px; height: 27px; text-align: center;\"\u003e\u003cstrong\u003eNumber of Lights\u003c\/strong\u003e\u003c\/td\u003e\n\u003ctd style=\"width: 317.453px; height: 27px;\"\u003e1\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"height: 27px;\"\u003e\n\u003ctd style=\"width: 205px; height: 27px; text-align: center;\"\u003e\u003cstrong\u003ePower Source\u003c\/strong\u003e\u003c\/td\u003e\n\u003ctd style=\"width: 317.453px; height: 27px;\"\u003eHardwired\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr style=\"height: 27px;\"\u003e\n\u003ctd style=\"width: 205px; height: 27px; text-align: center;\"\u003e\u003cstrong\u003eControl Method\u003c\/strong\u003e\u003c\/td\u003e\n\u003ctd style=\"width: 317.453px; height: 27px;\"\u003ePush button switch(Not Included)\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\n\u003cp style=\"text-align: center;\"\u003e \u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003chr class=\"ppd-divider\"\u003e\n\u003csection class=\"ppd-section ppd-reveal\"\u003e\n\u003ch3 class=\"ppd-heading\"\u003eDetails\u003c\/h3\u003e\n\u003c\/section\u003e\n\u003csection class=\"ppd-section ppd-reveal\"\u003e\n\u003cdiv class=\"ppd-grid-2\"\u003e\n\u003cfigure class=\"ppd-figure\"\u003e\u003cimg alt=\"High quality metal canopy\" loading=\"lazy\" src=\"https:\/\/cdn.freepicturecdn.com\/blockandreview\/product-body-html\/4136184\/bf0748d7e053dd69.jpg\"\u003e\u003cfigcaption\u003eHigh quality metal canopy\u003c\/figcaption\u003e\u003c\/figure\u003e\n\u003cfigure class=\"ppd-figure\"\u003e\u003cimg alt=\"Resin wavy lampshade\" loading=\"lazy\" src=\"https:\/\/cdn.freepicturecdn.com\/blockandreview\/product-body-html\/4136184\/f13b41bd5cfb175b.jpg\"\u003e\u003cfigcaption\u003eResin wavy lampshade\u003c\/figcaption\u003e\u003c\/figure\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003chr class=\"ppd-divider\"\u003e\n\u003csection class=\"ppd-section ppd-reveal\"\u003e\n\u003ch3 class=\"ppd-heading\"\u003eScene Matching\u003c\/h3\u003e\n\u003c\/section\u003e\n\u003csection class=\"ppd-section ppd-reveal\"\u003e\n\u003cdiv class=\"ppd-carousel\" data-lg=\"3\" data-md=\"2\" data-sm=\"1\"\u003e\n\u003cdiv class=\"ppd-viewport\"\u003e\n\u003cdiv class=\"ppd-track\"\u003e\n\u003cdiv class=\"ppd-slide\"\u003e\u003cimg alt=\"\" loading=\"lazy\" src=\"https:\/\/cdn.freepicturecdn.com\/blockandreview\/product-body-html\/4136184\/eee14a425e708fab.png\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"ppd-slide\"\u003e\u003cimg alt=\"\" loading=\"lazy\" src=\"https:\/\/cdn.freepicturecdn.com\/blockandreview\/product-body-html\/4136184\/bda44ece39320386.png\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"ppd-slide\"\u003e\u003cimg alt=\"\" loading=\"lazy\" src=\"https:\/\/cdn.freepicturecdn.com\/blockandreview\/product-body-html\/4136184\/0b3605f5999d9bc3.png\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"ppd-slide\"\u003e\u003cimg alt=\"\" loading=\"lazy\" src=\"https:\/\/cdn.freepicturecdn.com\/blockandreview\/product-body-html\/4136184\/015005ea044d6e80.png\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"ppd-slide\"\u003e\u003cimg alt=\"\" loading=\"lazy\" src=\"https:\/\/cdn.freepicturecdn.com\/blockandreview\/product-body-html\/4136184\/a710d260690ebe9b.png\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"ppd-slide\"\u003e\u003cimg alt=\"\" loading=\"lazy\" src=\"https:\/\/cdn.freepicturecdn.com\/blockandreview\/product-body-html\/4136184\/bf55e87f79d1bcd7.png\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"ppd-slide\"\u003e\u003cimg alt=\"\" loading=\"lazy\" src=\"https:\/\/cdn.freepicturecdn.com\/blockandreview\/product-body-html\/4136184\/bf02ea3d5e7386b1.png\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003chr class=\"ppd-divider\"\u003e\n\u003csection class=\"ppd-section ppd-reveal\"\u003e\n\u003ch3 class=\"ppd-heading\"\u003eAvailable Choice\u003c\/h3\u003e\n\u003c\/section\u003e\n\u003csection class=\"ppd-section ppd-reveal\"\u003e\n\u003cdiv class=\"ppd-grid-2\"\u003e\n\u003cfigure class=\"ppd-figure\"\u003e\u003cimg alt=\"Aged Brass \/ Whitewashed Wood\" loading=\"lazy\" src=\"https:\/\/cdn.freepicturecdn.com\/blockandreview\/product-body-html\/4136184\/194b2fbecc952a66.jpg\"\u003e\u003cfigcaption\u003eAged Brass \/ Whitewashed Wood\u003c\/figcaption\u003e\u003c\/figure\u003e\n\u003cfigure class=\"ppd-figure\"\u003e\u003cimg alt=\"Aged Brass \/ Black Wood Stain\" loading=\"lazy\" src=\"https:\/\/cdn.freepicturecdn.com\/blockandreview\/product-body-html\/4136184\/d377e9ae46277062.jpg\"\u003e\u003cfigcaption\u003eAged Brass \/ Black Wood Stain\u003c\/figcaption\u003e\u003c\/figure\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003cscript\u003e\n(function(){\n  var root=document.getElementById('ppd-35643');\n  if(!root||root.dataset.ppdInit)return;\n  root.dataset.ppdInit='1';\n  var reduced=window.matchMedia\u0026\u0026window.matchMedia('(prefers-reduced-motion: reduce)').matches;\n\n  function initCarousel(el){\n    var track=el.querySelector('.ppd-track');\n    var slides=track.children.length;\n    var viewport=el.querySelector('.ppd-viewport');\n    var prev=document.createElement('button');\n    prev.type='button';prev.className='ppd-arrow ppd-arrow-prev';prev.setAttribute('aria-label','Previous slide');\n    prev.innerHTML='\u003csvg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\u003cpath d=\"M15 18l-6-6 6-6\"\/\u003e\u003c\/svg\u003e';\n    var next=prev.cloneNode(true);\n    next.className='ppd-arrow ppd-arrow-next';next.setAttribute('aria-label','Next slide');\n    next.querySelector('path').setAttribute('d','M9 6l6 6-6 6');\n    var dots=document.createElement('div');dots.className='ppd-dots';\n    el.appendChild(prev);el.appendChild(next);el.appendChild(dots);\n    var index=0,pv=1,pages=1,timer=null;\n    function perView(){\n      var w=window.innerWidth;\n      if(w\u003e=1025)return parseInt(el.dataset.lg,10)||4;\n      if(w\u003e=768)return parseInt(el.dataset.md,10)||2;\n      return parseInt(el.dataset.sm,10)||1;\n    }\n    function layout(){\n      pv=perView();\n      el.style.setProperty('--pv',pv);\n      pages=Math.max(1,Math.ceil(slides\/pv));\n      if(index\u003epages-1)index=pages-1;\n      dots.innerHTML='';\n      for(var i=0;i\u003cpages;i++){\n        var b=document.createElement('button');\n        b.type='button';b.setAttribute('aria-label','Go to slide '+(i+1));\n        (function(n){b.addEventListener('click',function(){go(n);restart();});})(i);\n        dots.appendChild(b);\n      }\n      var showNav=pages\u003e1;\n      prev.style.display=showNav?'':'none';\n      next.style.display=showNav?'':'none';\n      dots.style.display=showNav?'':'none';\n      go(index);\n    }\n    function go(n){\n      index=Math.max(0,Math.min(n,pages-1));\n      var slideW=viewport.clientWidth\/pv;\n      var offset=Math.min(index*pv,slides-pv);\n      track.style.transform='translate3d(-'+(offset*slideW)+'px,0,0)';\n      prev.disabled=index===0;\n      next.disabled=index===pages-1;\n      for(var i=0;i\u003cdots.children.length;i++)\n        dots.children[i].classList.toggle('is-active',i===index);\n    }\n    function restart(){\n      if(timer){clearInterval(timer);timer=null;}\n      if(reduced||pages\u003c2)return;\n      timer=setInterval(function(){go(index+1\u003epages-1?0:index+1);},5000);\n    }\n    prev.addEventListener('click',function(){go(index-1);restart();});\n    next.addEventListener('click',function(){go(index+1);restart();});\n    el.addEventListener('mouseenter',function(){if(timer){clearInterval(timer);timer=null;}});\n    el.addEventListener('mouseleave',restart);\n    el.addEventListener('touchstart',function(){if(timer){clearInterval(timer);timer=null;}},{passive:true});\n    var startX=0;\n    viewport.addEventListener('touchstart',function(e){startX=e.touches[0].clientX;},{passive:true});\n    viewport.addEventListener('touchend',function(e){\n      var dx=e.changedTouches[0].clientX-startX;\n      if(Math.abs(dx)\u003e40)go(index+(dx\u003c0?1:-1));\n      restart();\n    },{passive:true});\n    window.addEventListener('resize',layout);\n    layout();restart();\n  }\n\n  var carousels=root.querySelectorAll('.ppd-carousel');\n  for(var i=0;i\u003ccarousels.length;i++)initCarousel(carousels[i]);\n\n  var videos=root.querySelectorAll('.ppd-video');\n  for(var v=0;v\u003cvideos.length;v++){\n    (function(btn){\n      btn.addEventListener('click',function(){\n        if(btn.dataset.loaded)return;\n        btn.dataset.loaded='1';\n        var f=document.createElement('iframe');\n        f.src=btn.dataset.src;\n        f.allow='accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture';\n        f.allowFullscreen=true;\n        btn.innerHTML='';btn.appendChild(f);btn.style.cursor='default';\n      });\n    })(videos[v]);\n  }\n\n  if(!reduced\u0026\u0026'IntersectionObserver' in window){\n    var io=new IntersectionObserver(function(entries){\n      entries.forEach(function(en){\n        if(en.isIntersecting){en.target.classList.add('is-visible');io.unobserve(en.target);}\n      });\n    },{threshold:.08});\n    var reveals=root.querySelectorAll('.ppd-reveal');\n    for(var j=0;j\u003creveals.length;j++)io.observe(reveals[j]);\n  }else{\n    var all=root.querySelectorAll('.ppd-reveal');\n    for(var k=0;k\u003call.length;k++)all[k].classList.add('is-visible');\n  }\n})();\n\u003c\/script\u003e\n\u003c\/div\u003e","brand":"FLOSSLO","offers":[{"title":"Black Wood Stain","offer_id":48955481555200,"sku":"41618","price":220.98,"currency_code":"USD","in_stock":true},{"title":"Whitewashed Wood","offer_id":48955481587968,"sku":"41619","price":220.98,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0831\/8291\/1744\/files\/946740024fd459dedccefec0e3acf01b.jpg?v=1783418084","url":"https:\/\/flosslo.com\/products\/jovani-farmhous-fluted-wood-drum-ceiling-light","provider":"flosslo.com","version":"1.0","type":"link"}