.elementor-277 .elementor-element.elementor-element-a0fed1d{--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:100px;--padding-bottom:40px;--padding-left:20px;--padding-right:20px;}.elementor-277 .elementor-element.elementor-element-fe0c963{--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;}.elementor-277 .elementor-element.elementor-element-5143221{--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;}.elementor-277 .elementor-element.elementor-element-988da5f{--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:40px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:100px;--padding-bottom:40px;--padding-left:20px;--padding-right:20px;}.elementor-277 .elementor-element.elementor-element-a1e1745{--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:40px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:100px;--padding-bottom:40px;--padding-left:20px;--padding-right:20px;}.elementor-277 .elementor-element.elementor-element-b27048f{--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;}.elementor-277 .elementor-element.elementor-element-ec6d57f{--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;}.elementor-277 .elementor-element.elementor-element-0dc7c36{--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:20px 20px;--row-gap:20px;--column-gap:20px;--flex-wrap:wrap;--margin-top:40px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:100px;--padding-bottom:40px;--padding-left:20px;--padding-right:20px;}.elementor-277 .elementor-element.elementor-element-cf70d00{--display:flex;}.elementor-277 .elementor-element.elementor-element-a35da8a{--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:100px;--padding-bottom:100px;--padding-left:20px;--padding-right:20px;}.elementor-277 .elementor-element.elementor-element-ff2f5da{--display:flex;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--flex-wrap: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-277 .elementor-element.elementor-element-ea9a621{--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-277 .elementor-element.elementor-element-ea9a621.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-277 .elementor-element.elementor-element-61f1567{--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-277 .elementor-element.elementor-element-61f1567.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-277 .elementor-element.elementor-element-8313b68{--display:flex;}.elementor-277 .elementor-element.elementor-element-ebaf7d2{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-277 .elementor-element.elementor-element-5d0b1d6{--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:20px 20px;--row-gap:20px;--column-gap:20px;--flex-wrap:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:100px;--padding-bottom:100px;--padding-left:20px;--padding-right:20px;}.elementor-277 .elementor-element.elementor-element-2158737{--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;}.elementor-277 .elementor-element.elementor-element-dcdaadd{--display:flex;}.elementor-277 .elementor-element.elementor-element-6e3f976{--display:flex;}.elementor-277 .elementor-element.elementor-element-1891d42{--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:40px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:100px;--padding-bottom:100px;--padding-left:20px;--padding-right:20px;}.elementor-277 .elementor-element.elementor-element-4a9c6a9{--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:100px;--padding-bottom:100px;--padding-left:20px;--padding-right:20px;}.elementor-277 .elementor-element.elementor-element-9f336fd{--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;}:root{--page-title-display:none;}@media(max-width:767px){.elementor-277 .elementor-element.elementor-element-a0fed1d{--padding-top:100px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-277 .elementor-element.elementor-element-fe0c963{--width:100%;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-277 .elementor-element.elementor-element-5143221{--width:100%;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-277 .elementor-element.elementor-element-988da5f{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:100px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-277 .elementor-element.elementor-element-a1e1745{--padding-top:100px;--padding-bottom:100px;--padding-left:10px;--padding-right:10px;}.elementor-277 .elementor-element.elementor-element-0dc7c36{--padding-top:100px;--padding-bottom:100px;--padding-left:10px;--padding-right:10px;}.elementor-277 .elementor-element.elementor-element-ff2f5da{--width:100%;--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;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-277 .elementor-element.elementor-element-ea9a621{--width:100%;--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-277 .elementor-element.elementor-element-61f1567{--width:100%;}.elementor-277 .elementor-element.elementor-element-5d0b1d6{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}}@media(min-width:768px){.elementor-277 .elementor-element.elementor-element-a0fed1d{--width:100%;}.elementor-277 .elementor-element.elementor-element-fe0c963{--width:60%;}.elementor-277 .elementor-element.elementor-element-5143221{--width:40%;}.elementor-277 .elementor-element.elementor-element-988da5f{--width:100%;}.elementor-277 .elementor-element.elementor-element-a1e1745{--width:100%;}.elementor-277 .elementor-element.elementor-element-b27048f{--width:50%;}.elementor-277 .elementor-element.elementor-element-ec6d57f{--width:50%;}.elementor-277 .elementor-element.elementor-element-0dc7c36{--width:100%;}.elementor-277 .elementor-element.elementor-element-cf70d00{--width:100%;}.elementor-277 .elementor-element.elementor-element-a35da8a{--width:100%;}.elementor-277 .elementor-element.elementor-element-ff2f5da{--width:100%;}.elementor-277 .elementor-element.elementor-element-ea9a621{--width:100%;}.elementor-277 .elementor-element.elementor-element-61f1567{--width:100%;}.elementor-277 .elementor-element.elementor-element-8313b68{--width:100%;}.elementor-277 .elementor-element.elementor-element-5d0b1d6{--width:100%;}.elementor-277 .elementor-element.elementor-element-2158737{--width:100%;}.elementor-277 .elementor-element.elementor-element-dcdaadd{--width:100%;}.elementor-277 .elementor-element.elementor-element-6e3f976{--width:100%;}.elementor-277 .elementor-element.elementor-element-1891d42{--width:100%;}.elementor-277 .elementor-element.elementor-element-4a9c6a9{--width:100%;}.elementor-277 .elementor-element.elementor-element-9f336fd{--width:100%;}}/* Start custom CSS for container, class: .elementor-element-fe0c963 */.card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:16px}
.tag{display:inline-block;padding:.25rem .6rem;border-radius:999px;background:#f1f5f9;color:#0f172a;margin-bottom:.4rem;font-size:.85rem}
.lead{color:#0f172a;opacity:.9}
.hx-cta{display:flex;gap:12px;margin-top:10px;flex-wrap:wrap}
.btn{display:inline-block;padding:.7rem 1rem;border-radius:12px;text-decoration:none;font-weight:600}
.btn.primary{background:#FA1F02;color:#fff}
.btn.secondary{background:#0f172a;color:#fff;opacity:.95}
.mini{margin-top:10px;font-size:.9rem;opacity:.8}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0dc7c36 */#hx-franq-roi .roi-head{ text-align:center; margin-bottom:12px }
#hx-franq-roi .roi-head{ text-align:center; margin-bottom:12px }
/* GRID 4 columnas, con mínimo de ancho por tarjeta */
#hx-franq-steps .hx-grid-4{
  display:grid;
  grid-template-columns:repeat(4, minmax(240px, 1fr));
  gap:20px;
  align-items:start;
  position:relative;
  padding-top:8px;
}

/* Asegura que cada hijo rellena su celda */
#hx-franq-steps .hx-grid-4 > .e-con{
  width:auto !important;
  min-width:0 !important;
}

/* Línea del timeline */
#hx-franq-steps .timeline-rail{ position:relative }
#hx-franq-steps .timeline-rail:before{
  content:""; position:absolute; left:0; right:0;
  top:26px; height:2px; background:#e5e7eb; z-index:0;
}

/* Tarjeta del hito */
#hx-franq-steps .step{
  position:relative; background:#fff; border:1px solid #e5e7eb;
  border-radius:12px; padding:14px; box-shadow:0 6px 18px rgba(16,24,40,.06);
  height:100%;
  z-index:1; /* por encima de la línea */
}

/* Punto sobre la línea */
#hx-franq-steps .step:before{
  content:""; position:absolute; top:18px; left:14px;
  width:12px; height:12px; border-radius:50%;
  background:#EFCE8C; box-shadow:0 0 0 4px #fff, 0 0 0 6px rgba(239,206,140,.45);
  z-index:2;
}

/* Cabecera + badge */
#hx-franq-steps .meta{ display:flex; gap:8px; align-items:center; margin-bottom:6px }
#hx-franq-steps .badge{
  display:inline-block; padding:.2rem .55rem; font-size:.78rem;
  border-radius:999px; background:#EFCE8C; color:#0f172a; font-weight:700;
}

/* Responsive */
@media (max-width:1024px){
  #hx-franq-steps .hx-grid-4{ grid-template-columns:repeat(2, minmax(240px,1fr)); }
}
@media (max-width:640px){
  #hx-franq-steps .hx-grid-4{ grid-template-columns:1fr; }
  #hx-franq-steps .timeline-rail:before{ top:24px }
  #hx-franq-steps .step:before{ top:16px; left:12px }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-5d0b1d6 *//* ===== Scope bloque FAQs ===== */
.elementor-277 .elementor-element.elementor-element-5d0b1d6{ --hx-ink:#0f172a; --hx-blue:#9dbbe5; --hx-smoke:#eef2f7; }

/* Layout general del bloque */
.elementor-277 .elementor-element.elementor-element-5d0b1d6{ display:grid; gap:24px; }

/* El primer hijo (cabecera) ocupa todo el ancho */
.elementor-277 .elementor-element.elementor-element-5d0b1d6 > :first-child{ grid-column:1 / -1; }

/* Grid de 2 columnas SOLO en el contenedor .hx-faqs-grid */
.elementor-277 .elementor-element.elementor-element-5d0b1d6 .hx-faqs-grid{
  display:grid; gap:24px;
  grid-template-columns:1fr;            /* móvil */
}
@media (min-width:992px){
  .elementor-277 .elementor-element.elementor-element-5d0b1d6 .hx-faqs-grid{ grid-template-columns:1fr 1fr; }  /* desktop */
}

/* Cabecera */
.elementor-277 .elementor-element.elementor-element-5d0b1d6 header{ text-align:center; }
.elementor-277 .elementor-element.elementor-element-5d0b1d6 header .tag{
  display:inline-block; font-size:.85rem; padding:6px 10px; border-radius:999px;
  background:var(--hx-smoke); color:#334155; border:1px solid #dfe6ee;
}
.elementor-277 .elementor-element.elementor-element-5d0b1d6 header h2{ margin:.4rem 0 0; font-size:2rem; color:var(--hx-ink); }

/* FAQs (columna izquierda) */
.elementor-277 .elementor-element.elementor-element-5d0b1d6 .hx-col-copy details{
  background:#fff; border:1.5px solid #e6edf5; border-radius:12px; overflow:hidden; margin:12px 0;
}
.elementor-277 .elementor-element.elementor-element-5d0b1d6 .hx-col-copy summary{
  list-style:none; cursor:pointer; padding:14px 18px; font-weight:700; color:var(--hx-ink);
  display:flex; align-items:center; gap:10px;
}
.elementor-277 .elementor-element.elementor-element-5d0b1d6 .hx-col-copy summary::-webkit-details-marker{ display:none; }
.elementor-277 .elementor-element.elementor-element-5d0b1d6 .hx-col-copy summary::before{
  content:"+"; width:22px; height:22px; display:inline-grid; place-items:center;
  border:1.5px solid #cfd9e3; border-radius:6px; font-weight:800;
}
.elementor-277 .elementor-element.elementor-element-5d0b1d6 .hx-col-copy details[open] summary{ background:var(--hx-smoke); border-bottom:1px solid #e6edf5; }
.elementor-277 .elementor-element.elementor-element-5d0b1d6 .hx-col-copy details[open] summary::before{ content:"–"; border-color:var(--hx-blue); background:#f4f8ff; }
.elementor-277 .elementor-element.elementor-element-5d0b1d6 .hx-col-copy details > p{ padding:14px 20px 18px 48px; margin:0; color:#334155; line-height:1.55; }

/* Imagen (columna derecha) */
.elementor-277 .elementor-element.elementor-element-5d0b1d6 .hx-col-media img{
  width:100%; height:auto; display:block; border-radius:12px; object-fit:cover;
}

/* Opcional: fija la imagen en desktop */
@media (min-width:992px){
  .elementor-277 .elementor-element.elementor-element-5d0b1d6 .hx-col-media{ position:sticky; top:90px; }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1891d42 */<style>
  /* Centrado y tamaño máximo */
  #hx-map-wrap{ max-width:1000px; margin:0 auto; }
  #hx-map{ width:100%; height:auto; display:block; }

  /* Normalización: ignoramos los estilos del SVG original */
  #hx-map path{
    fill:#fff !important;
    stroke:#1e293b !important;      /* contorno gris azulado */
    stroke-width:1.5 !important;
    vector-effect:non-scaling-stroke;
    transition:fill .2s ease, opacity .2s ease;
  }
  #hx-map path:hover{ fill:#f1f5f9 !important; }

  /* Provincias reservadas */
  #hx-map path.reservado{ fill:#cfe1f2 !important; }
</style>/* End custom CSS */
/* Start custom CSS *//* ====== SCOPE FRANQUICIA HUMIX ====== */
.hx-franq-scope{
  --hx-ink:#0f172a; --hx-text:#334155; --hx-smoke:#e8edf3;
  --hx-blue:#9dbbe5; --hx-red:#fa1f02; --hx-gold:#efce8c; --hx-white:#fff;
  --hx-max:1200px; --hx-gap:24px; --hx-radius:20px;
  --hx-shadow:0 14px 40px rgba(0,0,0,.12);
  color:var(--hx-text); font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,'Helvetica Neue',Arial,sans-serif;
}
#hx-franq-scope .inner{max-width:var(--hx-max); margin:auto; padding:clamp(24px,3vw,48px)}
#hx-franq-scope h1,#hx-franq-scope h2,#hx-franq-scope h3{color:var(--hx-ink); line-height:1.15; margin:0 0 .6em}
#hx-franq-scope .lead{font-size:1.125rem; opacity:.9}
#hx-franq-scope .btn{display:inline-block; padding:14px 20px; border-radius:999px; font-weight:700; text-decoration:none}
#hx-franq-scope .btn.primary{background:var(--hx-red); color:#fff}
#hx-franq-scope .btn.secondary{background:var(--hx-gold); color:var(--hx-ink)}
#hx-franq-scope .tag{display:inline-block; background:var(--hx-gold); color:var(--hx-ink); font-weight:700; border-radius:999px; padding:.35rem .7rem; font-size:.9rem}

/* ===== Hero ===== */
#hx-franq-hero{
  position:relative; overflow:hidden; border-radius:var(--hx-radius); box-shadow:var(--hx-shadow);
  background:linear-gradient(180deg, rgba(15,23,42,.55), rgba(15,23,42,.75));
}
#hx-franq-hero .media{
  position:absolute; inset:0; z-index:0; opacity:.6;
  background:url('https://images.unsplash.com/photo-1523419409543-299c7a3ff4d4?q=80&w=1600&auto=format&fit=crop') center/cover no-repeat;
}
#hx-franq-hero .overlay{position:absolute; inset:0; background:radial-gradient(80% 80% at 20% 20%, rgba(157,187,229,.55), transparent 60%)}
#hx-franq-hero .content{position:relative; z-index:1; display:grid; gap:var(--hx-gap); grid-template-columns: 1.2fr .8fr; align-items:center}
#hx-franq-hero .card{
  background:rgba(255,255,255,.9); backdrop-filter: blur(6px);
  border-radius:var(--hx-radius); padding:28px; box-shadow:var(--hx-shadow)
}
#hx-franq-hero ul{margin:0; padding:0; list-style:none; display:grid; gap:10px}
#hx-franq-hero li::before{content:"✔"; margin-right:.6rem; color:var(--hx-red); font-weight:900}

/* ===== Por qué HumiX (cards con imagen) ===== */
#hx-franq-why .grid{
  display:grid; gap:var(--hx-gap);
  grid-template-columns: repeat(3,1fr);
}
#hx-franq-why .card{
  background:var(--hx-white); border-radius:var(--hx-radius); overflow:hidden; box-shadow:var(--hx-shadow)
}
#hx-franq-why .card figure{margin:0; height:180px; background:#ddd}
#hx-franq-why .card img{width:100%; height:100%; object-fit:cover; display:block}
#hx-franq-why .card .body{padding:18px}
#hx-franq-why .card h3{margin:0 0 .25rem}

/* ===== Inversión/Financiación (stripe) ===== */
#hx-franq-invest{
  background:linear-gradient(180deg, #f7f9fc, #fff);
  border:1px solid #e8edf3; border-radius:var(--hx-radius); box-shadow:var(--hx-shadow)
}
#hx-franq-invest .block{
  display:grid; gap:var(--hx-gap); grid-template-columns: 1fr 1fr; align-items:center;
}
#hx-franq-invest .numbers{
  background:var(--hx-ink); color:#fff; border-radius:16px; padding:24px
}
#hx-franq-invest .numbers .big{font-size:2.2rem; font-weight:800}
#hx-franq-invest .numbers p{margin:.5rem 0 0; opacity:.9}

/* ===== ROI (tres tarjetas con mini-gráfico CSS) ===== */
#hx-franq-roi .grid{display:grid; gap:var(--hx-gap); grid-template-columns: repeat(3,1fr)}
#hx-franq-roi .card{background:#fff; border-radius:var(--hx-radius); box-shadow:var(--hx-shadow); padding:20px}
#hx-franq-roi .barwrap{height:140px; display:grid; grid-template-columns: repeat(3,1fr); gap:10px; align-items:end}
#hx-franq-roi .bar{background:var(--hx-blue); border-radius:8px 8px 0 0; box-shadow:inset 0 0 0 2px rgba(255,255,255,.5)}
#hx-franq-roi .bar.cost{background:#cbd5e1}
#hx-franq-roi .legend{display:flex; gap:10px; font-size:.9rem; opacity:.9}

/* ===== Timeline Mes 0→6 ===== */
#hx-franq-steps .rail{position:relative; padding-left:24px}
#hx-franq-steps .rail::before{
  content:""; position:absolute; left:8px; top:0; bottom:0; width:4px; background:linear-gradient(#9dbbe5, #efce8c)
}
#hx-franq-steps .step{
  position:relative; margin:0 0 18px; padding:16px 16px 16px 14px; border-radius:14px; background:#fff; box-shadow:var(--hx-shadow)
}
#hx-franq-steps .step::before{
  content:""; position:absolute; left:-2px; top:16px; width:14px; height:14px; border-radius:50%;
  background:var(--hx-red); box-shadow:0 0 0 4px #fff, 0 0 0 8px rgba(250,31,2,.15)
}
#hx-franq-steps .meta{display:flex; gap:8px; align-items:center; margin-bottom:6px}
#hx-franq-steps .meta .badge{background:var(--hx-gold); color:var(--hx-ink); font-weight:700; padding:.2rem .5rem; border-radius:999px}

/* ===== Mapa con badges ===== */
#hx-franq-map .map-wrap{position:relative; border-radius:var(--hx-radius); overflow:hidden; box-shadow:var(--hx-shadow)}
#hx-franq-map .map-img{display:block; width:100%; height:auto}
#hx-franq-map .badge{
  position:absolute; transform:translate(-50%,-50%);
  background:var(--hx-gold); color:var(--hx-ink); font-weight:700; padding:.45rem .7rem; border-radius:999px; box-shadow:var(--hx-shadow); white-space:nowrap
}

/* ===== FAQs (details nativo, sin JS) ===== */
#hx-franq-faqs details{
  background:#fff; border-radius:14px; box-shadow:var(--hx-shadow); padding:16px; margin-bottom:12px
}
#hx-franq-faqs summary{cursor:pointer; font-weight:700; color:var(--hx-ink)}
#hx-franq-faqs p{margin:.6rem 0 0}


/* ===== CTA final ===== */
#hx-franq-cta{
  text-align:center; background:linear-gradient(180deg, #fff, #f7f9fc); border-radius:var(--hx-radius); box-shadow:var(--hx-shadow)
}
#hx-franq-cta .stack{display:grid; gap:16px; justify-items:center}
#hx-franq-cta .mini{opacity:.75}

/* ===== Responsive ===== */
@media (max-width: 1024px){
  #hx-franq-hero .content{grid-template-columns:1fr}
  #hx-franq-why .grid, #hx-franq-roi .grid{grid-template-columns:1fr 1fr}
  #hx-franq-invest .block, 
}
@media (max-width: 680px){
  #hx-franq-why .grid, #hx-franq-roi .grid{grid-template-columns:1fr}
}
#hx-franq-why .card figure{height:240px}
#hx-franq-why .card figure svg{width:100%; height:100%; display:block}
/* grid de 4 */
#hx-franq-steps .hx-grid-4{ display:grid; grid-template-columns:repeat(4,1fr); gap:16px }
/* línea de tiempo */
#hx-franq-steps .timeline-rail{ position:relative }
#hx-franq-steps .timeline-rail:before{
  content:""; position:absolute; left:0; right:0; top:22px; height:2px; background:#e5e7eb;
}
/* tarjeta hito */
#hx-franq-steps .step{ position:relative; background:#fff; border:1px solid #e5e7eb; border-radius:12px; padding:14px }
#hx-franq-steps .step:before{
  content:""; position:absolute; width:10px; height:10px; border-radius:50%;
  background:#EFCE8C; top:18px; left:14px; box-shadow:0 0 0 4px #fff,0 0 0 6px #e5e7eb;
}
#hx-franq-steps .badge{ display:inline-block; padding:.2rem .5rem; font-size:.75rem; border-radius:999px; background:#9DBBE5; color:#0f172a; margin-right:.4rem }
@media (max-width:1024px){ #hx-franq-steps .hx-grid-4{ grid-template-columns:repeat(2,1fr) } }
@media (max-width:640px){  #hx-franq-steps .hx-grid-4{ grid-template-columns:1fr } }
/* ====== Cabecera del bloque ====== */
#hx-map-head{
  text-align:center; 
  max-width:1000px; 
  margin:0 auto 18px auto;
  padding-top:8px;
}
#hx-map-head .chip{
  display:inline-block;
  font-size:.78rem;
  line-height:1;
  padding:.45rem .6rem;
  border-radius:999px;
  background: linear-gradient(90deg, rgba(157,187,229,.20), rgba(239,206,140,.20));
  border:1px solid rgba(15,23,42,.12);
  color:#0f172a;
  letter-spacing:.02em;
  margin-bottom:.6rem;
}
#hx-map-head h2{
  margin:0 0 .25rem 0;
  font-size:clamp(1.4rem, 1.1rem + 1.2vw, 2rem);
  font-weight:700;
  color:#0f172a;
}
#hx-map-head p{
  margin:0;
  color:#334155;
  font-size:.98rem;
}

/* ====== Contenedor y SVG responsivo ====== */
#hx-map-wrap{ 
  max-width:1000px; 
  margin: 8px auto 28px auto;
}
#hx-map{ 
  width:100%; 
  height:auto; 
  display:block; 
}

/* ====== Normalización de estilos del SVG ======
   (Ignora estilos embebidos del archivo) */
#hx-map path, 
#hx-map polygon, 
#hx-map rect, 
#hx-map circle, 
#hx-map polyline{
  fill:#fff !important;
  stroke:#1e293b !important;        /* contorno gris-azulado */
  stroke-width:1.5 !important;
  vector-effect: non-scaling-stroke; /* contorno no deforma al escalar */
  transition: fill .15s ease, opacity .15s ease, transform .15s ease;
  cursor: default;
}

/* Hover suave para explorar */
#hx-map path:hover{
  fill:#f1f5f9 !important;
}

/* Provincias reservadas (añade class="reservado" en el <path>) */
#hx-map .reservado{
  fill:#cfe1f2 !important;          /* azul claro Humix */
}

/* Si quieres que sean clicables (opcional): */
#hx-map a path{ cursor:pointer; }
#hx-map a:hover path{ fill:#e7eef7 !important; }

/* Accesibilidad (teclado) si usas <a> alrededor del path */
#hx-map a:focus path{
  outline: none;
  filter: drop-shadow(0 0 0.6rem rgba(31,41,55,.25));
}

/* Ajustes móviles */
@media (max-width:768px){
  #hx-map-head p{ font-size:.95rem; }
  #hx-map-head{ margin-bottom:10px; }
}
/* ===== Leyenda ===== */
#hx-map-legend{
  display:flex; gap:18px; align-items:center; justify-content:center;
  margin:10px auto 0 auto; font-size:.95rem; color:#0f172a;
}
#hx-map-legend .item{ display:inline-flex; align-items:center; gap:8px; }
#hx-map-legend .swatch{
  width:14px; height:14px; border:1.5px solid #1e293b; border-radius:3px; display:inline-block;
}
#hx-map-legend .swatch.reservado{ background:#cfe1f2; }
#hx-map-legend .swatch.disponible{ background:#ffffff; }
/* ===== FAQs: grid 2 columnas ===== */
#hx-franq-faqs .wrap{
  display:grid;
  gap:var(--hx-gap);
  grid-template-columns: 1.15fr .85fr; /* texto / imagen */
  align-items:start;
}

/* Evitar que Elementor fuerce widths internos */
#hx-franq-faqs .wrap [class*="elementor-column"]{ width:auto !important; }

/* Imagen derecha */
#hx-franq-faqs .hx-col-media img{
  display:block; width:100%; height:auto; border-radius:12px; object-fit:cover;
}

/* Opcional: imagen fija al hacer scroll en desktop */
@media (min-width: 992px){
  #hx-franq-faqs .hx-col-media{ position:sticky; top:90px; }
}

/* Responsive: 1 columna en tablet/móvil */
@media (max-width: 1024px){
  #hx-franq-faqs .wrap{ grid-template-columns:1fr; }
}
/* === Hero limpio 2 columnas === */
#hx-franq-hero{
  background:#fff !important;   /* quita el gris/overlay */
  box-shadow:none;
  border-radius:16px;
}

/* grid 2 columnas (texto / foto) */
#hx-franq-hero .content{
  display:grid;
  gap:24px;
  grid-template-columns: 1.25fr .85fr;
  align-items:center;
}

/* tarjeta de texto */
#hx-franq-hero .card{
  background:#fff;
  border:1px solid #e8edf3;
  border-radius:16px;
  padding:28px;
  box-shadow:0 14px 40px rgba(0,0,0,.06);
}

/* imagen a la derecha (normal, no de fondo) */
#hx-franq-hero .media{
  position:static;    /* no absoluta */
}
#hx-franq-hero .media img{
  display:block; width:100%; height:auto; border-radius:16px; object-fit:cover;
}

/* quita overlays del hero “a pantalla” si quedaron */
#hx-franq-hero .overlay{ display:none !important; }
#hx-franq-hero .media[style]{ background:none !important; opacity:1 !important; }

/* ✔ de la lista dentro de la tarjeta (no sueltos) */
#hx-franq-hero .card ul{ margin:0; padding:0; list-style:none; display:grid; gap:10px; }
#hx-franq-hero .card li{ display:flex; align-items:flex-start; gap:.6rem; }
#hx-franq-hero .card li::before{
  content:"✔"; color:#fa1f02; font-weight:900; line-height:1.2; margin-top:.1rem;
}

/* Responsive: 1 columna en tablet/móvil */
@media (max-width:1024px){
  #hx-franq-hero .content{ grid-template-columns:1fr; }
}
#hx-franq-why .card figure{ height:240px; }
#hx-franq-why .card img{ width:100%; height:100%; object-fit:cover; }
@media (max-width:1024px){ #hx-franq-why .card figure{ height:220px; } }
@media (max-width:680px){  #hx-franq-why .card figure{ height:200px; } }
#hx-franq-why .card{ transition:transform .18s ease, box-shadow .18s ease; }
#hx-franq-why .card:hover{
  transform:translateY(-4px);
  box-shadow:0 16px 40px rgba(0,0,0,.12);
}
#hx-franq-why .card:focus-within{
  outline:2px solid #9dbbe5; outline-offset:4px; border-radius:20px;
}
#hx-franq-why .card h3{ font-size:1.2rem; margin:10px 0 6px; color:#0f172a; }
#hx-franq-why .card p{ margin:0; color:#334155; line-height:1.5; }
#hx-franq-why .grid{ display:grid; gap:24px; grid-template-columns:repeat(3,1fr); }
@media (max-width:1024px){ #hx-franq-why .grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:680px){  #hx-franq-why .grid{ grid-template-columns:1fr; } }
/* ——— Ajuste fino de la banda ——— */
#hx-franq-invest{
  background:linear-gradient(180deg, #f8fbff, #ffffff);
  border:1px solid #e8edf3; 
  border-radius:20px; 
  box-shadow:0 14px 40px rgba(0,0,0,.06);
}
#hx-franq-invest .block{
  display:grid; 
  grid-template-columns:1.05fr .95fr; 
  gap:28px; 
  align-items:center;
  padding:28px;
}

/* Chip superior */
#hx-franq-invest .chip{
  display:inline-block; 
  font-size:.8rem; 
  line-height:1; 
  padding:.45rem .6rem; 
  border-radius:999px;
  background:linear-gradient(90deg, rgba(157,187,229,.18), rgba(239,206,140,.18));
  border:1px solid rgba(15,23,42,.08);
  color:#0f172a; 
  margin-bottom:.6rem;
}

/* Lista con bullets consistentes */
#hx-franq-invest .bullets{ 
  margin:12px 0 0; 
  padding-left:1.1rem; 
  color:#334155; 
}
#hx-franq-invest .bullets li{ 
  margin:.45rem 0; 
}

/* Panel derecho oscuro */
#hx-franq-invest .numbers{
  background:#0b1424; 
  color:#fff; 
  border-radius:18px; 
  padding:26px; 
  box-shadow:0 12px 36px rgba(0,0,0,.28);
}
#hx-franq-invest .numbers .big{
  font-size:2.1rem; 
  font-weight:800; 
  letter-spacing:.2px; 
  margin:0 0 .4rem;
}
#hx-franq-invest .numbers p{ 
  margin:.35rem 0 0; 
  opacity:.95; 
}
#hx-franq-invest .numbers .mini{ 
  opacity:.75; 
  font-size:.9rem; 
}

/* Botón */
#hx-franq-invest .btn.primary{
  display:inline-block; 
  margin-top:14px; 
  padding:12px 18px; 
  border-radius:999px; 
  background:#fa1f02; 
  color:#fff; 
  font-weight:700; 
  text-decoration:none; 
  transition:transform .12s ease, box-shadow .12s ease, background .12s ease;
}
#hx-franq-invest .btn.primary:hover{
  transform:translateY(-1px); 
  box-shadow:0 8px 24px rgba(250,31,2,.35);
  background:#e31b02;
}
#hx-franq-invest .btn.primary:focus-visible{
  outline:2px solid #9dbbe5; 
  outline-offset:3px;
}

/* Responsive */
@media (max-width:1024px){
  #hx-franq-invest .block{ grid-template-columns:1fr; }
}
/* Cabecera */
#hx-franq-roi .head{ text-align:center; margin: 6px auto 18px; max-width:980px; }
#hx-franq-roi .chip{
  display:inline-block; font-size:.78rem; padding:.38rem .6rem; border-radius:999px;
  background:linear-gradient(90deg, rgba(157,187,229,.18), rgba(239,206,140,.18));
  border:1px solid rgba(15,23,42,.10); color:#0f172a; margin-bottom:.45rem;
}
#hx-franq-roi h2{ margin:.1rem 0 .25rem; }

/* Grid de tarjetas */
#hx-franq-roi .grid{
  display:grid; gap:22px; grid-template-columns:repeat(3,1fr);
}
#hx-franq-roi .card{
  background:#fff; border-radius:18px; box-shadow:0 14px 40px rgba(0,0,0,.08);
  padding:16px 16px 18px; border:1px solid #eef2f7;
}
#hx-franq-roi .card h3{ margin:2px 0 10px; }

/* Barras */
#hx-franq-roi .barwrap{
  height:120px; display:grid; grid-template-columns:repeat(3,1fr); gap:16px; align-items:end;
  padding:14px; border-radius:14px; background:#f8fbff; border:1px solid #e8edf3; margin:0 0 10px;
}
#hx-franq-roi .bar{ 
  height:calc(var(--h,60%) * 1); 
  border-radius:10px 10px 0 0; 
  box-shadow:inset 0 0 0 2px rgba(255,255,255,.5);
  transition: transform .12s ease;
}
#hx-franq-roi .bar:hover{ transform:translateY(-2px); }

#hx-franq-roi .bar.cost   { background:#cfd8e3; }   /* costes gris */
#hx-franq-roi .bar.rev    { background:#9dbbe5; }   /* ingresos azul */
#hx-franq-roi .bar.profit { background:#b2c8ee; }   /* margen azul claro */

#hx-franq-roi .legend{ display:flex; gap:14px; font-size:.92rem; color:#0f172a; margin-bottom:6px; }
#hx-franq-roi .legend .sw{ width:12px; height:12px; border-radius:3px; display:inline-block; margin-right:6px; }
#hx-franq-roi .legend .sw.cost{ background:#cfd8e3; }
#hx-franq-roi .legend .sw.rev{ background:#9dbbe5; }
#hx-franq-roi .legend .sw.profit{ background:#b2c8ee; }

#hx-franq-roi .net{ margin:.3rem 0 0; }
#hx-franq-roi .note{ text-align:center; opacity:.75; margin:10px 0 0; }

/* Responsive */
@media (max-width:1200px){ #hx-franq-roi .grid{ grid-template-columns:1fr 1fr; } }
@media (max-width:720px){  #hx-franq-roi .grid{ grid-template-columns:1fr; } }
/* Cabecera */
#hx-franq-steps .hx-head{ text-align:center; max-width:980px; margin:8px auto 18px; }
#hx-franq-steps .chip{
  display:inline-block; font-size:.78rem; padding:.38rem .6rem; border-radius:999px;
  background:linear-gradient(90deg, rgba(157,187,229,.18), rgba(239,206,140,.18));
  border:1px solid rgba(15,23,42,.10); color:#0f172a; margin-bottom:.45rem;
}

/* Grid */
#hx-franq-steps .hx-grid-4{ display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }

/* Línea guía */
#hx-franq-steps .timeline-rail{ position:relative; }
#hx-franq-steps .timeline-rail::before{
  content:""; position:absolute; left:0; right:0; top:22px; height:2px; background:#e5e7eb;
}

/* Tarjeta */
#hx-franq-steps .step{
  position:relative; background:#fff; border:1px solid #e8edf3; border-radius:14px;
  padding:16px; box-shadow:0 10px 30px rgba(0,0,0,.06);
}

/* Pin (círculo) que se apoya en la línea */
#hx-franq-steps .step::before{
  content:""; position:absolute; width:12px; height:12px; border-radius:50%;
  background:#EFCE8C; top:16px; left:14px; box-shadow:0 0 0 4px #fff, 0 0 0 6px #e5e7eb;
}

/* Meta (badge + título) */
#hx-franq-steps .meta{ display:flex; gap:8px; align-items:center; margin-bottom:6px; }
#hx-franq-steps .badge{
  display:inline-block; padding:.2rem .5rem; font-size:.75rem; border-radius:999px;
  background:#9DBBE5; color:#0f172a; font-weight:700;
}

/* Responsive */
@media (max-width:1024px){ #hx-franq-steps .hx-grid-4{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:640px){  #hx-franq-steps .hx-grid-4{ grid-template-columns:1fr; } }
/* Fondo, borde y grid */

/* ====== Layout de la sección ====== */
#hx-faqs{
  display:grid;
  grid-template-columns: 1.1fr .9fr;   /* más ancho para las preguntas */
  gap:24px;
  align-items:start;
  max-width:1200px;
  margin:0 auto;
  padding:0 16px;
}

/* Columna derecha: imagen estable (no recorta raro) */
#hx-faqs .hx-col-media img{
  width:100%;
  height:100%;
  max-height:640px;              /* evita “columna infinita” si hay muchas FAQs */
  object-fit:cover;
  display:block;
  border-radius:16px;
  box-shadow:0 14px 40px rgba(0,0,0,.1);
}

/* Si quieres que la imagen “acompañe” al hacer scroll (opcional) */
@media (min-width:1025px){
  #hx-faqs .hx-col-media{ position:sticky; top:90px; }
}

/* Respiración de los bloques FAQ */
#hx-faqs details{
  background:#fff;
  border:1.5px solid #e6edf5;
  border-radius:12px;
  margin:12px 0;
  overflow:hidden;
  box-shadow:0 6px 20px rgba(15,23,42,.04);
}

/* Cabecera del FAQ */
#hx-faqs summary{
  list-style:none; cursor:pointer;
  padding:16px 18px; font-weight:700; color:#0f172a;
  display:flex; align-items:center; gap:10px;
}
#hx-faqs summary::-webkit-details-marker{ display:none; }
#hx-faqs summary::marker{ content:""; }

/* Icono + / – accesible */
#hx-faqs summary::before{
  content:"+"; width:22px; height:22px; display:inline-grid; place-items:center;
  border:1.5px solid #cfd9e3; border-radius:6px; font-weight:800;
}
#hx-faqs details[open] summary{
  background:#f6f9fd; border-bottom:1px solid #e6edf5;
}
#hx-faqs details[open] summary::before{
  content:"–"; border-color:#9dbbe5; background:#eef5ff;
}

/* Cuerpo */
#hx-faqs details > p{ padding:14px 20px 18px 48px; margin:0; color:#334155; line-height:1.55; }

/* Responsive: apilar y poner la imagen debajo */
@media (max-width:1024px){
  #hx-faqs{ grid-template-columns:1fr; }
  #hx-faqs .hx-col-media{ order:2; }
}
/* Evita que la bolita tape el chip de Mes */
#hx-franq-steps .step{
  /* deja más aire a la izquierda para el punto */
  padding:16px 16px 16px 42px;   /* <-- antes 14px o 16px */
}

#hx-franq-steps .step::before{
  left:18px;                     /* separa el punto del borde */
  top:22px;                      /* baja un poquito el punto */
  z-index:1;                     /* por detrás del chip */
}

#hx-franq-steps .badge{
  position:relative;
  z-index:2;                     /* chip por encima del punto */
  margin-left:2px;               /* microajuste opcional */
}

/* Si en móvil ves el chip muy pegado, suaviza un poco */
@media (max-width: 640px){
  #hx-franq-steps .step{ padding-left:38px; }
  #hx-franq-steps .step::before{ left:16px; top:20px; }
}
/* Contenedor del bloque */
#hx-map-wrap{
  max-width: 1000px;          /* ancho cómodo de lectura */
  margin: 8px auto 28px;      /* centrado */
}

/* SVG fluido */
#hx-map{ width:100%; height:auto; display:block; }

/* Trazos y rellenos (estandarización) */
#hx-map path, #hx-map polygon, #hx-map rect, #hx-map circle, #hx-map polyline{
  fill:#fff !important;
  stroke:#1e293b !important;          /* gris-azulado */
  stroke-width:1.6 !important;
  vector-effect: non-scaling-stroke;
  transition: fill .15s ease, opacity .15s ease, transform .15s ease;
}

/* Etiquetas: bordes nítidos y no seleccionables */
#hx-map text{
  user-select: none;
  -webkit-user-select:none;
  paint-order: stroke fill;            /* borde + relleno para legibilidad */
  stroke:#fff; stroke-width:3px;       /* fino contorno blanco */
  fill:#0f172a;                        /* texto oscuro */
}
/* Provincias reservadas */
#hx-map .reservado{
  fill:#cfe1f2 !important;             /* azul HumiX claro */
}

/* Hover exploratorio */
#hx-map path:hover{
  fill:#eef3f8 !important;
}

/* Enlaces accesibles (si envuelves paths con <a>) */
#hx-map a:focus path{
  outline: none;
  filter: drop-shadow(0 0 0.6rem rgba(31,41,55,.22));
}
#hx-map-legend{
  display:flex; gap:18px; align-items:center; justify-content:center;
  margin:10px auto 0; font-size:.95rem; color:#0f172a;
}
#hx-map-legend .item{ display:inline-flex; align-items:center; gap:8px; }
#hx-map-legend .swatch{
  width:14px; height:14px; border:1.5px solid #1e293b; border-radius:3px;
}
#hx-map-legend .swatch.reservado{ background:#cfe1f2; }
#hx-map-legend .swatch.disponible{ background:#ffffff; }
/* ===== GARANTÍA HUMIX · Fondo de la sección ===== */
#hx-franq-guarantee{
  width:100%;
  background:linear-gradient(135deg, rgba(239,206,140,.18), rgba(157,187,229,.18));
  padding:100px 0;
}

/* Contenedor interior (el que tiene clase wrap) */
#hx-franq-guarantee > .wrap{
  max-width:1320px;
  margin:0 auto;
  padding:0 16px;
  display:flex;
  flex-direction:column;   /* MÓVIL: una columna */
  gap:24px;
}

/* Card de texto */
#hx-franq-guarantee .panel{
  background:#ffffff;
  border-radius:18px;
  box-shadow:0 6px 18px rgba(15,23,42,.06);
  padding:26px 20px;
  width:100%;
  max-width:100%;
  box-sizing:border-box;
}

/* Imagen (contenedor de la segunda columna) */
#hx-franq-guarantee img{
  display:block;
  width:100%;
  height:auto;
  border-radius:22px;
}

/* ESCRITORIO: dos columnas */
@media (min-width:900px){
  #hx-franq-guarantee{
    padding:70px 0;
  }

  #hx-franq-guarantee > .wrap{
    display:grid;
    grid-template-columns:minmax(0,1.1fr) minmax(0,1.1fr);
    gap:32px;
    align-items:center;
  }

  #hx-franq-guarantee .panel{
    padding:30px 30px;
    max-width:none;
  }
}/* End custom CSS */