s
International Presence Safetop
Leaders in security in 11 strategic markets
🌍 11 countries with active presenceMIDDLE EAST
United Arab Emirates
Countries with Safetop presence
Other countries
$ {info} ``` tooltip.classList.add('show'); updateTooltipPosition(element); } // Function to hide tooltip function hideTooltip() { tooltip.classList.remove('show'); } // Events for SVG countries activeCountries.forEach(country => { const countryId = country.getAttribute('id'); const countryInfo = safetopCountries[countryId]; country.addEventListener('mouseenter', function(e) { if (countryInfo) { showTooltip(this, countryInfo.name, countryInfo.info); } }); country.addEventListener('mousemove', function(e) { updateTooltipPosition(e); }); country.addEventListener('mouseleave', hideTooltip); // Click effect to highlight country.addEventListener('click', function() { activeCountries.forEach(c => c.style.transform = ''); this.style.transform = 'scale(1.05)'; this.style.transformOrigin = 'center'; }); }); // Events for markers markers.forEach(marker => { marker.addEventListener('mouseenter', function(e) { const title = this.querySelector('title'); if (title) { showTooltip(this, title.textContent); } }); marker.addEventListener('mousemove', function(e) { updateTooltipPosition(e); }); marker.addEventListener('mouseleave', hideTooltip); }); // Event for United Arab Emirates uaeMarker.addEventListener('mouseenter', function() { showTooltip(this, 'United Arab Emirates', 'Operations in the Middle East'); }); uaeMarker.addEventListener('mouseleave', hideTooltip); // Function to update tooltip position function updateTooltipPosition(e) { const rect = e.target.closest('.safetop-map-container').getBoundingClientRect(); const x = e.clientX - rect.left; const y = e.clientY - rect.top; tooltip.style.left = Math.min(x, rect.width - 220) + 'px'; tooltip.style.top = Math.max(y - 70, 10) + 'px'; } // Initial sequential animation setTimeout(() => { activeCountries.forEach((country, index) => { setTimeout(() => { country.style.animation = 'pulse 0.8s ease-in-out'; setTimeout(() => { country.style.animation = ''; }, 800); }, index * 200); }); // Animate markers after countries setTimeout(() => { markers.forEach((marker, index) => { setTimeout(() => { marker.style.animation = 'marker-bounce 1s ease-in-out'; }, index * 100); }); }, activeCountries.length * 200); }, 1000); // Animated counting effect const countElement = document.querySelector('.safetop-countries-count'); let count = 0; const target = 11; const increment = () => { if (count {count} countries with active presence`; setTimeout(increment, 100); } }; setTimeout(increment, 2000); });