.elementor-5889 .elementor-element.elementor-element-2059ae7{--display:flex;}.elementor-5889 .elementor-element.elementor-element-e89fe9b{--display:flex;}.elementor-5889 .elementor-element.elementor-element-8706c85{--display:flex;}.elementor-5889 .elementor-element.elementor-element-93dae4b{--display:flex;}.elementor-5889 .elementor-element.elementor-element-52ebef7{--display:flex;}.elementor-5889 .elementor-element.elementor-element-c38beef{--display:flex;}.elementor-5889 .elementor-element.elementor-element-7579d44{--display:flex;}.elementor-5889 .elementor-element.elementor-element-9b7f393{--display:flex;}.elementor-5889 .elementor-element.elementor-element-686169b{--display:flex;}.elementor-5889 .elementor-element.elementor-element-879a3f6{--display:flex;}.elementor-5889 .elementor-element.elementor-element-4dc9fd8{--display:flex;}.elementor-5889 .elementor-element.elementor-element-b718413{--display:flex;}.elementor-5889 .elementor-element.elementor-element-1411a61{--display:flex;}/* Start custom CSS *//* ===== FIX VISIBILIDAD CTA (forzar fondos y color) ===== */
#ultra-quote .ultra-btn,
#ultra-quote a.ultra-btn,
#ultra-quote .ultra-st,
#ultra-quote .ultra-file-btn,
#ultra-quote .ultra-cta-xl{
  -webkit-appearance: none;
  appearance: none;
  border: 0;
  text-decoration: none !important;
  color: #fff !important;
  background-color: #6f79ff !important;              /* fallback sólido */
  background-image: linear-gradient(90deg,#6f79ff,#757FFF) !important;
  background-repeat: no-repeat !important;
  background-clip: padding-box !important;
}

/* Primario (Continuar / Enviar) */
#ultra-quote .ultra-primary{
  background-color: #6f79ff !important;
  background-image: linear-gradient(90deg,#6f79ff,#757FFF) !important;
  background-size: 200% 100% !important;
}

/* Acento (WhatsApp) */
#ultra-quote .ultra-accent,
#ultra-quote .ultra-wpp,
#ultra-quote .ultra-wpp-btn{
  background-color: #FD4070 !important;
  background-image: linear-gradient(90deg,#FD4070,#ff6a94) !important;
  background-size: 200% 100% !important;
}

/* Sticky CTA (móvil) */
#ultra-quote .ultra-st.ultra-main{
  background-color: #6f79ff !important;
  background-image: linear-gradient(90deg,#6f79ff,#757FFF) !important;
}
#ultra-quote .ultra-st.ultra-wpp{
  background-color: #FD4070 !important;
  background-image: linear-gradient(90deg,#FD4070,#ff6a94) !important;
}

/* Asegurar color blanco en hijos del CTA (por si el theme hereda) */
#ultra-quote .ultra-btn * ,
#ultra-quote .ultra-st * { color: inherit !important; }

/* Estados hover/focus (evitar que el theme los anule) */
#ultra-quote .ultra-btn:hover,
#ultra-quote .ultra-st:hover{
  filter: brightness(.98);
  transform: translateY(-2px);
}
#ultra-quote .ultra-btn:focus-visible,
#ultra-quote .ultra-st:focus-visible{
  outline: 3px solid #FFD2DF;
  outline-offset: 2px;
}

/* Por si el theme mete transparencia global en botones */
#ultra-quote .ultra-btn,
#ultra-quote .ultra-st{
  opacity: 1 !important;
}

/* Si tu theme aplica .button, .btn o a:not([class]) con fondos: neutralízalo aquí */
#ultra-quote .ultra-btn.button,
#ultra-quote .ultra-btn.btn{
  all: unset;
  display: inline-block;
  padding: 14px 22px;
  border-radius: 16px;
  font-weight: 900;
  color: #fff !important;
  background-image: linear-gradient(90deg,#6f79ff,#757FFF) !important;
}
#ultra-quote .ultra-cta-xl{ border: 1px solid rgba(255,255,255,.25); }

/* === FIX FAB (botón flotante abajo-derecha) === */
#ultraFab,
#ultraFab *{
  color:#fff !important;
}

#ultraFab{
  /* fuerza fondo y apariencia */
  -webkit-appearance:none; appearance:none;
  border:0 !important;
  background-color:#6f79ff !important; /* fallback sólido */
  background-image:linear-gradient(90deg,#6f79ff,#757FFF) !important;
  background-repeat:no-repeat !important;
  background-clip:padding-box !important;

  /* visibilidad por encima del theme */
  z-index:99999 !important;
  box-shadow:0 16px 32px rgba(117,127,255,.32) !important;
  opacity:1 !important;

  /* por si el theme cambia el tamaño/borde */
  padding:14px 18px !important;
  border-radius:999px !important;
}

/* algunos themes añaden pseudo-elementos que tapan el fondo */
#ultraFab::before,
#ultraFab::after{
  content:none !important;
  display:none !important;
  background:transparent !important;
  box-shadow:none !important;
  border:0 !important;
}

/* estado hover/focus coherente */
#ultraFab:hover{ filter:brightness(.98); transform:translateY(-2px); }
#ultraFab:focus-visible{ outline:3px solid #FFD2DF; outline-offset:2px; }

/* si el theme aplica reglas genéricas a button:not(.algo) */
#ultra-quote button#ultraFab{
  all:unset;
  display:flex !important; align-items:center !important; gap:10px !important;
  position:fixed !important; right:18px !important; bottom:calc(var(--u-sticky) + 18px) !important;
  cursor:pointer !important;
  padding:14px 18px !important; border-radius:999px !important;
  color:#fff !important;
  background-image:linear-gradient(90deg,#6f79ff,#757FFF) !important;
  box-shadow:0 16px 32px rgba(117,127,255,.32) !important;
  z-index:99999 !important;
}
/* ===== FIX VISIBILIDAD CTA (móvil · namespace hv-) ===== */

/* Forzar color/fondo en TODOS los CTA del bloque (botones y anchors) */
#hv-quote .hv-btn,
#hv-quote a.hv-btn,
#hv-quote .hv-st,
#hv-quote a.hv-st {
  -webkit-appearance: none;
  appearance: none;
  border: 0 !important;
  text-decoration: none !important;
  color: #fff !important;
  background-color: #6f79ff !important; /* fallback sólido */
  background-image: linear-gradient(90deg,#757FFF,#5d67ff) !important;
  background-repeat: no-repeat !important;
  background-clip: padding-box !important;
  opacity: 1 !important;
  isolation: isolate;            /* evita mix-blend-mode heredado */
  mix-blend-mode: normal !important;
  filter: none !important;
}

/* Primario (Continuar / Enviar) */
#hv-quote .hv-primary,
#hv-quote .hv-st.hv-main{
  background-color: #6f79ff !important;
  background-image: linear-gradient(90deg,#757FFF,#5d67ff) !important;
  background-size: 200% 100% !important;
}

/* Acento (WhatsApp) */
#hv-quote .hv-accent,
#hv-quote .hv-st.hv-wpp{
  background-color: #FD4070 !important;
  background-image: linear-gradient(90deg,#FD4070,#ff6a94) !important;
  background-size: 200% 100% !important;
}

/* Asegurar que el texto interior no herede color del theme */
#hv-quote .hv-btn *,
#hv-quote .hv-st * { color: inherit !important; }

/* Desactivar pseudo-elementos del theme que cubren el botón */
#hv-quote .hv-btn::before,
#hv-quote .hv-btn::after,
#hv-quote .hv-st::before,
#hv-quote .hv-st::after { content: none !important; display: none !important; }

/* Botón fantasma (volver) sin que el theme lo deje transparente */
#hv-quote .hv-ghost{
  background: #fff !important;
  color: #757FFF !important;
  border: 2px solid #757FFF !important;
  box-shadow: none !important;
}

/* Sticky visible encima de cualquier barra del theme */
#hv-quote .hv-sticky{
  z-index: 99999 !important;
  backdrop-filter: saturate(140%) blur(6px) !important;
}

/* Por si el theme tiene reglas genéricas .button / .btn aplicadas a nuestros CTA */
#hv-quote .hv-btn.button,
#hv-quote .hv-btn.btn,
#hv-quote .hv-st.button,
#hv-quote .hv-st.btn{
  all: unset;
  display: inline-block;
  width: 100%;
  max-width: 340px;
  padding: 14px 18px;
  border-radius: 14px;
  font-weight: 900;
  color: #fff !important;
  background-image: linear-gradient(90deg,#757FFF,#5d67ff) !important;
  text-align: center;
}
/* Ocultar sticky cuando estemos sobre el formulario */
.hv-sticky.is-hidden{
  transform: translateY(120%);
  opacity: 0;
  pointer-events: none;
  transition: transform .28s ease, opacity .28s ease;
}
.hv-sticky:not(.is-hidden){
  transform: translateY(0);
  opacity: 1;
  transition: transform .28s ease, opacity .28s ease;
}

/* Opcional: si tienes header fijo, que no tape el ancla */
#hv-quote{ scroll-margin-top: 80px; } /* ajusta 80px a tu cabecera *//* End custom CSS */