/* ═══════════════════════════════════════════════════
   EM CONSULTORIA — Páginas internas v3
   Complementa style.css (sudene, proedi, areas industriais, Licenciamento)
   ═══════════════════════════════════════════════════ */

/* --- BREADCRUMB --- */
.breadcrumb{display:flex;align-items:center;gap:var(--space-sm);font-size:var(--text-xs);color:var(--color-text-muted);margin-bottom:var(--space-2xl);flex-wrap:wrap;font-weight:400}
.breadcrumb a{transition:color 200ms ease}
@media (hover:hover) and (pointer:fine){.breadcrumb a:hover{color:var(--color-accent)}}
.breadcrumb span[aria-hidden]{opacity:0.35}
.breadcrumb span[aria-current]{color:var(--color-text-primary);font-weight:500}

/* --- PAGE HERO --- */
.page-hero {
  position: relative;
  padding-top: calc(80px + var(--space-4xl));
  padding-bottom: var(--space-4xl);
  overflow: hidden;
  min-height: 100dvh;
  display: flex;
  align-items: center;
}

.page-hero-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.page-hero-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

/* Overlay stronger at top for nav readability on light images */
.page-hero-bg::after {
  content: '';
  position: absolute;
  inset: 0;
  background:
    linear-gradient(to bottom, rgba(26,26,46,0.7) 0%, rgba(26,26,46,0.2) 25%, transparent 40%),
    linear-gradient(to top, rgba(26,26,46,0.92) 0%, rgba(26,26,46,0.7) 40%, rgba(26,26,46,0.5) 70%, rgba(26,26,46,0.35) 100%);
}

.page-hero.has-bg {
  color: var(--color-text-inverse);
}

.page-hero.has-bg .breadcrumb {
  color: rgba(251, 250, 248, 0.55);
}

.page-hero.has-bg .breadcrumb a {
  color: rgba(251, 250, 248, 0.55);
}

.page-hero.has-bg .breadcrumb span[aria-current] {
  color: var(--color-text-inverse);
}

.page-hero.has-bg .page-hero-title {
  color: var(--color-text-inverse);
}

.page-hero.has-bg .text-body {
  color: rgba(251, 250, 248, 0.72);
}

.page-hero .container {
  position: relative;
  z-index: 1;
}

/* Without bg image fallback */
.page-hero:not(.has-bg) {
  background-color: var(--color-base);
  border-bottom: 1px solid var(--color-border);
  min-height: 100dvh;
}

.page-hero-label{margin-bottom:var(--space-md);color:var(--color-text-inverse)}

.page-hero-title {
font-size: clamp(2rem, 9vw, 3.5rem);  font-weight: 400;
  margin-bottom: var(--space-lg);
  max-width: 780px;
}
.page-hero-title em{color:var(--color-accent);font-style:italic}

.page-hero-subtitle{max-width:60ch;margin-bottom:var(--space-2xl)}
.page-hero-actions{display:flex;flex-wrap:wrap;gap:var(--space-md)}

/* --- STAT BAR --- */
.stat-bar{background-color:var(--color-support);padding:var(--space-2xl) 0}
.stat-bar-grid{display:grid;grid-template-columns:1fr;gap:var(--space-xl);text-align:center}
.stat-bar-item{display:flex;flex-direction:column;gap:var(--space-xs)}
.stat-bar-value{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:400;color:var(--color-accent);line-height:1}
.stat-bar-label{font-size:var(--text-sm);color:rgba(251,250,248,0.65);font-weight:300}
@media (min-width:640px){.stat-bar-grid{grid-template-columns:repeat(3,1fr)}}

.stat-bar-2{background-color:var(--color-support);padding:var(--space-2xl) 0}
.stat-bar-grid2{display:grid;grid-template-columns:1fr;gap:var(--space-xl);text-align:center}
.stat-bar-item2{display:flex;flex-direction:column;gap:var(--space-xs)}
.stat-bar-value2{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:400;color:var(--color-accent);line-height:1}
.stat-bar-label2{font-size:var(--text-sm);color:rgba(251,250,248,0.65);font-weight:300}
@media (min-width:640px){.stat-bar-grid2{grid-template-columns:repeat(2,1fr)}}

/* --- PAGE SECTION --- */
.page-section{background-color:var(--color-base)}
.page-section-alt{background-color:var(--color-base-alt)}
.page-content{max-width:820px}
.page-content .heading-section{margin-bottom:var(--space-xl)}

.page-text{margin-bottom:var(--space-2xl)}
.page-text p{font-size:var(--text-base);line-height:1.75;color:var(--color-text-secondary);max-width:65ch}
.page-text p + p{margin-top:var(--space-lg)}

/* --- REQUIREMENTS GRID --- */
.requirements-grid{display:grid;grid-template-columns:1fr;gap:var(--space-lg);margin-top:var(--space-xl)}

.requirement-card{background-color:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-xl);display:flex;flex-direction:column;gap:var(--space-md);transition:transform 250ms var(--ease-out),box-shadow 250ms var(--ease-out)}
@media (hover:hover) and (pointer:fine){.requirement-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}}

.requirement-icon{width:44px;height:44px;border-radius:var(--radius-default);background-color:var(--color-accent-light);display:flex;align-items:center;justify-content:center;color:var(--color-accent);flex-shrink:0}
.requirement-icon.accent-icon span{font-family:var(--font-display);font-size:var(--text-sm);font-weight:400;color:var(--color-accent)}
.requirement-card h3{font-family:var(--font-display);font-size:var(--text-lg);font-weight:400;line-height:1.3}
.requirement-card p{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:1.65}
@media (min-width:640px){.requirements-grid{grid-template-columns:1fr 1fr}}

/* --- MODALITIES --- */
.modalities-grid{display:flex;flex-direction:column;gap:0;margin-top:var(--space-xl)}
.modality-item{display:grid;grid-template-columns:56px 1fr;gap:var(--space-lg);padding:var(--space-xl) 0;border-bottom:1px solid var(--color-border)}
.modality-item:last-child{border-bottom:none}
.modality-number{font-family:var(--font-display);font-size:var(--text-xl);font-weight:400;color:var(--color-accent);line-height:1}
.modality-item h3{font-family:var(--font-display);font-size:var(--text-lg);font-weight:400;margin-bottom:var(--space-xs);line-height:1.3}
.modality-item p{font-size:var(--text-base);color:var(--color-text-secondary);line-height:1.65;max-width:55ch}

/* --- HELP STEPS --- */
.help-steps{display:flex;flex-direction:column;gap:0;margin-top:var(--space-xl)}
.help-step{display:grid;grid-template-columns:40px 1fr;gap:var(--space-md);padding:var(--space-lg) 0;border-bottom:1px solid var(--color-border);align-items:start}
.help-step:last-child{border-bottom:none}
.help-step-number{width:36px;height:36px;border-radius:var(--radius-full);background-color:var(--color-accent);color:var(--color-white);display:flex;align-items:center;justify-content:center;font-family:var(--font-body);font-size:var(--text-sm);font-weight:400;flex-shrink:0}
.help-step p{font-size:var(--text-base);color:var(--color-text-secondary);line-height:1.65;max-width:55ch;padding-top:0.35rem}

/* --- PAGE CTA --- */
.page-cta{background-color:var(--color-base-warm)}
.page-cta-inner{text-align:center;max-width:640px;margin:0 auto}
.page-cta-title{color:var(--color-text-primary);margin-bottom:var(--space-lg)}
.page-cta-title em{color:var(--color-accent);font-style:italic}
.page-cta-text{font-size:var(--text-base);color:var(--color-text-secondary);line-height:1.7;margin-bottom:var(--space-2xl);max-width:50ch;margin-inline:auto}
.page-cta-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-md)}
.page-cta .btn-secondary{color:var(--color-text-primary);border-color:var(--color-border-strong)}
@media (hover:hover) and (pointer:fine){.page-cta .btn-secondary:hover{background-color:var(--color-accent-light);border-color:var(--color-accent);color:var(--color-accent)}}

/* --- IMAGE SECTION BREAK (internal pages) --- */
.page-image-break {
  position: relative;
  height: 320px;
  overflow: hidden;
}
.page-image-break img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.page-image-break::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(26,26,46,0.08), rgba(26,26,46,0.15));
}

/* --- PAGE CTA WITH BACKGROUND IMAGE --- */
.page-cta-bg{position:relative;overflow:hidden;background-color:transparent}
.page-cta-bg-image{position:absolute;inset:0;z-index:0}
.page-cta-bg-image img{width:100%;height:100%;object-fit:cover}
.page-cta-bg-image::after{content:'';position:absolute;inset:0;background:rgba(26,26,46,0.7)}
.page-cta-bg .page-cta-inner{position:relative;z-index:1}
.page-cta-bg .page-cta-title{color:var(--color-text-inverse)}
.page-cta-bg .page-cta-text{color:rgba(251,250,248,0.72)}

