/* WhatsApp-green appointment actions; the site's pink/cream identity stays intact. */
body a.appointment-cta,
body button.appointment-cta,
body .end-cta a.appointment-cta,
body .form .appointment-cta {
  background: #25d366;
  color: #fff;
  border: 1px solid rgba(7, 94, 84, .14);
  min-height: 44px;
  font-weight: 700;
  box-shadow: 0 5px 14px rgba(7, 94, 84, .14);
  transition: background-color .2s ease, box-shadow .2s ease;
}
body .appointment-cta:hover {
  background: #20c65d;
  color: #fff;
  box-shadow: 0 7px 18px rgba(7, 94, 84, .22);
}
body .appointment-cta:focus-visible {
  outline: 3px solid #075e54;
  outline-offset: 5px;
}
.appointment-cta--pulse { position: relative; isolation: isolate; overflow: visible; }
.appointment-cta--pulse::after {
  content: '';
  position: absolute;
  inset: -3px;
  border: 2px solid #25d366;
  border-radius: inherit;
  pointer-events: none;
  animation: appointment-wave 2.6s ease-out infinite;
}
@keyframes appointment-wave {
  0% { transform: scale(1); opacity: .6; }
  75%, 100% { transform: scale(1.2, 1.65); opacity: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .appointment-cta--pulse::after { animation: none; display: none; }
  body .appointment-cta { transition: none; }
}
.measurement-consent { position: fixed; z-index: 100; left: 20px; bottom: 20px; max-width: 440px; padding: 22px; background: #fffdfd; color: #252525; border: 1px solid #ebd9e2; border-radius: 16px; box-shadow: 0 8px 32px #25252526; font: 14px/1.6 'DM Sans',sans-serif; }
.measurement-consent[hidden] { display: none; }
.measurement-consent p { margin: 0 0 8px; }
.measurement-consent a { text-decoration: underline; }
.measurement-consent > div { display: flex; gap: 10px; margin-top: 16px; }
.measurement-consent button, .measurement-preferences { padding: 10px 14px; border: 1px solid #d3b5c4; background: #f8edf3; color: #252525; border-radius: 8px; cursor: pointer; font: inherit; }
.measurement-consent button { flex: 1; min-height: 44px; }
.measurement-preferences { position: fixed; bottom: 6px; left: 6px; z-index: 90; font: 12px 'DM Sans',sans-serif; }
@media(max-width: 760px) { .measurement-consent { left: 12px; right: 12px; bottom: 12px; max-width: none; } }
