#wa-divi-wrapper { position:fixed;bottom:28px;right:28px;z-index:99999 }

#wa-divi-btn {
  display:flex;align-items:center;gap:10px;
  color:#fff;text-decoration:none;
  font-family:var(--et-global-font-body,'Open Sans',sans-serif);
  font-size:14px;font-weight:600;line-height:1;
  padding:14px 22px 14px 16px;border-radius:50px;
  box-shadow:0 2px 6px rgba(37,211,102,.3),0 8px 24px rgba(0,0,0,.12);
  transition:transform 180ms cubic-bezier(.16,1,.3,1),box-shadow 180ms cubic-bezier(.16,1,.3,1),filter 180ms ease;
  position:relative;
}
#wa-divi-btn:hover { filter:brightness(1.08);transform:translateY(-3px);box-shadow:0 4px 12px rgba(37,211,102,.4),0 16px 40px rgba(0,0,0,.15) }
#wa-divi-btn:active { transform:translateY(-1px) }
#wa-divi-btn .wa-icon { flex-shrink:0;width:22px;height:22px }

#wa-divi-btn::before {
  content:'';position:absolute;inset:-1px;border-radius:50px;
  background:inherit;z-index:-1;
  animation:wa-pulse 2.8s ease-out infinite;animation-delay:2s;
}
@keyframes wa-pulse { 0%{opacity:.5;transform:scale(1)} 70%{opacity:0;transform:scale(1.18)} 100%{opacity:0;transform:scale(1.18)} }

#wa-divi-tooltip {
  position:absolute;bottom:calc(100% + 10px);right:0;
  background:#1a1a1a;color:#fff;
  font-family:var(--et-global-font-body,'Open Sans',sans-serif);
  font-size:12px;line-height:1.4;
  padding:8px 12px;border-radius:6px;
  white-space:nowrap;pointer-events:none;
  opacity:0;transform:translateY(6px);
  transition:opacity 200ms ease,transform 200ms ease;
}
#wa-divi-tooltip::after { content:'';position:absolute;bottom:-5px;right:22px;border:5px solid transparent;border-top-color:#1a1a1a;border-bottom-width:0 }
#wa-divi-wrapper:hover #wa-divi-tooltip { opacity:1;transform:translateY(0) }

@media(max-width:600px) {
  #wa-divi-btn { padding:14px;border-radius:50% }
  #wa-divi-btn .wa-label { display:none }
  #wa-divi-tooltip { display:none }
}
@media(prefers-reduced-motion:reduce) { #wa-divi-btn::before { animation:none } }

/* ── Modal pre-contacto ── */
#watt-modal {
  display:none;
  position:fixed;inset:0;z-index:999999;
  align-items:flex-end;justify-content:center;
}
#watt-modal-overlay {
  position:absolute;inset:0;
  background:rgba(0,0,0,.5);
}
#watt-modal-panel {
  position:relative;z-index:1;
  background:#fff;width:100%;max-width:480px;
  border-radius:16px 16px 0 0;
  padding:28px 24px 32px;
  box-shadow:0 -4px 32px rgba(0,0,0,.15);
  animation:watt-slideup .28s cubic-bezier(.16,1,.3,1);
}
@keyframes watt-slideup { from{transform:translateY(60px);opacity:0} to{transform:translateY(0);opacity:1} }

#watt-modal-close {
  position:absolute;top:14px;right:16px;
  background:none;border:none;cursor:pointer;
  font-size:22px;line-height:1;color:#666;padding:4px 8px;
}
#watt-modal-close:hover { color:#111; }

#watt-modal-title {
  margin:0 0 20px;font-size:20px;font-weight:700;color:#111;
  font-family:var(--et-global-font-heading,'Open Sans',sans-serif);
}

#watt-modal-form { display:flex;flex-direction:column;gap:14px; }

#watt-modal-name {
  width:100%;box-sizing:border-box;
  padding:12px 14px;border:1.5px solid #ddd;border-radius:8px;
  font-size:15px;outline:none;
  font-family:inherit;
  transition:border-color 180ms ease;
}
#watt-modal-name:focus { border-color:#25D366; }

.watt-rgpd-label {
  display:flex;gap:10px;align-items:flex-start;
  font-size:13px;color:#555;line-height:1.5;cursor:pointer;
}
.watt-rgpd-label input[type=checkbox] { margin-top:3px;flex-shrink:0;accent-color:#25D366; }
.watt-rgpd-label a { color:#25D366; }

.watt-modal-submit {
  background:#25D366;color:#fff;border:none;border-radius:50px;
  padding:14px 24px;font-size:15px;font-weight:600;cursor:pointer;
  font-family:inherit;
  transition:filter 180ms ease,transform 180ms ease;
}
.watt-modal-submit:hover { filter:brightness(1.07);transform:translateY(-1px); }
.watt-modal-submit:active { transform:translateY(0); }

#watt-modal-skip {
  display:block;text-align:center;margin-top:12px;
  font-size:13px;color:#888;text-decoration:none;
}
#watt-modal-skip:hover { color:#555;text-decoration:underline; }

@media(min-width:601px) {
  #watt-modal { align-items:center; }
  #watt-modal-panel {
    border-radius:16px;
    animation:watt-fadein .22s ease;
  }
  @keyframes watt-fadein { from{opacity:0;transform:scale(.96)} to{opacity:1;transform:scale(1)} }
}
@media(prefers-reduced-motion:reduce) {
  #watt-modal-panel { animation:none; }
}
