/* Homepage Map Block Styles */
.homepage-map-block {
  position: relative;
}

.homepage-map-btn {
  background: linear-gradient(120deg, #00a14f 0%, #00a14f 100%) !important;
  color: white !important;
  text-decoration: none !important;
  box-shadow: 0 4px 15px rgba(84, 168, 199, 0.3) !important;
  transition: all 0.3s ease !important;
  border: none !important;
}

.homepage-map-overlay:hover .homepage-map-btn {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(84, 199, 147, 0.4) !important;
  background: linear-gradient(120deg, #00a14f 0%, #00a14f 100%) !important;
}

.homepage-map-block [id*="homepage-map-"] {
  filter: grayscale(20%) brightness(1.1);
}

/* Ensure Leaflet loads properly */
.homepage-map-block .leaflet-container {
  background: #e8f4f8;
}

.homepage-map-block .leaflet-control-container {
  display: none;
}

/* Custom marker animation */
.custom-park-marker {
  animation: pulse 2s infinite;
}

@keyframes pulse {
  0% {
    transform: scale(1);
    opacity: 1;
  }
  50% {
    transform: scale(1.1);
    opacity: 0.8;
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .homepage-map-overlay > div {
    padding: 2rem 1.5rem !important;
    max-width: 90% !important;
    margin: 0 1rem !important;
  }

  .homepage-map-overlay .display-4 {
    font-size: 2.5rem !important;
  }

  .homepage-map-overlay .lead {
    font-size: 1rem !important;
  }

  .homepage-map-btn {
    padding: 0.75rem 1.5rem !important;
    font-size: 0.9rem !important;
  }
}

@media (max-width: 576px) {
  .homepage-map-block [class*="container"] {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }

  h2.display-4.mb-3.park-dark {
    font-size: 1.3rem !important;
  }
}
