/**
 * Elementor compatibility styles – Prestige Realty
 * Loaded after Elementor frontend styles when Elementor is active.
 */

/* Theme locations full width */
.elementor-location-header,
.elementor-location-footer {
    width: 100%;
}

/* Elementor widget wrappers – property list grid */
.pr-elementor-property-list.pr-property-grid {
    display: grid;
    gap: var(--pr-gap);
    margin: 1.5rem 0;
}

.pr-elementor-property-list.pr-columns-2 {
    grid-template-columns: repeat(2, 1fr);
}

.pr-elementor-property-list.pr-columns-3 {
    grid-template-columns: repeat(3, 1fr);
}

.pr-elementor-property-list.pr-columns-4 {
    grid-template-columns: repeat(4, 1fr);
}

.pr-elementor-property-list.pr-layout-list .pr-property-card {
    display: grid;
    grid-template-columns: 300px 1fr;
}

.pr-elementor-property-list.pr-layout-list .pr-property-card__image {
    aspect-ratio: 1;
}

/* Property details widget */
.pr-elementor-property-details .pr-elementor-detail-price {
    font-size: var(--pr-fs-2xl);
    font-weight: 700;
    color: var(--pr-primary);
    margin: 0 0 0.5rem;
}

.pr-elementor-detail-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    font-size: var(--pr-fs-sm);
    color: var(--pr-text-muted);
}

/* Agent profile widget */
.pr-elementor-agent.pr-agent-card {
    text-align: center;
    padding: var(--pr-gap);
}

/* Mortgage calculator widget */
.pr-elementor-mortgage-calc .pr-form-group {
    margin-bottom: 1rem;
}

.pr-elementor-mortgage-calc .pr-mortgage-calc__result {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid var(--pr-border);
}

/* No results message */
.pr-elementor-no-results {
    color: var(--pr-text-muted);
    font-style: italic;
    margin: 1rem 0;
}

/* Pagination when used inside Elementor */
.pr-elementor-property-list + .pr-pagination {
    margin-top: 1.5rem;
}

/* Responsive – Elementor property list */
@media (max-width: 1024px) {
    .pr-elementor-property-list.pr-columns-4 {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 768px) {
    .pr-elementor-property-list.pr-columns-3,
    .pr-elementor-property-list.pr-columns-4 {
        grid-template-columns: repeat(2, 1fr);
    }

    .pr-elementor-property-list.pr-layout-list .pr-property-card {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {
    .pr-elementor-property-list.pr-columns-2,
    .pr-elementor-property-list.pr-columns-3,
    .pr-elementor-property-list.pr-columns-4 {
        grid-template-columns: 1fr;
    }
}
