

    /* ====================================================================
       CONTROLE E REESTRUTURAÇÃO DO ATENDIMENTO E DO RODAPÉ (FIM DO PRETO GIGANTE)
    ==================================================================== */
    .btn-atendimento-fixo {
      position: fixed;
      bottom: 25px;
      right: 25px;
      background: linear-gradient(135deg, #25d366 0%, #128c7e 100%);
      color: #ffffff !important;
      padding: 14px 24px;
      border-radius: 50px;
      font-weight: 700;
      text-decoration: none;
      box-shadow: 0 8px 24px rgba(18, 140, 126, 0.25);
      z-index: 9999;
      display: flex;
      align-items: center;
      gap: 8px;
      font-size: 15px;
      transition: opacity 0.3s ease, transform 0.2s ease;
    }

    .btn-atendimento-fixo:hover {
      transform: translateY(-2px) scale(1.02);
    }

    /* botão "voltar ao topo" — fica empilhado em cima do
       atendimento, só aparece depois que a pessoa rola a página */
    .btn-voltar-topo {
      position: fixed;
      bottom: 90px;
      right: 25px;
      width: 48px;
      height: 48px;
      border-radius: 50%;
      background: #8b0000;
      color: #ffffff;
      border: none;
      font-size: 18px;
      display: flex;
      align-items: center;
      justify-content: center;
      box-shadow: 0 8px 20px rgba(139, 0, 0, 0.30);
      cursor: pointer;
      z-index: 9999;
      opacity: 0;
      pointer-events: none;
      transform: translateY(10px);
      transition: opacity 0.25s ease, transform 0.25s ease;
    }

    .btn-voltar-topo.visivel {
      opacity: 1;
      pointer-events: auto;
      transform: translateY(0);
    }

    .btn-voltar-topo:hover {
      background: #6e0000;
      transform: translateY(-2px);
    }

    /* Esconde o atendimento dinamicamente se o menu open estiver ativo no mobile */
    .topbar-master.menu-open ~ .btn-atendimento-fixo {
      opacity: 0 !important;
      pointer-events: none;
    }

    footer {
      background-color: #ffffff !important; /* Substituído o fundo preto por branco limpo */
      border-top: 1px solid #e5e7eb !important;
      padding: 15px 0 !important; /* Altura da comissão reduzida e compacta */
      margin-top: 20px !important;
    }

/* =====================================================
   FOOTER REDESENHADO — FPSS 2027
===================================================== */

footer#mainFooter {
  background: linear-gradient(135deg, #8b0000, #6b0000) !important;
  border-top: none !important;
  padding: 28px 0 !important;
  margin-top: 0 !important;
}

footer#mainFooter .wrap {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 10px !important;
}

footer#mainFooter p:first-child {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  font-family: 'Merriweather', Georgia, serif !important;
  margin: 0 !important;
  text-align: center !important;
}

footer#mainFooter p:nth-child(2) {
  font-size: 12px !important;
  color: rgba(255,255,255,0.65) !important;
  margin: 0 !important;
  text-align: center !important;
}

footer#mainFooter a[href="admin/login.html"] {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  margin-top: 6px !important;
  padding: 7px 18px !important;
  border-radius: 6px !important;
  background: rgba(255,255,255,0.10) !important;
  border: 1px solid rgba(255,255,255,0.20) !important;
  color: rgba(255,255,255,0.75) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  text-decoration: none !important;
  transition: background .2s !important;
}

footer#mainFooter a[href="admin/login.html"]:hover {
  background: rgba(255,255,255,0.20) !important;
  color: #ffffff !important;
}
