David Smith

What we do Services for You Strategy Lorem ipsum dolor sit amet, consectetur adipisicing Insurance Lorem ipsum dolor sit amet, consectetur adipisicing Financial Planning Lorem ipsum dolor sit amet,...

Simon Powell

What we do Services for You Strategy Lorem ipsum dolor sit amet, consectetur adipisicing Insurance Lorem ipsum dolor sit amet, consectetur adipisicing Financial Planning Lorem ipsum dolor sit amet,...

Barbara Smith

What we do Services for You Strategy Lorem ipsum dolor sit amet, consectetur adipisicing Insurance Lorem ipsum dolor sit amet, consectetur adipisicing Financial Planning Lorem ipsum dolor sit amet,...

Martin Simon

What we do Services for You Strategy Lorem ipsum dolor sit amet, consectetur adipisicing Insurance Lorem ipsum dolor sit amet, consectetur adipisicing Financial Planning Lorem ipsum dolor sit amet,...

Alisson Becker

What we do Services for You Strategy Lorem ipsum dolor sit amet, consectetur adipisicing Insurance Lorem ipsum dolor sit amet, consectetur adipisicing Financial Planning Lorem ipsum dolor sit amet,...

Robert Pineda

What we do Services for You   Strategy Lorem ipsum dolor sit amet, consectetur adipisicing   Insurance Lorem ipsum dolor sit amet, consectetur adipisicing   Financial Planning Lorem ipsum...

/* ---------- scroll progress ---------- */ const progress = document.getElementById('progress'); window.addEventListener('scroll', () => { const h = document.documentElement; const pct = h.scrollTop / (h.scrollHeight - h.clientHeight) * 100; progress.style.width = pct + '%'; }); const menuToggle = document.getElementById('menuToggle'); const mobileMenu = document.getElementById('mobileMenu'); menuToggle.addEventListener('click', () => { const open = mobileMenu.classList.toggle('open'); menuToggle.setAttribute('aria-expanded', open); }); mobileMenu.querySelectorAll('a').forEach(a => a.addEventListener('click', () => { mobileMenu.classList.remove('open'); menuToggle.setAttribute('aria-expanded', 'false'); })); const revealEls = document.querySelectorAll('.reveal, .reveal-stagger'); const io = new IntersectionObserver((entries) => { entries.forEach(entry => { if (entry.isIntersecting) { entry.target.classList.add('in'); io.unobserve(entry.target); } }); }, { threshold: 0.15 }); revealEls.forEach(el => io.observe(el)); /* ---------- hero image placeholder loop ---------- */ const imgSlides = document.querySelectorAll('.img-slide'); const imgDots = document.querySelectorAll('.img-loop-dots span'); let imgIndex = 0; if (imgSlides.length){ setInterval(() => { imgIndex = (imgIndex + 1) % imgSlides.length; imgSlides.forEach((s, i) => s.classList.toggle('active', i === imgIndex)); imgDots.forEach((d, i) => d.classList.toggle('active', i === imgIndex)); }, 3000); }