/* Categorías populares · aislado bajo .nhc (valores por defecto con baja especificidad: los controles de Elementor siempre ganan) */
.nhc{
  --nhc-teal:#00b5cc;
  --nhc-teal-dark:#008fa3;
  --nhc-teal-soft:#e6f8fb;
  --nhc-navy:#0b2a4a;
  --nhc-muted:#5d7188;
  --nhc-sep:#b4c2cf;
  --nhc-fade:#fff;
  position:relative;
  overflow:hidden;
  box-sizing:border-box;
  width:100%;
  font-family:'DM Sans',system-ui,-apple-system,'Segoe UI',sans-serif;
  font-size:15px;line-height:1.3;
}
.nhc *,.nhc *::before,.nhc *::after{box-sizing:border-box}

/* Zona deslizable: oculta la barra y permite arrastrar con el dedo */
.nhc .nhc-scroll{
  position:relative;
  overflow-x:auto;overflow-y:hidden;
  scrollbar-width:none;-ms-overflow-style:none;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-x:contain;
  touch-action:pan-x pan-y;
}
.nhc .nhc-scroll::-webkit-scrollbar{display:none}
.nhc.is-scrollable .nhc-scroll{cursor:grab}
.nhc.is-dragging .nhc-scroll{cursor:grabbing;user-select:none}
.nhc.is-dragging .nhc-link{pointer-events:none}

.nhc .nhc-list{
  display:flex;align-items:center;
  width:max-content;min-width:100%;
  gap:4px;
  margin:0;padding:0;list-style:none;
}
.nhc .nhc-item{flex:none;margin:0;padding:0;list-style:none}

/* Categoría */
.nhc-link{
  display:inline-flex;align-items:center;gap:7px;
  padding:8px 12px;border-radius:999px;
  color:var(--nhc-muted);font-weight:500;
  white-space:nowrap;text-decoration:none;box-shadow:none;
  transition:color .2s,background .2s;
}
.nhc-link:hover{color:var(--nhc-teal-dark);background:var(--nhc-teal-soft)}
.nhc .nhc-link:focus-visible{outline:3px solid #f5b800;outline-offset:-3px}
.nhc-item--featured .nhc-link{color:var(--nhc-navy);font-weight:700}
.nhc .is-current .nhc-link{color:var(--nhc-teal-dark);background:var(--nhc-teal-soft)}
.nhc-num{
  font-size:.8em;font-weight:600;line-height:1;
  padding:3px 7px;border-radius:999px;
  background:rgba(11,42,74,.07);color:var(--nhc-muted);
}

/* Separadores (se dibujan con CSS y toman el tamaño del texto) */
.nhc .nhc-sep{flex:none;display:flex;align-items:center;margin:0;padding:0;list-style:none;font-size:16px;color:var(--nhc-sep)}
.nhc .nhc-sep span{display:block;background:currentColor}
.nhc .nhc-sep--dot span{width:.3em;height:.3em;border-radius:50%}
.nhc .nhc-sep--line span{width:1px;height:1.1em}
.nhc .nhc-sep--slash span{width:1px;height:1.2em;transform:rotate(22deg)}
.nhc .nhc-sep--main{color:var(--nhc-navy)}
.nhc .nhc-sep--main.nhc-sep--line span{height:1.4em}

/* Degradado en los bordes cuando hay más contenido para deslizar */
.nhc--fade::before,.nhc--fade::after{
  content:"";position:absolute;top:0;bottom:0;z-index:2;
  width:36px;pointer-events:none;
  opacity:0;transition:opacity .2s;
}
.nhc--fade::before{left:0;background:linear-gradient(to right,var(--nhc-fade),transparent)}
.nhc--fade::after{right:0;background:linear-gradient(to left,var(--nhc-fade),transparent)}
.nhc--fade.has-left::before,.nhc--fade.has-right::after{opacity:1}

@media (max-width:767px){
  .nhc{font-size:14px}
  .nhc-link{padding:7px 10px}
  .nhc--fade::before,.nhc--fade::after{width:24px}
}
@media (prefers-reduced-motion:reduce){
  .nhc-link,.nhc--fade::before,.nhc--fade::after{transition:none}
}
