/* Floating WhatsApp button, shared by the live site and the /nieuw/ preview.
   Bottom offset is overridable per page with --wa-bottom (the preview has a theme bar at the bottom). */
.wa-float {
  --wa-size: 56px;
  --wa-bottom: 20px;
  position: fixed; right: 20px; bottom: calc(var(--wa-bottom) + env(safe-area-inset-bottom, 0px)); z-index: 55;
  display: flex; align-items: center; gap: 10px; flex-direction: row-reverse;
  text-decoration: none; -webkit-tap-highlight-color: transparent;
  opacity: 0; transform: translateY(12px);
  animation: wa-in 0.5s cubic-bezier(0.2, 0.7, 0.2, 1) 1.2s forwards;
}
.wa-float__btn {
  width: var(--wa-size); height: var(--wa-size); border-radius: 50%;
  display: grid; place-items: center; flex: 0 0 auto;
  background: #25D366; color: #fff;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.18), 0 0 0 1px rgba(0, 0, 0, 0.04);
  transition: transform 0.25s cubic-bezier(0.2, 0.7, 0.2, 1), box-shadow 0.25s;
}
.wa-float__btn svg { width: 30px; height: 30px; display: block; }
.wa-float__label {
  font-family: 'Manrope', system-ui, sans-serif; font-size: 14px; font-weight: 600; line-height: 1;
  color: #1D1D1F; background: #fff; padding: 11px 14px; border-radius: 980px; white-space: nowrap;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.05);
  opacity: 0; transform: translateX(8px); pointer-events: none;
  transition: opacity 0.25s, transform 0.25s cubic-bezier(0.2, 0.7, 0.2, 1);
}
.wa-float:hover .wa-float__btn, .wa-float:focus-visible .wa-float__btn {
  transform: translateY(-2px) scale(1.04); box-shadow: 0 10px 28px rgba(0, 0, 0, 0.22), 0 0 0 1px rgba(0, 0, 0, 0.04);
}
.wa-float:hover .wa-float__label, .wa-float:focus-visible .wa-float__label { opacity: 1; transform: translateX(0); }
.wa-float:focus-visible { outline: none; }
.wa-float:focus-visible .wa-float__btn { box-shadow: 0 0 0 3px #fff, 0 0 0 6px #25D366; }
@keyframes wa-in { to { opacity: 1; transform: translateY(0); } }
@media (max-width: 640px) {
  .wa-float { --wa-size: 52px; right: 16px; }
  .wa-float__label { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .wa-float { animation: none; opacity: 1; transform: none; }
  .wa-float__btn, .wa-float__label { transition: none; }
}

/* Cookiebot's floating widget (bottom-left) is hidden; consent can be changed via the
   "Cookie-instellingen" link in the footer, which calls Cookiebot.renew(). */
#CookiebotWidget { display: none !important; }

/* Keep the last footer row clear of the floating button on small screens */
@media (max-width: 640px) {
  .fbottom, .footer-bottom { padding-right: 60px; }
}
