/* BeerDock — extras do site (WhatsApp flutuante e pop-up gerenciado pelo CMS) */

/* Botão flutuante do WhatsApp */
.bd-whats {
  position: fixed; right: 20px; bottom: 20px; z-index: 70;
  display: grid; place-items: center; width: 58px; height: 58px; border-radius: 50%;
  background: #25d366; box-shadow: 0 10px 28px rgba(0, 0, 0, .35);
  transition: transform .18s ease, box-shadow .18s ease;
}
.bd-whats:hover { transform: scale(1.07); box-shadow: 0 14px 34px rgba(0, 0, 0, .45); }
.bd-whats img { width: 32px; height: 32px; }
.bd-whats::after {
  content: ""; position: absolute; inset: 0; border-radius: 50%;
  border: 2px solid #25d366; animation: bd-whats-pulso 2.4s ease-out infinite;
}
@keyframes bd-whats-pulso { from { transform: scale(1); opacity: .7; } to { transform: scale(1.45); opacity: 0; } }
@media (max-width: 640px) { .bd-whats { right: 14px; bottom: 14px; width: 54px; height: 54px; } }
@media (prefers-reduced-motion: reduce) { .bd-whats::after { animation: none; } }

/* Ícone do WhatsApp no rodapé */
.bd-whats-mini { display: inline-grid; place-items: center; width: 18px; height: 18px; border-radius: 50%; background: #25d366; flex-shrink: 0; }
.bd-whats-mini img { width: 12px; height: 12px; }

/* Pop-up */
.bd-popup { position: fixed; inset: 0; z-index: 90; display: grid; place-items: center; padding: 20px; background: rgba(0, 0, 0, .78); opacity: 0; transition: opacity .3s ease; }
.bd-popup[hidden] { display: none; }
.bd-popup.aberto { opacity: 1; }
.bd-popup-box {
  position: relative; display: inline-block; max-width: min(560px, 100%);
  transform: translateY(14px) scale(.98); transition: transform .35s cubic-bezier(.2, .7, .2, 1);
}
.bd-popup.aberto .bd-popup-box { transform: none; }
.bd-popup-box a { display: block; }
.bd-popup-img { display: block; max-width: 100%; max-height: calc(100vh - 40px); width: auto; height: auto; margin: 0 auto; box-shadow: 0 24px 60px rgba(0, 0, 0, .55); }
.bd-popup-box a .bd-popup-img { cursor: pointer; }
.bd-popup-fechar {
  position: absolute; top: 10px; right: 10px; z-index: 2; display: grid; place-items: center; width: 40px; height: 40px;
  border: 0; border-radius: 50%; background: rgba(0, 0, 0, .65); color: #fff; cursor: pointer; transition: background .15s;
}
.bd-popup-fechar:hover { background: #ff5a12; color: #080808; }
body.bd-popup-aberto { overflow: hidden; }

/* Espaço no fim do rodapé para o botão flutuante não cobrir os créditos */
footer.border-t { padding-bottom: 96px; }
