/* ---------- Hero escuro com ficha técnica ---------- */
.hero {
    background-color: var(--cor-tinta);
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.045) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.045) 1px, transparent 1px);
    background-size: 48px 48px;
    color: #B8C0C8;
    padding-block: clamp(48px, 7vw, 96px) 0;
}
.hero__grid { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(28px, 5vw, 72px); align-items: center; }
.hero .eyebrow { color: #D6DCE2; margin-bottom: 22px; }
.hero h1 { color: var(--cor-branco); max-width: 14ch; }
.hero__subtitulo { margin-top: 26px; font-size: clamp(1.05rem, 1.4vw, 1.2rem); line-height: 1.6; max-width: 52ch; }
.hero__acoes { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 32px; }
.hero .botao--secundario { border-color: var(--cor-branco); color: var(--cor-branco); }
.hero .botao--secundario:hover { background: var(--cor-branco); color: var(--cor-tinta); }
.hero .botao--primario:hover { background: var(--cor-branco); border-color: var(--cor-branco); color: var(--cor-tinta); }

.ficha { background: var(--cor-branco); border-top: 6px solid var(--cor-destaque); padding: 22px 24px 8px; color: var(--cor-texto); }
.ficha__titulo { display: flex; justify-content: space-between; align-items: baseline; font-family: var(--fonte-mono); font-size: 0.75rem; font-weight: 500; letter-spacing: 0.1em; text-transform: uppercase; color: var(--cor-tinta); margin: 0 0 8px; padding-bottom: 12px; border-bottom: 1px solid var(--cor-tinta); }
.ficha__titulo span { color: var(--cor-destaque-texto); }
.ficha dl > div { display: grid; grid-template-columns: 116px 1fr; gap: 14px; padding: 13px 0; border-bottom: 1px solid var(--cor-linha); font-size: 0.9375rem; }
.ficha dl > div:last-child { border-bottom: 0; }
.ficha dt { font-family: var(--fonte-mono); font-size: 0.6875rem; letter-spacing: 0.08em; text-transform: uppercase; color: var(--cor-texto-claro); padding-top: 3px; }
.ficha dd { font-weight: 500; color: var(--cor-tinta); }

/* Faixa de indicadores colada na base do hero */
.indicadores { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: clamp(40px, 6vw, 72px); border-top: 1px solid #2E3843; }
.indicadores li { padding: 24px 22px 26px 0; }
.indicadores li + li { padding-left: 22px; border-left: 1px solid #2E3843; }
.indicadores__valor { display: block; font-family: var(--fonte-titulo); font-size: clamp(2.4rem, 4.4vw, 3.6rem); font-weight: 700; line-height: 0.95; color: var(--cor-destaque-claro); }
.indicadores__rotulo { display: block; margin-top: 8px; font-family: var(--fonte-mono); font-size: 0.75rem; letter-spacing: 0.04em; text-transform: uppercase; color: #A9B3BD; }

/* Quem somos */
.secao--quem-somos .secao__conteudo p { max-width: 64ch; font-size: 1.05rem; }
.sobre { display: grid; grid-template-columns: 1fr; gap: 32px; align-items: center; }
.sobre__texto { min-width: 0; }
.sobre__foto { margin: 0; min-width: 0; border: 1px solid var(--cor-linha); border-top: 4px solid var(--cor-destaque); background: var(--cor-branco); }
.sobre__foto img { display: block; width: 100%; height: auto; }
@media (min-width: 961px) { .sobre { grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); gap: 48px; } }

/* Segmentos atendidos: abas */
.abas__lista { display: flex; flex-wrap: wrap; gap: 0; border-bottom: 2px solid var(--cor-tinta); margin-top: 28px; }
.abas__botao { padding: 14px 24px; font-family: var(--fonte-mono); font-size: 0.8125rem; font-weight: 500; letter-spacing: 0.08em; text-transform: uppercase; color: var(--cor-tinta-2); background: var(--cor-papel-2); border: 1px solid var(--cor-linha); border-bottom: 0; margin-right: -1px; }
.abas__botao:hover { background: var(--cor-branco); }
.abas__botao[aria-selected="true"] { background: var(--cor-tinta); color: var(--cor-branco); border-color: var(--cor-tinta); box-shadow: inset 0 4px 0 var(--cor-destaque); }
.abas__painel { display: none; grid-template-columns: minmax(0, 6fr) minmax(0, 6fr); gap: 32px 56px; padding: 32px 0 0; }
.abas__painel.ativo { display: grid; }
.abas__painel h3 { margin-bottom: 12px; }
.abas__painel ul { border-top: 1px solid var(--cor-tinta); }
.abas__painel li { position: relative; padding: 12px 0 12px 26px; border-bottom: 1px solid var(--cor-linha); }
.abas__painel li::before { content: ''; position: absolute; left: 2px; top: 1.05em; width: 9px; height: 9px; background: var(--cor-destaque); }

/* Processo: colunas com filete superior e número em mono */
.lista-processo { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; border-top: 1px solid var(--cor-tinta); border-left: 1px solid var(--cor-linha); }
.lista-processo li { padding: 22px 22px 26px; background: var(--cor-branco); border-right: 1px solid var(--cor-linha); border-bottom: 1px solid var(--cor-linha); }
.lista-processo__numero { display: block; font-family: var(--fonte-mono); font-size: 0.8125rem; font-weight: 500; letter-spacing: 0.1em; color: var(--cor-destaque-texto); margin-bottom: 12px; }
.lista-processo__numero::before { content: 'ETAPA '; }
.lista-processo h3 { margin-bottom: 6px; }
.lista-processo p { font-size: 0.95rem; color: var(--cor-texto-claro); }

/* Diferenciais em 3 colunas com marcador */
.grid-diferenciais { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 32px; }
.grid-diferenciais li { padding: 22px 0; border-top: 1px solid var(--cor-linha); }
.grid-diferenciais li:nth-child(-n+3) { border-top: 2px solid var(--cor-tinta); }
.grid-diferenciais h3 { margin-bottom: 6px; }
.grid-diferenciais h3::before { content: ''; display: inline-block; width: 10px; height: 10px; margin-right: 10px; background: var(--cor-destaque); vertical-align: 2px; }
.grid-diferenciais p { font-size: 0.95rem; color: var(--cor-texto-claro); }

/* Regiões como etiquetas em mono */
.lista-regioes { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 24px; font-family: var(--fonte-mono); font-size: 0.8125rem; letter-spacing: 0.03em; text-transform: uppercase; }
.lista-regioes li { display: block; padding: 8px 14px; background: var(--cor-branco); border: 1px solid var(--cor-linha); color: var(--cor-tinta); }
.lista-regioes li:not(:last-child)::after { content: none; }
.secao--regioes .lista-regioes + p { margin-top: 24px; color: var(--cor-texto-claro); font-size: 0.95rem; }

.secao--blog .link-saiba-mais { margin-top: 26px; }

@media (max-width: 960px) {
    .hero__grid { grid-template-columns: 1fr; }
    .indicadores { grid-template-columns: 1fr 1fr; }
    .indicadores li:nth-child(3) { padding-left: 0; border-left: 0; }
    .indicadores li:nth-child(n+3) { border-top: 1px solid #2E3843; }
    .lista-processo { grid-template-columns: 1fr 1fr; }
    .grid-diferenciais { grid-template-columns: 1fr 1fr; }
    .grid-diferenciais li:nth-child(3) { border-top: 1px solid var(--cor-linha); }
    .abas__painel.ativo { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
    .lista-processo, .grid-diferenciais { grid-template-columns: 1fr; }
    .grid-diferenciais li:nth-child(2) { border-top: 1px solid var(--cor-linha); }
    .abas__botao { flex: 1 1 100%; margin: 0 0 -1px; text-align: left; }
    .ficha dl > div { grid-template-columns: 1fr; gap: 2px; }
}

/* Foto do hero (produto/obra de iluminação pública), no lugar da ficha técnica */
.hero__foto { position: relative; border: 1px solid #3A3F46; border-top: 4px solid var(--cor-destaque); background: #0C0D0F; }
.hero__foto img { display: block; width: 100%; height: auto; max-height: 640px; object-fit: cover; object-position: center 12%; }
.secao--produtos-destaque { padding-block: var(--espaco-secao); }
.secao--produtos-destaque h2 { margin-bottom: 24px; }
.secao--produtos-destaque .link-saiba-mais { margin-top: 24px; display: inline-block; }
@media (max-width: 960px) { .hero__foto img { max-height: 420px; object-position: center 20%; } }
