/* ══════════════════════════════════════════════════════════════
   PME Incentivos — Page Header Unified v2
   Normaliza headers, breadcrumbs e espaçamentos.
   ══════════════════════════════════════════════════════════════ */

/* 1. <main> base */
main#main {
    min-height: 80vh;
}
main#main.has-hero {
    padding-top: 0;
}

/* 2. Heroes full-width */
.page-hero,
.cats-hero,
.cs-hero,
.ca-hero,
.al-hero,
.th-hero,
section.hero-compact {
    padding-top: 140px;
    padding-bottom: 56px;
    text-align: center;
}
section.hero-compact {
    background: var(--bg-hero);
}
.hero-container {
    max-width: 700px;
    text-align: center;
}

/* 3. Container pages — respiro extra */
main#main > .container:first-child {
    padding-top: 32px;
}

/* 4. Breadcrumbs — espaçamento uniforme */
.breadcrumbs,
nav.breadcrumb {
    font-size: .82rem;
}
/* Dentro de heroes centrados */
.page-hero .breadcrumbs,
.cats-hero .breadcrumbs,
.cs-hero .breadcrumbs,
.ca-hero .breadcrumbs,
.th-hero .breadcrumbs,
section.hero-compact .breadcrumbs,
section.hero-compact nav.breadcrumb {
    justify-content: center;
    margin-bottom: 20px;
}
/* Dentro de container pages */
.sb-w > .breadcrumbs,
.cons-w > .breadcrumbs,
.bib-w > .breadcrumbs,
.ct-w > .breadcrumbs,
.legal-wrap > .breadcrumbs {
    margin-bottom: 24px;
}

/* 5. Título → subtítulo */
.page-hero h1,
.cats-hero h1,
.cs-hero h1,
.ca-hero h1,
.al-hero h1,
.th-hero h1,
section.hero-compact h1,
.sb-hero h1 {
    font-size: clamp(1.8rem, 4vw, 2.6rem);
    font-weight: 900;
    letter-spacing: -.03em;
    line-height: 1.15;
    margin-bottom: 14px;
}
.cons-hdr h1,
.bib-hdr h1,
.ct-hero h1 {
    font-size: clamp(1.6rem, 3.5vw, 2.2rem);
    font-weight: 900;
    letter-spacing: -.02em;
    margin-bottom: 12px;
}

/* 6. Header → conteúdo */
.sb-hero,
.cons-hdr,
.bib-hdr,
.ct-hero {
    margin-bottom: 40px;
}

/* 7. Subtítulos uniformes */
.page-hero-desc,
.cats-hero > p,
.cs-hero > p,
.ca-hero > p,
.al-hero > p,
.th-hero > p,
section.hero-compact p,
.sb-hero-sub,
.cons-hdr > p,
.bib-hdr > p,
.ct-hero > p {
    font-size: 1.05rem;
    color: var(--text-secondary);
    line-height: 1.7;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

/* 8. Breadcrumb visual */
.breadcrumbs a,
nav.breadcrumb a {
    color: var(--text-muted);
    text-decoration: none;
    transition: color 0.2s;
}
.breadcrumbs a:hover,
nav.breadcrumb a:hover {
    color: var(--brand);
}
.breadcrumbs .current {
    color: var(--text-primary);
    font-weight: 600;
}

/* 9. Mobile */
@media (max-width: 600px) {
    .page-hero,
    .cats-hero,
    .cs-hero,
    .ca-hero,
    .al-hero,
    .th-hero,
    section.hero-compact {
        padding-top: 110px;
        padding-bottom: 40px;
    }
    .sb-hero,
    .cons-hdr,
    .bib-hdr,
    .ct-hero {
        margin-bottom: 32px;
    }
}
