/* 19/10: botão fixo de WhatsApp + popup de conversa (o site antigo tinha o botão "Fale no WhatsApp") */
.wa-btn { position: fixed; right: 20px; bottom: 20px; z-index: 85; display: flex; align-items: center; gap: 10px; padding: 14px 26px 14px 20px; border-radius: 999px; border: 0; background: #62CF6E; color: #fff; font: 700 17px/1 var(--display, "Poppins", sans-serif); box-shadow: 0 8px 26px rgba(98,207,111,.45); cursor: pointer; transition: bottom .3s ease, transform .2s ease; }
.wa-btn:hover { transform: scale(1.06); }
.wa-btn svg { width: 28px; height: 28px; flex: none; }
.wa-btn:focus-visible { outline: 3px solid #111; outline-offset: 3px; }
body:has(.sticky-buy.show) .wa-btn, body:has(.sticky-buy.show) .wa-pop { bottom: calc(20px + 76px); }
.wa-pop { position: fixed; right: 20px; bottom: 90px; z-index: 86; width: min(340px, calc(100vw - 32px)); border-radius: 16px; overflow: hidden; background: #fff; color: #111;
  box-shadow: 0 18px 50px rgba(0,0,0,.22); font-family: var(--body, sans-serif); transform-origin: bottom right; transition: opacity .18s ease, transform .18s ease; }
body:has(.sticky-buy.show) .wa-pop { bottom: calc(90px + 76px); }
.wa-pop[hidden] { display: block; opacity: 0; transform: scale(.92) translateY(8px); pointer-events: none; visibility: hidden; }
.wa-topo { display: flex; align-items: center; gap: 12px; padding: 14px 16px; background: #075E54; color: #fff; }
.wa-av { width: 42px; height: 42px; border-radius: 50%; background: #fff; display: grid; place-items: center; flex: none; overflow: hidden; }
.wa-av img { width: 34px !important; height: auto !important; max-width: none; display: block; }
.wa-topo strong { display: block; font: 600 15px/1.2 var(--display, sans-serif); }
.wa-topo span { font-size: 12.5px; opacity: .85; }
.wa-x { margin-left: auto; width: 32px; height: 32px; border: 0; border-radius: 50%; background: rgba(255,255,255,.15); color: #fff; font-size: 16px; cursor: pointer; }
.wa-corpo { padding: 18px 16px 16px; background: #ECE5DD; }
.wa-bolha { position: relative; max-width: 88%; padding: 10px 12px; border-radius: 0 10px 10px 10px; background: #fff; font-size: 14.5px; line-height: 1.4; box-shadow: 0 1px 1px rgba(0,0,0,.08); }
.wa-ir { display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: 14px; padding: 12px; border-radius: 999px; background: #25D366; color: #fff; font: 700 14.5px/1 var(--display, sans-serif); text-decoration: none; }
.wa-ir svg { width: 18px; height: 18px; }
@media (max-width: 749px) { .wa-btn { right: 14px; bottom: 14px; padding: 11px 18px 11px 14px; font-size: 14.5px; gap: 8px; } .wa-btn svg { width: 22px; height: 22px; } .wa-pop { right: 14px; bottom: 76px; } }
@media (prefers-reduced-motion: reduce) { .wa-btn, .wa-pop { transition: none; } }
