.elementor-kit-10{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-color-cba2812:#9DBBE5;--e-global-color-44cb5d8:#FA1F02;--e-global-color-ffc5000:#EFCE8C;--e-global-color-8abef14:#7C3AED;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.elementor-kit-10 e-page-transition{background-color:#FFBC7D;}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* =========================
   HUMIX ALCANTARILLA · CSS LIMPIO
   (basado en GRANADA/CEUTA)
   Pegar en Elementor > Ajustes del sitio > CSS personalizado
   ========================= */

/* Smooth scroll + offset para header sticky */
html{ scroll-behavior:smooth; }
:target{ scroll-margin-top:120px; }

/* =========================
   HERO (legibilidad + glass)
   ========================= */

/* Sombra sutil en textos */
.hx-hero h1{ text-shadow:0 10px 30px rgba(0,0,0,.35); }
.hx-hero p{  text-shadow:0 10px 26px rgba(0,0,0,.28); }

/* Overlay + viñeta (mejor contraste sobre foto) */
.hx-hero{ position:relative; }
.hx-hero::before{
  content:"";
  position:absolute; inset:0;
  background: rgba(0,0,0,.45); /* ajusta 0.35–0.55 */
  pointer-events:none;
  z-index:1;
}
.hx-hero::after{
  content:"";
  position:absolute; inset:0;
  background: radial-gradient(80% 70% at 20% 55%,
    rgba(0,0,0,.45) 0%,
    rgba(0,0,0,.22) 40%,
    rgba(0,0,0,.05) 70%,
    rgba(0,0,0,0) 100%);
  pointer-events:none;
  z-index:1;
}
.hx-hero > *{ position:relative; z-index:2; }

/* Chips estilo premium */
.hx-hero .hx-chip{
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 999px;
  padding: 8px 12px;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}

/* Card derecha glass */
.hx-hero .hx-card{
  background: rgba(10,25,45,.78);
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 18px;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  box-shadow: 0 20px 60px rgba(0,0,0,.28);
  position: relative;
}
.hx-hero .hx-card::before{
  content:"";
  position:absolute; inset:-1px;
  border-radius:18px;
  padding:1px;
  background: linear-gradient(135deg, rgba(239,206,140,.45), rgba(157,187,229,.18), rgba(239,206,140,.18));
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  pointer-events:none;
}

/* =========================
   HEADER
   ========================= */
.hx-header{
  background: rgba(10,25,45,.95);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
}

/* =========================
   CONTACTO (imagen + form)
   ========================= */

.hx-contact-media{
  min-height:520px;
  border-radius:22px;
  overflow:hidden;
  box-shadow:0 22px 60px rgba(2,6,23,.22);
  border:1px solid rgba(15,23,42,.10);
  position:relative;
  background-size:cover;
  background-position:center;
}

/* Overlay sobre imagen de contacto */
.hx-contact-media::after{
  content:"";
  position:absolute; inset:0;
  background:linear-gradient(135deg, rgba(2,6,23,.55), rgba(2,6,23,.18));
  pointer-events:none;
}

/* Tarjeta del formulario */
.hx-contact-formwrap{
  border-radius:22px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(15,23,42,.10);
  box-shadow:0 22px 60px rgba(2,6,23,.10);
  padding:34px;
}

/* ===== FORM ELEMENTOR ===== */
.hx-contact-formwrap .elementor-form{
  --hx-border:#e6eaf0;
  --hx-text:#0f172a;
  --hx-focus:#9dbbe5;
  --hx-red:#fa1f02;
}

.hx-contact-formwrap .elementor-field-group{ margin-bottom:12px; }

.hx-contact-formwrap .elementor-field-label{
  display:block;
  font-size:13px;
  font-weight:800;
  color:var(--hx-text);
  margin-bottom:6px;
}

.hx-contact-formwrap .elementor-field,
.hx-contact-formwrap .elementor-field-textual{
  width:100%;
  padding:12px 14px !important;
  border-radius:14px !important;
  border:1px solid var(--hx-border) !important;
  background:#fff !important;
  color:var(--hx-text) !important;
  font-size:14px !important;
  outline:none;
  transition:border-color .15s ease, box-shadow .15s ease;
}

.hx-contact-formwrap .elementor-field:focus,
.hx-contact-formwrap .elementor-field-textual:focus{
  border-color:var(--hx-focus) !important;
  box-shadow:0 0 0 4px rgba(157,187,229,.25) !important;
}

.hx-contact-formwrap textarea.elementor-field{
  min-height:120px;
  resize:vertical;
}

.hx-contact-formwrap .elementor-button{
  width:100%;
  border:none !important;
  border-radius:999px !important;
  padding:14px 18px !important;
  background:var(--hx-red) !important;
  color:#fff !important;
  font-weight:900 !important;
  font-size:15px !important;
  box-shadow:0 16px 34px rgba(250,31,2,.28);
  transition:transform .15s ease, box-shadow .15s ease, filter .15s ease;
}
.hx-contact-formwrap .elementor-button:hover{
  transform:translateY(-1px);
  filter:brightness(1.02);
  box-shadow:0 20px 44px rgba(250,31,2,.34);
}
.hx-contact-formwrap .elementor-form-fields-wrapper{ gap:12px; }

/* =========================
   LABELS / EYEBROW
   ========================= */
.hx-eyebrow,
.hx-eyebrow *{
  color:#9dbbe5 !important;
  opacity:1 !important;
}
.hx-eyebrow{
  text-transform:uppercase;
  letter-spacing:.14em;
  font-weight:700;
  font-size:13px;
  line-height:1.2;
  margin:0 0 10px 0;
}
.hx-eyebrow p{ margin:0 !important; }

.hx-kicker,
.hx-kicker *{
  color:#efce8c !important;
  opacity:1 !important;
}
.hx-kicker{
  text-transform:uppercase;
  letter-spacing:.12em;
  font-weight:800;
  font-size:12.5px;
  line-height:1.2;
  margin:0 0 10px 0;
}
.hx-kicker p{ margin:0 !important; }

.hx-section-label{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:6px 12px;
  border-radius:999px;
  background:rgba(15,32,62,.08);
  border:1px solid rgba(157,187,229,.35);
  color:#0f203e !important;
  font-weight:700;
  font-size:12.5px;
  line-height:1.1;
  letter-spacing:.12em;
  text-transform:uppercase;
  margin:0 0 12px 0;
}
.hx-section-label p{ margin:0 !important; }
.hx-section-label.hx-on-dark{
  background:rgba(15,32,62,.45);
  border-color:rgba(157,187,229,.35);
  color:#ffffff !important;
}

/* =========================
   ACCESIBILIDAD / WA / CONTRASTE
   ========================= */

/* Botón WhatsApp (si le pones clase hx-wa-btn en Elementor) */
a.hx-wa-btn,
a.hx-wa-btn:visited{
  background:#128C7E !important;
  color:#fff !important;
}
a.hx-wa-btn .elementor-button-text{
  color:#fff !important;
  font-weight:900 !important;
}
a.hx-wa-btn:hover{ filter:brightness(.95); }

/* Conócenos: subir contraste del texto */
#conocenos p,
#conocenos, #conocenos span, #conocenos li{
  color: rgba(15,23,42,.88) !important;
}

/* Tamaño mínimo de objetivos táctiles (sin romper links de texto) */
a, button, .elementor-icon, .elementor-icon-wrapper{
  min-height:44px;
  min-width:44px;
}
p a, li a{
  min-height:unset;
  min-width:unset;
}

/* =========================
   TRUST CARD (legibilidad)
   ========================= */
.hx-trust-card{
  background: rgba(2,6,23,.82) !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  backdrop-filter: blur(4px) !important;
  -webkit-backdrop-filter: blur(4px) !important;
  box-shadow: 0 22px 60px rgba(2,6,23,.18) !important;
}
.hx-trust-card,
.hx-trust-card *{
  color: rgba(255,255,255,.94) !important;
  opacity:1 !important;
  -webkit-text-fill-color: rgba(255,255,255,.94) !important;
}
.hx-trust-card .elementor-heading-title{
  color:#fff !important;
  font-weight:900 !important;
}
.hx-trust-card .elementor-icon-list-text{
  color: rgba(255,255,255,.92) !important;
  font-weight:700 !important;
  font-size:15px;
  line-height:1.35;
}
.hx-trust-card .elementor-icon-list-item{ margin-bottom:8px; }
.hx-trust-card .elementor-icon-list-icon i,
.hx-trust-card .elementor-icon-list-icon svg{
  color:#efce8c !important;
  fill:#efce8c !important;
}

/* =========================
   ALCANTARILLA ACCENT (local)
   ========================= */
:root{
  --hx-alcantarilla-accent:#06b6d4; /* cian “Mediterráneo/Levante” */
}

/* Subrayado/acento en títulos (clase hx-alcantarilla-title en el H2) */
.hx-alcantarilla-title{
  position:relative;
  display:inline-block;
}
.hx-alcantarilla-title:after{
  content:"";
  display:block;
  height:3px;
  width:54px;
  margin-top:10px;
  border-radius:999px;
  background:var(--hx-alcantarilla-accent);
  opacity:.95;
}

/* Iconos/listas: acento local */
.hx-trust-card .elementor-icon-list-icon i,
.hx-trust-card .elementor-icon-list-icon svg{
  color: var(--hx-alcantarilla-accent) !important;
  fill: var(--hx-alcantarilla-accent) !important;
}

/* Botón rojo: un pelín más premium */
.elementor-button{
  border: 1px solid rgba(0,0,0,.08);
}

/* Detalle: línea activa menú (si aplica en tu header) */
.current-menu-item > a,
.elementor-nav-menu--main .elementor-item.elementor-item-active{
  color:#fff !important;
}
.elementor-nav-menu--main .elementor-item.elementor-item-active:after{
  background: var(--hx-alcantarilla-accent) !important;
}

/* Acento local SOLO en servicios */
#servicios .elementor-icon,
#servicios .elementor-divider-separator{
  color: var(--hx-alcantarilla-accent) !important;
  border-color: var(--hx-alcantarilla-accent) !important;
}

/* =========================
   BADGE ZONAS (Hero pill)
   Clase: hx-alcantarilla-badge
   ========================= */
.hx-alcantarilla-badge{
  display:inline-flex !important;
  align-items:center;
  gap:10px;
  padding:10px 14px;
  border-radius:999px;
  background: rgba(2,6,23,.55);
  border: 1px solid rgba(239,206,140,.35);
  box-shadow: 0 12px 30px rgba(0,0,0,.22);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  margin: 10px 0 12px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  letter-spacing: .01em;
}
.hx-alcantarilla-badge,
.hx-alcantarilla-badge *{
  color: rgba(255,255,255,.92) !important;
}
.hx-alcantarilla-badge p{ margin:0 !important; }
.hx-alcantarilla-badge .elementor-heading-title{
  margin:0 !important;
  line-height: inherit !important;
}
@media (max-width: 767px){
  .hx-alcantarilla-badge{
    max-width: 92vw;
    white-space: normal !important;
    flex-wrap: wrap;
    row-gap: 6px;
    padding: 10px 12px;
    font-size: 13px !important;
  }
}

/* =========================
   EQUIPOS · 2 CARDS UNIFORMES
   ========================= */

/* Si .hx-equipos es un contenedor Elementor (con .e-con-inner) */
.hx-equipos > .e-con-inner{
  display:flex !important;
  flex-direction: row !important;
  gap: 22px !important;
  align-items: stretch !important;
}
.hx-equipos > .e-con-inner > .hx-eq-card{
  flex: 1 1 0 !important;
  min-width: 0 !important;
}
@media (max-width: 980px){
  .hx-equipos > .e-con-inner{
    flex-direction: column !important;
  }
  .hx-equipos > .e-con-inner > .hx-eq-card{
    width: 100% !important;
  }
}

/* Cards */
.hx-eq-card{
  position: relative;
  border-radius: 22px;
  overflow: hidden;
  box-sizing: border-box;

  background: rgba(255,255,255,.72);
  border: 1px solid rgba(15,23,42,.08);
  box-shadow: 0 18px 48px rgba(2,6,23,.10);

  padding: 22px;
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}

/* Variantes suaves */
.hx-eq-hs{
  background: linear-gradient(180deg, rgba(157,187,229,.22), rgba(255,255,255,.70));
}
.hx-eq-eco{
  background: linear-gradient(180deg, rgba(239,206,140,.22), rgba(255,255,255,.70));
}

/* Widgets con márgenes uniformes */
.hx-eq-card .elementor-widget{ margin-bottom: 12px !important; }
.hx-eq-card .elementor-widget:last-child{ margin-bottom: 0 !important; }

/* Imagen: misma altura SI usas clase hx-eq-img en el widget Imagen */
.hx-eq-card .hx-eq-img,
.hx-eq-card .hx-eq-img .elementor-widget-container{
  width: 100% !important;
  max-width: 100% !important;
  float: none !important;
  display: block !important;
}
.hx-eq-card .hx-eq-img img{
  width: 100% !important;
  height: 240px !important;
  object-fit: cover !important;
  object-position: center !important;
  border-radius: 18px !important;
  display: block !important;
  max-width: 100% !important;
  float: none !important;
  transform: none !important;
}
@media (max-width: 767px){
  .hx-eq-card .hx-eq-img img{ height: 200px !important; }
}

/* Tipografías dentro de la card */
.hx-eq-card .elementor-heading-title{
  color:#0f172a !important;
  font-weight:900 !important;
  letter-spacing:-0.01em;
  position: relative;
  padding-bottom: 10px;
}
.hx-eq-hs .elementor-heading-title::after{
  content:"";
  position:absolute; left:0; bottom:0;
  width:72px; height:3px;
  background: rgba(157,187,229,.9);
  border-radius:999px;
}
.hx-eq-eco .elementor-heading-title::after{
  content:"";
  position:absolute; left:0; bottom:0;
  width:72px; height:3px;
  background: rgba(239,206,140,.9);
  border-radius:999px;
}

.hx-eq-card .elementor-widget-text-editor,
.hx-eq-card .elementor-widget-text-editor *{
  color: rgba(15,23,42,.86) !important;
}

/* Icon list al fondo (alineación base) */
.hx-eq-card .elementor-icon-list-widget{ margin-top:auto !important; }

/* Títulos en desktop en una línea si cabe */
@media (min-width: 981px){
  .hx-eq-card .elementor-heading-title{
    white-space: nowrap;
    font-size: 28px; /* baja 1-2px si aún no entra */
  }
}
@media (max-width: 980px){
  .hx-eq-card .elementor-heading-title{ white-space: normal; }
}
@media (max-width: 767px){
  .hx-eq-card .elementor-heading-title{
    font-size: 26px !important;
    line-height: 1.08 !important;
    letter-spacing: -0.01em;
    margin-bottom: 10px !important;
  }
}

/* =========================
   RESPONSIVE + PERFORMANCE
   ========================= */
@media (max-width:980px){
  .hx-contact-media{ min-height:320px; }
  .hx-contact-formwrap{ padding:24px 18px; }
}

@media (max-width: 767px){

  /* Botón principal (si usas clase hx-cta-btn) */
  .hx-cta-btn,
  .hx-cta-btn a{
    background:#fa1f02 !important;
    color:#ffffff !important;
    border:none !important;
    opacity:1 !important;
  }
  .hx-cta-btn .elementor-button-text{
    color:#fff !important;
    font-weight:900 !important;
    letter-spacing:.02em;
  }

  /* En móvil quitamos blur (rendimiento) */
  .hx-trust-card{
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
    background: rgba(2,6,23,.82) !important;
  }

  /* Reduce sombras grandes (caro en móvil) */
  .hx-contact-media,
  .hx-contact-formwrap{
    box-shadow:none !important;
  }
}

/* Subtítulos / textos secundarios un poco más oscuros */
.hx-muted,
.elementor-widget-text-editor .elementor-heading-title + p{
  color: rgba(15,23,42,.72) !important;
}

/* Placeholders más legibles */
input::placeholder,
textarea::placeholder{
  color: rgba(15,23,42,.55) !important;
}
.hx-hero, .hx-card, .hx-trust-card { color: rgba(255,255,255,.94); }
.hx-hero p, .hx-card p { color: rgba(255,255,255,.90); }
.hx-contact-formwrap .elementor-field-label{
  position:absolute !important;
  left:-9999px !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
}
/* === ACCESIBILIDAD · CONTRASTE === */

/* Texto sobre hero / glass */
.hx-hero,
.hx-hero p,
.hx-card,
.hx-card p,
.hx-trust-card,
.hx-trust-card p{
  color: rgba(255,255,255,.95) !important;
}

/* Chips / badges */
.hx-chip,
.hx-alcantarilla-badge{
  background: rgba(2,6,23,.65) !important;
  border-color: rgba(255,255,255,.25) !important;
}
.hx-chip *,
.hx-alcantarilla-badge *{
  color: #ffffff !important;
}

/* Placeholders más visibles */
input::placeholder,
textarea::placeholder{
  color: rgba(15,23,42,.65) !important;
}
/* === ACCESIBILIDAD · TOUCH TARGETS === */

/* Botones e iconos táctiles */
.elementor-button,
.elementor-icon,
.elementor-icon-wrapper,
.elementor-nav-menu a{
  min-height:44px;
  min-width:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}

/* Enlaces de texto NO táctiles */
p a,
li a{
  min-height:auto !important;
  min-width:auto !important;
}
<script>
document.addEventListener('DOMContentLoaded', function () {
  const deferScripts = [
    'elementor-frontend',
    'elementor-pro-frontend',
    'elementor-sticky',
    'smartmenus'
  ];

  deferScripts.forEach(handle => {
    if (window.wp && wp.hooks) {
      wp.hooks.addFilter('script_loader_tag', handle, function(tag){
        if (tag.includes('src') && !tag.includes('defer')) {
          return tag.replace(' src', ' defer src');
        }
        return tag;
      });
    }
  });
});
</script>/* End custom CSS */