/* Duchico Transporte — ajustes de performance, responsividade e acessibilidade.
   Não altera a estrutura nem o layout existente; apenas refina. */

/* Honeypot anti-bot: presente no DOM, invisível e inalcançável por humanos */
.hp-field {
  position: absolute !important;
  left: -9999px !important;
  top: auto;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* Nenhuma imagem deve estourar o container no mobile */
img {
  max-width: 100%;
  height: auto;
}

/* Foco visível para navegação por teclado */
a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible {
  outline: 2px solid #e11d2e;
  outline-offset: 2px;
}

/* Formulário confortável ao toque e em telas pequenas */
.form-control {
  min-height: 44px;
}
textarea.form-control {
  min-height: 120px;
}

@media (max-width: 480px) {
  .div_form {
    padding-left: 8px;
    padding-right: 8px;
  }
  .titulo_g_r,
  .titulo_g_r1 {
    font-size: 26px;
    line-height: 1.15;
  }
  .btn_enviar {
    width: 100%;
  }
}

/* Botão WhatsApp (substitui o formulário de contato) */
.btn-whatsapp {
  width: 100%;
  background: #25d366;
  border-color: #25d366;
  color: #fff;
  font-weight: 700;
}
.btn-whatsapp:hover,
.btn-whatsapp:focus {
  background: #1ebe5b;
  border-color: #1ebe5b;
  color: #fff;
}

/* Timeline Missão/Visão/Valores: no desktop os cards usavam 50vw e transbordavam
   a coluna, sobrepondo o texto à esquerda. Passam a respeitar a largura da coluna. */
@media (min-width: 787px) {
  .timeline {
    margin: 40px auto;
    width: 100%;
    max-width: 100%;
  }
  .timeline__event {
    width: 100%;
    max-width: 100%;
    align-self: stretch;
    margin: 18px 0;
    box-sizing: border-box;
  }
  .timeline__event__content {
    width: auto;
    flex: 1 1 auto;
    min-width: 0;
  }
  .timeline__event__icon {
    flex: 0 0 auto;
  }
}
