days: document.getElementById('bfDays'), hours: document.getElementById('bfHours'), mins: document.getElementById('bfMins'), miniDays: document.getElementById('bfMiniDays'), miniHours: document.getElementById('bfMiniHours'), miniMins: document.getElementById('bfMiniMins'), scrollDays: document.getElementById('scrollDays'), scrollHours: document.getElementById('scrollHours'), scrollMins: document.getElementById('scrollMins'), scrollDays2: document.getElementById('scrollDays2'), scrollHours2: document.getElementById('scrollHours2'), scrollMins2: document.getElementById('scrollMins2') }; function pad(n){ return String(n).padStart(2,'0'); } function tick(){ const now = new Date(); let diff = deadline - now; if (diff <= 0) { Object.values(els).forEach(el => { if (el) el.textContent = '00'; }); document.body.classList.add('bf-expired'); clearInterval(timer); return; } const d = Math.floor(diff / (1000*60*60*24)); diff -= d * (1000*60*60*24); const h = Math.floor(diff / (1000*60*60)); diff -= h * (1000*60*60); const m = Math.floor(diff / (1000*60)); if (els.days) els.days.textContent = pad(d); if (els.hours) els.hours.textContent = pad(h); if (els.mins) els.mins.textContent = pad(m); if (els.miniDays) els.miniDays.textContent = pad(d); if (els.miniHours) els.miniHours.textContent = pad(h); if (els.miniMins) els.miniMins.textContent = pad(m); if (els.scrollDays) els.scrollDays.textContent = pad(d); if (els.scrollHours) els.scrollHours.textContent = pad(h); if (els.scrollMins) els.scrollMins.textContent = pad(m); if (els.scrollDays2) els.scrollDays2.textContent = pad(d); if (els.scrollHours2) els.scrollHours2.textContent = pad(h); if (els.scrollMins2) els.scrollMins2.textContent = pad(m); } const timer = setInterval(tick, 30000); // update every 30s tick(); // initial // Sticky CTA visibility (mobile) const sticky = document.querySelector('.bf-sticky-cta'); const hero = document.querySelector('.blackfriday-hero'); function onScroll(){ if (!sticky || !hero) return; const threshold = (hero.getBoundingClientRect().bottom); sticky.style.display = threshold < 0 ? 'flex' : 'none'; } window.addEventListener('scroll', onScroll, { passive: true }); onScroll(); })(); -->