.ws-footer{background:var(--ws-navy);color:#b3b8d2;padding:0 0 35px}.ws-footer>.ws-wrap{padding-top:28px;border-top:1px solid #c9a35a33}.ws-footer__brand{font:400 23px/1.2 var(--ws-serif);letter-spacing:-.03em;color:var(--ws-ivory);margin-bottom:24px}.ws-footer__bottom{display:flex;justify-content:space-between;gap:25px;padding-right:85px;font-size:10px}.ws-footer nav{display:flex;gap:10px;flex-wrap:wrap}.ws-footer a{text-decoration:none}.ws-footer a:hover{color:var(--ws-gold-light);text-decoration:underline;text-underline-offset:4px}@media(max-width:900px){.ws-footer__bottom{display:block;padding-right:70px}.ws-footer nav{margin-top:12px}}@media(max-width:700px){.ws-footer{padding-bottom:35px}.ws-footer>.ws-wrap{padding-top:24px}.ws-footer__brand{font-size:22px;margin-bottom:19px}.ws-footer__bottom{font-size:9px;line-height:1.8;padding-right:43px}.ws-footer nav{gap:7px;margin-top:12px}}

/* Componente de contato solicitado. Glyph oficial Meta/WhatsApp RGB 2026,
   sem alteração do desenho ou da cor. Não envia mensagens automaticamente. */
.wa-flutuante {
  position: fixed;
  /* Camada fixa: a rolagem não recalcula nem anima a posição do contato. */
  transform: translateZ(0);
  right: clamp(16px, 2vw, 28px);
  bottom: calc(20px + env(safe-area-inset-bottom, 0px));
  z-index: 80;
  display: flex;
  align-items: center;
  gap: 0;
  max-width: calc(100vw - 32px);
  color: #163323;
  text-decoration: none;
  border: 0;
}
.wa-flutuante__rotulo {
  position: absolute;
  right: calc(100% + 12px);
  white-space: nowrap;
  padding: 12px 15px;
  border: 1px solid #d5e3d9;
  border-radius: 4px;
  background: #fff;
  box-shadow: 0 5px 24px #0002;
  font: 600 13px/1.3 "Hanken Grotesk", system-ui, sans-serif;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .2s ease;
}
.wa-flutuante:hover .wa-flutuante__rotulo,
.wa-flutuante:focus-visible .wa-flutuante__rotulo { opacity: 1; visibility: visible; }
.wa-flutuante__icone {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: 60px;
  height: 60px;
  border: 1px solid #fff5;
  border-radius: 50%;
  background: #25d366;
  box-shadow: 0 6px 22px #0004;
  transition: box-shadow .2s ease;
}
.wa-flutuante__icone img { display: block; width: 35px; height: 35px; max-width: none; }
.wa-flutuante:hover .wa-flutuante__icone { box-shadow: 0 9px 26px #0005; }
.wa-flutuante:focus-visible { outline: 3px solid #25d366; outline-offset: 6px; border-radius: 4px; }
@media (max-width: 980px) {
  .ws-footer { padding-bottom: calc(96px + env(safe-area-inset-bottom, 0px)); }
  .wa-flutuante__rotulo { display: none; }
  .wa-flutuante__icone { width: 56px; height: 56px; }
  .wa-flutuante__icone img { width: 33px; height: 33px; }
}
@media (prefers-reduced-motion: reduce) { .wa-flutuante__icone, .wa-flutuante__rotulo { transition: none; } }
