/* Configuración dinámica del encabezado y del filtro del listado público. */
.modern-listing-hero {
    padding-top: var(--listing-hero-top-spacing, 24px) !important;
    padding-bottom: var(--listing-hero-bottom-spacing, 24px) !important;
}

.modern-listing-hero .modern-kicker {
    margin-bottom: 9px !important;
    font-size: var(--listing-kicker-size, 11px) !important;
    color: var(--listing-kicker-color, #155EEF) !important;
}

.modern-listing-hero h1 {
    margin: 0 !important;
    max-width: 900px !important;
    font-size: var(--listing-title-desktop-size, 46px) !important;
    line-height: 1.02 !important;
    letter-spacing: -0.035em !important;
    color: var(--listing-title-color, #102A43) !important;
}

.modern-filter-panel {
    background: var(--listing-filter-panel-bg, #FFFFFF) !important;
    color: var(--listing-filter-text-color, #102A43) !important;
}

.modern-filter-title strong {
    font-size: var(--listing-filter-title-size, 24px) !important;
    color: var(--listing-filter-text-color, #102A43) !important;
}

.modern-filter-title p {
    font-size: var(--listing-filter-description-size, 13px) !important;
    color: var(--listing-filter-muted-color, #667085) !important;
}

.modern-filter-form label > span {
    font-size: var(--listing-filter-label-size, 10px) !important;
    color: var(--listing-filter-muted-color, #667085) !important;
}

.modern-filter-form input,
.modern-filter-form select {
    font-size: var(--listing-filter-field-size, 15px) !important;
    color: var(--listing-filter-text-color, #102A43) !important;
    background: var(--listing-filter-field-bg, #FFFFFF) !important;
}

.modern-filter-form input::placeholder {
    color: var(--listing-filter-muted-color, #667085) !important;
    opacity: .8;
}

.modern-filter-form button {
    font-size: var(--listing-filter-button-size, 12px) !important;
    color: var(--listing-filter-primary-text, #FFFFFF) !important;
    background: var(--listing-filter-primary-bg, #155EEF) !important;
}

.modern-filter-title a,
.modern-filter-reset {
    font-size: var(--listing-filter-button-size, 12px) !important;
    color: var(--listing-filter-secondary-text, #155EEF) !important;
    background: var(--listing-filter-secondary-bg, #FFFFFF) !important;
    border-color: var(--listing-filter-secondary-border, #D7E3FF) !important;
}

.modern-filter-count span,
.modern-listing-toolbar > span {
    color: var(--listing-filter-muted-color, #667085) !important;
}

.modern-filter-count strong {
    color: var(--listing-filter-text-color, #102A43) !important;
}

@media (max-width: 767px) {
    .modern-listing-hero h1 {
        font-size: var(--listing-title-mobile-size, 34px) !important;
        line-height: 1.05 !important;
    }
}
