.elementor-2277 .elementor-element.elementor-element-dfc2c22{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:16px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--z-index:1;}.elementor-2277 .elementor-element.elementor-element-3c40c41{--divider-border-style:solid;--divider-color:#DDDDDD;--divider-border-width:1px;}.elementor-2277 .elementor-element.elementor-element-3c40c41 .elementor-divider-separator{width:100%;}.elementor-2277 .elementor-element.elementor-element-3c40c41 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-2277 .elementor-element.elementor-element-60ac087{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:50px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2277 .elementor-element.elementor-element-da0aecb{--display:flex;}.elementor-2277 .elementor-element.elementor-element-771dc3a{text-align:start;}.elementor-2277 .elementor-element.elementor-element-771dc3a .elementor-heading-title{font-family:"MONT", Sans-serif;font-size:14px;font-weight:900;letter-spacing:0.9px;}.elementor-2277 .elementor-element.elementor-element-cd36b61{margin:-25px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-2277 .elementor-element.elementor-element-cd36b61 .elementor-heading-title{font-family:"MONT", Sans-serif;font-size:36px;font-weight:900;line-height:64px;letter-spacing:-0.3px;word-spacing:0px;}.elementor-2277 .elementor-element.elementor-element-cb82df1{text-align:start;}.elementor-2277 .elementor-element.elementor-element-cb82df1 .elementor-heading-title{font-family:"MONT", Sans-serif;font-size:21px;font-weight:500;line-height:30px;letter-spacing:-0.3px;word-spacing:0px;}.elementor-2277 .elementor-element.elementor-element-5e0e68e{--display:flex;--padding-top:0px;--padding-bottom:23px;--padding-left:23px;--padding-right:23px;}.elementor-2277 .elementor-element.elementor-element-5827af1{--grid-template-columns:repeat(0, auto);text-align:center;margin:20px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;--icon-size:24px;--grid-column-gap:23px;--grid-row-gap:0px;}.elementor-2277 .elementor-element.elementor-element-5827af1 .elementor-social-icon{background-color:var( --e-global-color-accent );--icon-padding:0.5em;}.elementor-2277 .elementor-element.elementor-element-5827af1 .elementor-social-icon i{color:#FFFFFF;}.elementor-2277 .elementor-element.elementor-element-5827af1 .elementor-social-icon svg{fill:#FFFFFF;}.elementor-2277 .elementor-element.elementor-element-1d4b6f4{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:50px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2277 .elementor-element.elementor-element-9456bf3 .elementor-heading-title{font-family:"MONT", Sans-serif;font-size:25px;font-weight:900;font-style:italic;line-height:64px;letter-spacing:-0.3px;word-spacing:0px;}.elementor-2277 .elementor-element.elementor-element-78dedeb{text-align:start;}.elementor-2277 .elementor-element.elementor-element-78dedeb .elementor-heading-title{font-family:"MONT", Sans-serif;font-size:21px;font-weight:500;line-height:30px;letter-spacing:-0.3px;word-spacing:0px;}.elementor-2277 .elementor-element.elementor-element-470b604{--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;--gap:0px 010px;--row-gap:0px;--column-gap:010px;--margin-top:0px;--margin-bottom:50px;--margin-left:0px;--margin-right:0px;--padding-top:21px;--padding-bottom:30px;--padding-left:0px;--padding-right:0px;}.elementor-2277 .elementor-element.elementor-element-eb21732{--display:flex;}.elementor-2277 .elementor-element.elementor-element-4a29af9{--display:flex;}.elementor-2277 .elementor-element.elementor-element-60334b7{--display:flex;}.elementor-2277 .elementor-element.elementor-element-4ec6671{--display:flex;}.elementor-2277 .elementor-element.elementor-element-96540cb{--display:flex;--margin-top:52px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-2277 .elementor-element.elementor-element-ee70b99 iframe{height:489px;filter:brightness( 96% ) contrast( 100% ) saturate( 0% ) blur( 0px ) hue-rotate( 0deg );}:root{--page-title-display:none;}@media(min-width:768px){.elementor-2277 .elementor-element.elementor-element-60ac087{--content-width:1099px;}.elementor-2277 .elementor-element.elementor-element-da0aecb{--width:46%;}.elementor-2277 .elementor-element.elementor-element-5e0e68e{--width:54%;}.elementor-2277 .elementor-element.elementor-element-1d4b6f4{--content-width:1099px;}.elementor-2277 .elementor-element.elementor-element-470b604{--content-width:1095px;}.elementor-2277 .elementor-element.elementor-element-eb21732{--width:30%;}.elementor-2277 .elementor-element.elementor-element-4a29af9{--width:23%;}.elementor-2277 .elementor-element.elementor-element-60334b7{--width:23%;}.elementor-2277 .elementor-element.elementor-element-4ec6671{--width:23%;}}@media(max-width:767px){.elementor-2277 .elementor-element.elementor-element-3c40c41{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-2277 .elementor-element.elementor-element-60ac087{--padding-top:50px;--padding-bottom:0px;--padding-left:10px;--padding-right:10px;}.elementor-2277 .elementor-element.elementor-element-cd36b61{margin:-21px 0px calc(var(--kit-widget-spacing, 0px) + -4px) 0px;text-align:start;}.elementor-2277 .elementor-element.elementor-element-cd36b61 .elementor-heading-title{font-size:28px;line-height:1.3em;}.elementor-2277 .elementor-element.elementor-element-cb82df1 .elementor-heading-title{font-size:20px;line-height:1.3em;}.elementor-2277 .elementor-element.elementor-element-5e0e68e{--padding-top:50px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-2277 .elementor-element.elementor-element-1d4b6f4{--padding-top:50px;--padding-bottom:0px;--padding-left:10px;--padding-right:10px;}.elementor-2277 .elementor-element.elementor-element-9456bf3{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 28px) 0px;text-align:center;}.elementor-2277 .elementor-element.elementor-element-9456bf3 .elementor-heading-title{font-size:28px;line-height:1.3em;}.elementor-2277 .elementor-element.elementor-element-78dedeb .elementor-heading-title{font-size:20px;line-height:1.3em;}}/* Start custom CSS for container, class: .elementor-element-5e0e68e *//* ============================================================
   GASPASA — QuForms Custom CSS
   Pegar en: Apariencia → Personalizar → CSS adicional
   (o en el campo "Custom CSS" del tema)
   ============================================================ */

/* ------------------------------------------------------------------
   1. CONTENEDOR GENERAL
   ------------------------------------------------------------------ */
.quform-outer-wrapper {
  font-family: inherit;
}

.quform-inner {
  padding: 0;
}

/* ------------------------------------------------------------------
   2. ESPACIADO ENTRE CAMPOS
   ------------------------------------------------------------------ */
.quform-elements .quform-element {
  margin-bottom: 18px;
}

/* ------------------------------------------------------------------
   3. LABELS
   ------------------------------------------------------------------ */
.quform-label,
.quform-element > label {
  display: block;
  font-size: 12px;
  font-weight: 700;
  color: #5a6a7a;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 6px;
}

/* Asterisco de campo requerido */
.quform-required {
  color: #E67E22;
  margin-left: 2px;
}

/* ------------------------------------------------------------------
   4. INPUTS (texto, email, teléfono, url, contraseña)
   ------------------------------------------------------------------ */
.quform-field-text,
.quform-field-email,
.quform-field-tel,
.quform-field-url,
.quform-field-password,
.quform-field-number,
.quform-field-captcha {
  width: 100%;
  padding: 12px 16px;
  border: 1.5px solid #dce3ea;
  border-radius: 12px;
  background-color: #ffffff;
  color: #2c3e50;
  font-size: 15px;
  line-height: 1.5;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
  outline: none;
  -webkit-appearance: none;
  appearance: none;
  box-sizing: border-box;
}

/* Focus */
.quform-field-text:focus,
.quform-field-email:focus,
.quform-field-tel:focus,
.quform-field-url:focus,
.quform-field-password:focus,
.quform-field-number:focus,
.quform-field-captcha:focus {
  border-color: #E67E22;
  box-shadow: 0 0 0 3px rgba(230, 126, 34, 0.15);
  outline: none;
}

/* Placeholder */
.quform-field-text::placeholder,
.quform-field-email::placeholder,
.quform-field-tel::placeholder,
.quform-field-url::placeholder,
.quform-field-password::placeholder,
.quform-field-number::placeholder,
.quform-field-captcha::placeholder {
  color: #b0bec5;
  font-size: 14px;
}

/* ------------------------------------------------------------------
   5. SELECT (desplegables)
   ------------------------------------------------------------------ */
.quform-field-select {
  width: 100%;
  padding: 12px 40px 12px 16px;
  border: 1.5px solid #dce3ea;
  border-radius: 12px;
  background-color: #ffffff;
  color: #2c3e50;
  font-size: 15px;
  line-height: 1.5;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
  outline: none;
  -webkit-appearance: none;
  appearance: none;
  cursor: pointer;
  box-sizing: border-box;
  /* Flecha SVG naranja */
  background-image: url("data:image/svg+xml,%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' stroke='%23E67E22' stroke-width='2' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 14px center;
}

.quform-field-select:focus {
  border-color: #E67E22;
  box-shadow: 0 0 0 3px rgba(230, 126, 34, 0.15);
  outline: none;
}

/* Opción por defecto en gris */
.quform-field-select option:first-child {
  color: #b0bec5;
}

/* ------------------------------------------------------------------
   6. TEXTAREA (comentario)
   ------------------------------------------------------------------ */
.quform-field-textarea {
  width: 100%;
  padding: 12px 16px;
  border: 1.5px solid #dce3ea;
  border-radius: 12px;
  background-color: #ffffff;
  color: #2c3e50;
  font-size: 15px;
  line-height: 1.6;
  min-height: 140px;
  resize: vertical;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
  outline: none;
  -webkit-appearance: none;
  appearance: none;
  box-sizing: border-box;
  font-family: inherit;
}

.quform-field-textarea:focus {
  border-color: #E67E22;
  box-shadow: 0 0 0 3px rgba(230, 126, 34, 0.15);
  outline: none;
}

.quform-field-textarea::placeholder {
  color: #b0bec5;
  font-size: 14px;
}

/* ------------------------------------------------------------------
   7. CHECKBOX (aviso de privacidad)
   ------------------------------------------------------------------ */
.quform-field-checkbox-element {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}

.quform-field-checkbox {
  width: 18px;
  height: 18px;
  min-width: 18px;
  accent-color: #E67E22;
  cursor: pointer;
  margin-top: 2px;
}

.quform-field-checkbox-label {
  font-size: 14px;
  color: #5a6a7a;
  line-height: 1.5;
  cursor: pointer;
}

.quform-field-checkbox-label a {
  color: #E67E22;
  text-decoration: underline;
  font-weight: 600;
}

.quform-field-checkbox-label a:hover {
  color: #c96e0a;
}

/* ------------------------------------------------------------------
   8. CAPTCHA
   ------------------------------------------------------------------ */
.quform-element-captcha .quform-field-captcha {
  max-width: 220px;
}

/* Texto de ayuda del captcha */
.quform-element-captcha p,
.quform-element-captcha .quform-element-text-below {
  font-size: 12px;
  color: #8898a8;
  margin-top: 6px;
  font-style: italic;
}

/* ------------------------------------------------------------------
   9. BOTÓN ENVIAR — estilo pill naranja (igual a UBICACIONES)
   ------------------------------------------------------------------ */
.quform-submit-inner .quform-submit,
.quform-submit-inner button[type="submit"],
.quform-submit-inner input[type="submit"] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background-color: #E67E22;
  color: #ffffff !important;
  font-weight: 800;
  font-size: 14px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 14px 44px;
  border-radius: 50px;          /* pill shape */
  border: none;
  cursor: pointer;
  transition: background-color 0.2s ease,
              box-shadow 0.2s ease,
              transform 0.15s ease;
  box-shadow: 0 4px 16px rgba(230, 126, 34, 0.40);
  min-width: 170px;
  text-decoration: none;
  -webkit-appearance: none;
  appearance: none;
}

/* Hover */
.quform-submit-inner .quform-submit:hover,
.quform-submit-inner button[type="submit"]:hover,
.quform-submit-inner input[type="submit"]:hover {
  background-color: #cf6d17;
  box-shadow: 0 6px 22px rgba(230, 126, 34, 0.50);
  transform: translateY(-2px);
  color: #ffffff !important;
}

/* Active / click */
.quform-submit-inner .quform-submit:active,
.quform-submit-inner button[type="submit"]:active,
.quform-submit-inner input[type="submit"]:active {
  background-color: #b85d10;
  transform: translateY(0);
  box-shadow: 0 2px 8px rgba(230, 126, 34, 0.30);
}

/* Cambiar texto "Send" → "Enviar" vía CSS
   (oculta el texto original y muestra "ENVIAR") */
.quform-submit-inner input[type="submit"] {
  font-size: 0;          /* oculta el texto original */
  color: transparent !important;
  position: relative;
}
.quform-submit-inner input[type="submit"]::after {
  content: "ENVIAR";
  font-size: 14px;
  color: #ffffff;
  font-weight: 800;
  letter-spacing: 0.08em;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  pointer-events: none;
  white-space: nowrap;
}

/* Si el botón es <button> en lugar de <input> */
.quform-submit-inner button[type="submit"].quform-submit {
  font-size: 14px;
  color: #ffffff !important;
}

/* ------------------------------------------------------------------
   10. MENSAJES DE ERROR Y VALIDACIÓN
   ------------------------------------------------------------------ */
.quform-field-error,
.quform-error {
  display: block;
  color: #e74c3c;
  font-size: 12px;
  font-weight: 600;
  margin-top: 5px;
  padding-left: 4px;
}

/* Campo con error */
.quform-element-has-error .quform-field-text,
.quform-element-has-error .quform-field-email,
.quform-element-has-error .quform-field-tel,
.quform-element-has-error .quform-field-select,
.quform-element-has-error .quform-field-textarea,
.quform-element-has-error .quform-field-captcha {
  border-color: #e74c3c;
  box-shadow: 0 0 0 3px rgba(231, 76, 60, 0.12);
}

/* ------------------------------------------------------------------
   11. MENSAJE DE ÉXITO
   ------------------------------------------------------------------ */
.quform-success-message,
.quform-success-message-inner {
  background-color: #eafaf1;
  border: 1.5px solid #27ae60;
  color: #1e8449;
  border-radius: 12px;
  padding: 18px 22px;
  font-weight: 600;
  font-size: 15px;
  line-height: 1.5;
}

/* ------------------------------------------------------------------
   12. TEXTO DE AYUDA (below fields)
   ------------------------------------------------------------------ */
.quform-element-text-below {
  font-size: 12px;
  color: #8898a8;
  margin-top: 5px;
  line-height: 1.4;
}

/* ============================================================
   NOTA SOBRE EL TEXTO DEL BOTÓN
   ============================================================
   Si el snippet de ::after no funciona (depende del tipo de
   elemento que genera QuForms), busca el texto en:
   QuForms → Editar formulario → pestaña "Submit" →
   campo "Button text" y escribe "ENVIAR" ahí directamente.

   Alternativamente, agrega este JS en un bloque HTML
   personalizado de Elementor o via WPCode:

   <script>
   document.addEventListener('DOMContentLoaded', function() {
     var btn = document.querySelector(
       '.quform-submit-inner input[type="submit"], ' +
       '.quform-submit-inner button[type="submit"]'
     );
     if (btn) {
       btn.value       = 'ENVIAR';   // para <input>
       btn.textContent = 'ENVIAR';   // para <button>
     }
   });
   </script>
   ============================================================ *//* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'MONT';
	font-style: normal;
	font-weight: 500;
	font-display: auto;
	src: url('https://www.gaspasa.com.mx/wp-content/uploads/2026/03/Montserrat-VariableFont_wght-1.ttf') format('truetype');
}
/* End Custom Fonts CSS */