/* Safiri Diani — animations.css */

/* Page load fade */
body { animation: pageFadeIn 0.6s ease; }
@keyframes pageFadeIn { from { opacity:0; } to { opacity:1; } }

/* Card hover lift (already in style.css, reinforced here for specificity) */
.exp-card:hover { transform: translateY(-8px); }
.romantic-card:hover { transform: translateY(-6px); }

/* Button scale micro-interaction */
.btn:active { transform: scale(0.97); }

/* Image zoom on hero tiles */
.highlight-img { overflow: hidden; }

/* Shimmer loading skeleton */
.skeleton {
  background: linear-gradient(90deg, #f0f0f0 25%, #e8e8e8 50%, #f0f0f0 75%);
  background-size: 200% 100%;
  animation: shimmer 1.4s infinite;
  border-radius: 4px;
}
@keyframes shimmer {
  0%   { background-position: 200% 0; }
  100% { background-position: -200% 0; }
}

/* Gold underline link hover */
.footer-col ul li a {
  position: relative;
}
.footer-col ul li a::after {
  content: '';
  position: absolute; bottom: -2px; left: 0;
  width: 0; height: 1px;
  background: var(--gold);
  transition: width 0.3s ease;
}
.footer-col ul li a:hover::after { width: 100%; }

/* Smooth mosaic hover */
.mosaic-item { transition: transform 0.3s ease; }
.mosaic-item:hover { transform: scale(1.01); z-index: 2; }

/* Badge pulse */
.card-badge {
  animation: badgePulse 3s ease-in-out infinite;
}
@keyframes badgePulse {
  0%, 100% { box-shadow: 0 0 0 0 rgba(232,98,42,0.3); }
  50%       { box-shadow: 0 0 0 6px rgba(232,98,42,0); }
}

/* Focus styles for accessibility */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 2px;
}
