/* Outras formas de contato (Figma: Contato 425:2 / 510:4155 — 120px
   depois do hero; título 433px, divisória, 3 itens espalhados na largura
   do container, mapa de 1280×388 a 64px dos itens, 120px até o rodapé). */

.contato-info { padding: 56px 0; }
@media (min-width: 1024px) {
  .contato-info { padding: 120px 0; }
}

/* 433px no Figma: quebra em "Outras formas de" / "falar com a gente"
   (laranja). */
.contato-info-title { max-width: 433px; margin: 0 0 24px; text-wrap: wrap; }

.contato-info-divider { border: none; border-top: 1px solid var(--color-border-blue); margin: 0 0 32px; }
@media (min-width: 1024px) {
  .contato-info-divider { margin-bottom: 43px; }
}

.contato-info-items {
  display: flex;
  flex-direction: column;
  gap: 24px;
  margin-bottom: 40px;
}
@media (min-width: 900px) {
  /* Primeiro item na borda esquerda e último na direita; vãos iguais
     (120px) entre os três. */
  .contato-info-items { flex-direction: row; justify-content: space-between; gap: 24px; margin-bottom: 64px; }
}

.contato-info-item { display: flex; align-items: center; gap: 23px; }
.contato-info-icon {
  box-sizing: border-box;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 64px;
  height: 64px;
  background: var(--color-orange);
  border: 1px solid #EC4208;
  border-radius: 8px;
  transition: transform var(--transition-base);
}
.contato-info-item:hover .contato-info-icon { transform: translateY(-3px); }
.contato-info-icon img { width: 24px; height: 24px; }
.contato-info-item p { margin: 0; font-size: 18px; font-weight: 500; line-height: 1.3; letter-spacing: -0.18px; color: var(--color-navy); }
@media (min-width: 900px) {
  .contato-info-item { min-width: 0; }
  .contato-info-item p { max-width: 305px; }
}
@media (min-width: 1280px) {
  /* Larguras exatas das caixas de texto do Figma. */
  .contato-info-item p { width: 305px; }
  .contato-info-item:nth-child(2) p { width: 168px; }
}
.contato-info-item p a { color: inherit; text-decoration: none; transition: color var(--transition-base); }
.contato-info-item p a:hover { color: var(--color-orange); }

.contato-map { display: block; border-radius: 20px; overflow: hidden; aspect-ratio: 4 / 3; }
@media (min-width: 768px) {
  .contato-map { border-radius: 30px; aspect-ratio: 1280 / 388; }
}
.contato-map img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 1.2s cubic-bezier(0.22, 1, 0.36, 1); }
.contato-map:hover img { transform: scale(1.03); }

/* Entrada animada ao rolar (fade + slide-up; itens em cascata). */
.contato-info-title,
.contato-info-item,
.contato-map {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.7s ease, transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}
.contato-info-item:nth-child(2) { transition-delay: 0.1s; }
.contato-info-item:nth-child(3) { transition-delay: 0.2s; }
.contato-info-title.is-visible,
.contato-info-item.is-visible,
.contato-map.is-visible { opacity: 1; transform: none; }
html:not(.js) .contato-info-title,
html:not(.js) .contato-info-item,
html:not(.js) .contato-map { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
  .contato-info-title, .contato-info-item, .contato-map { opacity: 1; transform: none; transition: none; }
}
