.elementor-77 .elementor-element.elementor-element-c354aec{--display:flex;--margin-top:-7%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-77 .elementor-element.elementor-element-6ada845{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:50px;--padding-bottom:50px;--padding-left:50px;--padding-right:50px;}.elementor-77 .elementor-element.elementor-element-d76d8fc{--display:flex;}.elementor-77 .elementor-element.elementor-element-23c3f20{--display:flex;}.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-77 .elementor-element.elementor-element-613f081 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-77 .elementor-element.elementor-element-613f081 .elementor-button span{gap:10px;}.elementor-77 .elementor-element.elementor-element-613f081 .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-77 .elementor-element.elementor-element-613f081 .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-77 .elementor-element.elementor-element-613f081 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-77 .elementor-element.elementor-element-613f081 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-77 .elementor-element.elementor-element-613f081 .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-77 .elementor-element.elementor-element-613f081 .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-77 .elementor-element.elementor-element-613f081 .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-77 .elementor-element.elementor-element-613f081 .elementor-field-type-html{padding-bottom:0px;}.elementor-77 .elementor-element.elementor-element-613f081 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-77 .elementor-element.elementor-element-613f081 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-77 .elementor-element.elementor-element-613f081 .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-77 .elementor-element.elementor-element-613f081 .elementor-button[type="submit"]{color:#ffffff;}.elementor-77 .elementor-element.elementor-element-613f081 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-77 .elementor-element.elementor-element-613f081 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-77 .elementor-element.elementor-element-613f081 .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-77 .elementor-element.elementor-element-613f081 .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-77 .elementor-element.elementor-element-613f081 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-77 .elementor-element.elementor-element-613f081 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-77 .elementor-element.elementor-element-613f081{--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;}.elementor-77 .elementor-element.elementor-element-51b2420{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}@media(max-width:1024px){.elementor-77 .elementor-element.elementor-element-c354aec{--margin-top:-10%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;}}@media(max-width:767px){.elementor-77 .elementor-element.elementor-element-c354aec{--margin-top:-21%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;}.elementor-77 .elementor-element.elementor-element-6ada845{--padding-top:11px;--padding-bottom:11px;--padding-left:11px;--padding-right:11px;}}/* Start custom CSS for form, class: .elementor-element-613f081 *//* ============================================================
  SHP · CSS PARA EL ELEMENTOR FORM DE CONTACTO
  
  INSTALACIÓN:
  1. Crea tu formulario con el widget "Form" de Elementor Pro
     en la columna derecha de la sección.
  2. En el widget Form: Avanzado > Clases CSS > escribe: shp-form
     (sin punto, solo la palabra)
  3. Pega TODO este CSS en una de estas dos opciones:
     a) WPCode > Add Snippet > CSS Snippet (recomendado, aplica
        a todo el sitio por si repites el form en otra página)
     b) En la página: Elementor > icono de engrane (abajo izq.)
        > Avanzado > CSS personalizado (requiere Elementor Pro)

  CAMPOS SUGERIDOS PARA EL FORM:
  · Nombre (text, requerido) — columna 50%
  · Empresa (text, requerido) — columna 50%
  · Teléfono (tel, requerido) — columna 50%
  · Correo (email, requerido) — columna 50%
  · Servicio de interés (select) — columna 100%
      Opciones: Seguridad e Higiene Industrial | Protección
      Civil y GIRD | Capacitación | Estudios y dictámenes | Otro
  · Mensaje (textarea, 4 filas) — columna 100%
  · Botón: "Enviar solicitud" — ancho 100%
============================================================ */

/* ---- Contenedor: tarjeta blanca elevada ---- */
.shp-form{
  background:#FFFFFF;
  border:1px solid rgba(13,27,42,.08);
  border-radius:12px;
  padding:44px 42px 40px;
  box-shadow:0 24px 60px rgba(13,27,42,.10);
  position:relative;
  overflow:hidden;
}
/* filo superior naranja */
.shp-form::before{
  content:"";position:absolute;top:0;left:0;right:0;height:4px;
  background:linear-gradient(90deg,#F5A623,#FFB93E 40%,transparent 90%);
}

/* ---- Etiquetas ---- */
.shp-form .elementor-field-group > label,
.shp-form .elementor-field-subgroup label{
  font-family:'IBM Plex Mono',monospace !important;
  font-size:10.5px !important;
  font-weight:500 !important;
  letter-spacing:.18em !important;
  text-transform:uppercase !important;
  color:#5C6B80 !important;
  margin-bottom:8px !important;
}
.shp-form .elementor-mark-required .elementor-field-label:after{
  color:#E0920F !important;
}

/* ---- Campos: inputs, textarea y select ---- */
.shp-form .elementor-field-textual,
.shp-form .elementor-field-textual:focus,
.shp-form select.elementor-field-textual{
  font-family:'Inter',sans-serif !important;
  font-size:15px !important;
  color:#0D1B2A !important;
  background:#F5F7FA !important;
  border:1.5px solid rgba(13,27,42,.12) !important;
  border-radius:6px !important;
  padding:14px 16px !important;
  box-shadow:none !important;
  transition:border-color .22s ease, background .22s ease, box-shadow .22s ease !important;
}
.shp-form .elementor-field-textual::placeholder{
  color:#9AA8BC !important;
  opacity:1 !important;
}
/* estado focus: borde y halo ámbar */
.shp-form .elementor-field-textual:focus{
  background:#FFFFFF !important;
  border-color:#F5A623 !important;
  box-shadow:0 0 0 4px rgba(245,166,35,.15) !important;
  outline:none !important;
}
/* textarea */
.shp-form textarea.elementor-field-textual{
  min-height:130px !important;
  resize:vertical !important;
}
/* select: flecha personalizada */
.shp-form select.elementor-field-textual{
  appearance:none !important;
  -webkit-appearance:none !important;
  background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='M1 1l6 6 6-6' fill='none' stroke='%23E0920F' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") !important;
  background-repeat:no-repeat !important;
  background-position:right 16px center !important;
  padding-right:44px !important;
  cursor:pointer !important;
}

/* separación entre grupos de campos */
.shp-form .elementor-field-group{
  margin-bottom:20px !important;
  padding-right:calc(10px / 2);
  padding-left:calc(10px / 2);
}

/* ---- Botón de envío ---- */
.shp-form .elementor-button{
  font-family:'Archivo',sans-serif !important;
  font-weight:700 !important;
  font-size:15.5px !important;
  letter-spacing:.02em !important;
  color:#0D1B2A !important;
  background:linear-gradient(180deg,#FFB93E,#F5A623) !important;
  border:none !important;
  border-radius:6px !important;
  padding:18px 34px !important;
  box-shadow:0 10px 30px rgba(245,166,35,.24) !important;
  transition:transform .22s ease, box-shadow .22s ease !important;
  cursor:pointer !important;
}
.shp-form .elementor-button:hover{
  transform:translateY(-2px) !important;
  box-shadow:0 16px 40px rgba(245,166,35,.36) !important;
  background:linear-gradient(180deg,#FFC155,#F8AC2E) !important;
}
.shp-form .elementor-button:active{
  transform:translateY(0) !important;
}

/* ---- Mensajes de éxito y error ---- */
.shp-form .elementor-message{
  font-family:'Inter',sans-serif !important;
  font-size:14px !important;
  border-radius:6px !important;
  padding:14px 18px !important;
  margin-top:18px !important;
}
.shp-form .elementor-message.elementor-message-success{
  background:rgba(37,168,102,.10) !important;
  color:#1B7A4A !important;
  border:1px solid rgba(37,168,102,.35) !important;
}
.shp-form .elementor-message.elementor-message-danger,
.shp-form .elementor-field-group .elementor-error-message{
  color:#C0392B !important;
}
.shp-form .elementor-message.elementor-message-danger{
  background:rgba(192,57,43,.08) !important;
  border:1px solid rgba(192,57,43,.30) !important;
  padding:14px 18px !important;
}
/* campo con error: borde rojo */
.shp-form .elementor-error .elementor-field-textual,
.shp-form .elementor-field-textual.elementor-error{
  border-color:#C0392B !important;
}
.shp-form .elementor-field-group .elementor-error-message{
  font-size:12px !important;
  margin-top:6px !important;
}

/* ---- Responsive ---- */
@media (max-width:680px){
  .shp-form{
    padding:30px 22px 28px;
    border-radius:10px;
  }
  .shp-form .elementor-field-textual{
    font-size:16px !important; /* evita el zoom automático de iOS */
  }
  .shp-form .elementor-button{
    width:100% !important;
  }
}/* End custom CSS */