/* ===== Floating WhatsApp help button (sits just above the discount orb) ===== */
.wa-float{
  position:fixed;right:26px;bottom:96px;z-index:285;display:flex;flex-direction:column;align-items:flex-end;
  color:#fff;text-decoration:none;font-family:'Plus Jakarta Sans','Nunito','Segoe UI',system-ui,sans-serif;
  transition:opacity .25s ease,transform .25s ease;
  pointer-events:none;   /* only the round button itself is clickable, not the empty space around it */
}
body.mobile-nav-active .wa-float{opacity:0;pointer-events:none;transform:scale(.9);}
.wa-bubble{
  position:relative;display:flex;align-items:center;gap:12px;padding:11px 22px 11px 15px;margin-right:6px;margin-bottom:-4px;border-radius:999px;
  background:linear-gradient(135deg,rgba(24,30,78,.92),rgba(12,17,48,.92));
  border:1px solid rgba(112,132,255,.6);box-shadow:0 12px 30px rgba(0,0,0,.42),0 0 22px rgba(86,104,255,.22);
  -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
  transition:opacity .4s ease,transform .4s cubic-bezier(.2,.8,.2,1);transform-origin:100% 100%;
  /* Hidden until the button is hovered or keyboard-focused. */
  opacity:0;transform:translateY(8px) scale(.92);pointer-events:none;
}
.wa-float:hover .wa-bubble,.wa-float:focus-visible .wa-bubble{opacity:1;transform:none;}
.wa-bubble::after{
  content:"";position:absolute;right:34px;bottom:-8px;width:14px;height:14px;transform:rotate(45deg);
  background:rgba(14,19,52,.96);border-right:1px solid rgba(112,132,255,.6);border-bottom:1px solid rgba(112,132,255,.6);
}
.wa-bubble > svg{width:28px;height:28px;flex:none;color:#a99dff;}
.wa-bubble b{display:block;font-size:15px;font-weight:700;line-height:1.2;color:#fff;}
.wa-bubble small{display:block;margin-top:2px;font-size:12.5px;line-height:1.25;color:#aab4e8;white-space:nowrap;}
.wa-btn{
  position:relative;width:46px;height:46px;margin-top:10px;border-radius:50%;display:grid;place-items:center;pointer-events:auto;cursor:pointer;
  background:radial-gradient(circle at 34% 24%,#59f59a,#15cb68 52%,#0a9a4d);
  box-shadow:0 10px 26px rgba(16,200,110,.45),inset 0 1px 0 rgba(255,255,255,.45),inset 0 -4px 10px rgba(0,80,40,.3);
  transition:transform .25s ease,box-shadow .25s ease;
}
.wa-btn > svg{width:25px;height:25px;color:#fff;position:relative;}
.wa-ring{position:absolute;inset:-7px;border-radius:50%;background:rgba(88,82,235,.16);border:1px solid rgba(124,112,255,.5);pointer-events:none;animation:waPulse 2.8s ease-in-out infinite;}
.wa-ring::after{content:"";position:absolute;inset:-6px;border-radius:50%;border:1px solid rgba(124,112,255,.24);}
@keyframes waPulse{0%,100%{transform:scale(1);opacity:1;}50%{transform:scale(1.07);opacity:.7;}}
.wa-float:hover .wa-btn{transform:scale(1.06);box-shadow:0 14px 32px rgba(16,200,110,.58),inset 0 1px 0 rgba(255,255,255,.45);}
.wa-float:focus-visible{outline:2px solid #a99dff;outline-offset:6px;border-radius:28px;}
@media(max-width:560px){
  .wa-float{right:max(16px,env(safe-area-inset-right));bottom:calc(88px + env(safe-area-inset-bottom));}
  .wa-bubble{gap:9px;padding:8px 16px 8px 11px;}
  .wa-bubble > svg{width:22px;height:22px;}
  .wa-bubble b{font-size:13px;}
  .wa-bubble small{font-size:11px;}
  .wa-btn{width:42px;height:42px;margin-top:10px;}
  .wa-btn > svg{width:23px;height:23px;}
  .wa-bubble::after{right:28px;}
}
@media(prefers-reduced-motion:reduce){.wa-ring{animation:none;}.wa-float,.wa-bubble,.wa-btn{transition:none;}}
