
Need a magician in Muncie with this kind of impact?
Magic for Extraordinary Events
You get to transform your event into a fun and unique experience through magic, mind reading, and interactive entertainment.
Since the magic happens in their hands, there will be cheers, screams, lots of discussion, and a buzz in the atmosphere, bringing everyone in your group together.
Happy clients of Muncie magician Jon Finch
VIRTUAL MENTALISTAs one of the most popular magicians in Muncie, Muntucky entertainer Jon Finch serves surrounding Indiana cities and suburbs including Muncie. Join thousands of Hoosiers who gave their guests a memory of a lifetime.

“We hired Jon as a mentalist for a fundraising cocktail party held at our house for 100 people. He was outstanding! ... Jon was perfect and so entertaining! HOLIDAY PARTY MAGIC

Stacy PurcellVIRTUAL TEAM BUILDING
Muncie
“I had breakfast with Nisar this morning who told me he didn't sleep because his mind kept spinning as he tried to crack the code to your magic! I would say you set a new bar — he's not easily impressed. You are clearly a one-of-a-kind magician!”

Erin SherbertREVIEWS
Salesforce

All Muncie areas served
in or near NaptownMagicians near MuncieSheridan magician
Need a magician in Sheridan with this kind of impact?Magician AlexandriaMagic for Extraordinary Events
You get to transform your event into a fun and unique experience through magic, mind reading, and interactive entertainment.Magician AndersonThe Master Mentalist will delight your audience with his Bohemian-style, personalized command performances of magic, giving each attendee the chance to shine.
Since the magic happens in their hands, there will be cheers, screams, lots of discussion, and a buzz in the atmosphere, bringing everyone in your group together.Magician ArcadiaCheck availability
Happy clients of Sheridan magician Jon FinchMagician Carmel
document.addEventListener('DOMContentLoaded', function() { // Target the UL elements with their unique classes const topRow = document.querySelector('.logos-top-row'); const bottomRow = document.querySelector('.logos-bottm-row'); // Function to set up scrolling for a specific row with custom duration function setupScroll(list, duration) { // Make sure the list has the right CSS list.style.display = 'flex'; list.style.width = 'fit-content'; // Get the first half of items (your original logos) const items = Array.from(list.children).slice(0, list.children.length / 2); // Calculate the width of the first half (original set of logos) const firstHalfWidth = items.reduce((width, item) => { return width + item.offsetWidth; }, 0); // Set the scroll function function scroll() { // Reset position instantly list.style.transition = 'none'; list.style.transform = 'translateX(0)'; // Force reflow void list.offsetWidth; // Start smooth scrolling animation with custom duration list.style.transition = `transform ${duration}s cubic-bezier(0.4, 0.0, 0.2, 1)`; list.style.transform = `translateX(-${firstHalfWidth}px)`; } // Initial scroll scroll(); // Set up infinite scrolling with specific event list.addEventListener('transitionend', function(event) { // Only trigger scroll reset if it's the transform transition that ended if (event.propertyName === 'transform') { scroll(); } }); } // Reduce speed for mobile const speedMultiplier = window.innerWidth <

9 mph



































