Book Discovery Call
1

Choose Your Occasion

Select a theme for your voucher

2

Select an Amount

Redeemable against any experience

£50
£100
£150
£
3

Personalise Your Voucher

Add names and a personal message

Live Preview

Gift Voucher

Wellbeing
Experience

Value

Select amount

Add a personal message…

For

Recipient name

With love from

Your name

Wellbeing Experiences

Envelope Side

A Gift For

Recipient

Wellbeing

Experiences

Your message will appear here…

Redeemable

Against any experience or treatment. Partial redemptions are possible and a balance can be carried forward.

Valid 12 Months

All vouchers are valid for 12 months from the date of purchase. Extensions may be available on request.

Any Occasion

Beautifully presented vouchers for any celebration. Print at home or we can post a physical copy for you.

Radlett, UK

Book online or call us to arrange your experience. Our team will be happy to help you plan the perfect visit.

Book Now `; const printWin = window.open('', '_blank', 'width=900,height=700'); printWin.document.write(printHTML); printWin.document.close(); printWin.onload = () => { setTimeout(() => { printWin.print(); }, 600); }; } // ═══════════════════════════════════════════════════════ // RESET // ═══════════════════════════════════════════════════════ function resetForm() { state = { occasion: OCCASIONS[0], amount: null, to: '', from: '', message: '', date: '', ref: '' }; document.querySelectorAll('.amount-pill').forEach(p => p.classList.remove('selected')); document.getElementById('custom-amount').value = ''; ['f-to','f-from','f-msg','f-date','f-ref'].forEach(id => document.getElementById(id).value = ''); document.querySelectorAll('.occasion-card').forEach((c,i) => c.classList.toggle('selected', i===0)); updateVoucher(); } // ═══════════════════════════════════════════════════════ // SCROLL REVEAL // ═══════════════════════════════════════════════════════ const revealObs = new IntersectionObserver((entries) => { entries.forEach((entry, i) => { if (entry.isIntersecting) { const idx = [...document.querySelectorAll('.step')].indexOf(entry.target); setTimeout(() => entry.target.classList.add('visible'), idx * 120); revealObs.unobserve(entry.target); } }); }, { threshold: 0.05 }); document.querySelectorAll('.step').forEach(el => revealObs.observe(el)); // ═══════════════════════════════════════════════════════ // INIT // ═══════════════════════════════════════════════════════ renderOccasions(); // Set today's date as default document.getElementById('f-date').value = new Date().toISOString().split('T')[0]; state.date = new Date().toISOString().split('T')[0]; updateVoucher(); Book Now