champ high
3,80 
Αυτό το προϊόν έχει πολλαπλές παραλλαγές. Οι επιλογές μπορούν να επιλεγούν στη σελίδα του προϊόντος
champ high
17,30 
Αυτό το προϊόν έχει πολλαπλές παραλλαγές. Οι επιλογές μπορούν να επιλεγούν στη σελίδα του προϊόντος
champ high
19,80 
Αυτό το προϊόν έχει πολλαπλές παραλλαγές. Οι επιλογές μπορούν να επιλεγούν στη σελίδα του προϊόντος
champ high
2,50 
Αυτό το προϊόν έχει πολλαπλές παραλλαγές. Οι επιλογές μπορούν να επιλεγούν στη σελίδα του προϊόντος
champ high
2,50 
Αυτό το προϊόν έχει πολλαπλές παραλλαγές. Οι επιλογές μπορούν να επιλεγούν στη σελίδα του προϊόντος

Πίπες καπνού

Champ High – Skull Plastic Bong

champ high
15,00 
Αυτό το προϊόν έχει πολλαπλές παραλλαγές. Οι επιλογές μπορούν να επιλεγούν στη σελίδα του προϊόντος
champ high
(function(){ // ύψος sticky header function headerOffset(){ const hw = document.querySelector('.header-wrapper'); return hw ? hw.offsetHeight : 80; } // Smooth scroll με offset function smoothTo(el){ const top = el.getBoundingClientRect().top + window.pageYOffset - headerOffset() - 8; window.scrollTo({ top, behavior: 'smooth' }); } // Κλικ σε link TOC document.addEventListener('click', function(e){ const a = e.target.closest('a.toc-link[href^="#"]'); if(!a) return; e.preventDefault(); const id = a.getAttribute('href').slice(1); let target = document.getElementById(id); // Αν δεν βρεθεί, ψάχνει accordion-item if(!target){ target = document.querySelector('.accordion-item#'+CSS.escape(id)); } if(!target) return; // Αν είναι κλειστό accordion item το ανοίγει const accItem = target.classList.contains('accordion-item') ? target : target.closest('.accordion-item'); if (accItem && !accItem.classList.contains('active')){ const title = accItem.querySelector('.accordion-title, .toggle, [data-toggle]'); if(title) title.click(); setTimeout(function(){ smoothTo(accItem); }, 250); } else { smoothTo(target); } }); // ScrollSpy: ενεργό link const sections = Array.from(document.querySelectorAll('.accordion-item[id], #cookie-settings')); const links = Array.from(document.querySelectorAll('.toc a.toc-link')); function setActive(id){ links.forEach(l => l.classList.toggle('active', l.getAttribute('href')==='#'+id)); } if('IntersectionObserver' in window && sections.length){ const io = new IntersectionObserver((entries)=>{ let best=null, max=0; entries.forEach(en=>{ if(en.isIntersecting && en.intersectionRatio>max){ max=en.intersectionRatio; best=en.target; } }); if(best && best.id) setActive(best.id); }, { rootMargin:`-${headerOffset()+10}px 0px -60% 0px`, threshold:[0.1,0.25,0.5,0.75,1] }); sections.forEach(s=>io.observe(s)); } else { window.addEventListener('scroll', function(){ let cur = sections[0]?.id, off = headerOffset()+20; sections.forEach(s=>{ if(pageYOffset >= s.offsetTop - off) cur = s.id; }); if(cur) setActive(cur); }); } })();