.elementor-9 .elementor-element.elementor-element-fec2b92{--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:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9 .elementor-element.elementor-element-29182b9{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9 .elementor-element.elementor-element-29182b9.e-con{--align-self:stretch;}.elementor-9 .elementor-element.elementor-element-e710148{--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:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9 .elementor-element.elementor-element-e710148:not(.elementor-motion-effects-element-type-background), .elementor-9 .elementor-element.elementor-element-e710148 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-9 .elementor-element.elementor-element-c63db78{--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:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9 .elementor-element.elementor-element-e7dbabc{--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:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9 .elementor-element.elementor-element-75401a9{--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:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9 .elementor-element.elementor-element-bd8c705{--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:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9 .elementor-element.elementor-element-0ec12ca{--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:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9 .elementor-element.elementor-element-c5f136f{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9 .elementor-element.elementor-element-6cab2dd{--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:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-image .widget-image-caption{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-9 .elementor-element.elementor-element-9c78dc6{--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:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.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-9 .elementor-element.elementor-element-3a93205 .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-9 .elementor-element.elementor-element-3a93205 .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-9 .elementor-element.elementor-element-3a93205 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-9 .elementor-element.elementor-element-3a93205 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-9 .elementor-element.elementor-element-3a93205 .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-9 .elementor-element.elementor-element-3a93205 .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-9 .elementor-element.elementor-element-3a93205 .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-9 .elementor-element.elementor-element-3a93205 .elementor-field-type-html{padding-bottom:0px;}.elementor-9 .elementor-element.elementor-element-3a93205 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-9 .elementor-element.elementor-element-3a93205 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-9 .elementor-element.elementor-element-3a93205 .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-9 .elementor-element.elementor-element-3a93205 .elementor-button[type="submit"]{color:#ffffff;}.elementor-9 .elementor-element.elementor-element-3a93205 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-9 .elementor-element.elementor-element-3a93205 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-9 .elementor-element.elementor-element-3a93205 .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-9 .elementor-element.elementor-element-3a93205 .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-9 .elementor-element.elementor-element-3a93205 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-9 .elementor-element.elementor-element-3a93205 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-9 .elementor-element.elementor-element-3a93205{--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-9 .elementor-element.elementor-element-5f11bd3{--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:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9 .elementor-element.elementor-element-0e888e6{--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:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}@media(max-width:767px){.elementor-9 .elementor-element.elementor-element-29182b9{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-9 .elementor-element.elementor-element-a89110f{padding:3px 3px 3px 3px;}}@media(min-width:768px){.elementor-9 .elementor-element.elementor-element-fec2b92{--width:100%;}.elementor-9 .elementor-element.elementor-element-29182b9{--width:100%;}.elementor-9 .elementor-element.elementor-element-e710148{--width:100%;}.elementor-9 .elementor-element.elementor-element-c63db78{--width:100%;}.elementor-9 .elementor-element.elementor-element-e7dbabc{--width:100%;}.elementor-9 .elementor-element.elementor-element-75401a9{--width:100%;}.elementor-9 .elementor-element.elementor-element-bd8c705{--width:100%;}.elementor-9 .elementor-element.elementor-element-0ec12ca{--width:100%;}.elementor-9 .elementor-element.elementor-element-c5f136f{--width:100%;}.elementor-9 .elementor-element.elementor-element-6cab2dd{--width:40%;}.elementor-9 .elementor-element.elementor-element-9c78dc6{--width:60%;}.elementor-9 .elementor-element.elementor-element-5f11bd3{--width:100%;}.elementor-9 .elementor-element.elementor-element-0e888e6{--width:100%;}}/* Start custom CSS *//* ===== HumiX León · Variables &amp; Reset ===== */
:root{
  --hx-blue:#9dbbe5; --hx-red:#fa1f02; --hx-gold:#efce8c;
  --hx-ink:#0f172a; --hx-text:#334155; --hx-white:#fff; --hx-smoke:#f6f8fb;
  --hx-max:1180px; --hx-r:18px; --hx-gap:20px;
  --hx-shadow:0 10px 30px rgba(15,23,42,.08);
}
*{ box-sizing:border-box }
html{ scroll-behavior:smooth; overflow-x:hidden }
body{ margin:0; color:var(--hx-text); font:16px/1.55 system-ui,Segoe UI,Roboto,Ubuntu,"Helvetica Neue",Arial }

/* Utilidades base */
img{ max-width:100%; height:auto; display:block }
.hx-inner{ max-width:var(--hx-max); margin:auto; padding:0 20px }
.grid{ display:grid; gap:var(--hx-gap) }
.card{ background:#fff; border:1px solid #eaeef3; border-radius:var(--hx-r); padding:22px; box-shadow:var(--hx-shadow) }
section{ padding:56px 0 }

/* Pills / Buttons */
.hx-tag{ display:inline-flex; align-items:center; gap:8px; font-weight:600; color:var(--hx-ink) }
.hx-tag .dot{ width:8px; height:8px; border-radius:50%; background:linear-gradient(135deg,var(--hx-gold),#f6e7bf) }

.hx-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:.6rem;
  padding:12px 18px; border-radius:999px; border:1px solid transparent;
  font-weight:700; line-height:1; text-decoration:none; cursor:pointer;
  position:relative; z-index:2; transition:transform .12s ease, filter .12s ease;
}
.hx-btn:hover{ transform:translateY(-1px); filter:saturate(110%) brightness(.98) }
.hx-btn--pri{ background:var(--hx-red); color:#fff }
.hx-btn--sec{ background:#fff; color:var(--hx-ink); border-color:#e5e7eb }
.hx-pill{ display:inline-flex; padding:6px 12px; border-radius:999px; background:#fff; border:1px solid #e5e7eb; font-size:.85rem }

/* ===== HEADER (nuevo) ===== */
#hx-leo-header{
  position:sticky; top:0; z-index:9999;
  background:rgba(255,255,255,.9); backdrop-filter:saturate(140%) blur(8px);
  border-bottom:1px solid #eef2f7;
}
#hx-leo-header .hx-inner{ height:66px; display:flex; align-items:center; justify-content:space-between; gap:14px }
#hx-leo-header .brand img{ height:42px; width:auto; object-fit:contain; display:block }
@media (max-width:900px){
  #hx-leo-header .hx-inner{ height:58px; padding:0 14px }
  #hx-leo-header .brand img{ height:30px }
}

/* ===== HERO (sin parallax, seguro) ===== */
#hx-leo-hero{ position:relative; min-height:72vh; color:#fff; overflow:hidden; z-index:1 }
#hx-leo-hero .hx-hero-bg{
  position:absolute; inset:0; z-index:0; pointer-events:none;
  background-image:
    radial-gradient(60% 60% at 70% 30%, rgba(157,187,229,.38), transparent 60%),
    linear-gradient(180deg, rgba(15,23,42,.44), rgba(15,23,42,.70)),
    url('https://leon.humixlanding.com/wp-content/uploads/sites/58/2025/11/humedades_en_leon_catedral.webp');
  background-size:cover; background-position:70% 45%; background-repeat:no-repeat;
}
#hx-leo-hero .hero-inner{ position:relative; z-index:1; padding:70px 0 }
#hx-leo-hero .copy{ max-width:980px }
#hx-leo-hero h1{
  font-weight:800; font-size:clamp(34px,5.2vw,68px);
  line-height:1.08; letter-spacing:-.012em; max-width:22ch;
}
#hx-leo-hero h1 em{ color:var(--hx-red); font-style:normal; font-weight:inherit }
#hx-leo-hero p{ color:#f2f5f9; margin:0 0 18px; max-width:62ch }
#hx-leo-hero .actions{ display:flex; flex-wrap:wrap; gap:12px; margin:10px 0 12px }
#hx-leo-hero .badges{ display:flex; flex-wrap:wrap; gap:10px }
@media (max-width:480px){
  #hx-leo-hero{ min-height:66vh }
  #hx-leo-hero .hero-inner{ padding:64px 20px 24px }
  #hx-leo-hero .copy{ max-width:96% }
  #hx-leo-hero h1{
    font-size:clamp(26px,7.2vw,36px); line-height:1.12; letter-spacing:-.01em; max-width:16ch;
  }
  #hx-leo-hero .hx-btn{ padding:12px 16px; font-size:15px }
  #hx-leo-hero .badges{ gap:8px }
}

/* La primera sección tapa el fondo del hero y ajusta anclas */
#hx-leo-subnav{ background:#fff; position:relative; z-index:2; padding-top:10px }
:target{ scroll-margin-top:86px }
@media (max-width:900px){ :target{ scroll-margin-top:72px } }

/* ===== SUBNAV ===== */
#hx-leo-subnav .subgrid{ display:grid; grid-template-columns:repeat(5,1fr); gap:10px; margin:0; padding:12px 0; list-style:none }
#hx-leo-subnav a{
  display:flex; align-items:center; gap:10px; padding:12px;
  border:1px solid #eaeef3; border-radius:14px; text-decoration:none;
  color:var(--hx-ink); background:var(--hx-smoke);
}
#hx-leo-subnav a .dot{ width:10px; height:10px; border-radius:50%; background:linear-gradient(135deg,var(--hx-gold),#f6e7bf) }
#hx-leo-subnav a.cta{ justify-content:center; background:var(--hx-red); color:#fff; border-color:transparent }
@media (max-width:480px){
  #hx-leo-subnav .subgrid{ grid-template-columns:1fr 1fr; gap:8px }
  #hx-leo-subnav a{ padding:10px 12px; font-size:14px }
}

/* ===== Secciones ===== */
#hx-leo-quienes{ background:#fff }
#hx-leo-servicios{ background:var(--hx-smoke) }
#hx-leo-equipos{ background:#fff }
#hx-leo-casos{ background:var(--hx-smoke) }
#hx-leo-faqs{ background:#fff }
#hx-leo-contacto{ background:var(--hx-smoke) }

@media (min-width:900px){
  #hx-leo-quienes   .grid{ grid-template-columns:1.2fr .8fr }
  #hx-leo-servicios .grid{ grid-template-columns:repeat(3,1fr) }
  #hx-leo-equipos   .grid{ grid-template-columns:repeat(3,1fr) }
  #hx-leo-casos     .grid{ grid-template-columns:1fr 1fr }
  #hx-leo-faqs      .grid{ grid-template-columns:1fr 1fr }
}

/* Imágenes uniformes en cards */
#hx-leo-servicios .card img,
#hx-leo-equipos   .card img,
#hx-leo-casos     img{
  width:100%; aspect-ratio:16/9; object-fit:cover; border-radius:12px; margin:-4px -4px 14px;
}

/* Responsive para Casos y FAQs */
@media (max-width:480px){
  #hx-leo-casos .grid, #hx-leo-faqs .grid{ grid-template-columns:1fr; gap:16px }
  #hx-leo-casos img{ aspect-ratio:4/3 }
}
@media (min-width:481px) and (max-width:768px){
  #hx-leo-casos .grid, #hx-leo-faqs .grid{ grid-template-columns:1fr 1fr; gap:18px }
}

/* ===== Contacto ===== */
#hx-leo-contacto form label{ display:block; font-weight:600; margin-bottom:6px; color:var(--hx-ink) }
#hx-leo-contacto input, #hx-leo-contacto textarea{
  width:100%; padding:12px 14px; border:1px solid #e5e7eb; border-radius:12px; background:#fff; font:inherit;
}
#hx-leo-contacto input:focus, #hx-leo-contacto textarea:focus{ outline:2px solid var(--hx-blue); border-color:transparent }

/* ===== Footer ===== */
#hx-leo-footer{ background:#0b1220; color:#c7d1e0; padding:40px 0 }
#hx-leo-footer .footer-grid{ display:grid; gap:24px; grid-template-columns:2fr 1fr 1fr }
#hx-leo-footer a{ color:#e9eef7; text-decoration:none }
#hx-leo-footer a:hover{ color:var(--hx-gold) }
#hx-leo-footer h4{ color:#fff; margin:0 0 12px }
#hx-leo-footer .brand-link{ display:inline-flex; margin-bottom:10px }
#hx-leo-footer .brand img{ height:40px; max-width:210px; width:auto; object-fit:contain; display:block }
#hx-leo-footer .tagline{ margin:0 0 8px }
#hx-leo-footer .mini{ opacity:.75; font-size:.9rem; margin:8px 0 0 }
#hx-leo-footer ul{ list-style:none; margin:0; padding:0 }
#hx-leo-footer li{ margin:6px 0 }
@media (max-width:900px){ #hx-leo-footer .footer-grid{ grid-template-columns:1fr } }
/* --- Desbloqueo de scroll y limpieza de overlays --- */
html, body{
  overflow-y:auto !important;
  overflow-x:hidden !important;
  height:auto !important;
}

/* El fondo del hero nunca captura eventos ni usa parallax fijo */
#hx-leo-hero{ position:relative; overflow:hidden; margin:0 !important; width:auto !important; }
#hx-leo-hero .hx-hero-bg{
  pointer-events:none !important;
  background-attachment:scroll !important;
}

/* Cualquier overlay/capa de efectos que pueda tapar la página */
.elementor-background-overlay,
.elementor-motion-effects-layer,
.mfp-wrap,
.dialog-type-lightbox{
  pointer-events:none !important;
}

/* El header no debe crear un panel que cubra la pantalla */
#hx-leo-header .elementor-sticky--active{
  pointer-events:auto !important;   /* sigue clicable */
}

/* Compensación de anclas con header sticky */
:target{ scroll-margin-top: 86px; }
@media (max-width:900px){ :target{ scroll-margin-top:72px; } }
/* ——— A) DESBLOQUEAR SCROLL ——— */
html,body{
  overflow-y:auto !important;
  overflow-x:hidden !important;
  height:auto !important;
}

/* El fondo del hero NUNCA captura eventos ni usa parallax */
#hx-leo-hero{ position:relative !important; overflow:hidden !important; z-index:1 !important; }
#hx-leo-hero .hx-hero-bg{
  position:absolute !important; inset:0 !important;
  pointer-events:none !important;
  background-attachment:scroll !important;
}

/* Cualquier overlay/capa de efectos que pudiera tapar la página */
.elementor-background-overlay,
.elementor-motion-effects-layer,
.mfp-wrap, .dialog-type-lightbox{
  pointer-events:none !important;
}

/* Asegura que lo de después del hero quede por encima */
#hx-leo-subnav, #hx-leo-quienes, #hx-leo-servicios, #hx-leo-equipos,
#hx-leo-casos, #hx-leo-faqs, #hx-leo-contacto, #hx-leo-footer{
  position:relative; z-index:2;
}

/* Compensación de anclas con header sticky */
:target{ scroll-margin-top:86px; }
@media (max-width:900px){ :target{ scroll-margin-top:72px; } }

/* ——— B) BOTONES: CONTRASTE Y CLIC ——— */
.hx-btn{
  display:inline-flex !important; align-items:center; justify-content:center;
  gap:.6rem; padding:12px 18px !important; border-radius:999px !important;
  border:1px solid transparent !important; font-weight:700; line-height:1;
  text-decoration:none !important; white-space:nowrap; cursor:pointer;
  position:relative; z-index:3; pointer-events:auto !important;
}
.hx-btn--pri{ background:#FA1F02 !important; color:#fff !important; }
.hx-btn--sec{ background:#fff !important; color:#0F172A !important; border-color:#e5e7eb !important; }
.hx-btn--sec *{ color:inherit !important; } /* evita texto blanco inyectado por otros estilos */
/* --- RESET DURO DE SCROLL Y CAPAS --- */
html, body{
  overflow-y:auto !important;
  overflow-x:hidden !important;
  height:auto !important;
  position:static !important;
}

/* Cualquier sección/capa fija NO debe cubrir la página */
[class*="elementor-sticky"],
[data-elementor-sticky],
.e-con.e-fixed,
.elementor-section.e-fixed{
  position:static !important;
  transform:none !important;
}

/* Overlays que a veces se quedan "vivos" delante */
.elementor-background-overlay,
.elementor-motion-effects-layer,
.mfp-wrap, .dialog-type-lightbox{
  pointer-events:none !important;
  position:static !important;
  inset:auto !important;
  height:auto !important;
  z-index:auto !important;
}

/* HERO seguro: el fondo nunca intercepta clic ni parallax */
#hx-leo-hero{ position:relative !important; overflow:hidden !important; z-index:1 !important; }
#hx-leo-hero .hx-hero-bg{
  position:absolute !important; inset:0 !important;
  pointer-events:none !important;
  background-attachment:scroll !important;
}

/* Lo que va después del hero siempre por encima */
#hx-leo-subnav, #hx-leo-quienes, #hx-leo-servicios, #hx-leo-equipos,
#hx-leo-casos, #hx-leo-faqs, #hx-leo-contacto, #hx-leo-footer{
  position:relative; z-index:2;
}

/* Anclas con header sticky */
:target{ scroll-margin-top:86px; }
@media (max-width:900px){ :target{ scroll-margin-top:72px; } }

/* --- BOTONES: contraste y clic --- */
.hx-btn{
  display:inline-flex !important;
  align-items:center; justify-content:center;
  gap:.6rem; padding:12px 18px !important;
  border-radius:999px !important; border:1px solid transparent !important;
  font-weight:700; line-height:1; white-space:nowrap; text-decoration:none !important;
  position:relative; z-index:3; pointer-events:auto !important;
}
.hx-btn--pri{ background:#FA1F02 !important; color:#fff !important; }
.hx-btn--sec{ background:#fff !important; color:#0F172A !important; border-color:#e5e7eb !important; }
.hx-btn--sec *{ color:inherit !important; } /* evita texto blanco importado desde otros estilos */
/* ===== Footer HumiX León – limpio y elegante ===== */
#hx-leo-footer{
  background:#0b1220; color:#c7d1e0; padding:48px 0 28px;
  border-top:1px solid rgba(255,255,255,.06);
}
#hx-leo-footer .hx-inner{ max-width:1180px; margin:auto; padding:0 20px; }

/* Grid y columnas */
#hx-leo-footer .footer-grid{
  display:grid; gap:28px;
  grid-template-columns: 2fr 1fr 1fr;      /* marca / enlaces / legal */
  align-items:start;
}
@media (max-width:900px){
  #hx-leo-footer .footer-grid{ grid-template-columns:1fr; gap:22px; }
}

/* Marca */
#hx-leo-footer .brand-link{ display:inline-flex; align-items:center; gap:12px; margin:0 0 10px; }
#hx-leo-footer .brand img{
  height:40px; width:auto; max-width:210px; object-fit:contain; display:block;
}
#hx-leo-footer .tagline{ margin:0 0 8px; opacity:.95; }
#hx-leo-footer .mini{ opacity:.7; font-size:.9rem; margin:10px 0 0; }

/* Títulos y listas */
#hx-leo-footer h4{
  color:#fff; margin:0 0 12px; font-size:1rem; letter-spacing:.2px;
  border-left:3px solid var(--hx-gold,#efce8c); padding-left:10px;
}
#hx-leo-footer ul{ list-style:none; margin:0; padding:0; }
#hx-leo-footer li{ margin:8px 0; }

/* Enlaces */
#hx-leo-footer a{
  color:#e9eef7; text-decoration:none; transition:opacity .15s ease, color .15s ease;
}
#hx-leo-footer a:hover{ color:var(--hx-gold,#efce8c); opacity:1; }
#hx-leo-footer .links a, #hx-leo-footer .legal a{
  opacity:.95;
}

/* Separador fino arriba del copyright (opcional) */
#hx-leo-footer .mini::before{
  content:""; display:block; height:1px; width:100%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.12),transparent);
  margin:14px 0;
}
/* ===== Imagen + Formulario (HumiX León) ===== */
#hx-leo-contacto{
  padding:56px 0; background:var(--hx-smoke,#f6f8fb);
}
#hx-leo-contacto .hx-inner{ max-width:1180px; margin:auto; padding:0 20px; }

/* 2 columnas: imagen + form */
#hx-leo-contacto .contact-wrap{
  display:grid; gap:22px;
  grid-template-columns:1fr 1fr;
}
@media (max-width:900px){
  #hx-leo-contacto .contact-wrap{ grid-template-columns:1fr; }
}

/* Imagen bonita */
#hx-leo-contacto .contact-photo{
  overflow:hidden; border-radius:18px;
  border:1px solid #eaeef3; box-shadow:0 10px 30px rgba(15,23,42,.08);
  background:#fff;
}
#hx-leo-contacto .contact-photo img{
  display:block; width:100%; height:100%; object-fit:cover; aspect-ratio: 4 / 3;
}

/* Card del formulario */
#hx-leo-contacto .elementor-form{
  background:#fff; border:1px solid #eaeef3; border-radius:18px;
  box-shadow:0 10px 30px rgba(15,23,42,.08);
  padding:22px;
}

/* Labels y campos */
#hx-leo-contacto .elementor-field-group{ margin-bottom:14px; }
#hx-leo-contacto .elementor-field-label{
  font-weight:600; color:var(--hx-ink,#0f172a); margin-bottom:6px;
}
#hx-leo-contacto .elementor-field,
#hx-leo-contacto .elementor-select-wrapper select,
#hx-leo-contacto textarea{
  width:100%; padding:12px 14px; border:1px solid #e5e7eb; border-radius:12px;
  background:#fff; color:var(--hx-ink,#0f172a); font:inherit;
}
#hx-leo-contacto .elementor-field:focus,
#hx-leo-contacto textarea:focus{
  outline:2px solid var(--hx-blue,#9dbbe5); border-color:transparent;
}

/* Botón del form = estilo HumiX */
#hx-leo-contacto .elementor-button{
  display:inline-flex; align-items:center; justify-content:center;
  gap:.6rem; padding:12px 18px; border-radius:999px; border:1px solid transparent;
  font-weight:700; line-height:1; white-space:nowrap; text-decoration:none;
  background:var(--hx-red,#fa1f02); color:#fff; cursor:pointer;
  transition:transform .12s ease, filter .12s ease;
}
#hx-leo-contacto .elementor-button:hover{ transform:translateY(-1px); }

/* Grid interno del form en escritorio */
@media (min-width:900px){
  #hx-leo-contacto .elementor-form .elementor-form-fields-wrapper{
    display:grid; grid-template-columns:1fr 1fr; gap:14px;
  }
  #hx-leo-contacto .elementor-field-group-textarea,
  #hx-leo-contacto .elementor-field-type-acceptance,
  #hx-leo-contacto .elementor-field-type-submit{
    grid-column:1 / -1;
  }
}

/* Enlaces RGPD */
#hx-leo-contacto .elementor-field-type-acceptance a{
  color:var(--hx-blue,#9dbbe5); text-decoration:underline;
}/* End custom CSS */