PESYJE SEARCH MODERN V2 — MAP FIX + UI REBUILD

This patch is based on the uploaded v17.1 project.

What was fixed:
- The map now ALWAYS loads. The old version aborted before Leaflet loaded when results had no coordinates.
- Real OpenStreetMap tiles are visible even when 0 current results have coordinates.
- Leaflet loads from jsDelivr with an unpkg fallback.
- Desktop defaults to List + Map, matching the approved Modern Mockup #2.
- Added three real view modes: List + Map / List / Map.
- Map is sticky on desktop and can expand fullscreen.
- Business card hover is synchronized with map markers when coordinates exist.
- Marker popup includes business logo, rating and profile link.
- Rebuilt the result cards and filter area to look much closer to the approved modern mockup.
- Mobile uses List or Map cleanly instead of squeezing both.
- Light/dark mode uses the existing Pesyje theme variables.

IMPORTANT:
No fake coordinates are generated.
If business_locations.latitude / longitude are empty, the real Albania map will show but that business cannot have an accurate marker.
The existing project already contains:
database/migrations/2026_08_12_000005_add_coordinates_to_business_locations.php

INSTALL:
cd /home/n377435/pesyje
unzip -o PESYJE_SEARCH_MODERN_V2_MAP_FIX.zip
php artisan optimize:clear
php artisan view:clear

NO database migration is required for this visual/map-loading fix if the coordinate migration was already run.

OPTIONAL DATABASE CHECK:
php artisan migrate:status | grep coordinates
