﻿/* ==========================================================================
   CostaLands - Clean & Subtle UI Transitions (No disruptive loops)
   ========================================================================== */

/* Standard smooth transitions */
a, button {
  transition: color 0.2s ease, background-color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

/* Subtle Card & Button Interactions */
@media (hover: hover) and (pointer: fine) {
  .service-card,
  .property-showcase-card,
  .amenity-card-item,
  .amenity-badge-card,
  .exp-card,
  .mgmt-card-box,
  .land-card {
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
  }

  .service-card:hover,
  .amenity-card-item:hover,
  .amenity-badge-card:hover,
  .exp-card:hover,
  .mgmt-card-box:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 30px rgba(42, 66, 42, 0.08);
    border-color: #2a422a;
  }

  .property-showcase-card:hover,
  .land-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 16px 35px rgba(0, 0, 0, 0.08);
  }

  .btn-primary:hover,
  .btn-hero-primary:hover,
  .btn-book-now:hover {
    background-color: #2a422a;
    box-shadow: 0 4px 15px rgba(42, 66, 42, 0.2);
  }

  .btn-secondary:hover,
  .btn-hero-secondary:hover {
    background-color: #f2f2f2;
  }
}

/* Amenity & Experience Icon Circles (Clean & Crisp) */
.amenity-icon-circle {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  background: #f2f2f2;
  border: 1px solid rgba(42, 66, 42, 0.1);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.25rem;
  transition: background-color 0.25s ease;
}

.amenity-icon-circle img {
  width: 44px;
  height: 44px;
  object-fit: contain;
}

@media (hover: hover) and (pointer: fine) {
  .amenity-card-item:hover .amenity-icon-circle,
  .amenity-badge-card:hover .amenity-icon-circle {
    background: #FFFFFF;
    border-color: #2a422a;
  }
}

/* Restored Entry Animations */
.reveal, .reveal-up, .reveal-fade, .reveal-left, .reveal-right, .reveal-scale {
  opacity: 0;
  transition: all 0.8s ease-out;
}
.reveal-up { transform: translateY(40px); }
.reveal-left { transform: translateX(-40px); }
.reveal-right { transform: translateX(40px); }
.reveal-scale { transform: scale(0.95); }

.reveal.is-revealed,
.reveal-up.is-revealed,
.reveal-fade.is-revealed,
.reveal-left.is-revealed,
.reveal-right.is-revealed,
.reveal-scale.is-revealed {
  opacity: 1;
  transform: translateY(0) translateX(0) scale(1);
}

/* Mobile Touch Feedback */
@media (max-width: 991px) {
  .btn-primary:active,
  .btn-hero-primary:active,
  .btn-secondary:active,
  .btn-hero-secondary:active,
  .btn-book-now:active {
    opacity: 0.85;
  }
}
