/* =========================================================================
   Componente: page-hero (hero de páginas internas — bairro, classificados, etc.)
   ========================================================================= */

.page-hero {
    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-darker) 100%);
    color: #fff;
    padding-block: var(--space-12) calc(var(--space-12) + var(--space-6));
    text-align: center;
}

.page-hero__inner {
    max-width: 880px;
}

.page-hero__breadcrumb {
    font-size: var(--font-size-sm);
    opacity: 0.85;
    margin-bottom: var(--space-4);
}

.page-hero__breadcrumb a {
    color: #fff;
}

.page-hero__breadcrumb a:hover {
    color: var(--color-accent);
    text-decoration: none;
}

.page-hero__title {
    color: #fff;
    font-family: var(--font-heading);
    font-weight: var(--font-weight-black);
    font-size: clamp(1.75rem, 4vw, 2.75rem);
    line-height: 1.15;
    margin: 0;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
}

.page-hero__sublabel {
    margin-top: var(--space-2);
    opacity: 0.8;
    font-style: italic;
    font-size: var(--font-size-sm);
}

.page-hero__subtitle {
    margin-top: var(--space-4);
    font-size: var(--font-size-md);
    opacity: 0.92;
    max-width: 680px;
    margin-inline: auto;
}

.page-hero__actions {
    margin-top: var(--space-6);
    display: flex;
    justify-content: center;
    gap: var(--space-3);
    flex-wrap: wrap;
}

.page-hero--classificados {
    background: linear-gradient(135deg, #1B4C4B 0%, #113837 100%);
}

/* ---------- Estados de resultados ---------- */
.results-header {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    gap: var(--space-3);
    margin-bottom: var(--space-6);
    padding-bottom: var(--space-3);
    border-bottom: 1px solid var(--color-border);
}

.results-header__count {
    color: var(--color-text-muted);
    font-size: var(--font-size-sm);
    margin: 0;
}

.empty-state {
    text-align: center;
    padding: var(--space-16) var(--space-4);
    background: var(--color-primary-soft);
    border-radius: var(--radius-lg);
}

.empty-state__icon {
    font-size: 3rem;
    display: block;
    margin-bottom: var(--space-3);
}

.empty-state h2 {
    color: var(--color-primary-darker);
    margin-bottom: var(--space-2);
}

.empty-state p {
    color: var(--color-text-muted);
    margin-bottom: var(--space-4);
}
