console.log('Custom code loaded'); document.addEventListener('click', (e) => { if (e.target.matches('.zoomable-image')) { window.wixAnalytics.trackEvent('ImageZoom', { image_id: e.target.getAttribute('data-image-id') }); } }); document.addEventListener('click', (e) => { if (e.target.matches('.expand-image')) { window.wixAnalytics.trackEvent('ImageExpand', { image_id: e.target.getAttribute('data-image-id') }); } }); document.addEventListener('gallerySwipe', (e) => { window.wixAnalytics.trackEvent('ImageSwipe', { direction: e.detail.direction, index: e.detail.index }); }); let fired = {25:false, 50:false, 75:false, 100:false}; window.addEventListener('scroll', () => { const depth = (window.scrollY + window.innerHeight) / document.body.scrollHeight * 100; [25, 50, 75, 100].forEach(level => { if (!fired[level] && depth >= level) { fired[level] = true; window.wixAnalytics.trackEvent('ScrollDepth', { level }); } }); }); const hero = document.querySelector('#hero'); let heroStart = null; const observer = new IntersectionObserver(entries => { entries.forEach(entry => { if (entry.isIntersecting) { heroStart = Date.now(); } else if (heroStart) { const duration = Math.round((Date.now() - heroStart) / 1000); window.wixAnalytics.trackEvent('TimeInView', { section: 'hero', seconds: duration }); heroStart = null; } }); }); if (hero) observer.observe(hero);
top of page

Refund Policy

🧾 Overview

These Terms & Conditions outline the rules for using this website and purchasing work from rTfact.studio. By accessing the site or placing an order, you agree to these terms.

📅 Returns

Items may be returned for a refund if they are:
•     Returned within 7 days of purchase
•     In perfect, unused condition
•     Packaged securely to prevent damage in transit

Customers are responsible for return shipping costs unless otherwise agreed.

📦 Breakages & Delivery Issues

Responsibility for breakages caused by the delivery service rests with the carrier.


rTfact.studio packages all items with the utmost of care and will do everything possible to prevent possible breakage during transit, however is not liable for damage that occurs during shipping.

🧾 Refunds

Refunds are issued once the returned item has been received and inspected.
If the item is not returned in its original condition, a refund may not be approved.

📬 Contact

For questions about these terms or any part of the purchasing process, please get in touch through the Contact page.

bottom of page