/* Properties list — hero slideshow, cards, performance-tuned */

body.properties-page {
  background: #f1f5f9 !important;
}

/* Hero slideshow */
.props-hero {
  position: relative;
  overflow: hidden;
  border-radius: 1.25rem;
  border: 1px solid #e2e8f0;
  min-height: 280px;
}

.props-hero__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.props-hero__slide {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  opacity: 0;
  transition: opacity 1.4s ease-in-out;
  transform: scale(1.04);
}

.props-hero__slide.is-active {
  opacity: 1;
  transform: scale(1);
}

.props-hero__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(
    135deg,
    rgba(15, 23, 42, 0.78) 0%,
    rgba(15, 23, 42, 0.55) 45%,
    rgba(6, 78, 59, 0.65) 100%
  );
}

.props-hero__content {
  position: relative;
  z-index: 2;
}

#listing-root {
  border: 1px solid rgba(148, 163, 184, 0.3) !important;
  box-shadow: 0 20px 48px rgba(2, 6, 23, 0.14) !important;
}

body.props-sidebar-collapsed #listing-root .max-w-4xl {
  max-width: 72rem !important;
}

.property-neo-panel {
  border-radius: 1rem;
  border: 1px solid rgba(255, 255, 255, 0.22);
  background: rgba(255, 255, 255, 0.96) !important;
  box-shadow: 0 12px 32px rgba(15, 23, 42, 0.12);
}

.property-neo-panel input,
.property-neo-panel select,
.property-neo-panel option {
  background: #fff !important;
  color: #0f172a !important;
  border-color: #cbd5e1 !important;
}

.property-neo-panel input::placeholder {
  color: #64748b !important;
}

.property-neo-panel summary {
  color: #334155 !important;
  font-weight: 600;
}

.property-card {
  border-radius: 1rem;
  border: 1px solid #e2e8f0;
  background: #fff;
  box-shadow: 0 4px 16px rgba(15, 23, 42, 0.06);
  transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
  position: relative;
  overflow: hidden;
}

.property-card:hover {
  transform: translateY(-4px);
  border-color: rgba(34, 197, 94, 0.35);
  box-shadow: 0 14px 36px rgba(15, 23, 42, 0.1);
}

.property-card-media {
  border-bottom: 1px solid #e2e8f0;
  position: relative;
  z-index: 5;
  overflow: hidden;
  background: #f1f5f9;
}

.property-card-media img {
  transition: transform 0.4s ease;
}

.property-card:hover .property-card-media img {
  transform: scale(1.06);
}

.property-card h2 {
  color: #0f172a !important;
}

.property-loc-line,
.property-meta-chip {
  color: #475569 !important;
}

.property-action-btn {
  min-height: 2rem;
  font-size: 0.74rem;
  color: #fff !important;
  font-weight: 700;
  border-radius: 0.65rem !important;
}

.hero-subtitle {
  display: inline-block;
  padding: 0.35rem 0.75rem;
  border-radius: 0.5rem;
  background: rgba(15, 23, 42, 0.72);
  color: #f8fafc !important;
  font-weight: 600;
}

/* Browse / explore cards */
.props-section-card {
  border-radius: 0.95rem !important;
  border: 1px solid #e2e8f0 !important;
  background: #fff !important;
  box-shadow: 0 4px 14px rgba(15, 23, 42, 0.05);
  transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

.props-section-card:hover {
  transform: translateY(-2px);
  border-color: rgba(34, 197, 94, 0.3) !important;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.08);
}

.props-chip {
  border: 1px solid #e2e8f0;
  background: #f8fafc;
  color: #1e293b !important;
  font-weight: 600;
}

.props-chip:hover {
  background: #ecfdf5;
  border-color: #86efac;
  color: #065f46 !important;
}

#properties-ask-ai {
  background: linear-gradient(110deg, #22c55e, #14b8a6, #0ea5e9) !important;
  box-shadow: 0 8px 24px rgba(34, 197, 94, 0.22);
}

.property-card.pc-a0 { border-left: 4px solid #059669; }
.property-card.pc-a1 { border-left: 4px solid #0891b2; }
.property-card.pc-a2 { border-left: 4px solid #7c3aed; }
.property-card.pc-a3 { border-left: 4px solid #c2410c; }
.property-card.pc-a4 { border-left: 4px solid #0d9488; }
.property-card.pc-a5 { border-left: 4px solid #db2777; }

.property-card-engage {
  background: rgba(15, 23, 42, 0.88) !important;
  border: 1px solid rgba(255, 255, 255, 0.2);
  z-index: 20;
  max-width: calc(100% - 0.75rem);
}

.property-engage-label {
  font-weight: 500;
  letter-spacing: 0.01em;
}

.property-engage-sep {
  font-size: 0.85em;
  line-height: 1;
}

.property-card-placeholder {
  pointer-events: none;
}

.property-action-wa {
  background: linear-gradient(145deg, #22c55e, #16a34a) !important;
}

.property-action-call {
  background: linear-gradient(145deg, #14b8a6, #0d9488) !important;
}

.property-action-detail {
  background: linear-gradient(145deg, #334155, #1e293b) !important;
}

.recent-search-chip {
  border: 1px solid #99f6e4;
  background: #fff;
  color: #0f172a;
  font-weight: 600;
}

.agency-spotlight-card,
.community-tile {
  border-radius: 1rem;
  border: 1px solid #e2e8f0;
  background: #fff;
  box-shadow: 0 4px 14px rgba(15, 23, 42, 0.05);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.agency-spotlight-card:hover,
.community-tile:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.08);
}

.agency-spotlight-name { color: #0f172a; font-weight: 700; }
.agency-spotlight-count { color: #0f766e; font-weight: 800; }

.titanium-carousel-track {
  display: flex;
  gap: 1rem;
  overflow-x: auto;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  padding-bottom: 0.5rem;
}

@media (prefers-reduced-motion: reduce) {
  .props-hero__slide,
  .property-card,
  .property-card-media img {
    transition: none !important;
  }
}
