.elementor-487 .elementor-element.elementor-element-cee4a85{--display:flex;}.elementor-bc-flex-widget .elementor-487 .elementor-element.elementor-element-7d472be8.elementor-column .elementor-widget-wrap{align-items:center;}.elementor-487 .elementor-element.elementor-element-7d472be8.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:center;align-items:center;}.elementor-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group > label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-type-html{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-message{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form{--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-487 .elementor-element.elementor-element-10bea68a .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-487 .elementor-element.elementor-element-10bea68a .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-487 .elementor-element.elementor-element-10bea68a .elementor-field-group.recaptcha_v3-bottomleft, .elementor-487 .elementor-element.elementor-element-10bea68a .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-487 .elementor-element.elementor-element-10bea68a .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-487 .elementor-element.elementor-element-10bea68a .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-487 .elementor-element.elementor-element-10bea68a .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-487 .elementor-element.elementor-element-10bea68a .elementor-field-group > label, .elementor-487 .elementor-element.elementor-element-10bea68a .elementor-field-subgroup label{color:var( --e-global-color-eb80f8d );}.elementor-487 .elementor-element.elementor-element-10bea68a .elementor-field-group > label{font-family:"Roboto", Sans-serif;font-weight:400;}.elementor-487 .elementor-element.elementor-element-10bea68a .elementor-field-type-html{padding-bottom:0px;}.elementor-487 .elementor-element.elementor-element-10bea68a .e-form__buttons__wrapper__button-next{background-color:#FF0000;color:#ffffff;}.elementor-487 .elementor-element.elementor-element-10bea68a .elementor-button[type="submit"]{background-color:#FF0000;color:#ffffff;}.elementor-487 .elementor-element.elementor-element-10bea68a .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-487 .elementor-element.elementor-element-10bea68a .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-487 .elementor-element.elementor-element-10bea68a .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-487 .elementor-element.elementor-element-10bea68a .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-487 .elementor-element.elementor-element-10bea68a .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-487 .elementor-element.elementor-element-10bea68a .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-487 .elementor-element.elementor-element-10bea68a{--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-487 .elementor-element.elementor-element-7d472be8{width:100%;}}/* Start custom CSS for form, class: .elementor-element-10bea68a *//* === TEXTO EN NEGRO === */
.elementor-form input,
.elementor-form textarea,
.elementor-form select,
.elementor-form label {
  color: #000 !important;
}

/* === PLACEHOLDER LEGIBLE === */
.elementor-form ::placeholder {
  color: #666;
  opacity: 1;
}

/* === ESTILO BASE DE CAMPOS === */
.elementor-form input,
.elementor-form textarea,
.elementor-form select {
  background-color: white;
  padding: 12px;
  border-radius: 6px;
  width: 100%;
  box-sizing: border-box;
  border: 2px solid #ccc; /* fallback */
  transition: border-color 0.3s ease, box-shadow 0.2s ease;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

/* === FOCUS EN CAMPOS === */
.elementor-form input:focus,
.elementor-form textarea:focus,
.elementor-form select:focus {
  border-color: #000;
  outline: none;
  box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.1);
}

/* === BUCLE DE COLORES EN BORDES === */
.elementor-form .elementor-field-group:nth-of-type(3n+1) input,
.elementor-form .elementor-field-group:nth-of-type(3n+1) textarea,
.elementor-form .elementor-field-group:nth-of-type(3n+1) select {
  border-color: red;
}

.elementor-form .elementor-field-group:nth-of-type(3n+2) input,
.elementor-form .elementor-field-group:nth-of-type(3n+2) textarea,
.elementor-form .elementor-field-group:nth-of-type(3n+2) select {
  border-color: green;
}

.elementor-form .elementor-field-group:nth-of-type(3n+3) input,
.elementor-form .elementor-field-group:nth-of-type(3n+3) textarea,
.elementor-form .elementor-field-group:nth-of-type(3n+3) select {
  border-color: orange;
}

/* === ICONOS EN CAMPOS === */
.elementor-form .elementor-field-group {
  position: relative;
}

.elementor-form .elementor-field-group input,
.elementor-form .elementor-field-group textarea,
.elementor-form .elementor-field-group select {
  padding-left: 40px;
}

.elementor-form .elementor-field-group::before {
  content: "";
  position: absolute;
  left: 12px;
  top: 50%;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0.6;
}

/* === ICONOS POR CAMPO (ajusta según orden real del formulario) === */
.elementor-form .elementor-field-group:nth-of-type(1)::before {
  background-image: url('https://cdn-icons-png.flaticon.com/512/1077/1077114.png'); /* usuario */
}
.elementor-form .elementor-field-group:nth-of-type(2)::before {
  background-image: url('https://cdn-icons-png.flaticon.com/512/561/561127.png'); /* email */
}
.elementor-form .elementor-field-group:nth-of-type(3)::before {
  background-image: url('https://cdn-icons-png.flaticon.com/512/455/455705.png'); /* teléfono */
}
.elementor-form .elementor-field-group:nth-of-type(4)::before {
  background-image: url('https://cdn-icons-png.flaticon.com/512/2462/2462719.png'); /* mensaje */
}

/* === BOTÓN DE ENVÍO === */
.elementor-form .elementor-button {
  background-color: #000;
  color: #fff;
  font-weight: bold;
  padding: 14px 28px;
  border-radius: 6px;
  border: none;
  transition: background-color 0.3s ease, transform 0.2s ease;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.elementor-form .elementor-button:hover {
  background-color: #333;
  transform: translateY(-1px);
}

.elementor-form .elementor-button:active {
  transform: scale(0.98);
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
}

/* === MENSAJE DE ÉXITO === */
.elementor-message.elementor-message-success {
  background-color: #e6f9ed;
  color: #2d7a46;
  border-left: 5px solid #2ecc71;
  padding: 16px 20px;
  border-radius: 6px;
  font-weight: 500;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
}

/* === MENSAJE DE ERROR === */
.elementor-message.elementor-message-danger {
  background-color: #fbeaea;
  color: #b71c1c;
  border-left: 5px solid #e74c3c;
  padding: 16px 20px;
  border-radius: 6px;
  font-weight: 500;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
}

/* === EFECTO TARJETA (GLASSMORPHISM) EN FORMULARIO === */
.elementor-form {
  background: rgba(255, 255, 255, 0.75);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-radius: 16px;
  padding: 30px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
  animation: fadeUp 0.8s ease forwards;
  opacity: 0;
  transform: translateY(30px);
}

/* === ANIMACIÓN GENERAL DEL FORMULARIO === */
@keyframes fadeUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* === ANIMACIÓN DE CAMPOS POR ORDEN === */
.elementor-form .elementor-field-group {
  opacity: 0;
  transform: translateY(20px);
  animation: fadeField 0.6s ease forwards;
  animation-delay: 0.3s;
}

.elementor-form .elementor-field-group:nth-child(2) {
  animation-delay: 0.4s;
}
.elementor-form .elementor-field-group:nth-child(3) {
  animation-delay: 0.5s;
}
.elementor-form .elementor-field-group:nth-child(4) {
  animation-delay: 0.6s;
}
.elementor-form .elementor-field-group:nth-child(5) {
  animation-delay: 0.7s;
}
/* Puedes añadir más nth-child si hay más campos */

@keyframes fadeField {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* === BOTÓN RESPONSIVE === */
@media (max-width: 768px) {
  .elementor-form .elementor-button {
    width: 100%;
    font-size: 1.1rem;
  }
}
/* === ICONO PARA CAMPO "PROVINCIA" (5º campo) === */
.elementor-form .elementor-field-group:nth-of-type(5)::before {
  background-image: url('https://cdn-icons-png.flaticon.com/512/535/535239.png'); /* ubicación/mapa */
}

/* === ICONO PARA MENSAJE (ajusta el orden si cambia) === */
.elementor-form .elementor-field-group:nth-of-type(6)::before {
  background-image: url('https://cdn-icons-png.flaticon.com/512/2462/2462719.png'); /* mensaje */
}

/* === BOTÓN MÁS LLAMATIVO === */
.elementor-form .elementor-button {
  background: linear-gradient(45deg, #ff4d4d, #ff9900);
  color: white;
  font-size: 1.1rem;
  padding: 16px 32px;
  border-radius: 12px;
  border: none;
  transition: all 0.3s ease;
  box-shadow: 0 6px 20px rgba(0,0,0,0.15);
}

.elementor-form .elementor-button:hover {
  background: linear-gradient(45deg, #e60000, #cc7a00);
  transform: scale(1.03);
  box-shadow: 0 8px 24px rgba(0,0,0,0.2);
}

.elementor-form .elementor-button:active {
  transform: scale(0.97);
}

/* === REDES SOCIALES CENTRADAS DEBAJO DEL FORMULARIO === */
.form-redes {
  text-align: center;
  margin-top: 30px;
}

.form-redes a {
  display: inline-block;
  margin: 0 10px;
  font-size: 24px;
  color: #000;
  transition: transform 0.2s ease;
}

.form-redes a:hover {
  transform: scale(1.2);
  color: #ff4d4d;
}

/* === TÍTULO Y SUBTÍTULO === */
.form-titulo {
  text-align: center;
  margin-bottom: 30px;
}

.form-titulo h2 {
  font-size: 2rem;
  font-weight: 700;
  color: #000;
  margin-bottom: 10px;
}

.form-titulo p {
  font-size: 1.1rem;
  color: #333;
}/* End custom CSS */