/* Reusable Livewire property cards, using the homepage theme structure. */
.livewire-property-card .property-image .card-cover { width: 100%; height: 220px; object-fit: cover; display: block; }
.livewire-property-card .card-no-photo { height: 220px; background: #eee; color: #555; display: flex; flex-direction: column; gap: .5rem; align-items: center; justify-content: center; }
.livewire-property-card .card-no-photo .material-icons { font-size: 40px; }
.livewire-property-card .card-photo-previous,
.livewire-property-card .card-photo-next { position: absolute; top: 50%; transform: translateY(-50%); width: 36px; height: 36px; padding: 6px; background: rgba(0,0,0,.55); color: white; border-radius: 50%; }
.livewire-property-card .card-photo-previous { left: 8px; }
.livewire-property-card .card-photo-next { right: 8px; }
.livewire-property-card .card-photo-count { position: absolute; bottom: 8px; right: 8px; padding: 2px 8px; border-radius: 12px; background: rgba(0,0,0,.65); color: white; font-size: 12px; }
.livewire-property-card .property-content-wrapper { display: flex; flex-direction: column; flex-grow: 1; }
.livewire-property-card .property-content { flex-grow: 1; }
.livewire-property-card .title, .livewire-property-card .address span { overflow-wrap: anywhere; }
.livewire-property-card .price { margin-top: .75rem; }
.livewire-property-card .price p { margin: 0 0 .5rem; }
.livewire-property-card .price strong { font-size: 20px; }
.livewire-property-card .actions { margin-top: 1rem; gap: .5rem; }
.property-finder .finder-grid.property-results-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 1199px) { .property-finder .finder-grid.property-results-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 991px) { .property-finder .finder-grid.property-results-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 599px) { .property-finder .finder-grid.property-results-grid { grid-template-columns: minmax(0, 1fr); } }

.livewire-article-card .article-card-summary { color: var(--mdc-theme-text-secondary-on-background); line-height: 1.6; overflow-wrap: anywhere; }
.livewire-article-card .article-card-categories { font-size: 12px; overflow-wrap: anywhere; }
.article-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.5rem; }
@media (max-width: 991px) { .article-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 599px) { .article-card-grid { grid-template-columns: minmax(0, 1fr); } }

.home-property-section { margin: 2.5rem 0; }
.home-property-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.5rem; }
@media (max-width: 1199px) { .home-property-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 991px) { .home-property-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 599px) { .home-property-grid { grid-template-columns: minmax(0, 1fr); } }

.livewire-property-card .card-tags { display: flex; flex-wrap: wrap; gap: 6px; list-style: none; margin: 0 0 10px; padding: 0; }
.livewire-property-card .card-tag { max-width: 100%; padding: 3px 10px; border-radius: 12px; background: var(--mdc-theme-primary); color: var(--mdc-theme-on-primary, #fff); font-size: 12px; font-weight: 600; line-height: 1.5; overflow-wrap: anywhere; }
