.mp-contact-widget { position: fixed; right: 16px; bottom: 16px; z-index: 9999; }
.mp-overlay { position: fixed; inset: 0; background: rgba(0,0,0,.32); opacity: 0; visibility: hidden; transition: opacity .18s ease, visibility .18s ease; pointer-events: none; z-index: 1; }
.mp-contact-widget.is-open .mp-overlay { opacity: 1; visibility: visible; pointer-events: auto; }
.mp-contact-button { display: inline-flex; align-items: center; justify-content: center; background: var(--e-global-color-primary, #0f5132); color: #fff; border: 0; border-radius: 999px; width: 72px; height: 72px; cursor: pointer; box-shadow: 0 10px 22px rgba(0,0,0,.22); }
.mp-contact-button, .mp-contact-menu { position: relative; z-index: 2; }
.mp-contact-button:hover { filter: brightness(1.06); }
.mp-contact-button:focus { outline: 2px solid #fff; outline-offset: 2px; }
.mp-contact-button-icon { font-size: 26px; line-height: 1; }
.mp-icon { display: block; width: 28px; height: 28px; object-fit: contain; }
.mp-icon-svg { display:block; width:28px; height:28px; fill: currentColor; }
.mp-contact-button .mp-icon { width: 36px; height: 36px; }
.mp-contact-button .mp-icon-svg { width: 36px; height: 36px; color: #fff; }
.mp-contact-whatsapp .mp-icon, .mp-contact-whatsapp .mp-icon-svg { width: 30px; height: 30px; }
.mp-contact-whatsapp .mp-icon-svg { color: #25D366; }

.mp-contact-menu { position: absolute; right: 8px; bottom: 90px; display: flex; flex-direction: column; gap: 10px; opacity: 0; transform: translateY(8px); pointer-events: none; transition: opacity .18s ease, transform .18s ease; }
.mp-contact-widget.is-open .mp-contact-menu { opacity: 1; transform: translateY(0); pointer-events: auto; }
.mp-qa { width: 56px; height: 56px; border-radius: 999px; display: inline-flex; align-items: center; justify-content: center; background: #fff; color: var(--mp-text, #111827); border: 1px solid var(--mp-border, #e5e7eb); text-decoration: none; box-shadow: 0 8px 18px rgba(0,0,0,.18); transition: transform .12s ease, box-shadow .12s ease, background .12s ease; }
.mp-qa:hover { transform: translateY(-2px); box-shadow: 0 10px 22px rgba(0,0,0,.22); background: #f9fafb; }
.mp-qa img.mp-icon, .mp-qa .mp-icon-svg { width: 28px; height: 28px; }
/* Per-action icon sizes (edit these numbers as desired) */
.mp-qa.mp-contact-whatsapp img.mp-icon, .mp-qa.mp-contact-whatsapp .mp-icon-svg { width: 38px; height: 38px; }
.mp-qa.mp-contact-email img.mp-icon, .mp-qa.mp-contact-email .mp-icon-svg { width: 28px; height: 28px; }
.mp-qa.mp-contact-call img.mp-icon, .mp-qa.mp-contact-call .mp-icon-svg { width: 27px; height: 27px; }
.mp-qa.mp-contact-whatsapp .mp-icon-svg { color: #25D366; }

.mp-contact-prompt { position: absolute; top: 50%; right: 84px; transform: translateY(-50%); background: #fff; color: var(--mp-text, #111827); padding: 12px 16px; border-radius: 18px; font-weight: 600; box-shadow: 0 10px 24px rgba(0,0,0,.22); border: 1px solid var(--mp-border, #e5e7eb); white-space: nowrap; pointer-events: none; z-index: 10000; opacity: 0; visibility: hidden; transition: opacity .25s ease, visibility .25s ease; }
.mp-contact-prompt:after { content: ''; position: absolute; right: -16px; top: 50%; transform: translateY(-50%); border: 8px solid transparent; border-left-color: #fff; }
.mp-contact-widget.show-prompt .mp-contact-prompt { opacity: 1; visibility: visible; }
.mp-contact-widget.is-open .mp-contact-prompt { opacity: 0; visibility: hidden; }

@media (max-width: 700px) { .mp-contact-button { width: 64px; height: 64px; } }

/* Mobile adjustments requested */
@media (max-width: 700px) {
  .mp-contact-menu { bottom: 70px; right: 4px; gap: 3px; }
}

