/**
 * CT-49 — Section header unificado.
 *
 * Estilo único compartido por todos los componentes del homepage. Definido
 * con CSS vars para que componentes individuales (zones-grid, faq, how-it-works)
 * puedan referenciar el mismo scale.
 *
 * @package WPRentals_Child_PML
 */

/* ============================================================================
 * CSS VARS — referenciables desde cualquier componente
 * ========================================================================= */

:root {
    --pml-sh-eyebrow-size:    12px;
    --pml-sh-eyebrow-weight:  600;
    --pml-sh-eyebrow-spacing: 0.18em;

    --pml-sh-title-size:      clamp(28px, 3.6vw, 40px);
    --pml-sh-title-weight:    600;
    --pml-sh-title-leading:   1.15;
    --pml-sh-title-tracking:  -0.008em;

    --pml-sh-subtitle-size:   17px;
    --pml-sh-subtitle-leading: 1.55;

    --pml-sh-gap:             14px;
}

/* ============================================================================
 * STANDALONE SECTION (cuando se usa [pml_section_heading] por sí solo)
 * ========================================================================= */

.pml-sh-section {
    width: 100%;
    padding: 56px 0 12px;
    background: transparent;
}

.pml-sh-section__inner {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 24px;
}

@media (max-width: 560px) {
    .pml-sh-section {
        padding: 40px 0 8px;
    }
    .pml-sh-section__inner {
        padding: 0 16px;
    }
}

/* ============================================================================
 * HEADER BLOCK (markup compartido — emitido por pml_section_header() helper)
 * ========================================================================= */

.pml-sh {
    max-width: 760px;
    display: flex;
    flex-direction: column;
    gap: var(--pml-sh-gap);
}

.pml-sh--center {
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    align-items: center;
}

.pml-sh--left {
    margin-left: 0;
    margin-right: auto;
    text-align: left;
    align-items: flex-start;
}

/* ----- Eyebrow ----- */

.pml-sh__eyebrow {
    font-family: var(--pml-font-accent), 'Jost', sans-serif;
    font-size: var(--pml-sh-eyebrow-size);
    font-weight: var(--pml-sh-eyebrow-weight);
    letter-spacing: var(--pml-sh-eyebrow-spacing);
    text-transform: uppercase;
    line-height: 1;
}

.pml-sh__eyebrow--coral { color: var(--pml-coral-dark, #b5440f); }
.pml-sh__eyebrow--dark  { color: var(--pml-text-secondary, #666); }

/* ----- Title ----- */

.pml-sh__title {
    font-family: var(--pml-font-heading), 'Jost', sans-serif;
    font-size: var(--pml-sh-title-size);
    font-weight: var(--pml-sh-title-weight);
    line-height: var(--pml-sh-title-leading);
    letter-spacing: var(--pml-sh-title-tracking);
    color: var(--pml-black, #000);
    margin: 0;
}

/* ----- Subtitle ----- */

.pml-sh__subtitle {
    font-family: var(--pml-font-body), 'Jost', sans-serif;
    font-size: var(--pml-sh-subtitle-size);
    line-height: var(--pml-sh-subtitle-leading);
    color: var(--pml-text-secondary, #666);
    margin: 0;
}

@media (max-width: 560px) {
    .pml-sh__subtitle {
        font-size: 15px;
    }
}
