@charset "utf-8";
/* FOOTER */

/* Evita overflow horizontal causado por 100vw */
.sec-footer{
  width: 100%;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  padding: 3em 0;
}

/* Largura fluida + limite opcional para telas grandes */
.container-footer{
  width: 90%;
  max-width: 1200px; /* opcional; pode remover se não quiser limitar */
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 24px; /* melhora o respiro entre colunas */
}

.footer-left{
  width: 70%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 16px; /* espaçamento entre linhas de texto/blocos */
}
.footer-right{
  width: 30%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 16px;
}

.footer-txt{
  font-size: 12px;
  line-height: 200%;
  word-wrap: break-word;     /* evita overflow em números longos/URLs */
  overflow-wrap: anywhere;
}

.social{
  display: flex;
  align-items: center;
  gap: 10px;                 /* substitui margin-right dos ícones */
}
.social img{
  width: 30px;
  height: 30px;
  display: block;
  /* área de toque melhor sem deformar o layout */
  padding: 4px;
}

/* Breakpoints */
@media only screen and (max-width: 1280px){
  .footer-left{ width: 60%; }
  .footer-right{ width: 40%; }
}

@media only screen and (max-width: 800px){
  .container-footer{
    flex-direction: column;
    gap: 32px;
  }
  .footer-left, .footer-right{
    width: 100%;
  }
  .footer-right{
    /* separação visual quando empilha */
    padding-top: 8px;
    border-top: 1px solid rgba(255,255,255,0.15); /* ajuste conforme o tema */
  }
}

/* ===== Acessibilidade / UX ===== */

/* Foco visível só no teclado (segue padrão aplicado nos outros CSS) */
:focus-visible{
  outline: 2px solid #8D090B;
  outline-offset: 2px;
}
:focus:not(:focus-visible){ outline: none; }

/* Respeita quem prefere menos movimento (não há animações aqui, mas fica pronto) */
@media (prefers-reduced-motion: reduce){
  *, *::before, *::after{
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
