/* HOME */
.hero { background: linear-gradient(180deg, var(--cor-fundo-alt), #fff); padding: 60px 0; }
.hero-grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: 40px; align-items: center; }
.hero-eyebrow { color: var(--cor-primaria); font-weight: 700; text-transform: uppercase; letter-spacing: 1px; font-size: .85rem; margin: 0 0 8px; }
.hero-title { font-size: 2.6rem; color: var(--cor-primaria); margin: 0 0 16px; line-height: 1.15; }
.hero-text { color: var(--cor-texto-suave); font-size: 1.1rem; margin: 0 0 24px; }
.hero-ctas { display: flex; flex-wrap: wrap; gap: 12px; }
.hero-image img { border-radius: var(--raio); box-shadow: var(--sombra); width: 100%; object-fit: cover; }

.section-sobre { background: #fff; }
.sobre-resumo-grid { display: grid; grid-template-columns: 1.5fr 1fr; gap: 40px; align-items: center; }
.destaques-list { list-style: none; padding: 0; margin: 0; }
.destaques-list li { padding: 14px 18px; background: var(--cor-fundo-alt); border-left: 3px solid var(--cor-primaria); border-radius: 8px; margin-bottom: 10px; }
.destaques-list strong { color: var(--cor-primaria); }

.section-especialidades { background: var(--cor-fundo-alt); }
.card-destaque { border: 2px solid var(--cor-primaria); box-shadow: var(--sombra); }
.card-tag { display: inline-block; background: var(--cor-primaria); color: #fff; font-size: .72rem; font-weight: 700; text-transform: uppercase; letter-spacing: .5px; padding: 3px 9px; border-radius: 20px; margin-bottom: 8px; }

.cards-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin: 28px 0; }
.card { background: #fff; border: 1px solid var(--cor-borda); border-radius: var(--raio); padding: 22px; transition: all .2s ease; }
.card:hover { text-decoration: none; box-shadow: var(--sombra); transform: translateY(-3px); }
.card-title { color: var(--cor-primaria); font-size: 1.15rem; margin: 0 0 8px; }
.card-resumo { color: var(--cor-texto-suave); font-size: .95rem; margin: 0 0 12px; }
.card-cta { color: var(--cor-primaria); font-weight: 700; }

.section-contato { background: var(--cor-primaria); color: #fff; }
.section-contato .section-title, .section-contato .section-text { color: #fff; }
.contato-centro { text-align: center; max-width: 680px; margin: 0 auto; }
.contato-centro .section-text { margin: 0 auto 22px; }
.contato-centro .hero-ctas { justify-content: center; }

@media (max-width: 900px) {
  .hero-grid, .contato-grid, .sobre-resumo-grid { grid-template-columns: 1fr; }
  .hero-title { font-size: 2rem; }
  .cards-grid { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .cards-grid { grid-template-columns: 1fr; }
}
