.elementor-431 .elementor-element.elementor-element-2fd17752{--display:flex;--min-height:100vh;--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;--overlay-opacity:0.5;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:64px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-431 .elementor-element.elementor-element-2fd17752::before, .elementor-431 .elementor-element.elementor-element-2fd17752 > .elementor-background-video-container::before, .elementor-431 .elementor-element.elementor-element-2fd17752 > .e-con-inner > .elementor-background-video-container::before, .elementor-431 .elementor-element.elementor-element-2fd17752 > .elementor-background-slideshow::before, .elementor-431 .elementor-element.elementor-element-2fd17752 > .e-con-inner > .elementor-background-slideshow::before, .elementor-431 .elementor-element.elementor-element-2fd17752 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:transparent;--background-overlay:'';background-image:linear-gradient(180deg, #00000059 0%, #0000008C 100%);}.elementor-431 .elementor-element.elementor-element-2fd17752.e-con{--align-self:stretch;}.elementor-431 .elementor-element.elementor-element-3aa5ebd4{width:100%;max-width:100%;}.elementor-431 .elementor-element.elementor-element-6cb482dc{--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-431 .elementor-element.elementor-element-11febaa6{--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-431 .elementor-element.elementor-element-11febaa6.e-con{--align-self:stretch;}.elementor-431 .elementor-element.elementor-element-15609a5d{--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-431 .elementor-element.elementor-element-15609a5d.e-con{--align-self:stretch;}.elementor-431 .elementor-element.elementor-element-4b11d2a2{--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-431 .elementor-element.elementor-element-2c9f8f18{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:flex-start;--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-431 .elementor-element.elementor-element-2c9f8f18.e-con{--align-self:stretch;--flex-grow:0;--flex-shrink:0;}.elementor-431 .elementor-element.elementor-element-c0997a2{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--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-431 .elementor-element.elementor-element-dd98bee{--display:flex;--overlay-opacity:0.5;--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-431 .elementor-element.elementor-element-dd98bee::before, .elementor-431 .elementor-element.elementor-element-dd98bee > .elementor-background-video-container::before, .elementor-431 .elementor-element.elementor-element-dd98bee > .e-con-inner > .elementor-background-video-container::before, .elementor-431 .elementor-element.elementor-element-dd98bee > .elementor-background-slideshow::before, .elementor-431 .elementor-element.elementor-element-dd98bee > .e-con-inner > .elementor-background-slideshow::before, .elementor-431 .elementor-element.elementor-element-dd98bee > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-431 .elementor-element.elementor-element-e477532{--display:flex;--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-431 .elementor-element.elementor-element-7c2ea0ff{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:flex-start;--gap:28px 28px;--row-gap:28px;--column-gap:28px;--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-431 .elementor-element.elementor-element-44ecd6cb{--display:flex;--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-431 .elementor-element.elementor-element-44ecd6cb.e-con{--flex-grow:0;--flex-shrink:0;}.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-431 .elementor-element.elementor-element-1681e5b2{padding:0px 30px 0px 30px;}.elementor-431 .elementor-element.elementor-element-1681e5b2 img{width:100%;max-width:100%;height:63vh;object-fit:cover;object-position:center center;border-radius:18px 18px 18px 18px;}.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-431 .elementor-element.elementor-element-6aa06105{padding:30px 30px 30px 30px;--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-431 .elementor-element.elementor-element-6aa06105 .elementor-field-group{padding-right:calc( 15px/2 );padding-left:calc( 15px/2 );margin-bottom:15px;}.elementor-431 .elementor-element.elementor-element-6aa06105 .elementor-form-fields-wrapper{margin-left:calc( -15px/2 );margin-right:calc( -15px/2 );margin-bottom:-15px;}.elementor-431 .elementor-element.elementor-element-6aa06105 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-431 .elementor-element.elementor-element-6aa06105 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-431 .elementor-element.elementor-element-6aa06105 .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-431 .elementor-element.elementor-element-6aa06105 .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-431 .elementor-element.elementor-element-6aa06105 .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-431 .elementor-element.elementor-element-6aa06105 .elementor-field-type-html{padding-bottom:0px;}.elementor-431 .elementor-element.elementor-element-6aa06105 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-431 .elementor-element.elementor-element-6aa06105 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-431 .elementor-element.elementor-element-6aa06105 .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-448cdfb );color:#ffffff;}.elementor-431 .elementor-element.elementor-element-6aa06105 .elementor-button[type="submit"]{background-color:var( --e-global-color-448cdfb );color:#ffffff;}.elementor-431 .elementor-element.elementor-element-6aa06105 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-431 .elementor-element.elementor-element-6aa06105 .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-a3488e1 );color:#ffffff;}.elementor-431 .elementor-element.elementor-element-6aa06105 .e-form__buttons__wrapper__button-next:hover{background-color:var( --e-global-color-a3488e1 );color:var( --e-global-color-secondary );}.elementor-431 .elementor-element.elementor-element-6aa06105 .elementor-button[type="submit"]:hover{background-color:var( --e-global-color-a3488e1 );color:var( --e-global-color-secondary );}.elementor-431 .elementor-element.elementor-element-6aa06105 .elementor-button[type="submit"]:hover svg *{fill:var( --e-global-color-secondary );}.elementor-431 .elementor-element.elementor-element-6aa06105 .e-form__buttons__wrapper__button-previous:hover{background-color:var( --e-global-color-caac8b2 );color:var( --e-global-color-secondary );}.elementor-431 .elementor-element.elementor-element-115dfcfa{--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-431 .elementor-element.elementor-element-6e5cf3f6{width:100%;max-width:100%;}.elementor-431 .elementor-element.elementor-element-72d5bbbb{--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;}:root{--page-title-display:none;}body.elementor-page-431{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}@media(max-width:767px){.elementor-431 .elementor-element.elementor-element-7c2ea0ff{--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(min-width:768px){.elementor-431 .elementor-element.elementor-element-2fd17752{--width:100%;}.elementor-431 .elementor-element.elementor-element-6cb482dc{--width:100%;}.elementor-431 .elementor-element.elementor-element-11febaa6{--width:100%;}.elementor-431 .elementor-element.elementor-element-15609a5d{--width:100%;}.elementor-431 .elementor-element.elementor-element-4b11d2a2{--width:100%;}.elementor-431 .elementor-element.elementor-element-2c9f8f18{--width:100%;}.elementor-431 .elementor-element.elementor-element-c0997a2{--width:100%;}.elementor-431 .elementor-element.elementor-element-e477532{--width:40%;}.elementor-431 .elementor-element.elementor-element-7c2ea0ff{--width:100%;}.elementor-431 .elementor-element.elementor-element-44ecd6cb{--width:60%;}.elementor-431 .elementor-element.elementor-element-115dfcfa{--width:100%;}}/* Start custom CSS for container, class: .elementor-element-115dfcfa *//* ===== FOOTER Mejorado ===== */
#footer{
  background:#0b2e4e;
  color:#dbe7f5;
  padding:48px 0 26px;
  box-shadow:0 -12px 30px rgba(6,20,33,.18) inset;
}
#footer .hx-inner{max-width:var(--hx-max);margin-inline:auto;padding-inline:24px}

/* Grid responsivo */
.footer-grid{
  display:grid;
  gap:22px;
  grid-template-columns:1.3fr 1fr 1.2fr 1fr;
}
@media (max-width:1020px){
  .footer-grid{ grid-template-columns:1fr 1fr; }
}
@media (max-width:680px){
  .footer-grid{ grid-template-columns:1fr; }
}

/* Marca y redes */
.footer-brand .brand img{ height:40px; display:block; }
.footer-brand .tagline{ margin:10px 0 14px; color:#e6eef9 }
.footer-brand .social{ display:flex; gap:10px; }
.footer-brand .social a{
  display:inline-flex; align-items:center; justify-content:center;
  width:36px; height:36px; border-radius:999px;
  background:rgba(255,255,255,.08);
  color:#fff; text-decoration:none;
}
.footer-brand .social a:hover{ background:rgba(255,255,255,.18); color:var(--hx-gold); }

/* Navegación */
.footer-nav h3,
.footer-contact h3,
.footer-badges h3{ margin:6px 0 10px; color:#fff; font-weight:900; }
.footer-nav ul{ list-style:none; margin:0; padding:0; display:grid; gap:8px; }
#footer a{ color:#fff; text-decoration:none; }
#footer a:hover{ color:var(--hx-gold); text-decoration:none; }

/* Contacto */
.contact-list{ list-style:none; margin:0 0 10px; padding:0; display:grid; gap:6px; }
.footer-cta{
  margin-top:6px;
  background:var(--hx-red); color:#fff; border:0;
  border-radius:999px; padding:10px 18px; font-weight:800;
  box-shadow:0 6px 16px rgba(250,31,2,.28);
}
.footer-cta:hover{ filter:brightness(.95); }

/* Badges / mini chips */
.badges{ display:flex; flex-wrap:wrap; gap:8px; }
.badge-mini{
  display:inline-flex; align-items:center; padding:6px 10px;
  border-radius:999px; border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.06); font-weight:700; font-size:.92rem; color:#fff;
}
.footer-badges .mini-note{ margin-top:10px; color:#ccdae9; font-size:.92rem; }

/* Línea legal inferior */
.legal{
  margin-top:20px; padding-top:12px;
  border-top:1px solid rgba(255,255,255,.12);
  display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap;
}
.legal p{ margin:0; color:#cbe0f8; font-size:.95rem; }
.legal-links{ display:flex; gap:12px; list-style:none; margin:0; padding:0; }
.legal a{ color:#fff; opacity:.9 }
.legal a:hover{ color:var(--hx-gold); opacity:1 }

/* Coherencia con tema */
.h6{ font-size:1.02rem; letter-spacing:.02em; text-transform:uppercase; opacity:.95 }
/* Social: centra y asegura icono visible */
.footer-brand .social{
  display:flex; gap:12px; margin-top:10px;
}
.footer-brand .social a{
  width:40px; height:40px; border-radius:999px;
  display:inline-flex; align-items:center; justify-content:center;
  background:rgba(255,255,255,.10); color:#fff;
  transition:transform .15s ease, background .15s ease, color .15s ease;
}
.footer-brand .social a:hover{
  background:rgba(255,255,255,.18); color:var(--hx-gold);
  transform:translateY(-1px);
}

/* Línea divisoria más sutil y con degradado */
#footer .legal{
  margin-top:26px; padding-top:14px;
  border-top:0;
  background:linear-gradient(180deg, rgba(255,255,255,.14), rgba(255,255,255,0)) top/100% 1px no-repeat;
}

/* Enlaces legales a la derecha en desktop; centrados en móvil */
.legal{
  display:flex; justify-content:space-between; align-items:center; gap:12px; flex-wrap:wrap;
}
.legal-links{ display:flex; gap:16px; list-style:none; margin:0; padding:0; }
.legal a{ color:#e9f3ff; opacity:.9; text-decoration:none; }
.legal a:hover{ color:var(--hx-gold); opacity:1; }

/* Afinado de títulos y listas */
.footer-nav h3, .footer-contact h3, .footer-badges h3{ letter-spacing:.02em; }
.footer-nav ul li a{ display:inline-block; padding:4px 0; }

/* Chips de garantía: un poquito más compactos */
.badge-mini{ padding:6px 12px; font-size:.9rem; }

/* Responsive */
@media (max-width:868px){
  .legal{ flex-direction:column; align-items:flex-start; }
  .legal-links{ flex-wrap:wrap; }
}
/* === Legal bar: una sola línea hasta 768px === */
#footer .legal{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  /* ¡IMPORTANTE!: no permitir wraps */
  flex-wrap:nowrap;
  min-width:0;            /* por si el padre corta */
}

/* Bloque de la izquierda (© o texto corto) */
#footer .legal .copy{
  flex:0 0 auto;
  white-space:nowrap;     /* nunca rompas */
  min-width:0;
}

/* Lista de enlaces legales a la derecha */
#footer .legal .legal-links{
  display:flex;
  gap:16px;
  list-style:none;
  margin:0;
  padding:0;
  flex:1 1 auto;          /* que ocupe el espacio restante */
  justify-content:flex-end;
  flex-wrap:nowrap;       /* clave para que no salten de línea */
  overflow-x:auto;        /* si no cabe, permite scroll horizontal */
  scrollbar-width:none;   /* opcional: oculta barra en Firefox */
}
#footer .legal .legal-links::-webkit-scrollbar{ display:none; } /* opcional */

/* Cada ítem en una sola pieza (no dividir palabras) */
#footer .legal .legal-links li{
  flex:0 0 auto;
}
#footer .legal a{
  color:#e9f3ff;
  opacity:.9;
  text-decoration:none;
  white-space:nowrap;     /* fuerza una sola pieza por enlace */
}
#footer .legal a:hover{ color:var(--hx-gold); opacity:1; }

/* Ajustes progresivos para asegurar que quepan */
@media (max-width:1100px){
  #footer .legal .legal-links{ gap:12px; }
  #footer .legal a{ font-size:.95rem; }
}
@media (max-width:900px){
  #footer .legal .legal-links{ gap:10px; }
  #footer .legal a{ font-size:.9rem; }
}

/* A PARTIR de 768px hacia abajo, ya sí permitimos salto en 2 filas */
@media (max-width:768px){
  #footer .legal{
    flex-wrap:wrap;
    gap:10px 16px;
  }
  #footer .legal .legal-links{
    justify-content:flex-start;
    flex-wrap:wrap;
    row-gap:8px;
  }
}
/* ==== Bloque de copyright + enlaces legales alineados ==== */
footer, #footer, .elementor-footer {
  --hx-blue:#0b2e4e;
  --hx-gold:#efce8c;
}

/* Contenedor general donde está el copyright y los enlaces */
footer .elementor-container,
#footer .elementor-container {
  display:flex;
  justify-content:space-between;
  align-items:center;
  flex-wrap:nowrap;
  gap:20px;
  border-top:1px solid rgba(255,255,255,.14);
  padding-top:14px;
  margin-top:16px;
}

/* Bloque del copyright */
footer .elementor-container p,
#footer .elementor-container p {
  color:#e5eefc;
  font-size:.95rem;
  margin:0;
  white-space:nowrap;
}

/* Enlaces legales */
footer .elementor-container ul,
#footer .elementor-container ul {
  display:flex;
  gap:18px;
  list-style:none;
  margin:0;
  padding:0;
  flex-wrap:nowrap;
  overflow-x:auto;
  scrollbar-width:none;
}
footer .elementor-container ul::-webkit-scrollbar{display:none;}

footer .elementor-container ul li {
  flex:0 0 auto;
}
footer .elementor-container ul li a {
  color:#fff;
  opacity:.9;
  text-decoration:none;
  font-weight:600;
  white-space:nowrap;
  transition:color .15s ease;
}
footer .elementor-container ul li a:hover {
  color:var(--hx-gold);
  opacity:1;
}

/* ===== Ajuste responsive ===== */
@media (max-width:768px){
  footer .elementor-container,
  #footer .elementor-container {
    flex-wrap:wrap;
    justify-content:flex-start;
    row-gap:10px;
  }
  footer .elementor-container ul,
  #footer .elementor-container ul {
    flex-wrap:wrap;
    gap:12px 18px;
  }
}
footer .elementor-container {
  border-image:linear-gradient(to right, rgba(255,255,255,.2), rgba(255,255,255,0)) 1;
}
footer .elementor-container {
  border-image:linear-gradient(to right, rgba(255,255,255,.2), rgba(255,255,255,0)) 1;
}
/* ===== HumiX · Footer Redes Sociales ===== */
.footer-brand .social {
  display: flex;
  gap: 12px;
  margin-top: 16px;
}

.footer-brand .social a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: rgba(255,255,255,0.12);
  border: 1px solid rgba(255,255,255,0.25);
  transition: all 0.25s ease;
}

.footer-brand .social svg {
  width: 20px;
  height: 20px;
  color: #fff;
  fill: #fff;
  transition: all 0.25s ease;
}

.footer-brand .social a:hover {
  transform: translateY(-3px);
  background: rgba(239,206,140,0.25);
  border-color: #efce8c;
}

.footer-brand .social a:hover svg {
  color: #efce8c;
  fill: #efce8c;
}
/* ===== HumiX · Footer Redes Sociales ===== */
.footer-brand .social {
  display: flex;
  gap: 12px;
  margin-top: 16px;
}

.footer-brand .social a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: rgba(255,255,255,0.12);
  border: 1px solid rgba(255,255,255,0.25);
  transition: all 0.25s ease;
}

.footer-brand .social svg {
  width: 20px;
  height: 20px;
  color: #fff;
  fill: #fff;
  transition: all 0.25s ease;
}

.footer-brand .social a:hover {
  transform: translateY(-3px);
  background: rgba(239,206,140,0.25);
  border-color: #efce8c;
}

.footer-brand .social a:hover svg {
  color: #efce8c;
  fill: #efce8c;
}
/* ====== HumiX · Footer Redes Sociales (sin  en HTML) ====== */
.footer-brand .social{
  display:flex; gap:12px; margin-top:16px;
}
.footer-brand .social .icon{
  width:42px; height:42px; border-radius:50%;
  display:inline-flex; align-items:center; justify-content:center;
  background-color:#ffffff; /* color del icono */
  /* burbuja */
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.25);
  background-clip:padding-box;
  position:relative;
  transition:transform .2s ease, box-shadow .2s ease, background-color .2s ease;
}
/* círculo translúcido detrás */
.footer-brand .social .icon::before{
  content:"";
  position:absolute; inset:0;
  border-radius:inherit;
  background:rgba(255,255,255,.12);
  z-index:-1;
}

.footer-brand .social{
  display:flex; gap:12px; margin-top:16px;
}

.footer-brand .social .icon{
  width:42px; height:42px; border-radius:50%;
  display:inline-flex; align-items:center; justify-content:center;
  background:rgba(255,255,255,.10);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.25);
  color:#fff;                                      /* &lt;- color de los SVG */
  transition:transform .2s ease, background .2s ease, box-shadow .2s ease;
}

.footer-brand .social .icon svg{
  width:20px; height:20px; display:block;
}

/* Hover dorado y especial para WhatsApp */
.footer-brand .social .icon:hover{
  background:#efce8c;
  box-shadow:inset 0 0 0 1px #efce8c;
  transform:translateY(-3px);
}

.footer-brand .social .icon-wa:hover{
  background:#25D366;
  box-shadow:inset 0 0 0 1px #25D366;
}/* End custom CSS */
/* Start custom CSS *//* ================== TOKENS &amp; BASE ================== */
:root{
  --hx-blue:#9dbbe5; --hx-red:#fa1f02; --hx-gold:#efce8c; --hx-ink:#0f172a; --hx-text:#2b2b2b;
  --hx-smoke:#e8edf3; --hx-white:#fff; --hx-max:1320px; --radius:20px; --shadow:0 10px 30px rgba(6,20,33,.14);
  --hx-header-h:64px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--hx-text);background:#f7f9fc}
.hx-inner{max-width:var(--hx-max);margin-inline:auto;padding-inline:24px}
img{max-width:100%;display:block}
.grid{display:grid;gap:18px}
.card{background:#fff;border:1px solid var(--hx-smoke);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}
.hx-eyebrow{font-size:.8rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#8a8f98}
.hx-title{margin:.2rem 0;font-weight:900;color:var(--hx-ink);line-height:1.12;font-size:clamp(1.9rem,4.2vw,3rem)}
.hx-lead{color:#334155;max-width:65ch}
.hx-pill{width:120px;height:8px;border-radius:999px;background:var(--hx-gold);margin:10px 0 14px}
.hx-btn{display:inline-flex;align-items:center;gap:10px;padding:12px 18px;border-radius:999px;border:2px solid transparent;text-decoration:none;font-weight:800}
.hx-btn.primary{background:var(--hx-red);color:#fff}
.hx-btn.ghost{border-color:rgba(255,255,255,.7);color:#fff}
.cards{grid-template-columns:repeat(3,1fr)}
@media (max-width:1020px){.cards{grid-template-columns:repeat(2,1fr)}}
@media (max-width:680px){.cards{grid-template-columns:1fr}}



/* Body bloqueado (se activa por JS al abrir menú) */
body.no-scroll{ position:fixed; width:100%; overflow:hidden; }

/* ================== HERO ================== */
#hero{min-height:80vh; position:relative; display:grid; place-items:center; padding-top:var(--hx-header-h); color:#fff}
/* HERO: foco más alto + parallax suave */
#hero{
  min-height:78vh;
  position:relative;
  display:grid;
  place-items:center;
  padding-top:64px;           /* altura del header */
  color:#fff;
}

#hero::before{
  content:"";
  position:absolute;
  inset:0;

  /* Separamos capas para poder controlar cada una */
  background-image:
    linear-gradient(180deg,rgba(0,0,0,.45),rgba(0,0,0,.65)),
    url("https://cullera.humixlanding.com/wp-content/uploads/sites/67/2025/10/humedades_en_cullera_hero.webp");

  background-repeat: no-repeat, no-repeat;

  /* Degradado ocupa todo / la foto en cover */
  background-size: 100% 100%, cover;

  /* Foco de la foto más alto (ajusta el 22% a tu gusto: 15–30%) */
  background-position: 0 0, center 22%;

  /* Parallax: el degradado scrollea, la foto fija */
  background-attachment: scroll, fixed;
}

/* iOS/Android (evita bugs del attachment: fixed en móvil) */
@media (max-width:1024px), (hover:none){
  #hero::before{
    background-attachment: scroll, scroll;  /* sin parallax en móvil */
    background-position: 0 0, center 28%;   /* sube un pelín más el foco si quieres */
  }
}

/* Un pelín de sombra para legibilidad */
#hero .hx-title{ text-shadow:0 2px 10px rgba(0,0,0,.35); }
#hero .hx-title, #hero .hx-lead, #hero .hx-eyebrow{ color:#fff !important; }

#hero .hx-inner{position:relative;text-align:center;padding-block:80px}
#hero .hx-title,#hero .hx-lead,#hero .hx-eyebrow{color:#fff !important}
#hero .hx-title{ text-shadow:0 2px 10px rgba(0,0,0,.35) }
#hero .cta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:14px}
#hero .badges{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:14px}
.badge{background:rgba(255,255,255,.14);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:8px 12px;font-weight:700}

/* ================== SUBMENÚ ================== */
#submenu{padding:18px 0;background:#0b2e4e}
#submenu .wrap{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
#submenu a{display:flex;align-items:center;justify-content:center;text-align:center;background:#0f172a;border:1px solid rgba(255,255,255,.08);color:#fff;text-decoration:none;padding:16px;border-radius:16px;font-weight:800}
@media (max-width:900px){#submenu .wrap{grid-template-columns:repeat(2,1fr)}}

/* ================== SERVICIOS ================== */
#servicios{padding:60px 0}
#servicios .card .body{padding:16px}
#servicios .card h3{margin:6px 0 6px}

/* ================== RESULTADOS ================== */
#resultados{padding:60px 0;background:#f2f6fb}
.metrics{grid-template-columns:repeat(3,1fr)}
.hx-metric{display:flex;flex-direction:column;align-items:flex-start;background:#fff;border:1px solid var(--hx-smoke);border-radius:16px;padding:16px}
.hx-metric .k{font-size:2rem;font-weight:900;color:var(--hx-ink)}
@media (max-width:1020px){.metrics{grid-template-columns:repeat(2,1fr)}}
@media (max-width:680px){.metrics{grid-template-columns:1fr}}

/* ================== FAQ ================== */
#faq{padding:60px 0}
.faq{border:1px solid var(--hx-smoke);border-radius:16px;background:#fff;overflow:hidden}
.faq details{border-top:1px solid var(--hx-smoke);padding:14px 16px}
.faq details:first-of-type{border-top:none}
.faq summary{cursor:pointer;font-weight:800;color:var(--hx-ink)}
.faq p{margin:.5rem 0 0;color:#334155}

/* ================== EQUIPOS ================== */
#equipos{ padding:60px 0; }
.equipos-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:18px; }
@media (max-width:900px){ .equipos-grid{ grid-template-columns:1fr; } }
.equipo .media{ aspect-ratio:16/9; overflow:hidden; }
.equipo .media img{ width:100%; height:100%; object-fit:cover; transition:transform .35s ease; }
.equipo:hover .media img{ transform:scale(1.04); }
.equipo .body{ padding:16px; }
.equipo h3{ margin:6px 0 6px; font-weight:900; color:var(--hx-ink); }
.equipo p{ margin:0; color:#334155; }

/* ================== CONTACTO (Glass oscuro legible) ================== */
#contacto{ background:linear-gradient(180deg,#0b2e4e,#0f172a); color:#fff; padding:80px 0; }
#contacto .contacto{
  display:grid; grid-template-columns:1.2fr .8fr; gap:28px; align-items:stretch;
}
@media (max-width:900px){ #contacto .contacto{ grid-template-columns:1fr; } }

/* Imagen */
#contacto .media{ overflow:hidden; border-radius:18px; }
#contacto .media img{ width:100%; height:100%; object-fit:cover; display:block; }

/* Formulario base */
#contacto .hx-form{
  display:grid; gap:16px; padding:18px;
  background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.12);
  border-radius:18px; backdrop-filter:blur(6px);
}
#contacto .hx-form .row.two{ display:grid; grid-template-columns:1fr 1fr; gap:16px; }
@media (max-width:900px){ #contacto .hx-form .row.two{ grid-template-columns:1fr; } }

#contacto h2, #contacto h3, #contacto label{ color:#fff; font-weight:800; }
#contacto input, #contacto textarea{
  width:100%; background:rgba(255,255,255,.15); color:#fff;
  border:1px solid rgba(255,255,255,.35); border-radius:12px;
  padding:12px 14px; font-size:16px; transition:border-color .15s, box-shadow .15s, background .15s;
}
#contacto input::placeholder, #contacto textarea::placeholder{ color:rgba(255,255,255,.75); }
#contacto input:focus, #contacto textarea:focus{
  outline:0; background:rgba(255,255,255,.20);
  border-color:var(--hx-blue); box-shadow:0 0 0 4px rgba(157,187,229,.25);
}

/* Validación visual (required/pattern) */
#contacto input:required:invalid, #contacto textarea:required:invalid{
  border-color:#f43f5e; background:rgba(244,63,94,.06);
  box-shadow:0 0 0 4px rgba(244,63,94,.16);
}
#contacto input:required:valid, #contacto textarea:required:valid{
  border-color:var(--hx-gold); box-shadow:0 0 0 4px rgba(239,206,140,.22);
}

/* Botones */
#contacto .hx-form .hx-btn,
#contacto .hx-form button[type=submit]{
  width:auto; display:inline-flex; border-radius:999px; padding:12px 28px; font-weight:800;
}
#contacto .hx-form button.hx-btn.primary{
  background:#fa1f02; color:#fff; border:0;
  box-shadow:0 6px 16px rgba(250,31,2,.35);
}

/* Mensajes de Elementor */
#contacto .elementor-message,
#contacto .e-form__messages{
  margin-top:10px; border-radius:12px; padding:10px 14px; width:fit-content; font-weight:700;
}
#contacto .elementor-message-success,
#contacto .e-form__message.e-form__message--success{
  background:rgba(37,211,102,.14); border:1px solid rgba(37,211,102,.35); color:#c7f5d9;
}
#contacto .elementor-message-danger,
#contacto .e-form__message.e-form__message--error{
  background:rgba(244,63,94,.12); border:1px solid rgba(244,63,94,.35); color:#ffe3e7;
}
#contacto .elementor-field-description,
#contacto .hx-hint{
  color:#ffd8a1; font-size:12px; line-height:1.3; opacity:.95;
}

/* ================== WHATSAPP FLOAT ================== */
#hx-wa{position:fixed;right:18px;bottom:18px;z-index:99999}
#hx-wa a{display:inline-flex;align-items:center;gap:10px;padding:12px 16px;border-radius:999px;background:#25D366;color:#0b2e4e;font-weight:900;text-decoration:none;box-shadow:var(--shadow)}

/* ================== NAV ANCHORS ================== */
#hero,#servicios,#resultados,#equipos,#faq,#contacto{ scroll-margin-top: calc(var(--hx-header-h) + 26px); }

/* ================== UTIL ================== */
.hx-btn,.elementor-button{ width:auto !important; white-space:nowrap; }
#hero{ padding-top:0; }
/* Línea de aceptación + texto legal pequeño */
#contacto .e-form .elementor-field-type-checkbox .elementor-field-subgroup,
#contacto .hx-form .elementor-field-type-checkbox .elementor-field-subgroup{
  display:flex; align-items:flex-start; gap:10px;
}

#contacto .elementor-field-type-checkbox input[type="checkbox"]{
  width:auto; min-width:18px; min-height:18px;
  accent-color:#efce8c; /* dorado HumiX en navegadores compatibles */
}

#contacto .hx-legal-mini{
  margin:6px 0 0;
  font-size:12px; line-height:1.35; color:rgba(255,255,255,.85);
}
#contacto .hx-legal-mini a{ color:#efce8c; text-decoration:underline; }

/* Mensaje de error del check (estilo rojo HumiX) */
#contacto .elementor-message, 
#contacto .e-form__messages,
#contacto .elementor-field-type-checkbox .elementor-message{
  border-radius:12px;
}
#contacto .e-form__message.e-form__message--error{
  background:rgba(244,63,94,.12);
  border:1px solid rgba(244,63,94,.35);
  color:#ffe3e7;
}
/* ===== HumiX · FAQ (Cullera) ===== */
#faq.hx-faq{
  --hx-blue:#9dbbe5; --hx-red:#fa1f02; --hx-gold:#efce8c;
  --ink:#0f172a; --muted:#64748b; --bg:#ffffff; --card:#ffffff; --line:#e5e7eb;
  max-width:1320px; margin:0 auto; font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif; line-height:1.5;
}
#faq .hx-faq__title{ margin:.2em 0 .6em; font-size:clamp(1.6rem,2.5vw,2rem); font-weight:800; color:var(--ink); }

/* Item */
#faq .hx-faq__item{ border:1px solid var(--line); border-radius:12px; background:var(--card); margin:10px 0; overflow:hidden; }
#faq .hx-faq__q{ cursor:pointer; list-style:none; padding:14px 16px; font-weight:700; color:var(--ink); display:flex; align-items:center; gap:10px; }
#faq .hx-faq__q::-webkit-details-marker{ display:none; }
#faq .hx-faq__q::before{ content:"▸"; transition:transform .2s ease; font-size:16px; opacity:.85; }
#faq .hx-faq__item[open] .hx-faq__q::before{ transform:rotate(90deg); }
#faq .hx-faq__a{ padding:0 16px 14px 16px; color:#1f2937; }

/* CTA + nota */
#faq .hx-faq__cta{ margin:18px 0; padding:14px 16px; border:1px dashed var(--line); border-radius:12px; background:#f8fafc; color:var(--ink); }
#faq .hx-faq__note{ font-size:.92em; color:var(--muted); }

/* Enlaces */
#faq a{ color:var(--hx-blue); text-decoration:underline; }

/* Accesibilidad: foco visible */
#faq summary:focus{ outline:2px solid var(--hx-gold); outline-offset:2px; border-radius:10px; }

/* Modo oscuro opcional (si la web usa dark) */
@media (prefers-color-scheme: dark){
  #faq.hx-faq{ --bg:#0b1220; --card:#0f172a; --ink:#e8eefc; --muted:#94a3b8; --line:#1f2937; }
  #faq .hx-faq__a{ color:#dbe4ff; }
  #faq .hx-faq__cta{ background:#0a1628; color:#e6f0ff; border-color:#334155; }
}
#faq .hx-aside img{ width:100%; height:auto; border-radius:16px; display:block; box-shadow:0 6px 24px rgba(2,6,23,.08); }
#faq .hx-aside figcaption{ color:#475569; font-size:.95rem; margin-top:10px; }
/* Grid de 2 columnas para la lista de FAQs */
#faq .hx-faq-list{
  display:grid;
  grid-template-columns: 1fr;
  gap:12px;
}
#faq .hx-faq__item{ margin:0; } /* ya gestionamos el espacio con gap */

/* Si usas el acordeón de Elementor, reparte sus items también */
#faq .elementor-toggle{
  display:grid; grid-template-columns: 1fr; gap:12px;
}
#faq .elementor-toggle .elementor-toggle-item{ margin:0; }

/* Desktop: dos columnas */
@media (min-width: 1025px){
  #faq .hx-faq-list{ grid-template-columns: 1fr 1fr; }
  #faq .elementor-toggle{ grid-template-columns: 1fr 1fr; }
}

/* Evita cortes raros entre columnas */
#faq .hx-faq__item,
#faq .elementor-toggle .elementor-toggle-item{
  break-inside: avoid;
}
/* Título de la sección FAQ: que se LEA */
#faq .hx-faq__title{
  color:#0f172a !important;           /* tinta oscura */
  text-shadow:none !important;        /* fuera sombras claras heredadas */
  opacity:1 !important;               /* por si hay opacidad global */
  mix-blend-mode:normal !important;   /* evita mezclas con el fondo */
  font-weight:900;
  margin:.2em 0 .4em;
  font-size:clamp(1.8rem,3vw,2.2rem);
}

/* Rayita dorada bajo el título (opcional HumiX) */
#faq .hx-faq__title::after{
  content:"";
  display:block;
  width:160px; height:6px;
  border-radius:999px;
  background:#efce8c;                 /* dorado HumiX */
  margin:8px 0 0;
}

/* Si tu página usa modo oscuro, manténlo claro igualmente */
@media (prefers-color-scheme: dark){
  #faq .hx-faq__title{ color:#0f172a !important; }
  #faq .hx-faq__title::after{ background:#efce8c; }
}
/* separa columnas y filas un poco más */
#faq .hx-faq-list{ gap:16px; }

/* acolchado homogéneo y radios consistentes */
#faq .hx-faq__q{ padding:18px 20px; border-radius:14px; }
#faq .hx-faq__item{ border-radius:14px; }
#faq .hx-faq__a{ padding:0 20px 18px; }
/* barra lateral fina cuando el item está abierto */
#faq .hx-faq__item[open] .hx-faq__q{
  box-shadow: inset 4px 0 0 #efce8c;   /* dorado HumiX */
}
#faq .hx-faq__q:hover{
  background:rgba(13,18,28,.06);
}
#faq .hx-faq__q::before{
  content:"▸"; font-size:18px; opacity:.9; transform:translateY(1px);
}
#faq .hx-faq__q:hover{
  background:rgba(13,18,28,.06);
}
#faq .hx-faq__title{ margin-bottom:.3em; }
#faq .hx-faq__title::after{ margin-top:6px; }
#faq .hx-faq__sub{
  grid-column:1/-1; margin:10px 2px 4px; font-weight:900; color:#0f172a;
  font-size:1.05rem;
}
<h3 class="hx-faq__sub">Diagnóstico</h3>
<!-- items 1-2 -->
<h3 class="hx-faq__sub">Solución e instalación</h3>
<!-- items 3-5 -->
<h3 class="hx-faq__sub">Plazos y resultados</h3>
<!-- items 6-8 -->
<h3 class="hx-faq__sub">Garantía y condiciones</h3>
<!-- items 9-11 -->
<h3 class="hx-faq__sub">Precio y casos especiales</h3>
<!-- resto -->
@media (max-width: 767px){
  #faq .hx-faq-list{ gap:12px; }
  #faq .hx-faq__q{ padding:16px; }
  #faq .hx-faq__a{ padding:0 16px 14px; }
}
#faq .hx-faq__sub{grid-column:1/-1;margin:10px 2px 6px;font-weight:900;font-size:1.05rem;color:#0f172a}
/* Oculta la columna de imagen de FAQ si existe */
#faq .hx-faq-aside{ display:none !important; }

/* Asegura que la lista ocupa el ancho disponible */
#faq .hx-faq{ max-width:1200px; margin:0 auto; }
#faq .hx-faq-list{ grid-template-columns:1fr; }
@media (min-width:1025px){
  #faq .hx-faq-list{ grid-template-columns:1fr 1fr; } /* dos columnas en desktop */
}/* End custom CSS */