.listing-card {
  overflow: hidden; background: var(--surface-strong); border: 1px solid var(--line);
  border-radius: var(--radius-md); box-shadow: var(--shadow-sm);
  transition: transform var(--transition), box-shadow var(--transition);
}
.listing-card:hover, .listing-card:focus-within {
  transform: translateY(-4px); box-shadow: var(--shadow-lg);
}
.card-media { min-height: 220px; }
.gradient-apricot { background: linear-gradient(135deg, rgba(233,141,99,0.95), rgba(255,230,194,0.9)); }
.gradient-honey { background: linear-gradient(135deg, rgba(242,198,109,0.95), rgba(233,141,99,0.72)); }
.gradient-sage { background: linear-gradient(135deg, rgba(126,162,135,0.95), rgba(230,242,229,0.9)); }
.card-body { padding: 22px; }
.card-meta {
  display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 14px;
  color: var(--muted); font-size: 0.92rem;
}
.featured-card { position: relative; }
.featured-card::after {
  content: "Premium"; position: absolute; top: 18px; right: 18px; min-height: 30px; padding: 0 12px;
  display: inline-flex; align-items: center; border-radius: 999px; background: rgba(31,26,23,0.88); color: #fff;
  font-size: 0.78rem; font-weight: 700;
}
.partner-card ul { margin-top: 16px; }
.newsletter-card { display: grid; gap: 12px; }
.info-card .button, .newsletter-card .button { margin-top: 8px; width: 100%; }
