.nphb-home-active .entry-header,.nphb-home-active .page-header,.nphb-home-active .ast-single-post-order>.entry-title{display:none!important}
.nphb-home-active .site-content,.nphb-home-active .ast-container,.nphb-home-active #primary,.nphb-home-active .site-main,.nphb-home-active article,.nphb-home-active .entry-content{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
.nphb-home-active #secondary{display:none!important}
.nphb-hero,.nphb-hero *{box-sizing:border-box}
.nphb-hero{--blue:#2457f5;--blue-dark:#1645d6;--navy:#102247;--text:#3b4a66;--muted:#6f7d96;position:relative;isolation:isolate;overflow:hidden;width:100%;padding:68px 24px 30px;background:radial-gradient(circle at 82% 25%,rgba(89,145,255,.20),transparent 31%),radial-gradient(circle at 64% 72%,rgba(119,86,255,.13),transparent 30%),linear-gradient(135deg,#fff 0%,#f7faff 45%,#edf4ff 100%);color:var(--navy)}
.nphb-inner{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,.92fr) minmax(540px,1.08fr);gap:42px;align-items:center;width:min(1440px,100%);min-height:660px;margin:auto}
.nphb-copy{max-width:670px}
.nphb-eyebrow{display:inline-flex;align-items:center;gap:10px;margin-bottom:22px;padding:9px 15px;color:var(--blue);background:rgba(36,87,245,.08);border:1px solid rgba(36,87,245,.10);border-radius:999px;font-size:13px;font-weight:800;letter-spacing:.045em;text-transform:uppercase}
.nphb-eyebrow span{width:8px;height:8px;background:var(--blue);border-radius:50%;box-shadow:0 0 0 5px color-mix(in srgb,var(--blue) 12%,transparent)}
.nphb-title{margin:0 0 12px!important;font-size:clamp(48px,5.5vw,84px)!important;font-weight:900!important;line-height:.92!important;letter-spacing:-.055em!important}
.nphb-from,.nphb-to{display:block}
.nphb-from{color:var(--blue);font-style:italic;transform:skew(-4deg);transform-origin:left}
.nphb-to{margin-top:8px;color:var(--navy);font-size:.58em;line-height:1.02;letter-spacing:-.035em}
.nphb-brand-phrase{margin:0 0 20px!important;color:var(--blue-dark);font-size:14px;font-weight:750;letter-spacing:.06em;text-transform:uppercase}
.nphb-description{max-width:650px;margin:0 0 27px!important;color:var(--text);font-size:clamp(17px,1.4vw,20px);line-height:1.65}
.nphb-description strong{color:var(--blue);font-weight:800}
.nphb-actions{display:flex;flex-wrap:wrap;gap:15px;margin-bottom:27px}
.nphb-button{display:inline-flex;align-items:center;gap:13px;min-width:225px;padding:15px 20px;border-radius:14px;text-decoration:none!important;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.nphb-button:hover{transform:translateY(-3px)}
.nphb-button-icon{font-size:23px}
.nphb-button strong,.nphb-button small{display:block}
.nphb-button strong{font-size:15px;line-height:1.25}
.nphb-button small{margin-top:3px;font-size:12px;opacity:.82}
.nphb-primary{color:#fff!important;background:linear-gradient(135deg,var(--blue),var(--blue-dark));border:1px solid transparent;box-shadow:0 14px 29px color-mix(in srgb,var(--blue) 28%,transparent)}
.nphb-primary:hover{color:#fff!important;box-shadow:0 19px 38px color-mix(in srgb,var(--blue) 35%,transparent)}
.nphb-secondary{color:var(--blue)!important;background:rgba(255,255,255,.86);border:1px solid color-mix(in srgb,var(--blue) 45%,white);box-shadow:0 9px 22px rgba(24,58,140,.07)}
.nphb-trust{display:flex;align-items:center;gap:17px}
.nphb-trust-icons{display:flex}
.nphb-trust-icons span{display:grid;place-items:center;width:37px;height:37px;margin-left:-7px;background:#fff;border:2px solid #fff;border-radius:50%;box-shadow:0 4px 15px rgba(31,55,102,.13);font-size:17px}
.nphb-trust-icons span:first-child{margin-left:0}
.nphb-stars{color:#ffad16;font-size:16px;letter-spacing:2px}
.nphb-trust p{margin:3px 0 0!important;color:var(--text);font-size:13px}
.nphb-roadmap{position:relative;min-height:610px;border-radius:34px;scroll-margin-top:110px}
.nphb-grid-bg{position:absolute;inset:3% 0 0;opacity:.72;background-image:linear-gradient(color-mix(in srgb,var(--blue) 8%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--blue) 8%,transparent) 1px,transparent 1px);background-size:34px 34px;mask-image:radial-gradient(circle at center,#000 35%,transparent 78%)}
.nphb-route{position:absolute;left:15%;bottom:15%;width:73%;height:63%;border-top:5px solid color-mix(in srgb,var(--blue) 82%,transparent);border-radius:55% 45% 0 0;transform:rotate(-25deg);box-shadow:0 -5px 20px color-mix(in srgb,var(--blue) 23%,transparent)}
.nphb-level{position:absolute;z-index:3;display:flex;align-items:flex-start;gap:13px;width:250px;padding:17px;background:rgba(255,255,255,.92);border:1px solid rgba(194,210,243,.86);border-radius:18px;box-shadow:0 16px 34px rgba(31,65,125,.13);backdrop-filter:blur(12px);transition:transform .22s ease,box-shadow .22s ease}
.nphb-level:hover{transform:translateY(-5px);box-shadow:0 22px 42px rgba(31,65,125,.18)}
.nphb-level-icon{display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;background:#edf3ff;border-radius:14px;font-size:23px}
.nphb-level-tag{display:block;margin-bottom:4px;color:var(--blue);font-size:10px;font-weight:900;letter-spacing:.055em}
.nphb-level h2{margin:0 0 4px!important;color:var(--navy);font-size:18px!important;font-weight:850!important;line-height:1.15!important}
.nphb-level p{margin:0!important;color:var(--muted);font-size:12px;line-height:1.45}
.nphb-level-ccst{left:3%;bottom:7%;border-color:color-mix(in srgb,var(--blue) 52%,transparent)}
.nphb-level-ccst .nphb-level-icon{background:linear-gradient(135deg,var(--blue),var(--blue-dark));box-shadow:0 0 0 8px color-mix(in srgb,var(--blue) 11%,transparent)}
.nphb-level-ccna{left:30%;bottom:29%}
.nphb-level-encor{left:51%;bottom:50%}
.nphb-level-enarsi{right:1%;top:18%}
.nphb-level-ccie{right:6%;top:0;border-color:rgba(255,182,42,.60)}
.nphb-level-ccie .nphb-level-icon{background:#fff5d8}
.nphb-features{position:relative;z-index:4;display:grid;grid-template-columns:repeat(5,1fr);width:min(1440px,100%);margin:-8px auto 0;padding:18px 22px;background:rgba(255,255,255,.95);border:1px solid rgba(211,223,246,.88);border-radius:20px;box-shadow:0 18px 40px rgba(29,59,113,.10)}
.nphb-features>div{display:grid;grid-template-columns:44px 1fr;column-gap:12px;align-items:center;min-height:62px;padding:0 18px;border-left:1px solid #e4ebf7}
.nphb-features>div:first-child{border-left:0}
.nphb-features span{grid-row:1/span 2;display:grid;place-items:center;width:42px;height:42px;background:#eff4ff;border-radius:13px;font-size:20px}
.nphb-features strong,.nphb-features small{display:block}
.nphb-features strong{color:var(--navy);font-size:13px}
.nphb-features small{margin-top:3px;color:var(--muted);font-size:11px}
.nphb-glow{position:absolute;z-index:0;border-radius:50%;pointer-events:none}
.nphb-glow-one{top:14%;right:14%;width:330px;height:330px;background:color-mix(in srgb,var(--blue) 12%,transparent)}
.nphb-glow-two{bottom:4%;left:45%;width:260px;height:260px;background:rgba(130,94,255,.09)}
.nphb-animations .nphb-reveal{animation:nphb-rise .65s both}
.nphb-animations .nphb-copy .nphb-reveal:nth-child(2){animation-delay:.08s}
.nphb-animations .nphb-copy .nphb-reveal:nth-child(3){animation-delay:.14s}
.nphb-animations .nphb-copy .nphb-reveal:nth-child(4){animation-delay:.20s}
.nphb-animations .nphb-copy .nphb-reveal:nth-child(5){animation-delay:.26s}
.nphb-animations .nphb-copy .nphb-reveal:nth-child(6){animation-delay:.32s}
.nphb-animations .nphb-level{animation:nphb-rise .58s both;animation-delay:calc(.12s * var(--nphb-order))}
@keyframes nphb-rise{from{opacity:0;transform:translateY(17px)}to{opacity:1;transform:translateY(0)}}
@media (prefers-reduced-motion:reduce){.nphb-animations .nphb-reveal,.nphb-animations .nphb-level{animation:none!important}.nphb-button,.nphb-level{transition:none!important}}
@media(max-width:1180px){.nphb-inner{grid-template-columns:1fr;min-height:auto}.nphb-copy{max-width:820px;text-align:center;margin:auto}.nphb-eyebrow,.nphb-actions,.nphb-trust{justify-content:center}.nphb-roadmap{width:min(780px,100%);margin:auto}.nphb-features{grid-template-columns:repeat(2,1fr);gap:12px}.nphb-features>div{border:0}}
@media(max-width:760px){
  .nphb-hero{padding:38px 15px 20px}
  .nphb-inner{gap:20px}
  .nphb-eyebrow{margin-bottom:18px;padding:8px 13px;font-size:10px}
  .nphb-title{margin-bottom:9px!important;font-size:clamp(42px,13vw,60px)!important;line-height:.91!important}
  .nphb-to{margin-top:5px;font-size:.50em}
  .nphb-brand-phrase{margin-bottom:16px!important;font-size:11px;letter-spacing:.045em}
  .nphb-description{margin-bottom:23px!important;font-size:16px;line-height:1.58}
  .nphb-actions{display:grid;gap:11px;margin-bottom:23px}
  .nphb-button{width:100%;min-width:0;padding:14px 17px}
  .nphb-trust{align-items:center;justify-content:center;gap:13px}
  .nphb-trust p{font-size:12px}
  .nphb-roadmap{display:grid;gap:11px;min-height:0;padding-top:5px}
  .nphb-grid-bg,.nphb-route{display:none}
  .nphb-level{position:relative;inset:auto!important;width:100%;padding:13px 14px;border-radius:16px}
  .nphb-level-icon{flex-basis:45px;width:45px;height:45px}
  .nphb-level-tag{font-size:9px}
  .nphb-level h2{font-size:17px!important}
  .nphb-level p{font-size:11.5px}
  .nphb-features{grid-template-columns:1fr;margin-top:19px;padding:10px;border-radius:18px}
  .nphb-features>div{padding:9px 11px;min-height:58px}
  .nphb-features span{width:40px;height:40px}
}
@media(max-width:760px){
  .nphb-mobile-compact .nphb-hero{padding-top:30px}
  .nphb-mobile-compact .nphb-inner{gap:15px}
  .nphb-mobile-compact .nphb-title{font-size:clamp(40px,12.5vw,57px)!important}
  .nphb-mobile-compact .nphb-description{margin-bottom:18px!important}
  .nphb-mobile-compact .nphb-actions{margin-bottom:18px}
  .nphb-mobile-compact .nphb-trust{margin-bottom:3px}
}

/* =========================================================
   v2.0.1 — ALINEACIÓN VERTICAL DE ICONOS EN LA RUTA
   Centra el icono respecto al bloque de texto en escritorio
   y mantiene el comportamiento compacto en móvil.
   ========================================================= */

@media (min-width: 761px) {
  .nphb-level {
    align-items: center !important;
  }

  .nphb-level-icon {
    align-self: center !important;
    margin-top: 0 !important;
  }

  .nphb-level > div {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 48px;
  }
}

@media (max-width: 760px) {
  .nphb-level {
    align-items: center !important;
  }

  .nphb-level-icon {
    align-self: center !important;
    margin-top: 0 !important;
  }
}

/* =========================================================
   v2.0.3 — ESPACIADO Y ACABADO DE ICONOS EN LA RUTA
   Más aire respecto al borde, iconos unificados y sombras suaves.
   ========================================================= */

/* Más espacio interior general en las tarjetas */
.nphb-level {
  padding-left: 22px !important;
  padding-right: 20px !important;
  gap: 16px !important;
  box-shadow: 0 14px 30px rgba(31, 65, 125, .11) !important;
}

/* Contenedor de icono más amplio y mejor centrado */
.nphb-level-icon {
  flex: 0 0 54px !important;
  width: 54px !important;
  height: 54px !important;
  margin-left: 2px !important;
  border-radius: 16px !important;
  font-size: 24px !important;
  line-height: 1 !important;
  display: grid !important;
  place-items: center !important;
}

/* Un poco más de aire entre el icono y el texto */
.nphb-level > div {
  padding-left: 1px;
}

/* Ajuste fino del texto para equilibrar visualmente las tarjetas */
.nphb-level-tag {
  margin-bottom: 5px !important;
}

.nphb-level h2 {
  margin-bottom: 5px !important;
}

/* Hover más elegante */
.nphb-level:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 20px 38px rgba(31, 65, 125, .16) !important;
}

/* CCST mantiene protagonismo sin quedar pegado al borde */
.nphb-level-ccst .nphb-level-icon {
  box-shadow: 0 0 0 7px color-mix(in srgb, var(--blue) 10%, transparent) !important;
}

/* En móvil se conserva el aire, pero con medidas compactas */
@media (max-width: 760px) {
  .nphb-level {
    padding: 14px 15px 14px 18px !important;
    gap: 14px !important;
  }

  .nphb-level-icon {
    flex-basis: 48px !important;
    width: 48px !important;
    height: 48px !important;
    margin-left: 0 !important;
    border-radius: 14px !important;
    font-size: 22px !important;
  }

  .nphb-level > div {
    padding-left: 0;
  }
}

/* =========================================================
   v2.1.2 — FONDO LIMPIO Y PROFESIONAL
   Sin círculos, nodos, etiquetas, líneas abstractas ni dibujos.
   El contenido y la ruta vuelven a ser los protagonistas.
   ========================================================= */

.nphb-hero {
  background:
    linear-gradient(135deg, #ffffff 0%, #fbfdff 48%, #f3f7ff 100%) !important;
}

/* Elimina todos los elementos decorativos heredados */
.nphb-glow,
.nphb-grid-bg,
.nphb-cert-bg,
.nphb-roadmap::before,
.nphb-roadmap::after,
.nphb-hero::before,
.nphb-hero::after {
  content: none !important;
  display: none !important;
}

/* Cualquier estilo guardado previamente usa ahora el acabado limpio */
.nphb-bg-blueprint,
.nphb-bg-minimal,
.nphb-bg-grid,
.nphb-bg-none {
  background:
    linear-gradient(135deg, #ffffff 0%, #fbfdff 48%, #f3f7ff 100%) !important;
}

/* El modo blanco suave es prácticamente blanco */
.nphb-bg-minimal {
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%) !important;
}

/* Cuadrícula realmente sutil y limitada a la zona derecha */
.nphb-bg-grid::before {
  content: "";
  display: block !important;
  position: absolute;
  z-index: 0;
  top: 7%;
  right: 0;
  bottom: 8%;
  left: 48%;
  pointer-events: none;
  opacity: .18;
  background-image:
    linear-gradient(rgba(36,87,245,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(36,87,245,.035) 1px, transparent 1px);
  background-size: 32px 32px;
  mask-image: linear-gradient(90deg, transparent 0%, #000 24%, #000 100%);
}

/* Sin fondo: blanco puro */
.nphb-bg-none {
  background: #ffffff !important;
}

/* Capas estables */
.nphb-inner,
.nphb-features {
  position: relative;
  z-index: 2;
}

.nphb-roadmap {
  position: relative;
  z-index: 1;
}

/* Solo se conserva la curva azul que conecta visualmente la ruta */
.nphb-route {
  z-index: 1 !important;
  border-top-width: 3px !important;
  opacity: .72;
  box-shadow: 0 -2px 10px color-mix(in srgb, var(--blue) 14%, transparent) !important;
}

.nphb-level {
  z-index: 3 !important;
}

/* En móvil: fondo totalmente limpio */
@media (max-width: 760px) {
  .nphb-hero,
  .nphb-bg-blueprint,
  .nphb-bg-minimal,
  .nphb-bg-grid,
  .nphb-bg-none {
    background: linear-gradient(180deg, #ffffff 0%, #f6f9ff 100%) !important;
  }

  .nphb-bg-grid::before {
    display: none !important;
  }
}



/* =========================================================
   v2.2.0 — FONDO DE IMAGEN PERSONALIZADO
   ========================================================= */

.nphb-bg-custom {
  position: relative;
  background: linear-gradient(135deg,#fff 0%,#fbfdff 48%,#f3f7ff 100%) !important;
}

.nphb-bg-custom::before {
  content: "";
  display: block !important;
  position: absolute;
  z-index: 0;
  inset: calc(var(--nphb-bg-blur,0px) * -2);
  pointer-events: none;
  opacity: var(--nphb-bg-opacity,.18);
  background-image: var(--nphb-bg-image,none);
  background-position: var(--nphb-bg-position,center center);
  background-size: var(--nphb-bg-size,cover);
  background-repeat: var(--nphb-bg-repeat,no-repeat);
  filter: blur(var(--nphb-bg-blur,0px));
  transform: scale(1.02);
}

.nphb-bg-custom::after {
  content: "";
  display: block !important;
  position: absolute;
  z-index: 1;
  inset: 0;
  pointer-events: none;
  background: rgba(246,250,255,var(--nphb-bg-overlay,.08));
}

.nphb-bg-custom .nphb-inner,
.nphb-bg-custom .nphb-features {
  z-index: 3;
}

@media(max-width:760px){
  .nphb-bg-custom::before{opacity:calc(var(--nphb-bg-opacity,.18) * .55)}
  .nphb-bg-custom::after{background:rgba(248,251,255,.42)}
}


/* =========================================================
   v3.0.0 — RUTA COMPLETA DE APRENDIZAJE
   ========================================================= */
.nphb-learning-path,.nphb-learning-path *{box-sizing:border-box}
.nphb-learning-path{padding:92px 24px;background:linear-gradient(180deg,#fff 0%,#f5f8fd 100%);color:#102247}
.nphb-path-shell{width:min(1380px,100%);margin:auto}
.nphb-path-header{max-width:760px;margin:0 auto 48px;text-align:center}
.nphb-path-eyebrow{display:inline-block;margin-bottom:13px;color:var(--blue,#2457f5);font-size:12px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.nphb-path-header h2{margin:0 0 17px!important;color:#102247;font-size:clamp(34px,4vw,56px)!important;line-height:1.06!important;letter-spacing:-.04em!important}
.nphb-path-header p{margin:0!important;color:#60708a;font-size:18px;line-height:1.65}
.nphb-path-grid{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
.nphb-path-grid::before{content:"";position:absolute;top:40px;left:8%;right:8%;height:2px;background:linear-gradient(90deg,#77a0ff,#2457f5,#805bea,#ffb629);opacity:.32}
.nphb-path-card{position:relative;z-index:1;display:flex;flex-direction:column;min-height:470px;padding:24px;background:rgba(255,255,255,.96);border:1px solid #dce6f3;border-radius:22px;box-shadow:0 16px 38px rgba(18,49,100,.08);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.nphb-path-card:hover{transform:translateY(-7px);box-shadow:0 24px 48px rgba(18,49,100,.14);border-color:#b9ccf2}
.nphb-path-number{position:absolute;top:17px;right:18px;color:#d7e3f7;font-size:30px;font-weight:900;line-height:1}
.nphb-path-icon{display:grid;place-items:center;width:70px;height:70px;margin-bottom:22px;background:#edf3ff;border:1px solid #dce7ff;border-radius:20px;font-size:31px;box-shadow:0 9px 22px rgba(36,87,245,.10)}
.nphb-path-card-ccst .nphb-path-icon{color:#fff;background:linear-gradient(135deg,#2e67ff,#1645d6)}
.nphb-path-card-ccie{border-color:#f1d38d}.nphb-path-card-ccie .nphb-path-icon{background:#fff5d8;border-color:#f6dc9d}
.nphb-path-content{display:flex;flex:1;flex-direction:column}
.nphb-path-meta{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:12px}
.nphb-path-meta span{padding:5px 8px;color:#2457f5;background:#eff4ff;border-radius:999px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.nphb-path-card h3{margin:0 0 10px!important;color:#102247;font-size:22px!important;line-height:1.18!important}
.nphb-path-card p{margin:0 0 17px!important;color:#64738a;font-size:14px;line-height:1.55}
.nphb-path-card ul{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 22px!important;padding:0!important;list-style:none!important}
.nphb-path-card li{margin:0!important;padding:6px 9px;color:#3e506e;background:#f6f8fc;border:1px solid #e5ebf4;border-radius:8px;font-size:11px;line-height:1.2}
.nphb-path-link{display:inline-flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding:12px 14px;color:#2457f5!important;background:#f5f8ff;border:1px solid #d8e4ff;border-radius:11px;text-decoration:none!important;font-size:13px;font-weight:800}
.nphb-path-link:hover{color:#fff!important;background:#2457f5;border-color:#2457f5}
@media(max-width:1180px){.nphb-path-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nphb-path-grid::before{display:none}.nphb-path-card{min-height:410px}}
@media(max-width:760px){.nphb-learning-path{padding:62px 15px}.nphb-path-header{margin-bottom:30px}.nphb-path-header h2{font-size:34px!important}.nphb-path-header p{font-size:16px}.nphb-path-grid{grid-template-columns:1fr;gap:14px}.nphb-path-card{min-height:0;padding:20px}.nphb-path-icon{width:58px;height:58px;margin-bottom:17px;border-radius:17px;font-size:26px}.nphb-path-number{font-size:25px}.nphb-path-card h3{font-size:21px!important}}


/* v3.0.1 — navegación interna del botón Ruta completa */
html {
  scroll-behavior: smooth;
}

#ruta-aprendizaje {
  scroll-margin-top: 110px;
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
}


/* =========================================================
   v3.1.0 — RUTA PREMIUM COMPACTA
   ========================================================= */
.nphb-learning-path{padding:88px 24px 96px;background:radial-gradient(circle at 50% 0%,rgba(36,87,245,.055),transparent 34%),linear-gradient(180deg,#fff 0%,#f7f9fd 100%)}
.nphb-path-shell{width:min(1460px,100%)}
.nphb-path-header{max-width:820px;margin-bottom:44px}
.nphb-path-header h2{max-width:760px;margin-left:auto!important;margin-right:auto!important;font-size:clamp(38px,3.5vw,58px)!important}
.nphb-path-header p{max-width:760px;margin-left:auto!important;margin-right:auto!important}
.nphb-path-grid{gap:14px;align-items:stretch}
.nphb-path-grid::before{top:35px;left:6.5%;right:6.5%;height:1px;opacity:.38;background:linear-gradient(90deg,#8eafff 0%,#2457f5 35%,#6d5ce7 70%,#e6b64a 100%)}
.nphb-path-card{min-height:356px;padding:20px 20px 18px;overflow:hidden;background:rgba(255,255,255,.98);border:1px solid #dfe7f2;border-radius:18px;box-shadow:0 12px 30px rgba(23,51,99,.065);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.nphb-path-card::after{content:"";position:absolute;left:20px;right:20px;bottom:0;height:2px;border-radius:999px 999px 0 0;background:linear-gradient(90deg,transparent,var(--blue,#2457f5),transparent);opacity:0;transition:opacity .22s ease}
.nphb-path-card:hover{transform:translateY(-5px);border-color:#bfcff0;box-shadow:0 18px 42px rgba(23,51,99,.12)}
.nphb-path-card:hover::after{opacity:.8}
.nphb-path-top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:18px}
.nphb-path-icon{width:56px;height:56px;margin:0;border-radius:16px;color:#2457f5;background:linear-gradient(145deg,#f3f7ff,#eaf1ff);border:1px solid #dbe6fb;box-shadow:none}
.nphb-path-icon svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.nphb-path-card-ccst .nphb-path-icon{color:#fff;background:linear-gradient(145deg,#3169ff,#1645d6);border-color:transparent;box-shadow:0 10px 22px rgba(36,87,245,.22)}
.nphb-path-card-ccie{border-color:#ead9aa;background:linear-gradient(180deg,#fffdf8 0%,#fff 38%)}
.nphb-path-card-ccie .nphb-path-icon{color:#b87900;background:linear-gradient(145deg,#fff8df,#ffefbd);border-color:#f0d58b}
.nphb-path-number{position:static;color:#dce5f3;font-size:27px;font-weight:900;letter-spacing:-.04em}
.nphb-path-card-ccie .nphb-path-number{color:#eadfbf}
.nphb-path-content{min-height:0}
.nphb-path-meta{gap:6px;margin-bottom:11px}
.nphb-path-meta span{padding:5px 8px;color:#2457f5;background:#f0f4ff;border:1px solid #e5ecff;font-size:9px;letter-spacing:.055em}
.nphb-path-card-ccie .nphb-path-meta span{color:#946000;background:#fff8e4;border-color:#f5e5b6}
.nphb-path-card h3{margin-bottom:8px!important;font-size:20px!important;letter-spacing:-.025em!important}
.nphb-path-card p{min-height:44px;margin-bottom:14px!important;color:#66758b;font-size:13px;line-height:1.52}
.nphb-path-card ul{gap:6px;margin-bottom:18px!important}
.nphb-path-card li{padding:5px 8px;color:#4a5d78;background:#f7f9fc;border-color:#e8edf5;border-radius:7px;font-size:10px}
.nphb-path-link{min-height:42px;margin-top:auto;padding:10px 12px;color:#214fcf!important;background:transparent;border:1px solid #dce6fb;border-radius:10px;font-size:12px}
.nphb-path-link svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s ease}
.nphb-path-link:hover{color:#fff!important;background:var(--blue,#2457f5);border-color:var(--blue,#2457f5)}
.nphb-path-link:hover svg{transform:translateX(3px)}
.nphb-path-card-ccie .nphb-path-link{color:#9b6900!important;border-color:#ead69a}
.nphb-path-card-ccie .nphb-path-link:hover{color:#fff!important;background:#b47a00;border-color:#b47a00}
@media(max-width:1260px){.nphb-path-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.nphb-path-grid::before{display:none}.nphb-path-card{min-height:342px}}
@media(max-width:900px){.nphb-path-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.nphb-learning-path{padding:60px 15px 68px}.nphb-path-header{margin-bottom:28px}.nphb-path-grid{grid-template-columns:1fr;gap:12px}.nphb-path-card{min-height:0;padding:18px}.nphb-path-top{margin-bottom:14px}.nphb-path-icon{width:52px;height:52px;border-radius:14px}.nphb-path-icon svg{width:25px;height:25px}.nphb-path-card p{min-height:0}}


/* =========================================================
   v4.0.0 — RUTA VISUAL NEXT PING
   ========================================================= */

.nphb-path-card{
  min-height:430px;
  padding:24px 22px 20px;
  border-radius:20px;
}

.nphb-path-accent{
  position:absolute;
  inset:0 0 auto;
  height:5px;
  background:linear-gradient(90deg,#2457f5 0%,#4d7cff 55%,#7aa0ff 100%);
}

.nphb-path-card-ccie .nphb-path-accent{
  background:linear-gradient(90deg,#c38900 0%,#e1ad2f 60%,#f5cf6a 100%);
}

.nphb-path-top{margin-top:5px;margin-bottom:16px}

.nphb-path-icon{
  width:58px;
  height:58px;
  border-radius:17px;
}

.nphb-path-icon svg{width:29px;height:29px}

.nphb-path-card h3{
  font-size:21px!important;
  margin-bottom:7px!important;
}

.nphb-path-card p{
  min-height:42px;
  margin-bottom:16px!important;
}

.nphb-path-difficulty{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:2px 0 17px;
  padding-top:14px;
  border-top:1px solid #edf1f7;
  color:#758399;
  font-size:10px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.nphb-dots{
  display:flex;
  gap:5px;
}

.nphb-dots i{
  width:8px;
  height:8px;
  border-radius:50%;
  background:#dfe6f0;
  box-shadow:inset 0 0 0 1px rgba(31,55,92,.05);
}

.nphb-dots i.is-active{
  background:linear-gradient(135deg,#2457f5,#6f8fff);
  box-shadow:0 2px 6px rgba(36,87,245,.22);
}

.nphb-path-card-ccie .nphb-dots i.is-active{
  background:linear-gradient(135deg,#b77900,#e9b83a);
  box-shadow:0 2px 6px rgba(183,121,0,.2);
}

.nphb-skill-list{
  display:grid!important;
  grid-template-columns:1fr;
  gap:9px!important;
  margin:0 0 20px!important;
  padding:0!important;
}

.nphb-skill-list li{
  display:flex!important;
  align-items:center;
  gap:10px;
  padding:0!important;
  color:#465873;
  background:transparent!important;
  border:0!important;
  font-size:11px;
  line-height:1.3;
}

.nphb-skill-icon{
  display:grid;
  place-items:center;
  flex:0 0 24px;
  width:24px;
  height:24px;
  color:#2457f5;
  background:#eef3ff;
  border:1px solid #e0e9fb;
  border-radius:8px;
}

.nphb-skill-icon svg{
  width:14px;
  height:14px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.nphb-path-card-ccie .nphb-skill-icon{
  color:#a36a00;
  background:#fff7df;
  border-color:#f1dfab;
}

.nphb-path-link{
  min-height:auto;
  padding:3px 0;
  border:0!important;
  background:transparent!important;
  border-radius:0;
  font-size:12px;
  font-weight:800;
}

.nphb-path-link:hover{
  color:var(--blue,#2457f5)!important;
  background:transparent!important;
}

.nphb-path-card-ccie .nphb-path-link:hover{
  color:#a36a00!important;
  background:transparent!important;
}

.nphb-path-link svg{width:16px;height:16px}

@media(max-width:1260px){
  .nphb-path-card{min-height:410px}
}

@media(max-width:620px){
  .nphb-path-card{min-height:0}
  .nphb-skill-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:430px){
  .nphb-skill-list{grid-template-columns:1fr}
}


/* =========================================================
   v4.1.0 — MÁS AIRE EN ESCRITORIO Y MÓVIL
   ========================================================= */

/* Escritorio grande: evita que la ruta quede pegada a los laterales */
.nphb-learning-path{
  padding-left:clamp(28px,4.5vw,86px);
  padding-right:clamp(28px,4.5vw,86px);
}

.nphb-path-shell{
  width:min(1540px,100%);
  margin-inline:auto;
}

.nphb-path-grid{
  gap:18px;
}

/* Da un poco más de aire dentro de las tarjetas */
.nphb-path-card{
  padding-left:24px;
  padding-right:24px;
}

.nphb-path-number{
  right:18px;
}

/* Pantallas de portátil */
@media(max-width:1440px){
  .nphb-learning-path{
    padding-left:34px;
    padding-right:34px;
  }

  .nphb-path-grid{
    gap:16px;
  }

  .nphb-path-card{
    padding-left:20px;
    padding-right:20px;
  }
}

/* Tablet */
@media(max-width:900px){
  .nphb-learning-path{
    padding-left:26px;
    padding-right:26px;
  }
}

/* Móvil */
@media(max-width:620px){
  .nphb-learning-path{
    padding-left:22px!important;
    padding-right:22px!important;
  }

  .nphb-path-shell{
    width:100%;
  }

  .nphb-path-grid{
    gap:18px;
  }

  .nphb-path-card{
    width:100%;
    padding:24px 22px 22px;
    border-radius:22px;
  }

  .nphb-path-accent{
    left:0;
    right:0;
  }

  .nphb-path-top{
    padding-right:8px;
  }

  .nphb-path-number{
    right:18px;
    top:14px;
  }

  .nphb-path-link{
    padding-top:8px;
    padding-bottom:2px;
  }
}

/* Móviles estrechos */
@media(max-width:390px){
  .nphb-learning-path{
    padding-left:18px!important;
    padding-right:18px!important;
  }

  .nphb-path-card{
    padding-left:20px;
    padding-right:20px;
  }
}


/* =========================================================
   v5.0.0 — ROADMAP VISUAL, MÁRGENES REALES Y COLORES POR ETAPA
   ========================================================= */

/* Fuerza un contenedor más estrecho y centrado en escritorio */
body .nphb-learning-path{
  padding-left:clamp(48px,6vw,120px)!important;
  padding-right:clamp(48px,6vw,120px)!important;
}

body .nphb-learning-path .nphb-path-shell{
  width:100%!important;
  max-width:1420px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

body .nphb-learning-path .nphb-path-grid{
  gap:20px!important;
}

/* Colores por etapa, inspirados en un mapa de ruta */
body .nphb-path-card-ccst{
  --stage:#18a7a5;
  --stage-soft:#e9fbfa;
  --stage-border:#bce9e7;
}

body .nphb-path-card-ccna{
  --stage:#1769e0;
  --stage-soft:#edf4ff;
  --stage-border:#cddfff;
}

body .nphb-path-card-encor{
  --stage:#6f3db7;
  --stage-soft:#f5effc;
  --stage-border:#dfcff3;
}

body .nphb-path-card-enarsi{
  --stage:#ef8b17;
  --stage-soft:#fff5e8;
  --stage-border:#f4d5ad;
}

body .nphb-path-card-ccie{
  --stage:#c88a00;
  --stage-soft:#fff7df;
  --stage-border:#ead393;
}

body .nphb-learning-path .nphb-path-card{
  min-height:410px!important;
  padding:26px 24px 22px!important;
  border:1px solid var(--stage-border)!important;
  box-shadow:0 16px 38px rgba(26,47,84,.08)!important;
  overflow:visible!important;
}

body .nphb-learning-path .nphb-path-card::before{
  content:"";
  position:absolute;
  z-index:0;
  inset:0;
  border-radius:inherit;
  background:
    linear-gradient(180deg,var(--stage-soft) 0%,rgba(255,255,255,.97) 28%,#fff 100%);
  pointer-events:none;
}

body .nphb-learning-path .nphb-path-card > *{
  position:relative;
  z-index:2;
}

body .nphb-learning-path .nphb-path-accent{
  height:6px!important;
  background:linear-gradient(90deg,var(--stage),color-mix(in srgb,var(--stage) 62%,white))!important;
  border-radius:20px 20px 0 0;
}

body .nphb-learning-path .nphb-path-icon{
  color:var(--stage)!important;
  background:var(--stage-soft)!important;
  border-color:var(--stage-border)!important;
  box-shadow:none!important;
}

body .nphb-learning-path .nphb-path-card-ccst .nphb-path-icon{
  color:#fff!important;
  background:linear-gradient(145deg,#25b9b6,#128e8b)!important;
  border-color:transparent!important;
}

body .nphb-learning-path .nphb-path-meta span{
  color:var(--stage)!important;
  background:var(--stage-soft)!important;
  border-color:var(--stage-border)!important;
}

body .nphb-learning-path .nphb-skill-icon{
  color:var(--stage)!important;
  background:var(--stage-soft)!important;
  border-color:var(--stage-border)!important;
}

body .nphb-learning-path .nphb-dots i.is-active{
  background:var(--stage)!important;
  box-shadow:0 2px 7px color-mix(in srgb,var(--stage) 30%,transparent)!important;
}

body .nphb-learning-path .nphb-path-link{
  color:var(--stage)!important;
}

/* Número convertido en hito circular */
body .nphb-learning-path .nphb-path-number{
  display:grid!important;
  place-items:center;
  width:38px;
  height:38px;
  top:18px!important;
  right:18px!important;
  color:#fff!important;
  background:var(--stage)!important;
  border:4px solid #fff;
  border-radius:50%;
  font-size:14px!important;
  letter-spacing:0!important;
  box-shadow:0 8px 18px color-mix(in srgb,var(--stage) 22%,transparent);
}

/* Línea horizontal de ruta en escritorio */
@media(min-width:1261px){
  body .nphb-learning-path .nphb-path-grid::before{
    top:44px!important;
    left:4%!important;
    right:4%!important;
    height:4px!important;
    opacity:.3!important;
    background:linear-gradient(90deg,#18a7a5 0 20%,#1769e0 20% 40%,#6f3db7 40% 60%,#ef8b17 60% 80%,#c88a00 80% 100%)!important;
    border-radius:999px;
  }
}

/* Móvil: margen verdadero y ruta vertical */
@media(max-width:620px){
  body .nphb-learning-path{
    padding-left:24px!important;
    padding-right:24px!important;
  }

  body .nphb-learning-path .nphb-path-shell{
    max-width:none!important;
  }

  body .nphb-learning-path .nphb-path-grid{
    position:relative;
    gap:24px!important;
  }

  body .nphb-learning-path .nphb-path-grid::before{
    display:block!important;
    content:"";
    position:absolute;
    top:38px;
    bottom:38px;
    left:20px;
    width:3px;
    height:auto;
    background:linear-gradient(180deg,#18a7a5,#1769e0,#6f3db7,#ef8b17,#c88a00)!important;
    opacity:.2!important;
    border-radius:999px;
  }

  body .nphb-learning-path .nphb-path-card{
    width:100%!important;
    min-height:0!important;
    margin:0!important;
    padding:24px 22px 22px 26px!important;
    border-radius:22px!important;
  }

  body .nphb-learning-path .nphb-path-top{
    margin-bottom:18px!important;
  }

  body .nphb-learning-path .nphb-path-icon{
    width:60px!important;
    height:60px!important;
    margin-left:0!important;
  }

  body .nphb-learning-path .nphb-path-number{
    width:36px;
    height:36px;
    top:16px!important;
    right:16px!important;
  }

  body .nphb-learning-path .nphb-path-card h3{
    font-size:25px!important;
    line-height:1.15!important;
  }

  body .nphb-learning-path .nphb-path-card p{
    min-height:0!important;
    margin-bottom:16px!important;
    font-size:15px!important;
  }

  body .nphb-learning-path .nphb-path-difficulty{
    margin-top:10px!important;
  }

  body .nphb-learning-path .nphb-path-link{
    padding-top:12px!important;
  }
}

@media(max-width:390px){
  body .nphb-learning-path{
    padding-left:20px!important;
    padding-right:20px!important;
  }
}


/* =========================================================
   v6.0.0 — AJUSTE PREMIUM DE PROPORCIONES Y RITMO VISUAL
   ========================================================= */

/* Título más contenido y elegante */
body .nphb-learning-path .nphb-path-header{
  max-width:760px!important;
  margin-bottom:34px!important;
}

body .nphb-learning-path .nphb-path-header h2{
  max-width:700px!important;
  font-size:clamp(34px,3vw,50px)!important;
  line-height:1.06!important;
  letter-spacing:-.035em!important;
  margin-bottom:16px!important;
}

body .nphb-learning-path .nphb-path-header p{
  max-width:720px!important;
  font-size:clamp(15px,1.15vw,18px)!important;
  line-height:1.6!important;
}

/* Acerca ligeramente las tarjetas al encabezado */
body .nphb-learning-path{
  padding-top:74px!important;
  padding-bottom:90px!important;
}

/* Ruta con más ritmo visual, sin perder alineación profesional */
@media(min-width:1261px){
  body .nphb-learning-path .nphb-path-card:nth-child(2),
  body .nphb-learning-path .nphb-path-card:nth-child(4){
    transform:translateY(14px);
  }

  body .nphb-learning-path .nphb-path-card:nth-child(2):hover,
  body .nphb-learning-path .nphb-path-card:nth-child(4):hover{
    transform:translateY(7px);
  }

  body .nphb-learning-path .nphb-path-card:nth-child(1):hover,
  body .nphb-learning-path .nphb-path-card:nth-child(3):hover,
  body .nphb-learning-path .nphb-path-card:nth-child(5):hover{
    transform:translateY(-7px);
  }

  body .nphb-learning-path .nphb-path-grid{
    padding-bottom:18px;
  }
}

/* Hover más fino y con brillo sutil */
body .nphb-learning-path .nphb-path-card{
  transition:
    transform .24s ease,
    box-shadow .24s ease,
    border-color .24s ease!important;
}

body .nphb-learning-path .nphb-path-card:hover{
  box-shadow:
    0 22px 50px rgba(22,43,82,.14),
    0 0 0 1px color-mix(in srgb,var(--stage) 18%,transparent)!important;
}

body .nphb-learning-path .nphb-path-card::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:
    linear-gradient(
      120deg,
      transparent 0%,
      transparent 38%,
      rgba(255,255,255,.5) 50%,
      transparent 62%,
      transparent 100%
    );
  transform:translateX(-130%);
  transition:transform .55s ease;
  pointer-events:none;
  z-index:3;
}

body .nphb-learning-path .nphb-path-card:hover::after{
  transform:translateX(130%);
}

/* Línea de conexión algo más delicada */
@media(min-width:1261px){
  body .nphb-learning-path .nphb-path-grid::before{
    height:3px!important;
    opacity:.24!important;
    box-shadow:0 0 10px rgba(36,87,245,.08);
  }
}

/* Ajustes responsive: sin escalonado en tablet/móvil */
@media(max-width:1260px){
  body .nphb-learning-path .nphb-path-header{
    margin-bottom:30px!important;
  }

  body .nphb-learning-path .nphb-path-card{
    transform:none!important;
  }
}

@media(max-width:620px){
  body .nphb-learning-path{
    padding-top:56px!important;
    padding-bottom:68px!important;
  }

  body .nphb-learning-path .nphb-path-header{
    margin-bottom:26px!important;
  }

  body .nphb-learning-path .nphb-path-header h2{
    font-size:clamp(32px,10vw,42px)!important;
    line-height:1.08!important;
    margin-bottom:14px!important;
  }

  body .nphb-learning-path .nphb-path-header p{
    font-size:16px!important;
    line-height:1.55!important;
  }

  body .nphb-learning-path .nphb-path-card:hover{
    transform:none!important;
  }

  body .nphb-learning-path .nphb-path-card::after{
    display:none!important;
  }
}


/* =========================================================
   v6.1.0 — ESTADO EDITABLE DE CADA FORMACIÓN
   ========================================================= */

body .nphb-learning-path .nphb-course-status{
  display:inline-flex;
  align-items:center;
  gap:7px;
  width:max-content;
  margin:0 0 12px;
  padding:6px 10px;
  border:1px solid;
  border-radius:999px;
  font-size:9px;
  font-weight:900;
  line-height:1;
  letter-spacing:.07em;
  text-transform:uppercase;
}

body .nphb-learning-path .nphb-course-status i{
  width:7px;
  height:7px;
  border-radius:50%;
  background:currentColor;
  box-shadow:0 0 0 3px rgba(255,255,255,.65);
}

body .nphb-learning-path .nphb-course-status-available{
  color:#07865e;
  background:#eafaf4;
  border-color:#bcebd9;
}

body .nphb-learning-path .nphb-course-status-production{
  color:#1769e0;
  background:#edf4ff;
  border-color:#cddfff;
}

body .nphb-learning-path .nphb-course-status-soon{
  color:#6d7482;
  background:#f3f5f8;
  border-color:#dfe4eb;
}

body .nphb-learning-path .nphb-course-status-custom{
  color:var(--stage);
  background:var(--stage-soft);
  border-color:var(--stage-border);
}

body .nphb-learning-path .nphb-path-link-disabled{
  opacity:.58;
  cursor:default;
  pointer-events:none;
}

@media(max-width:620px){
  body .nphb-learning-path .nphb-course-status{
    margin-bottom:14px;
    padding:7px 11px;
    font-size:10px;
  }
}


/* =========================================================
   v7.0.0 — PREMIUM POLISH FINAL
   Últimos retoques de la ruta de aprendizaje
   ========================================================= */

/* Un poco más de aire interior y mejor legibilidad */
body .nphb-learning-path .nphb-path-card{
  padding-top:28px!important;
  padding-bottom:27px!important;
}

body .nphb-learning-path .nphb-path-card h3{
  margin-top:2px!important;
  margin-bottom:10px!important;
}

body .nphb-learning-path .nphb-path-card > .nphb-path-content > p{
  color:#60718d!important;
  line-height:1.58!important;
}

body .nphb-learning-path .nphb-skill-list{
  row-gap:11px!important;
}

body .nphb-learning-path .nphb-skill-list li{
  color:#5d6e89!important;
  line-height:1.42!important;
}

/* Indicador de nivel más refinado */
body .nphb-learning-path .nphb-dots{
  gap:7px!important;
}

body .nphb-learning-path .nphb-dots i{
  width:8px!important;
  height:8px!important;
  opacity:.48;
  transition:
    transform .22s ease,
    opacity .22s ease,
    box-shadow .22s ease!important;
}

body .nphb-learning-path .nphb-dots i.is-active{
  width:9px!important;
  height:9px!important;
  opacity:1;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--stage) 10%,transparent);
}

body .nphb-learning-path .nphb-path-card:hover .nphb-dots i.is-active{
  transform:translateY(-1px) scale(1.12);
  box-shadow:
    0 0 0 4px color-mix(in srgb,var(--stage) 12%,transparent),
    0 3px 8px color-mix(in srgb,var(--stage) 25%,transparent);
}

/* Microanimaciones premium */
body .nphb-learning-path .nphb-path-icon{
  transform-origin:50% 58%;
  transition:
    transform .24s cubic-bezier(.22,.8,.3,1),
    box-shadow .24s ease!important;
}

body .nphb-learning-path .nphb-path-number{
  transition:
    transform .26s cubic-bezier(.18,.89,.32,1.28),
    box-shadow .24s ease!important;
}

body .nphb-learning-path .nphb-path-accent{
  overflow:hidden;
}

body .nphb-learning-path .nphb-path-accent::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(
    90deg,
    transparent 0%,
    rgba(255,255,255,0) 25%,
    rgba(255,255,255,.8) 48%,
    rgba(255,255,255,0) 72%,
    transparent 100%
  );
  transform:translateX(-140%);
  transition:transform .55s ease;
}

body .nphb-learning-path .nphb-path-card:hover .nphb-path-icon{
  transform:translateY(-2px) rotate(-4deg) scale(1.035);
  box-shadow:0 13px 28px color-mix(in srgb,var(--stage) 20%,transparent)!important;
}

body .nphb-learning-path .nphb-path-card:hover .nphb-path-number{
  transform:translateY(-3px) scale(1.07);
  box-shadow:
    0 10px 22px color-mix(in srgb,var(--stage) 28%,transparent),
    0 0 0 5px rgba(255,255,255,.75)!important;
}

body .nphb-learning-path .nphb-path-card:hover .nphb-path-accent::after{
  transform:translateX(140%);
}

/* Conectores con nodos discretos en escritorio */
@media(min-width:1261px){
  body .nphb-learning-path .nphb-path-grid{
    isolation:isolate;
  }

  body .nphb-learning-path .nphb-path-grid::before{
    top:48px!important;
    left:7.5%!important;
    right:7.5%!important;
    width:auto!important;
    height:2px!important;
    border-radius:999px;
    opacity:1!important;
    z-index:0!important;
    background:
      linear-gradient(
        90deg,
        rgba(26,171,164,.26) 0%,
        rgba(43,112,231,.24) 25%,
        rgba(126,65,190,.24) 50%,
        rgba(239,135,22,.24) 75%,
        rgba(201,143,0,.26) 100%
      )!important;
    box-shadow:0 0 12px rgba(62,105,180,.08);
  }

  body .nphb-learning-path .nphb-path-card{
    z-index:2;
  }

  body .nphb-learning-path .nphb-path-card::before{
    content:"";
    position:absolute;
    top:43px;
    left:50%;
    width:11px;
    height:11px;
    border:3px solid #fff;
    border-radius:50%;
    background:var(--stage);
    box-shadow:
      0 0 0 2px color-mix(in srgb,var(--stage) 18%,transparent),
      0 5px 14px color-mix(in srgb,var(--stage) 20%,transparent);
    transform:translate(-50%,-50%) scale(.82);
    opacity:.72;
    z-index:-1;
    pointer-events:none;
    transition:
      transform .24s cubic-bezier(.18,.89,.32,1.28),
      opacity .24s ease,
      box-shadow .24s ease;
  }

  body .nphb-learning-path .nphb-path-card:hover::before{
    transform:translate(-50%,-50%) scale(1.12);
    opacity:1;
    box-shadow:
      0 0 0 5px color-mix(in srgb,var(--stage) 12%,transparent),
      0 0 18px color-mix(in srgb,var(--stage) 38%,transparent);
  }

  body .nphb-learning-path .nphb-path-card{
    transition:
      transform .24s cubic-bezier(.22,.8,.3,1),
      box-shadow .24s ease,
      border-color .24s ease!important;
  }

  body .nphb-learning-path .nphb-path-card:nth-child(1):hover,
  body .nphb-learning-path .nphb-path-card:nth-child(3):hover,
  body .nphb-learning-path .nphb-path-card:nth-child(5):hover{
    transform:translateY(-8px)!important;
  }

  body .nphb-learning-path .nphb-path-card:nth-child(2):hover,
  body .nphb-learning-path .nphb-path-card:nth-child(4):hover{
    transform:translateY(5px)!important;
  }
}

/* Botones algo más vivos pero discretos */
body .nphb-learning-path .nphb-path-link:not(.nphb-path-link-disabled) svg{
  transition:transform .22s ease!important;
}

body .nphb-learning-path .nphb-path-link:not(.nphb-path-link-disabled):hover svg{
  transform:translateX(4px);
}

body .nphb-learning-path .nphb-path-link-disabled{
  filter:saturate(.72);
}

/* En tablet y móvil, efectos más tranquilos */
@media(max-width:1260px){
  body .nphb-learning-path .nphb-path-card{
    padding-top:27px!important;
    padding-bottom:26px!important;
  }

  body .nphb-learning-path .nphb-path-card::before{
    display:none!important;
  }

  body .nphb-learning-path .nphb-path-card:hover .nphb-path-icon{
    transform:translateY(-1px) scale(1.02);
  }

  body .nphb-learning-path .nphb-path-card:hover .nphb-path-number{
    transform:translateY(-2px) scale(1.04);
  }
}

@media(max-width:620px){
  body .nphb-learning-path .nphb-path-card{
    padding-top:25px!important;
    padding-bottom:24px!important;
  }

  body .nphb-learning-path .nphb-path-card > .nphb-path-content > p,
  body .nphb-learning-path .nphb-skill-list li{
    color:#596b87!important;
  }

  body .nphb-learning-path .nphb-path-accent::after{
    display:none!important;
  }

  body .nphb-learning-path .nphb-path-card:hover .nphb-path-icon,
  body .nphb-learning-path .nphb-path-card:hover .nphb-path-number{
    transform:none!important;
  }
}

/* Respeta usuarios que prefieren menos movimiento */
@media(prefers-reduced-motion:reduce){
  body .nphb-learning-path .nphb-path-card,
  body .nphb-learning-path .nphb-path-icon,
  body .nphb-learning-path .nphb-path-number,
  body .nphb-learning-path .nphb-path-accent::after,
  body .nphb-learning-path .nphb-dots i,
  body .nphb-learning-path .nphb-path-link svg{
    transition:none!important;
    animation:none!important;
  }

  body .nphb-learning-path .nphb-path-card:hover,
  body .nphb-learning-path .nphb-path-card:hover .nphb-path-icon,
  body .nphb-learning-path .nphb-path-card:hover .nphb-path-number{
    transform:none!important;
  }
}


/* =========================================================
   v8.0.0 — RUTA INTERACTIVA + IDENTIDAD NEXTPING
   ========================================================= */

/* Firma de marca integrada en el Hero */
.nphb-brand-signature{
  display:inline-flex;
  align-items:center;
  gap:11px;
  margin-top:20px;
  padding:8px 12px 8px 8px;
  border:1px solid rgba(36,87,245,.13);
  border-radius:16px;
  background:rgba(255,255,255,.72);
  box-shadow:0 9px 25px rgba(26,55,115,.07);
  backdrop-filter:blur(10px);
}

.nphb-brand-mark{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  overflow:hidden;
  border-radius:11px;
  color:#fff;
  background:linear-gradient(145deg,var(--nphb-accent),var(--nphb-accent-dark));
  box-shadow:0 7px 16px rgba(36,87,245,.2);
  font-size:12px;
  font-weight:900;
  letter-spacing:-.04em;
}

.nphb-brand-mark img{
  width:100%;
  height:100%;
  object-fit:contain;
  padding:4px;
}

.nphb-brand-identity{
  display:flex;
  flex-direction:column;
  gap:1px;
  text-align:left;
}

.nphb-brand-identity strong{
  color:#10244d;
  font-size:13px;
  line-height:1.15;
  font-weight:850;
}

.nphb-brand-identity small{
  color:#71809a;
  font-size:10px;
  line-height:1.2;
}

/* Todo el nivel del Hero responde al clic */
.nphb-roadmap .nphb-level-action{
  text-decoration:none!important;
  color:inherit!important;
  cursor:pointer;
  outline:none;
}

.nphb-roadmap .nphb-level-action:focus-visible{
  box-shadow:
    0 0 0 4px rgba(36,87,245,.16),
    0 16px 34px rgba(36,61,116,.14)!important;
}

.nphb-level-arrow{
  position:absolute;
  right:18px;
  top:50%;
  display:grid;
  place-items:center;
  width:29px;
  height:29px;
  border-radius:50%;
  color:var(--nphb-accent);
  background:rgba(36,87,245,.07);
  opacity:0;
  transform:translate(8px,-50%);
  transition:opacity .2s ease,transform .22s ease,background .2s ease;
}

.nphb-level-arrow svg{
  width:15px;
  height:15px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.nphb-roadmap .nphb-level-action:hover .nphb-level-arrow,
.nphb-roadmap .nphb-level-action:focus-visible .nphb-level-arrow{
  opacity:1;
  transform:translate(0,-50%);
}

.nphb-roadmap .nphb-level-action:hover .nphb-level-arrow{
  background:rgba(36,87,245,.12);
}

.nphb-roadmap .nphb-level-action > div{
  padding-right:36px;
}

/* El destino del scroll recibe un pequeño énfasis */
.nphb-path-card:target{
  animation:nphb-target-pulse 1.05s ease both;
}

@keyframes nphb-target-pulse{
  0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--stage) 0%,transparent)}
  35%{box-shadow:0 0 0 7px color-mix(in srgb,var(--stage) 16%,transparent),0 22px 50px rgba(22,43,82,.15)}
  100%{box-shadow:0 22px 50px rgba(22,43,82,.12)}
}

@media(max-width:620px){
  .nphb-brand-signature{
    margin-top:16px;
  }

  .nphb-level-arrow{
    opacity:.62;
    transform:translate(0,-50%);
    right:12px;
  }

  .nphb-roadmap .nphb-level-action > div{
    padding-right:30px;
  }
}

@media(prefers-reduced-motion:reduce){
  .nphb-path-card:target{animation:none}
}


/* =========================================================
   v8.1.0 — RETOQUE DE COMPOSICIÓN DEL HERO
   Recupera la ruta horizontal premium y equilibra la marca.
   ========================================================= */

/* La zona derecha vuelve a funcionar como una ruta amplia */
@media (min-width: 761px) {
  .nphb-roadmap{
    min-height:610px!important;
    overflow:visible!important;
  }

  .nphb-roadmap .nphb-level{
    width:clamp(520px,42vw,760px)!important;
    min-height:74px!important;
    padding:10px 54px 10px 14px!important;
    gap:14px!important;
    align-items:center!important;
    border-radius:18px!important;
  }

  .nphb-roadmap .nphb-level-icon{
    flex:0 0 50px!important;
    width:50px!important;
    height:50px!important;
    margin:0!important;
    border-radius:14px!important;
    font-size:22px!important;
  }

  .nphb-roadmap .nphb-level > div{
    display:block!important;
    min-width:0;
    min-height:0!important;
    padding:0!important;
  }

  .nphb-roadmap .nphb-level-tag{
    margin:0 0 3px!important;
    font-size:9px!important;
    line-height:1.1!important;
    white-space:nowrap;
  }

  .nphb-roadmap .nphb-level h2{
    margin:0 0 3px!important;
    font-size:18px!important;
    line-height:1.08!important;
    white-space:nowrap;
  }

  .nphb-roadmap .nphb-level p{
    margin:0!important;
    max-width:none!important;
    overflow:hidden;
    color:#7a889f!important;
    font-size:11.5px!important;
    line-height:1.25!important;
    text-overflow:ellipsis;
    white-space:nowrap;
  }

  /* Escalera visual limpia, sin tarjetas estrechas ni montadas */
  .nphb-roadmap .nphb-level-ccst{
    left:0!important;
    right:auto!important;
    bottom:5%!important;
    top:auto!important;
  }

  .nphb-roadmap .nphb-level-ccna{
    left:15%!important;
    right:auto!important;
    bottom:27%!important;
    top:auto!important;
  }

  .nphb-roadmap .nphb-level-encor{
    left:31%!important;
    right:auto!important;
    bottom:49%!important;
    top:auto!important;
  }

  .nphb-roadmap .nphb-level-enarsi{
    left:46%!important;
    right:auto!important;
    top:20%!important;
    bottom:auto!important;
  }

  .nphb-roadmap .nphb-level-ccie{
    left:61%!important;
    right:auto!important;
    top:0!important;
    bottom:auto!important;
  }

  .nphb-level-arrow{
    right:15px!important;
    opacity:.38;
    transform:translate(0,-50%)!important;
  }

  .nphb-roadmap .nphb-level-action:hover .nphb-level-arrow,
  .nphb-roadmap .nphb-level-action:focus-visible .nphb-level-arrow{
    opacity:1;
    transform:translate(2px,-50%)!important;
  }
}

/* Ajuste intermedio para portátiles y tablets horizontales */
@media (min-width:761px) and (max-width:1180px){
  .nphb-roadmap{
    width:min(860px,100%)!important;
    min-height:590px!important;
  }

  .nphb-roadmap .nphb-level{
    width:clamp(470px,68vw,650px)!important;
  }

  .nphb-roadmap .nphb-level-ccna{left:8%!important}
  .nphb-roadmap .nphb-level-encor{left:16%!important}
  .nphb-roadmap .nphb-level-enarsi{left:24%!important}
  .nphb-roadmap .nphb-level-ccie{left:32%!important}
}

/* Marca más compacta y mejor integrada */
.nphb-brand-signature{
  margin-top:18px!important;
  padding:7px 12px 7px 7px!important;
  border-radius:14px!important;
  box-shadow:0 8px 22px rgba(26,55,115,.06)!important;
}

.nphb-brand-mark{
  position:relative;
  flex:0 0 40px;
  width:40px!important;
  height:40px!important;
  border-radius:12px!important;
  background:linear-gradient(145deg,#2c63ff,#1645d6)!important;
  box-shadow:0 7px 16px rgba(36,87,245,.18)!important;
}

.nphb-brand-mark img{
  position:relative;
  z-index:2;
  width:100%!important;
  height:100%!important;
  padding:5px!important;
  object-fit:contain!important;
  background:transparent!important;
}

/* Si el archivo del logo tiene zonas claras, el fondo azul evita el “cuadro vacío”. */
.nphb-brand-mark::after{
  content:"NP";
  position:absolute;
  z-index:1;
  inset:0;
  display:grid;
  place-items:center;
  color:#fff;
  font-size:12px;
  font-weight:900;
  letter-spacing:-.04em;
}

.nphb-brand-mark > span{
  position:relative;
  z-index:3;
}

.nphb-brand-identity strong{
  font-size:12.5px!important;
}

.nphb-brand-identity small{
  font-size:9.5px!important;
}

/* La firma y la prueba social quedan visualmente relacionadas */
.nphb-brand-signature + .nphb-trust{
  margin-top:10px!important;
}

/* Móvil: tarjetas en lista, completamente legibles */
@media(max-width:760px){
  .nphb-roadmap .nphb-level{
    width:100%!important;
    min-height:0!important;
    padding:14px 48px 14px 16px!important;
  }

  .nphb-roadmap .nphb-level h2,
  .nphb-roadmap .nphb-level p{
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
  }

  .nphb-brand-signature{
    margin-left:auto;
    margin-right:auto;
  }
}


/* =========================================================
   v8.2.0 — LOGO LIMPIO + RUTA COMPLETA COHERENTE
   ========================================================= */

.nphb-brand-mark{
  overflow:hidden!important;
  background:#fff!important;
  border:1px solid rgba(36,87,245,.14)!important;
  box-shadow:0 7px 16px rgba(26,55,115,.10)!important;
}

.nphb-brand-mark::after{
  display:none!important;
}

.nphb-brand-mark img{
  width:100%!important;
  height:100%!important;
  padding:2px!important;
  object-fit:contain!important;
  background:#fff!important;
}

.nphb-brand-mark > span{
  display:grid;
  place-items:center;
  width:100%;
  height:100%;
  color:#fff;
  background:linear-gradient(145deg,#2c63ff,#1645d6);
}

.nphb-brand-signature{
  padding:7px 13px 7px 7px!important;
}

.nphb-brand-mark{
  flex-basis:44px!important;
  width:44px!important;
  height:44px!important;
}

/* Las cinco etapas usan el mismo formato horizontal */
@media(min-width:1181px){
  .nphb-roadmap{
    min-height:640px!important;
  }

  .nphb-roadmap .nphb-level{
    width:clamp(570px,39vw,720px)!important;
    min-height:78px!important;
  }

  .nphb-roadmap .nphb-level-ccst{
    left:0!important;
    bottom:3%!important;
    top:auto!important;
  }

  .nphb-roadmap .nphb-level-ccna{
    left:12%!important;
    bottom:24%!important;
    top:auto!important;
  }

  .nphb-roadmap .nphb-level-encor{
    left:24%!important;
    bottom:45%!important;
    top:auto!important;
  }

  .nphb-roadmap .nphb-level-enarsi{
    left:36%!important;
    bottom:66%!important;
    top:auto!important;
  }

  .nphb-roadmap .nphb-level-ccie{
    left:48%!important;
    bottom:87%!important;
    top:auto!important;
  }
}

@media(min-width:761px) and (max-width:1180px){
  .nphb-roadmap{
    min-height:610px!important;
  }

  .nphb-roadmap .nphb-level{
    width:clamp(500px,66vw,650px)!important;
  }

  .nphb-roadmap .nphb-level-ccst{
    left:0!important;
    bottom:3%!important;
    top:auto!important;
  }

  .nphb-roadmap .nphb-level-ccna{
    left:7%!important;
    bottom:24%!important;
    top:auto!important;
  }

  .nphb-roadmap .nphb-level-encor{
    left:14%!important;
    bottom:45%!important;
    top:auto!important;
  }

  .nphb-roadmap .nphb-level-enarsi{
    left:21%!important;
    bottom:66%!important;
    top:auto!important;
  }

  .nphb-roadmap .nphb-level-ccie{
    left:28%!important;
    bottom:87%!important;
    top:auto!important;
  }
}

.nphb-roadmap .nphb-level-ccie{
  border-width:1.5px!important;
  box-shadow:
    0 16px 34px rgba(197,139,0,.10),
    0 0 0 1px rgba(226,170,43,.06)!important;
}

.nphb-roadmap .nphb-level-ccie .nphb-level-arrow{
  color:#c99000!important;
  background:rgba(201,144,0,.08)!important;
}

@media(max-width:760px){
  .nphb-roadmap .nphb-level{
    min-height:84px!important;
  }

  .nphb-roadmap .nphb-level-icon{
    flex:0 0 52px!important;
    width:52px!important;
    height:52px!important;
  }
}


/* =========================================================
   v8.3.0 — CORRECCIÓN FINAL ENARSI/CCIE + HOVER TARJETAS
   ========================================================= */

/* Hero: las cinco etapas deben tener exactamente el mismo lenguaje visual */
@media (min-width:1181px){
  body .nphb-hero .nphb-roadmap{
    min-height:660px!important;
    overflow:visible!important;
  }

  body .nphb-hero .nphb-roadmap .nphb-level{
    width:clamp(590px,40vw,740px)!important;
    min-height:80px!important;
    padding:11px 56px 11px 15px!important;
    border-radius:18px!important;
    display:flex!important;
    align-items:center!important;
    gap:15px!important;
  }

  body .nphb-hero .nphb-roadmap .nphb-level-icon{
    flex:0 0 52px!important;
    width:52px!important;
    height:52px!important;
    border-radius:15px!important;
  }

  body .nphb-hero .nphb-roadmap .nphb-level > div{
    min-width:0!important;
    padding:0!important;
  }

  body .nphb-hero .nphb-roadmap .nphb-level h2{
    margin:0 0 3px!important;
    font-size:18px!important;
    line-height:1.08!important;
    white-space:nowrap!important;
  }

  body .nphb-hero .nphb-roadmap .nphb-level p{
    margin:0!important;
    font-size:11.5px!important;
    line-height:1.25!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  body .nphb-hero .nphb-roadmap .nphb-level-ccst{
    left:0!important;
    bottom:2%!important;
    top:auto!important;
    right:auto!important;
  }

  body .nphb-hero .nphb-roadmap .nphb-level-ccna{
    left:11%!important;
    bottom:23%!important;
    top:auto!important;
    right:auto!important;
  }

  body .nphb-hero .nphb-roadmap .nphb-level-encor{
    left:22%!important;
    bottom:44%!important;
    top:auto!important;
    right:auto!important;
  }

  body .nphb-hero .nphb-roadmap .nphb-level-enarsi{
    left:33%!important;
    bottom:65%!important;
    top:auto!important;
    right:auto!important;
  }

  body .nphb-hero .nphb-roadmap .nphb-level-ccie{
    left:44%!important;
    bottom:86%!important;
    top:auto!important;
    right:auto!important;
  }
}

/* Portátiles: mismo patrón, sin cortar ENARSI ni CCIE */
@media (min-width:761px) and (max-width:1180px){
  body .nphb-hero .nphb-roadmap{
    min-height:630px!important;
    overflow:visible!important;
  }

  body .nphb-hero .nphb-roadmap .nphb-level{
    width:clamp(500px,67vw,660px)!important;
    min-height:78px!important;
  }

  body .nphb-hero .nphb-roadmap .nphb-level-ccst{
    left:0!important;
    bottom:2%!important;
    top:auto!important;
    right:auto!important;
  }

  body .nphb-hero .nphb-roadmap .nphb-level-ccna{
    left:7%!important;
    bottom:23%!important;
    top:auto!important;
    right:auto!important;
  }

  body .nphb-hero .nphb-roadmap .nphb-level-encor{
    left:14%!important;
    bottom:44%!important;
    top:auto!important;
    right:auto!important;
  }

  body .nphb-hero .nphb-roadmap .nphb-level-enarsi{
    left:21%!important;
    bottom:65%!important;
    top:auto!important;
    right:auto!important;
  }

  body .nphb-hero .nphb-roadmap .nphb-level-ccie{
    left:28%!important;
    bottom:86%!important;
    top:auto!important;
    right:auto!important;
  }
}

/* Hover real y consistente para las tarjetas de la ruta inferior */
body .nphb-learning-path .nphb-path-card{
  will-change:transform;
  transform:translate3d(0,0,0)!important;
  transition:
    transform .24s cubic-bezier(.22,.8,.3,1),
    box-shadow .24s ease,
    border-color .24s ease!important;
}

body .nphb-learning-path .nphb-path-card:hover{
  transform:translate3d(0,-9px,0)!important;
  box-shadow:
    0 26px 58px rgba(22,43,82,.16),
    0 0 0 1px color-mix(in srgb,var(--stage) 18%,transparent)!important;
}

/* Anula el antiguo escalonado que impedía que todas subieran igual */
@media (min-width:1261px){
  body .nphb-learning-path .nphb-path-card:nth-child(1),
  body .nphb-learning-path .nphb-path-card:nth-child(2),
  body .nphb-learning-path .nphb-path-card:nth-child(3),
  body .nphb-learning-path .nphb-path-card:nth-child(4),
  body .nphb-learning-path .nphb-path-card:nth-child(5){
    transform:translate3d(0,0,0)!important;
  }

  body .nphb-learning-path .nphb-path-card:nth-child(1):hover,
  body .nphb-learning-path .nphb-path-card:nth-child(2):hover,
  body .nphb-learning-path .nphb-path-card:nth-child(3):hover,
  body .nphb-learning-path .nphb-path-card:nth-child(4):hover,
  body .nphb-learning-path .nphb-path-card:nth-child(5):hover{
    transform:translate3d(0,-9px,0)!important;
  }
}

/* Mantiene estable el móvil */
@media (max-width:760px){
  body .nphb-learning-path .nphb-path-card,
  body .nphb-learning-path .nphb-path-card:hover{
    transform:none!important;
  }
}

/* Respeta la preferencia de reducir movimiento */
@media (prefers-reduced-motion:reduce){
  body .nphb-learning-path .nphb-path-card,
  body .nphb-learning-path .nphb-path-card:hover{
    transform:none!important;
    transition:none!important;
  }
}


/* =========================================================
   v8.4.0 — COLORES COHERENTES ENTRE HERO Y RUTA INFERIOR
   Diseño equilibrado: identidad por etapa sin sobrecargar.
   ========================================================= */

/* Paleta compartida con las tarjetas inferiores */
body .nphb-hero .nphb-roadmap .nphb-level-ccst{
  --road-stage:#16aaa4;
  --road-soft:#eafaf8;
  --road-border:#b8e9e5;
  --road-glow:rgba(22,170,164,.16);
}

body .nphb-hero .nphb-roadmap .nphb-level-ccna{
  --road-stage:#246ee8;
  --road-soft:#eef5ff;
  --road-border:#c9dcff;
  --road-glow:rgba(36,110,232,.16);
}

body .nphb-hero .nphb-roadmap .nphb-level-encor{
  --road-stage:#7b3fc4;
  --road-soft:#f5effd;
  --road-border:#ddccf4;
  --road-glow:rgba(123,63,196,.16);
}

body .nphb-hero .nphb-roadmap .nphb-level-enarsi{
  --road-stage:#f18416;
  --road-soft:#fff5e9;
  --road-border:#f7d5ac;
  --road-glow:rgba(241,132,22,.16);
}

body .nphb-hero .nphb-roadmap .nphb-level-ccie{
  --road-stage:#c88e00;
  --road-soft:#fff8e6;
  --road-border:#efd38b;
  --road-glow:rgba(200,142,0,.17);
}

/* Tarjeta blanca con borde, acento e icono del color de su etapa */
body .nphb-hero .nphb-roadmap .nphb-level{
  position:absolute;
  color:#10244d!important;
  background:
    linear-gradient(90deg,var(--road-soft) 0,rgba(255,255,255,.98) 22%,#fff 100%)!important;
  border:1.5px solid var(--road-border)!important;
  box-shadow:
    0 15px 34px rgba(29,55,105,.09),
    0 0 0 1px rgba(255,255,255,.7) inset!important;
}

body .nphb-hero .nphb-roadmap .nphb-level::after{
  content:"";
  position:absolute;
  left:0;
  top:14px;
  bottom:14px;
  width:4px;
  border-radius:0 999px 999px 0;
  background:var(--road-stage);
  opacity:.95;
}

body .nphb-hero .nphb-roadmap .nphb-level-icon{
  color:var(--road-stage)!important;
  background:var(--road-soft)!important;
  border:1px solid var(--road-border)!important;
  box-shadow:0 8px 18px var(--road-glow)!important;
}

body .nphb-hero .nphb-roadmap .nphb-level-tag{
  color:var(--road-stage)!important;
}

body .nphb-hero .nphb-roadmap .nphb-level-arrow{
  color:var(--road-stage)!important;
  background:var(--road-soft)!important;
  border:1px solid var(--road-border)!important;
}

body .nphb-hero .nphb-roadmap .nphb-level:hover,
body .nphb-hero .nphb-roadmap .nphb-level:focus-visible{
  border-color:var(--road-stage)!important;
  box-shadow:
    0 20px 44px rgba(29,55,105,.13),
    0 0 0 4px var(--road-glow)!important;
}

body .nphb-hero .nphb-roadmap .nphb-level:hover .nphb-level-icon{
  transform:translateY(-2px) scale(1.04);
}

/* La curva también recorre visualmente la misma paleta */
body .nphb-hero .nphb-roadmap::before{
  background:
    linear-gradient(
      180deg,
      rgba(200,142,0,.65) 0%,
      rgba(241,132,22,.58) 25%,
      rgba(123,63,196,.56) 50%,
      rgba(36,110,232,.58) 75%,
      rgba(22,170,164,.66) 100%
    )!important;
  opacity:.62!important;
}

/* Evita el exceso visual: no añadimos badges ni estados nuevos en el Hero */
body .nphb-hero .nphb-roadmap .nphb-level h2{
  color:#10244d!important;
}

body .nphb-hero .nphb-roadmap .nphb-level p{
  color:#74839b!important;
}

/* En móvil conserva el color por etapa con un diseño limpio */
@media(max-width:760px){
  body .nphb-hero .nphb-roadmap .nphb-level{
    background:
      linear-gradient(90deg,var(--road-soft) 0,rgba(255,255,255,.98) 34%,#fff 100%)!important;
  }

  body .nphb-hero .nphb-roadmap .nphb-level::after{
    top:12px;
    bottom:12px;
  }
}

/* Compatibilidad con movimiento reducido */
@media(prefers-reduced-motion:reduce){
  body .nphb-hero .nphb-roadmap .nphb-level:hover .nphb-level-icon{
    transform:none!important;
  }
}


/* =========================================================
   v9.0.0 — CIERRE PREMIUM DEL HERO
   Últimos pulidos de identidad, confianza y microinteracción.
   ========================================================= */

/* Logo de marca ligeramente más presente, sin dominar */
.nphb-brand-signature{
  gap:12px!important;
  padding:8px 14px 8px 8px!important;
  border-radius:15px!important;
  background:rgba(255,255,255,.84)!important;
  box-shadow:
    0 10px 26px rgba(29,55,105,.08),
    0 0 0 1px rgba(255,255,255,.7) inset!important;
}

.nphb-brand-mark{
  flex:0 0 50px!important;
  width:50px!important;
  height:50px!important;
  border-radius:13px!important;
}

.nphb-brand-mark img{
  padding:4px!important;
}

.nphb-brand-identity strong{
  font-size:13px!important;
  letter-spacing:-.01em;
}

.nphb-brand-identity small{
  font-size:10px!important;
  color:#7b879d!important;
}

/* Bloque de confianza con más jerarquía */
.nphb-trust{
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
  margin-top:12px!important;
}

.nphb-trust-stars{
  font-size:18px!important;
  line-height:1!important;
  letter-spacing:2px!important;
  filter:drop-shadow(0 2px 5px rgba(222,153,0,.16));
}

.nphb-trust p,
.nphb-trust-text{
  margin:0!important;
  color:#53647f!important;
  font-size:13px!important;
  line-height:1.45!important;
  font-weight:600!important;
}

/* Iconos de confianza un poco más definidos */
.nphb-trust-icons{
  display:flex!important;
  align-items:center!important;
}

.nphb-trust-icons > *{
  transition:
    transform .22s ease,
    box-shadow .22s ease!important;
}

.nphb-trust-icons > *:hover{
  transform:translateY(-2px);
  box-shadow:0 8px 18px rgba(27,52,101,.12)!important;
}

/* Flecha de las tarjetas con microinteracción más clara */
body .nphb-hero .nphb-roadmap .nphb-level-arrow{
  opacity:.58!important;
  transition:
    opacity .22s ease,
    transform .24s cubic-bezier(.22,.8,.3,1),
    background .22s ease,
    box-shadow .22s ease!important;
}

body .nphb-hero .nphb-roadmap .nphb-level:hover .nphb-level-arrow,
body .nphb-hero .nphb-roadmap .nphb-level:focus-visible .nphb-level-arrow{
  opacity:1!important;
  transform:translate(4px,-50%)!important;
  box-shadow:0 7px 16px var(--road-glow)!important;
}

body .nphb-hero .nphb-roadmap .nphb-level:hover .nphb-level-icon,
body .nphb-hero .nphb-roadmap .nphb-level:focus-visible .nphb-level-icon{
  transform:translateY(-2px) rotate(-2deg) scale(1.04)!important;
}

/* Títulos de etapa ligeramente más nítidos */
body .nphb-hero .nphb-roadmap .nphb-level h2{
  letter-spacing:-.02em!important;
  font-weight:850!important;
}

body .nphb-hero .nphb-roadmap .nphb-level-tag{
  font-weight:900!important;
  letter-spacing:.02em!important;
}

/* Mejor transición del Hero a la franja de ventajas */
.nphb-features{
  box-shadow:
    0 18px 44px rgba(29,55,105,.08),
    0 0 0 1px rgba(36,87,245,.05) inset!important;
}

/* Ajustes responsivos */
@media(max-width:760px){
  .nphb-brand-signature{
    width:max-content;
    max-width:100%;
  }

  .nphb-brand-mark{
    flex-basis:46px!important;
    width:46px!important;
    height:46px!important;
  }

  .nphb-trust{
    align-items:flex-start!important;
    gap:10px!important;
  }

  .nphb-trust-stars{
    font-size:16px!important;
  }

  body .nphb-hero .nphb-roadmap .nphb-level-arrow{
    opacity:.75!important;
  }
}

/* Accesibilidad: sin movimiento cuando el usuario lo solicita */
@media(prefers-reduced-motion:reduce){
  .nphb-trust-icons > *,
  body .nphb-hero .nphb-roadmap .nphb-level-arrow,
  body .nphb-hero .nphb-roadmap .nphb-level-icon{
    transition:none!important;
  }

  .nphb-trust-icons > *:hover,
  body .nphb-hero .nphb-roadmap .nphb-level:hover .nphb-level-arrow,
  body .nphb-hero .nphb-roadmap .nphb-level:hover .nphb-level-icon{
    transform:none!important;
  }
}


/* =========================================================
   v9.1.0 — TARJETA DE MARCA UNIFORME Y CLICABLE
   ========================================================= */

/* Igualamos la tarjeta de marca a los CTA del Hero */
.nphb-brand-signature{
  position:relative;
  display:inline-flex!important;
  align-items:center!important;
  gap:13px!important;
  min-width:225px!important;
  min-height:76px!important;
  margin-top:18px!important;
  padding:12px 46px 12px 12px!important;
  border:1px solid color-mix(in srgb,var(--blue) 24%,white)!important;
  border-radius:14px!important;
  color:#10244d!important;
  text-decoration:none!important;
  background:rgba(255,255,255,.9)!important;
  box-shadow:0 10px 26px rgba(24,58,140,.08)!important;
  transition:
    transform .22s ease,
    box-shadow .22s ease,
    border-color .22s ease,
    background .22s ease!important;
}

.nphb-brand-signature:hover,
.nphb-brand-signature:focus-visible{
  color:#10244d!important;
  transform:translateY(-3px);
  border-color:color-mix(in srgb,var(--blue) 46%,white)!important;
  background:#fff!important;
  box-shadow:0 17px 36px rgba(24,58,140,.13)!important;
}

.nphb-brand-signature:focus-visible{
  outline:none;
  box-shadow:
    0 0 0 4px color-mix(in srgb,var(--blue) 15%,transparent),
    0 17px 36px rgba(24,58,140,.13)!important;
}

.nphb-brand-mark{
  flex:0 0 50px!important;
  width:50px!important;
  height:50px!important;
}

.nphb-brand-identity{
  min-width:0;
  flex:1 1 auto;
}

.nphb-brand-identity strong{
  font-size:14px!important;
  line-height:1.2!important;
}

.nphb-brand-identity small{
  display:block;
  margin-top:3px;
  font-size:10.5px!important;
  line-height:1.25!important;
}

.nphb-brand-arrow{
  position:absolute;
  right:14px;
  top:50%;
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  border:1px solid color-mix(in srgb,var(--blue) 16%,white);
  border-radius:50%;
  color:var(--blue);
  background:color-mix(in srgb,var(--blue) 6%,white);
  transform:translateY(-50%);
  opacity:.68;
  transition:
    transform .22s ease,
    opacity .22s ease,
    background .22s ease;
}

.nphb-brand-arrow svg{
  width:14px;
  height:14px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.nphb-brand-signature:hover .nphb-brand-arrow,
.nphb-brand-signature:focus-visible .nphb-brand-arrow{
  opacity:1;
  transform:translate(3px,-50%);
  background:color-mix(in srgb,var(--blue) 11%,white);
}

/* Alineación con los botones en escritorio */
@media(min-width:761px){
  .nphb-brand-signature{
    width:225px!important;
  }
}

/* Móvil: ocupa el ancho disponible como los CTA */
@media(max-width:760px){
  .nphb-brand-signature{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    min-height:72px!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .nphb-brand-signature,
  .nphb-brand-arrow{
    transition:none!important;
  }

  .nphb-brand-signature:hover,
  .nphb-brand-signature:focus-visible,
  .nphb-brand-signature:hover .nphb-brand-arrow,
  .nphb-brand-signature:focus-visible .nphb-brand-arrow{
    transform:none!important;
  }
}


/* =========================================================
   v9.2.0 — TARJETA DE MARCA SIMPLE COMO LOS CTA
   ========================================================= */

/* Sin flecha: misma limpieza visual que los dos botones superiores */
.nphb-brand-signature{
  padding:12px 20px!important;
  justify-content:flex-start!important;
}

.nphb-brand-arrow{
  display:none!important;
}

/* Mismo efecto de elevación que los CTA principales */
.nphb-brand-signature:hover,
.nphb-brand-signature:focus-visible{
  transform:translateY(-3px)!important;
  box-shadow:0 19px 38px rgba(36,87,245,.16)!important;
}

/* El contenido queda centrado verticalmente y sin espacio reservado */
.nphb-brand-identity{
  padding-right:0!important;
}

@media(max-width:760px){
  .nphb-brand-signature{
    padding:12px 18px!important;
  }
}


/* =========================================================
   v9.3.0 — RESTAURACIÓN Y OPTIMIZACIÓN MÓVIL
   Corrige solapamientos, exceso de altura y lectura en iPhone.
   ========================================================= */

@media(max-width:760px){

  /* Hero más compacto y ordenado */
  body .nphb-hero{
    padding:28px 16px 18px!important;
    overflow:hidden!important;
  }

  body .nphb-inner{
    display:block!important;
    min-height:0!important;
  }

  body .nphb-copy{
    width:100%!important;
    max-width:none!important;
    margin:0 auto!important;
    text-align:center!important;
  }

  body .nphb-title{
    font-size:clamp(42px,13vw,62px)!important;
    line-height:.92!important;
  }

  body .nphb-description{
    margin-bottom:22px!important;
    font-size:16px!important;
    line-height:1.55!important;
  }

  body .nphb-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:12px!important;
    width:100%!important;
    margin-bottom:16px!important;
  }

  body .nphb-button,
  body .nphb-brand-signature{
    width:100%!important;
    min-width:0!important;
    min-height:72px!important;
    margin:0!important;
  }

  body .nphb-brand-signature{
    margin-top:14px!important;
  }

  body .nphb-trust{
    display:grid!important;
    grid-template-columns:auto 1fr!important;
    align-items:center!important;
    gap:12px!important;
    width:100%!important;
    margin:14px 0 8px!important;
    text-align:left!important;
  }

  body .nphb-trust-icons{
    justify-content:flex-start!important;
  }

  body .nphb-trust p{
    font-size:12px!important;
    line-height:1.4!important;
  }

  /* La ruta del Hero vuelve a flujo normal: nada se monta */
  body .nphb-roadmap{
    position:relative!important;
    display:grid!important;
    gap:12px!important;
    width:100%!important;
    min-height:0!important;
    margin:20px 0 0!important;
    padding:0!important;
    overflow:visible!important;
  }

  body .nphb-roadmap::before,
  body .nphb-grid-bg,
  body .nphb-cert-bg{
    display:none!important;
  }

  body .nphb-roadmap .nphb-level{
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    min-height:82px!important;
    margin:0!important;
    padding:12px 44px 12px 13px!important;
    transform:none!important;
    border-radius:16px!important;
  }

  body .nphb-roadmap .nphb-level::after{
    top:12px!important;
    bottom:12px!important;
  }

  body .nphb-roadmap .nphb-level-icon{
    flex:0 0 50px!important;
    width:50px!important;
    height:50px!important;
    font-size:21px!important;
  }

  body .nphb-roadmap .nphb-level-tag{
    font-size:9px!important;
  }

  body .nphb-roadmap .nphb-level h2{
    font-size:17px!important;
    white-space:normal!important;
  }

  body .nphb-roadmap .nphb-level p{
    font-size:11px!important;
    white-space:normal!important;
  }

  body .nphb-roadmap .nphb-level-arrow{
    right:11px!important;
    opacity:.65!important;
  }

  /* Franja de ventajas: sin superposición y mucho más compacta */
  body .nphb-features{
    position:relative!important;
    z-index:1!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:0!important;
    width:100%!important;
    margin:18px 0 0!important;
    padding:8px 14px!important;
    border-radius:18px!important;
  }

  body .nphb-features > div{
    min-height:66px!important;
    padding:10px 4px!important;
    border:0!important;
    border-bottom:1px solid rgba(36,87,245,.08)!important;
  }

  body .nphb-features > div:last-child{
    border-bottom:0!important;
  }

  body .nphb-features span{
    width:44px!important;
    height:44px!important;
    flex:0 0 44px!important;
  }

  body .nphb-features strong{
    font-size:13px!important;
  }

  body .nphb-features small{
    font-size:11px!important;
  }

  /* Ruta inferior: tarjetas más compactas y sin alturas gigantes */
  body .nphb-learning-path{
    padding:48px 14px 56px!important;
  }

  body .nphb-learning-path .nphb-path-shell{
    width:100%!important;
  }

  body .nphb-learning-path .nphb-path-header{
    margin-bottom:24px!important;
  }

  body .nphb-learning-path .nphb-path-header h2{
    font-size:clamp(34px,10.5vw,46px)!important;
    line-height:1.05!important;
  }

  body .nphb-learning-path .nphb-path-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:18px!important;
  }

  body .nphb-learning-path .nphb-path-grid::before{
    display:none!important;
  }

  body .nphb-learning-path .nphb-path-card{
    min-height:0!important;
    height:auto!important;
    padding:22px 20px 20px!important;
    border-radius:22px!important;
    transform:none!important;
  }

  body .nphb-learning-path .nphb-path-top{
    margin-bottom:16px!important;
  }

  body .nphb-learning-path .nphb-path-icon{
    width:64px!important;
    height:64px!important;
    border-radius:18px!important;
  }

  body .nphb-learning-path .nphb-path-number{
    width:43px!important;
    height:43px!important;
    font-size:15px!important;
  }

  body .nphb-learning-path .nphb-path-meta{
    gap:8px!important;
    margin-bottom:10px!important;
  }

  body .nphb-learning-path .nphb-course-status{
    margin-bottom:12px!important;
  }

  body .nphb-learning-path .nphb-path-card h3{
    margin-bottom:7px!important;
    font-size:28px!important;
    line-height:1.12!important;
  }

  body .nphb-learning-path .nphb-path-card > .nphb-path-content > p{
    margin-bottom:18px!important;
    font-size:16px!important;
    line-height:1.5!important;
  }

  body .nphb-learning-path .nphb-path-difficulty{
    margin-top:0!important;
    padding-top:16px!important;
    padding-bottom:14px!important;
  }

  body .nphb-learning-path .nphb-skill-list{
    gap:10px!important;
    margin:0 0 18px!important;
  }

  body .nphb-learning-path .nphb-skill-list li{
    min-height:36px!important;
    font-size:14px!important;
  }

  body .nphb-learning-path .nphb-skill-icon{
    width:32px!important;
    height:32px!important;
  }

  body .nphb-learning-path .nphb-path-link{
    position:static!important;
    margin-top:8px!important;
    padding-top:12px!important;
    font-size:15px!important;
  }

  /* Evita que el botón “subir” tape contenido importante */
  body .scroll-to-top,
  body #ast-scroll-top{
    right:14px!important;
    bottom:18px!important;
    width:42px!important;
    height:42px!important;
  }
}

@media(max-width:390px){
  body .nphb-title{
    font-size:clamp(38px,12.5vw,54px)!important;
  }

  body .nphb-learning-path .nphb-path-card{
    padding-left:17px!important;
    padding-right:17px!important;
  }

  body .nphb-learning-path .nphb-path-card h3{
    font-size:25px!important;
  }
}


/* =========================================================
   v9.4.0 — CONTENEDOR GLOBAL DE LA PÁGINA DE INICIO
   Fondo a ancho completo; contenido centrado y coherente.
   ========================================================= */

:root{
  --nphb-site-max-width:1500px;
  --nphb-site-gutter:clamp(24px,3vw,54px);
}

/* El fondo del Hero sigue ocupando toda la pantalla */
body .nphb-hero{
  width:100%!important;
}

/* Contenido principal del Hero limitado y centrado */
@media(min-width:1181px){
  body .nphb-hero .nphb-inner{
    width:min(
      var(--nphb-site-max-width),
      calc(100% - (var(--nphb-site-gutter) * 2))
    )!important;
    max-width:var(--nphb-site-max-width)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  /* Franja de ventajas alineada con el Hero */
  body .nphb-hero .nphb-features{
    width:min(
      var(--nphb-site-max-width),
      calc(100% - (var(--nphb-site-gutter) * 2))
    )!important;
    max-width:var(--nphb-site-max-width)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  /* Ruta de aprendizaje inferior con la misma alineación */
  body .nphb-learning-path .nphb-path-shell{
    width:min(
      var(--nphb-site-max-width),
      calc(100% - (var(--nphb-site-gutter) * 2))
    )!important;
    max-width:var(--nphb-site-max-width)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}

/* Portátiles: margen coherente sin estrechar demasiado */
@media(min-width:761px) and (max-width:1180px){
  body .nphb-hero .nphb-inner,
  body .nphb-hero .nphb-features,
  body .nphb-learning-path .nphb-path-shell{
    width:calc(100% - 40px)!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}

/* Móvil conserva la optimización de v9.3.0 */
@media(max-width:760px){
  body .nphb-hero .nphb-inner,
  body .nphb-hero .nphb-features,
  body .nphb-learning-path .nphb-path-shell{
    width:100%!important;
    max-width:none!important;
  }
}


/* =========================================================
   v9.5.0 — CONTENEDOR REAL Y VISIBLE DE LA HOME
   Corrige v9.4: 1500 px era mayor que el ancho original
   de 1440 px, por eso visualmente no se apreciaba el cambio.
   ========================================================= */

:root{
  --nphb-home-content-width:1280px;
  --nphb-home-gutter:clamp(22px,4vw,72px);
}

/* Escritorio: reducción real del ancho del contenido */
@media(min-width:1181px){

  body .nphb-hero{
    padding-left:0!important;
    padding-right:0!important;
  }

  body .nphb-hero .nphb-inner{
    width:calc(100% - (var(--nphb-home-gutter) * 2))!important;
    max-width:var(--nphb-home-content-width)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  body .nphb-hero .nphb-features{
    width:calc(100% - (var(--nphb-home-gutter) * 2))!important;
    max-width:var(--nphb-home-content-width)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  body .nphb-learning-path .nphb-path-shell{
    width:calc(100% - (var(--nphb-home-gutter) * 2))!important;
    max-width:var(--nphb-home-content-width)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  /* Ajusta la composición interna al nuevo ancho */
  body .nphb-hero .nphb-inner{
    grid-template-columns:minmax(0,.94fr) minmax(520px,1.06fr)!important;
    gap:34px!important;
  }

  body .nphb-hero .nphb-roadmap{
    transform:scale(.94);
    transform-origin:center center;
  }

  /* Las cinco tarjetas inferiores siguen entrando sin apelotonarse */
  body .nphb-learning-path .nphb-path-grid{
    gap:16px!important;
  }

  body .nphb-learning-path .nphb-path-card{
    min-width:0!important;
  }
}

/* Monitores muy grandes: márgenes claramente visibles */
@media(min-width:1600px){
  body .nphb-hero,
  body .nphb-learning-path{
    background-clip:border-box;
  }

  body .nphb-hero .nphb-inner,
  body .nphb-hero .nphb-features,
  body .nphb-learning-path .nphb-path-shell{
    max-width:1280px!important;
  }
}

/* Portátiles: contenedor contenido, pero sin romper la composición */
@media(min-width:761px) and (max-width:1180px){
  body .nphb-hero .nphb-inner,
  body .nphb-hero .nphb-features,
  body .nphb-learning-path .nphb-path-shell{
    width:calc(100% - 48px)!important;
    max-width:1040px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}

/* Móvil conserva exactamente la restauración de v9.3 */
@media(max-width:760px){
  body .nphb-hero .nphb-inner,
  body .nphb-hero .nphb-features,
  body .nphb-learning-path .nphb-path-shell{
    width:100%!important;
    max-width:none!important;
  }

  body .nphb-hero .nphb-roadmap{
    transform:none!important;
  }
}


/* =========================================================
   v9.6.0 — HOME EN CONTENEDOR VISIBLE TIPO PÁGINA DE CURSO
   Fondo exterior gris + panel central blanco con borde.
   ========================================================= */

:root{
  --nphb-page-frame-width:1280px;
  --nphb-page-frame-border:#dfe7f2;
  --nphb-page-frame-shadow:0 18px 46px rgba(24,47,92,.08);
}

/* Fondo exterior similar al resto de páginas */
body.nphb-active,
body:has(.nphb-hero){
  background:#edf3f9!important;
}

/* El Hero completo pasa a ser el panel central visible */
body .nphb-hero{
  width:calc(100% - 32px)!important;
  max-width:var(--nphb-page-frame-width)!important;
  margin:18px auto 0!important;
  border:1px solid var(--nphb-page-frame-border)!important;
  border-bottom:0!important;
  border-radius:18px 18px 0 0!important;
  background:
    radial-gradient(circle at 78% 18%,rgba(42,97,245,.07),transparent 34%),
    linear-gradient(180deg,#fff 0%,#fbfdff 100%)!important;
  box-shadow:var(--nphb-page-frame-shadow)!important;
  overflow:hidden!important;
}

/* Dentro del panel ya no necesitamos otro límite estrecho */
@media(min-width:1181px){
  body .nphb-hero .nphb-inner,
  body .nphb-hero .nphb-features{
    width:100%!important;
    max-width:none!important;
    padding-left:44px!important;
    padding-right:44px!important;
  }
}

/* La ruta inferior continúa el mismo panel */
body .nphb-learning-path{
  width:calc(100% - 32px)!important;
  max-width:var(--nphb-page-frame-width)!important;
  margin:0 auto 24px!important;
  border:1px solid var(--nphb-page-frame-border)!important;
  border-top:0!important;
  border-radius:0 0 18px 18px!important;
  background:
    radial-gradient(circle at 50% 0%,rgba(42,97,245,.055),transparent 30%),
    linear-gradient(180deg,#fbfdff 0%,#fff 100%)!important;
  box-shadow:var(--nphb-page-frame-shadow)!important;
  overflow:hidden!important;
}

@media(min-width:1181px){
  body .nphb-learning-path .nphb-path-shell{
    width:100%!important;
    max-width:none!important;
    padding-left:44px!important;
    padding-right:44px!important;
  }
}

/* Línea sutil que separa visualmente Hero y ruta */
body .nphb-learning-path::before{
  content:"";
  display:block;
  width:calc(100% - 88px);
  height:1px;
  margin:0 auto;
  background:linear-gradient(90deg,transparent,#dce6f3,transparent);
}

/* Tablet */
@media(min-width:761px) and (max-width:1180px){
  body .nphb-hero,
  body .nphb-learning-path{
    width:calc(100% - 28px)!important;
  }

  body .nphb-hero .nphb-inner,
  body .nphb-hero .nphb-features,
  body .nphb-learning-path .nphb-path-shell{
    width:100%!important;
    max-width:none!important;
    padding-left:26px!important;
    padding-right:26px!important;
  }
}

/* Móvil: conserva el diseño optimizado, con marco mucho más ligero */
@media(max-width:760px){
  body .nphb-hero,
  body .nphb-learning-path{
    width:100%!important;
    max-width:none!important;
    margin-left:0!important;
    margin-right:0!important;
    border-left:0!important;
    border-right:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }

  body .nphb-hero{
    margin-top:0!important;
  }

  body .nphb-learning-path{
    margin-bottom:0!important;
  }

  body .nphb-learning-path::before{
    width:calc(100% - 28px);
  }
}


/* =========================================================
   v9.7.0 — RUTA INFERIOR MÁS ANCHA Y EN ARMONÍA
   Las tarjetas aprovechan casi todo el ancho útil del panel.
   ========================================================= */

@media(min-width:1181px){

  /* Reduce el margen interior de la sección inferior */
  body .nphb-learning-path .nphb-path-shell{
    padding-left:22px!important;
    padding-right:22px!important;
  }

  /* La cabecera mantiene una lectura cómoda */
  body .nphb-learning-path .nphb-path-header{
    max-width:780px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  /* Las cinco tarjetas usan prácticamente todo el ancho disponible */
  body .nphb-learning-path .nphb-path-grid{
    width:100%!important;
    max-width:none!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:14px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  body .nphb-learning-path .nphb-path-card{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    padding-left:18px!important;
    padding-right:18px!important;
  }

  /* Texto ligeramente optimizado para conservar equilibrio */
  body .nphb-learning-path .nphb-path-card h3{
    font-size:clamp(20px,1.45vw,26px)!important;
  }

  body .nphb-learning-path .nphb-path-card > .nphb-path-content > p{
    font-size:14px!important;
  }

  body .nphb-learning-path .nphb-skill-list li{
    font-size:12.5px!important;
  }
}

/* Monitores grandes: aún más cerca de los márgenes del panel */
@media(min-width:1500px){
  body .nphb-learning-path .nphb-path-shell{
    padding-left:16px!important;
    padding-right:16px!important;
  }

  body .nphb-learning-path .nphb-path-grid{
    gap:16px!important;
  }

  body .nphb-learning-path .nphb-path-card{
    padding-left:20px!important;
    padding-right:20px!important;
  }
}

/* Portátiles: mayor aprovechamiento sin forzar el contenido */
@media(min-width:761px) and (max-width:1180px){
  body .nphb-learning-path .nphb-path-shell{
    padding-left:18px!important;
    padding-right:18px!important;
  }

  body .nphb-learning-path .nphb-path-grid{
    gap:14px!important;
  }
}

/* Móvil conserva exactamente la versión optimizada */
@media(max-width:760px){
  body .nphb-learning-path .nphb-path-shell{
    padding-left:0!important;
    padding-right:0!important;
  }
}


/* =========================================================
   v9.8.0 — RUTA INFERIOR CASI A TODO EL ANCHO
   Aprovecha el panel manteniendo proporción y armonía.
   ========================================================= */

@media(min-width:1181px){

  /* El contenido de la sección se acerca casi al borde del panel */
  body .nphb-learning-path .nphb-path-shell{
    padding-left:8px!important;
    padding-right:8px!important;
  }

  /* El encabezado conserva un ancho de lectura elegante */
  body .nphb-learning-path .nphb-path-header{
    max-width:800px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  /* Las tarjetas ocupan prácticamente todo el ancho útil */
  body .nphb-learning-path .nphb-path-grid{
    width:100%!important;
    max-width:none!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:10px!important;
    padding-left:0!important;
    padding-right:0!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  body .nphb-learning-path .nphb-path-card{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    padding-left:16px!important;
    padding-right:16px!important;
  }

  /* Ajustes internos para que el mayor ancho se vea equilibrado */
  body .nphb-learning-path .nphb-path-card h3{
    font-size:clamp(20px,1.38vw,25px)!important;
    line-height:1.12!important;
  }

  body .nphb-learning-path .nphb-path-card > .nphb-path-content > p{
    font-size:13.5px!important;
    line-height:1.5!important;
  }

  body .nphb-learning-path .nphb-skill-list li{
    font-size:12px!important;
  }

  body .nphb-learning-path .nphb-path-meta{
    gap:6px!important;
  }

  body .nphb-learning-path .nphb-path-meta span,
  body .nphb-learning-path .nphb-course-status{
    font-size:8.5px!important;
  }
}

/* Monitores grandes: prácticamente hasta el límite interior */
@media(min-width:1500px){
  body .nphb-learning-path .nphb-path-shell{
    padding-left:4px!important;
    padding-right:4px!important;
  }

  body .nphb-learning-path .nphb-path-grid{
    gap:12px!important;
  }

  body .nphb-learning-path .nphb-path-card{
    padding-left:18px!important;
    padding-right:18px!important;
  }
}

/* Portátiles: mejora visible sin comprometer legibilidad */
@media(min-width:761px) and (max-width:1180px){
  body .nphb-learning-path .nphb-path-shell{
    padding-left:10px!important;
    padding-right:10px!important;
  }

  body .nphb-learning-path .nphb-path-grid{
    gap:10px!important;
  }
}

/* Móvil no cambia */
@media(max-width:760px){
  body .nphb-learning-path .nphb-path-shell{
    padding-left:0!important;
    padding-right:0!important;
  }
}


/* =========================================================
   v9.9.0 — RUTA INFERIOR A ANCHO CASI COMPLETO REAL
   Corrige el espacio lateral heredado por la propia sección.
   ========================================================= */

@media(min-width:1181px){

  /* El problema restante estaba en el padding horizontal de la sección */
  body .nphb-learning-path{
    padding-left:10px!important;
    padding-right:10px!important;
  }

  body .nphb-learning-path .nphb-path-shell{
    width:100%!important;
    max-width:none!important;
    padding-left:0!important;
    padding-right:0!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  /* Encabezado centrado y tarjetas ocupando todo el resto */
  body .nphb-learning-path .nphb-path-header{
    max-width:820px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  body .nphb-learning-path .nphb-path-grid{
    width:100%!important;
    max-width:none!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:0!important;
    padding-right:0!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:12px!important;
  }

  body .nphb-learning-path .nphb-path-card{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    padding-left:18px!important;
    padding-right:18px!important;
  }

  body .nphb-learning-path .nphb-path-card h3{
    font-size:clamp(20px,1.42vw,26px)!important;
  }

  body .nphb-learning-path .nphb-path-card > .nphb-path-content > p{
    font-size:13.5px!important;
  }

  body .nphb-learning-path .nphb-skill-list li{
    font-size:12.25px!important;
  }
}

/* Monitores grandes: apenas 6 px de margen por lado */
@media(min-width:1500px){
  body .nphb-learning-path{
    padding-left:6px!important;
    padding-right:6px!important;
  }

  body .nphb-learning-path .nphb-path-grid{
    gap:14px!important;
  }

  body .nphb-learning-path .nphb-path-card{
    padding-left:20px!important;
    padding-right:20px!important;
  }
}

/* Tablet mantiene márgenes prudentes */
@media(min-width:761px) and (max-width:1180px){
  body .nphb-learning-path{
    padding-left:14px!important;
    padding-right:14px!important;
  }

  body .nphb-learning-path .nphb-path-shell{
    width:100%!important;
    max-width:none!important;
    padding-left:0!important;
    padding-right:0!important;
  }
}

/* Móvil no cambia */
@media(max-width:760px){
  body .nphb-learning-path{
    padding-left:14px!important;
    padding-right:14px!important;
  }
}


/* =========================================================
   v10.0.0 — CIERRE VISUAL DE LA RUTA DE APRENDIZAJE
   Línea premium, hover uniforme y CTA disponible refinado.
   ========================================================= */

/* Línea conectora más elegante y coherente con la paleta */
@media(min-width:1181px){
  body .nphb-learning-path .nphb-path-grid{
    position:relative!important;
    isolation:isolate;
  }

  body .nphb-learning-path .nphb-path-grid::before{
    content:""!important;
    display:block!important;
    position:absolute!important;
    left:7.5%!important;
    right:7.5%!important;
    top:51px!important;
    width:auto!important;
    height:3px!important;
    border-radius:999px!important;
    background:
      linear-gradient(
        90deg,
        rgba(22,170,164,.40) 0%,
        rgba(36,110,232,.36) 25%,
        rgba(123,63,196,.36) 50%,
        rgba(241,132,22,.36) 75%,
        rgba(200,142,0,.40) 100%
      )!important;
    box-shadow:
      0 0 12px rgba(36,87,245,.08),
      0 1px 0 rgba(255,255,255,.8) inset!important;
    opacity:.92!important;
    z-index:0!important;
  }

  body .nphb-learning-path .nphb-path-card{
    position:relative!important;
    z-index:1!important;
  }

  body .nphb-learning-path .nphb-path-card::before{
    content:"";
    position:absolute;
    left:50%;
    top:51px;
    width:11px;
    height:11px;
    border:3px solid #fff;
    border-radius:50%;
    background:var(--stage);
    box-shadow:
      0 0 0 3px color-mix(in srgb,var(--stage) 14%,transparent),
      0 5px 14px color-mix(in srgb,var(--stage) 24%,transparent);
    transform:translate(-50%,-50%) scale(.88);
    opacity:.9;
    pointer-events:none;
    transition:
      transform .24s cubic-bezier(.18,.89,.32,1.28),
      box-shadow .24s ease,
      opacity .24s ease;
    z-index:-1;
  }
}

/* Elevación homogénea en las cinco tarjetas */
body .nphb-learning-path .nphb-path-card{
  will-change:transform;
  transform:translate3d(0,0,0)!important;
  transition:
    transform .24s cubic-bezier(.22,.8,.3,1),
    box-shadow .24s ease,
    border-color .24s ease!important;
}

body .nphb-learning-path .nphb-path-card:hover{
  transform:translate3d(0,-8px,0)!important;
  box-shadow:
    0 26px 58px rgba(22,43,82,.16),
    0 0 0 1px color-mix(in srgb,var(--stage) 18%,transparent)!important;
}

@media(min-width:1181px){
  body .nphb-learning-path .nphb-path-card:hover::before{
    transform:translate(-50%,-50%) scale(1.12);
    opacity:1;
    box-shadow:
      0 0 0 5px color-mix(in srgb,var(--stage) 12%,transparent),
      0 0 18px color-mix(in srgb,var(--stage) 34%,transparent);
  }
}

/* CTA disponible: transición más clara y premium */
body .nphb-learning-path .nphb-path-card-ccst .nphb-path-link:not(.nphb-path-link-disabled),
body .nphb-learning-path .nphb-path-card-ccna .nphb-path-link:not(.nphb-path-link-disabled){
  position:relative;
  overflow:hidden;
  width:max-content;
  padding:8px 12px 8px 0!important;
  border-radius:10px;
  transition:
    padding .22s ease,
    background .22s ease,
    color .22s ease,
    transform .22s ease!important;
}

body .nphb-learning-path .nphb-path-card-ccst .nphb-path-link:not(.nphb-path-link-disabled)::before,
body .nphb-learning-path .nphb-path-card-ccna .nphb-path-link:not(.nphb-path-link-disabled)::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:color-mix(in srgb,var(--stage) 9%,transparent);
  opacity:0;
  transform:scale(.92);
  transition:opacity .22s ease,transform .22s ease;
  z-index:-1;
}

body .nphb-learning-path .nphb-path-card-ccst .nphb-path-link:not(.nphb-path-link-disabled):hover,
body .nphb-learning-path .nphb-path-card-ccna .nphb-path-link:not(.nphb-path-link-disabled):hover{
  padding-left:12px!important;
  transform:translateX(2px);
}

body .nphb-learning-path .nphb-path-card-ccst .nphb-path-link:not(.nphb-path-link-disabled):hover::before,
body .nphb-learning-path .nphb-path-card-ccna .nphb-path-link:not(.nphb-path-link-disabled):hover::before{
  opacity:1;
  transform:scale(1);
}

body .nphb-learning-path .nphb-path-card-ccst .nphb-path-link:not(.nphb-path-link-disabled):hover svg,
body .nphb-learning-path .nphb-path-card-ccna .nphb-path-link:not(.nphb-path-link-disabled):hover svg{
  transform:translateX(5px);
}

/* Próximamente se mantiene sereno y claramente no disponible */
body .nphb-learning-path .nphb-path-link-disabled{
  opacity:.58!important;
  transform:none!important;
  filter:saturate(.72);
}

/* Móvil: sin desplazamientos ni línea conectora */
@media(max-width:760px){
  body .nphb-learning-path .nphb-path-card,
  body .nphb-learning-path .nphb-path-card:hover{
    transform:none!important;
  }

  body .nphb-learning-path .nphb-path-grid::before,
  body .nphb-learning-path .nphb-path-card::before{
    display:none!important;
  }

  body .nphb-learning-path .nphb-path-card-ccst .nphb-path-link:not(.nphb-path-link-disabled),
  body .nphb-learning-path .nphb-path-card-ccna .nphb-path-link:not(.nphb-path-link-disabled){
    padding-left:0!important;
  }
}

/* Accesibilidad */
@media(prefers-reduced-motion:reduce){
  body .nphb-learning-path .nphb-path-card,
  body .nphb-learning-path .nphb-path-card::before,
  body .nphb-learning-path .nphb-path-link,
  body .nphb-learning-path .nphb-path-link::before,
  body .nphb-learning-path .nphb-path-link svg{
    transition:none!important;
  }

  body .nphb-learning-path .nphb-path-card:hover,
  body .nphb-learning-path .nphb-path-link:hover{
    transform:none!important;
  }
}


/* =========================================================
   v10.1.0 — MICROAJUSTES FINALES DE LA RUTA
   Más aire superior y hover premium más equilibrado.
   ========================================================= */

/* Un poco más de separación entre el subtítulo y las tarjetas */
@media(min-width:1181px){
  body .nphb-learning-path .nphb-path-header{
    margin-bottom:44px!important;
  }
}

/* Hover definitivo: 6 px, sombra suave y acento más vivo */
body .nphb-learning-path .nphb-path-card{
  transition:
    transform .28s cubic-bezier(.22,.8,.3,1),
    box-shadow .28s ease,
    border-color .28s ease!important;
}

body .nphb-learning-path .nphb-path-card:hover{
  transform:translate3d(0,-6px,0)!important;
  box-shadow:
    0 24px 52px rgba(22,43,82,.15),
    0 0 0 1px color-mix(in srgb,var(--stage) 20%,transparent)!important;
  border-color:color-mix(in srgb,var(--stage) 48%,white)!important;
}

/* La barra superior gana intensidad sin verse exagerada */
body .nphb-learning-path .nphb-path-card:hover .nphb-path-accent{
  filter:saturate(1.12) brightness(1.03);
  box-shadow:0 4px 14px color-mix(in srgb,var(--stage) 18%,transparent);
}

/* Nodo ligeramente más definido al hacer hover */
@media(min-width:1181px){
  body .nphb-learning-path .nphb-path-card:hover::before{
    transform:translate(-50%,-50%) scale(1.08);
  }
}

/* En móvil no cambia nada */
@media(max-width:760px){
  body .nphb-learning-path .nphb-path-header{
    margin-bottom:24px!important;
  }

  body .nphb-learning-path .nphb-path-card,
  body .nphb-learning-path .nphb-path-card:hover{
    transform:none!important;
  }
}

/* Respeta reducción de movimiento */
@media(prefers-reduced-motion:reduce){
  body .nphb-learning-path .nphb-path-card{
    transition:none!important;
  }

  body .nphb-learning-path .nphb-path-card:hover{
    transform:none!important;
  }
}


/* =========================================================
   v10.1.1 — CORRECCIÓN DEL TEXTO DE CONFIANZA DEL HERO
   Evita que la franja de ventajas tape la frase inferior.
   ========================================================= */

/* El problema pertenece al componente del Hero:
   la franja de ventajas conservaba un margen negativo y podía
   superponerse al bloque de estrellas y texto de confianza. */
@media(min-width:1181px){

  body .nphb-hero .nphb-inner{
    padding-bottom:26px!important;
  }

  body .nphb-hero .nphb-trust{
    position:relative!important;
    z-index:6!important;
    margin-bottom:18px!important;
  }

  body .nphb-hero .nphb-trust p,
  body .nphb-hero .nphb-trust-text{
    display:block!important;
    max-width:none!important;
    overflow:visible!important;
    white-space:normal!important;
    text-overflow:clip!important;
  }

  body .nphb-hero .nphb-features{
    margin-top:14px!important;
  }
}

/* Portátiles: deja una separación segura entre ambos bloques */
@media(min-width:761px) and (max-width:1180px){

  body .nphb-hero .nphb-inner{
    padding-bottom:20px!important;
  }

  body .nphb-hero .nphb-trust{
    margin-bottom:16px!important;
  }

  body .nphb-hero .nphb-features{
    margin-top:12px!important;
  }
}

/* Móvil ya usa composición vertical; solo garantizamos visibilidad */
@media(max-width:760px){

  body .nphb-hero .nphb-trust{
    margin-bottom:14px!important;
  }

  body .nphb-hero .nphb-trust p,
  body .nphb-hero .nphb-trust-text{
    overflow:visible!important;
    white-space:normal!important;
    text-overflow:clip!important;
  }

  body .nphb-hero .nphb-features{
    margin-top:18px!important;
  }
}


/* =========================================================
   v10.2.0 — JERARQUÍA DE MARCA DEL HERO
   Logo protagonista encima de FROM ZERO y firma al cierre.
   ========================================================= */

.nphb-hero-brand{
  display:flex!important;
  align-items:center!important;
  gap:18px!important;
  width:min(100%,430px)!important;
  min-height:96px!important;
  margin:22px 0 20px!important;
  padding:12px 20px!important;
  color:#102142!important;
  background:
    radial-gradient(circle at 12% 50%,rgba(36,87,245,.09),transparent 42%),
    linear-gradient(135deg,#fff 0%,#f7faff 100%)!important;
  border:1px solid #cfdcff!important;
  border-radius:18px!important;
  box-shadow:0 14px 34px rgba(20,52,113,.10)!important;
  text-decoration:none!important;
  box-sizing:border-box!important;
  transition:
    transform .26s ease,
    box-shadow .26s ease,
    border-color .26s ease!important;
}

.nphb-hero-brand:hover{
  transform:translateY(-4px)!important;
  border-color:#9db8ff!important;
  box-shadow:0 20px 42px rgba(20,52,113,.15)!important;
}

.nphb-hero-brand-logo{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 76px!important;
  width:76px!important;
  height:76px!important;
  padding:6px!important;
  background:#fff!important;
  border:1px solid #dce6f5!important;
  border-radius:15px!important;
  box-shadow:0 6px 18px rgba(20,52,113,.08)!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}

.nphb-hero-brand-logo img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
}

.nphb-hero-brand-logo > span{
  color:#2457f5!important;
  font-size:24px!important;
  font-weight:900!important;
}

.nphb-hero-brand-copy{
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
  line-height:1.1!important;
}

.nphb-hero-brand-copy strong{
  color:#102142!important;
  font-size:24px!important;
  font-weight:800!important;
  letter-spacing:-.025em!important;
}

.nphb-hero-brand-copy small{
  margin-top:7px!important;
  color:#667793!important;
  font-size:13px!important;
  font-weight:600!important;
}

/* Firma al cierre del Hero */
.nphb-hero-signature-wrap{
  display:flex!important;
  justify-content:flex-end!important;
  width:100%!important;
  max-width:1280px!important;
  margin:16px auto 0!important;
  padding:0 28px 20px!important;
  box-sizing:border-box!important;
}

.nphb-brand-signature-footer{
  margin:0!important;
  opacity:.88!important;
  transform:scale(.92);
  transform-origin:right center;
  transition:
    opacity .22s ease,
    transform .22s ease,
    box-shadow .22s ease!important;
}

.nphb-brand-signature-footer:hover{
  opacity:1!important;
  transform:scale(.96) translateY(-2px)!important;
}

/* El título conserva su protagonismo, pero ya queda asociado a la marca */
.nphb-hero-brand + .nphb-title{
  margin-top:0!important;
}

@media(min-width:1181px){
  .nphb-hero-brand{
    width:min(100%,430px)!important;
  }
}

@media(min-width:761px) and (max-width:1180px){
  .nphb-hero-brand{
    width:min(100%,390px)!important;
    min-height:88px!important;
  }

  .nphb-hero-brand-logo{
    flex-basis:68px!important;
    width:68px!important;
    height:68px!important;
  }

  .nphb-hero-brand-copy strong{
    font-size:21px!important;
  }

  .nphb-hero-signature-wrap{
    padding-left:22px!important;
    padding-right:22px!important;
  }
}

@media(max-width:760px){
  .nphb-hero-brand{
    justify-content:center!important;
    width:100%!important;
    min-height:86px!important;
    margin:18px 0 22px!important;
    padding:12px 16px!important;
  }

  .nphb-hero-brand-logo{
    flex-basis:64px!important;
    width:64px!important;
    height:64px!important;
  }

  .nphb-hero-brand-copy{
    text-align:left!important;
  }

  .nphb-hero-brand-copy strong{
    font-size:20px!important;
  }

  .nphb-hero-brand-copy small{
    font-size:12px!important;
  }

  .nphb-hero-signature-wrap{
    justify-content:center!important;
    margin-top:14px!important;
    padding:0 14px 18px!important;
  }

  .nphb-brand-signature-footer{
    transform:none!important;
  }

  .nphb-brand-signature-footer:hover{
    transform:none!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .nphb-hero-brand,
  .nphb-brand-signature-footer{
    transition:none!important;
  }

  .nphb-hero-brand:hover,
  .nphb-brand-signature-footer:hover{
    transform:none!important;
  }
}


/* =========================================================
   v10.3.0 — BRANDING FINAL
   Logo puro arriba y firma al final de la ruta de aprendizaje.
   ========================================================= */

/* Logo superior: solo la imagen, sin texto redundante */
.nphb-hero-brand-logo-only{
  justify-content:center!important;
  width:min(100%,430px)!important;
  min-height:106px!important;
  padding:14px 22px!important;
}

.nphb-hero-brand-logo-only .nphb-hero-brand-logo{
  flex:1 1 auto!important;
  width:100%!important;
  height:78px!important;
  max-width:100%!important;
  padding:4px!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}

.nphb-hero-brand-logo-only .nphb-hero-brand-logo img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:left center!important;
}

/* Oculta cualquier texto heredado por seguridad */
.nphb-hero-brand-logo-only .nphb-hero-brand-copy{
  display:none!important;
}

/* Ya no existe firma dentro del Hero */
.nphb-hero-signature-wrap{
  display:none!important;
}

/* Firma ubicada al final de toda la ruta de aprendizaje */
.nphb-path-signature-wrap{
  display:flex!important;
  justify-content:flex-end!important;
  width:100%!important;
  margin:34px auto 0!important;
  padding:0 10px 18px!important;
  box-sizing:border-box!important;
}

.nphb-brand-signature-path{
  margin:0!important;
  opacity:.88!important;
  transform:scale(.92)!important;
  transform-origin:right center!important;
  transition:
    opacity .22s ease,
    transform .22s ease,
    box-shadow .22s ease!important;
}

.nphb-brand-signature-path:hover{
  opacity:1!important;
  transform:scale(.96) translateY(-2px)!important;
}

/* La sección reserva espacio suficiente para la firma */
.nphb-learning-path{
  padding-bottom:30px!important;
}

@media(min-width:1500px){
  .nphb-path-signature-wrap{
    padding-left:6px!important;
    padding-right:6px!important;
  }
}

@media(min-width:761px) and (max-width:1180px){
  .nphb-hero-brand-logo-only{
    width:min(100%,390px)!important;
    min-height:98px!important;
  }

  .nphb-hero-brand-logo-only .nphb-hero-brand-logo{
    height:72px!important;
  }

  .nphb-path-signature-wrap{
    padding-left:14px!important;
    padding-right:14px!important;
  }
}

@media(max-width:760px){
  .nphb-hero-brand-logo-only{
    width:100%!important;
    min-height:92px!important;
    padding:12px 16px!important;
  }

  .nphb-hero-brand-logo-only .nphb-hero-brand-logo{
    height:66px!important;
  }

  .nphb-hero-brand-logo-only .nphb-hero-brand-logo img{
    object-position:center!important;
  }

  .nphb-path-signature-wrap{
    justify-content:center!important;
    margin-top:26px!important;
    padding:0 14px 16px!important;
  }

  .nphb-brand-signature-path,
  .nphb-brand-signature-path:hover{
    transform:none!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .nphb-brand-signature-path{
    transition:none!important;
  }

  .nphb-brand-signature-path:hover{
    transform:none!important;
  }
}


/* =========================================================
   v10.3.1 — LOGO AMPLIADO Y FIRMA EN SU POSICIÓN CORRECTA
   ========================================================= */

/* El logo principal ocupa visualmente el recuadro.
   La imagen subida tiene margen blanco interno, por eso se amplía
   dentro de una ventana recortada sin deformarla. */
.nphb-hero-brand-logo-only{
  width:min(100%,430px)!important;
  min-height:120px!important;
  padding:6px 12px!important;
  overflow:hidden!important;
}

.nphb-hero-brand-logo-only .nphb-hero-brand-logo{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  width:100%!important;
  height:106px!important;
  overflow:hidden!important;
}

.nphb-hero-brand-logo-only .nphb-hero-brand-logo img{
  width:auto!important;
  height:100%!important;
  max-width:none!important;
  object-fit:contain!important;
  object-position:left center!important;
  transform:scale(1.72)!important;
  transform-origin:left center!important;
}

/* Firma únicamente después de las cinco tarjetas */
.nphb-path-signature-wrap{
  display:flex!important;
  justify-content:flex-end!important;
  width:100%!important;
  margin:36px 0 0!important;
  padding:0 0 8px!important;
  box-sizing:border-box!important;
}

.nphb-brand-signature-path{
  display:inline-flex!important;
  margin:0!important;
  opacity:.9!important;
  transform:scale(.94)!important;
  transform-origin:right center!important;
}

/* Nunca aparece en el panel de administración */
.wp-admin .nphb-path-signature-wrap,
.wp-admin .nphb-brand-signature-path{
  display:none!important;
}

@media(min-width:761px) and (max-width:1180px){
  .nphb-hero-brand-logo-only{
    min-height:110px!important;
  }

  .nphb-hero-brand-logo-only .nphb-hero-brand-logo{
    height:96px!important;
  }

  .nphb-hero-brand-logo-only .nphb-hero-brand-logo img{
    transform:scale(1.6)!important;
  }
}

@media(max-width:760px){
  .nphb-hero-brand-logo-only{
    min-height:104px!important;
    padding:8px 12px!important;
  }

  .nphb-hero-brand-logo-only .nphb-hero-brand-logo{
    justify-content:center!important;
    height:88px!important;
  }

  .nphb-hero-brand-logo-only .nphb-hero-brand-logo img{
    transform:scale(1.5)!important;
    transform-origin:center!important;
  }

  .nphb-path-signature-wrap{
    justify-content:center!important;
    margin-top:28px!important;
  }

  .nphb-brand-signature-path{
    transform:none!important;
  }
}


/* =========================================================
   v10.3.2 — LOGO LIMPIO, JERARQUÍA EQUILIBRADA Y CIERRE COMPACTO
   ========================================================= */

/* Logo principal sin aspecto de botón */
.nphb-hero-brand-logo-only{
  display:block!important;
  width:min(100%,500px)!important;
  min-height:136px!important;
  margin:20px 0 16px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible!important;
  text-decoration:none!important;
  transform:none!important;
}

.nphb-hero-brand-logo-only:hover{
  transform:none!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

.nphb-hero-brand-logo-only .nphb-hero-brand-logo{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  width:100%!important;
  height:136px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}

.nphb-hero-brand-logo-only .nphb-hero-brand-logo img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  object-fit:contain!important;
  object-position:left center!important;
  transform:none!important;
  image-rendering:auto!important;
}

/* Reduce ligeramente FROM ZERO para equilibrar la marca */
@media(min-width:1181px){
  .nphb-title .nphb-from{
    font-size:clamp(64px,5.2vw,92px)!important;
    line-height:.92!important;
  }

  .nphb-title .nphb-to{
    font-size:clamp(39px,3.05vw,55px)!important;
    line-height:.98!important;
  }
}

/* Firma final más larga y legible */
.nphb-path-signature-wrap{
  margin-top:22px!important;
  padding-bottom:0!important;
}

.nphb-brand-signature-path{
  min-width:300px!important;
  min-height:72px!important;
  padding:10px 18px!important;
  opacity:.94!important;
  transform:none!important;
  border-radius:16px!important;
}

.nphb-brand-signature-path .nphb-brand-mark{
  flex:0 0 54px!important;
  width:54px!important;
  height:54px!important;
}

.nphb-brand-signature-path .nphb-brand-identity strong{
  font-size:17px!important;
}

.nphb-brand-signature-path .nphb-brand-identity small{
  font-size:12px!important;
}

/* Reduce el espacio vacío al final de la ruta */
.nphb-learning-path{
  padding-bottom:10px!important;
}

.nphb-learning-path .nphb-path-shell{
  padding-bottom:4px!important;
}

/* Tablet */
@media(min-width:761px) and (max-width:1180px){
  .nphb-hero-brand-logo-only{
    width:min(100%,450px)!important;
    min-height:122px!important;
  }

  .nphb-hero-brand-logo-only .nphb-hero-brand-logo{
    height:122px!important;
  }

  .nphb-brand-signature-path{
    min-width:270px!important;
  }
}

/* Móvil */
@media(max-width:760px){
  .nphb-hero-brand-logo-only{
    width:100%!important;
    min-height:104px!important;
    margin:16px 0 18px!important;
  }

  .nphb-hero-brand-logo-only .nphb-hero-brand-logo{
    justify-content:center!important;
    height:104px!important;
  }

  .nphb-hero-brand-logo-only .nphb-hero-brand-logo img{
    object-position:center!important;
  }

  .nphb-brand-signature-path{
    min-width:0!important;
    width:min(100%,300px)!important;
  }

  .nphb-learning-path{
    padding-bottom:14px!important;
  }
}

.nphb-hero-brand-logo-only:focus-visible,
.nphb-brand-signature-path:focus-visible{
  outline:3px solid rgba(36,87,245,.35)!important;
  outline-offset:4px!important;
}


/* =========================================================
   v10.3.3 — LOGO SUPERIOR MÁS DISCRETO Y NO CLICABLE
   ========================================================= */

/* El logo deja de competir con FROM ZERO */
.nphb-hero-brand-logo-only{
  width:min(100%,360px)!important;
  min-height:92px!important;
  margin:18px 0 14px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  cursor:default!important;
  pointer-events:none!important;
}

.nphb-hero-brand-logo-only .nphb-hero-brand-logo{
  width:100%!important;
  height:92px!important;
  justify-content:flex-start!important;
  overflow:visible!important;
}

.nphb-hero-brand-logo-only .nphb-hero-brand-logo img{
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  object-fit:contain!important;
  object-position:left center!important;
  transform:none!important;
}

/* FROM ZERO recupera una escala más equilibrada */
@media(min-width:1181px){
  .nphb-title .nphb-from{
    font-size:clamp(58px,4.7vw,82px)!important;
    line-height:.94!important;
  }

  .nphb-title .nphb-to{
    font-size:clamp(36px,2.8vw,50px)!important;
    line-height:1!important;
  }
}

/* Tablet */
@media(min-width:761px) and (max-width:1180px){
  .nphb-hero-brand-logo-only{
    width:min(100%,330px)!important;
    min-height:84px!important;
  }

  .nphb-hero-brand-logo-only .nphb-hero-brand-logo{
    height:84px!important;
  }
}

/* Móvil */
@media(max-width:760px){
  .nphb-hero-brand-logo-only{
    width:min(100%,300px)!important;
    min-height:76px!important;
    margin:16px auto 16px!important;
  }

  .nphb-hero-brand-logo-only .nphb-hero-brand-logo{
    height:76px!important;
    justify-content:center!important;
  }

  .nphb-hero-brand-logo-only .nphb-hero-brand-logo img{
    object-position:center!important;
  }
}


/* =========================================================
   v10.4.0 — LOGOS INDEPENDIENTES Y MÓVIL REDONDEADO
   ========================================================= */

/* El logo del Hero usa todo su espacio sin ser clicable.
   object-fit:cover compensa las imágenes con demasiado margen blanco. */
.nphb-hero-brand-logo-only{
  width:min(100%,410px)!important;
  height:110px!important;
  min-height:110px!important;
  margin:18px 0 14px!important;
  padding:0!important;
  overflow:hidden!important;
  pointer-events:none!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}

.nphb-hero-brand-logo-only .nphb-hero-brand-logo{
  width:100%!important;
  height:100%!important;
  justify-content:flex-start!important;
  overflow:hidden!important;
}

.nphb-hero-brand-logo-only .nphb-hero-brand-logo img{
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  object-fit:cover!important;
  object-position:center center!important;
  transform:none!important;
  image-rendering:auto!important;
}

/* Firma independiente, más ancha y clara en escritorio */
.nphb-path-signature-wrap{
  margin-top:18px!important;
  padding-bottom:0!important;
}

.nphb-brand-signature-path{
  min-width:330px!important;
  min-height:76px!important;
  padding:10px 18px!important;
  transform:none!important;
}

.nphb-brand-signature-path .nphb-brand-mark{
  flex:0 0 58px!important;
  width:58px!important;
  height:58px!important;
}

.nphb-brand-signature-path .nphb-brand-mark img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
}

/* Cierre más compacto */
.nphb-learning-path{
  padding-bottom:8px!important;
}

.nphb-learning-path .nphb-path-shell{
  padding-bottom:0!important;
}

@media(min-width:761px) and (max-width:1180px){
  .nphb-hero-brand-logo-only{
    width:min(100%,370px)!important;
    height:100px!important;
    min-height:100px!important;
  }

  .nphb-brand-signature-path{
    min-width:290px!important;
  }
}

/* Móvil: mismas esquinas redondeadas que escritorio */
@media(max-width:760px){
  body .nphb-hero,
  body .nphb-learning-path{
    border-radius:20px!important;
    overflow:hidden!important;
  }

  body .nphb-hero,
  body .nphb-learning-path{
    width:calc(100% - 20px)!important;
    margin-left:10px!important;
    margin-right:10px!important;
  }

  .nphb-hero-brand-logo-only{
    width:min(100%,330px)!important;
    height:90px!important;
    min-height:90px!important;
    margin:16px auto!important;
  }

  .nphb-hero-brand-logo-only .nphb-hero-brand-logo{
    justify-content:center!important;
  }

  .nphb-brand-signature-path{
    width:min(100%,310px)!important;
    min-width:0!important;
  }

  .nphb-learning-path{
    padding-bottom:12px!important;
  }
}


/* =========================================================
   v10.4.1 — PULIDO FINAL DE LA VERSIÓN MÓVIL
   ========================================================= */

/* 1. Logo del Hero más panorámico y menos alto en móvil */
@media(max-width:760px){
  .nphb-hero-brand-logo-only{
    width:min(100%,350px)!important;
    height:94px!important;
    min-height:94px!important;
    margin:14px auto 4px!important;
  }

  .nphb-hero-brand-logo-only .nphb-hero-brand-logo{
    width:100%!important;
    height:94px!important;
  }

  .nphb-hero-brand-logo-only .nphb-hero-brand-logo img{
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    object-position:center center!important;
  }

  /* 2. Menos separación entre logo y FROM ZERO */
  .nphb-hero-brand-logo-only + .nphb-title{
    margin-top:-8px!important;
  }

  /* 3. FROM ZERO ligeramente más pequeño y equilibrado */
  .nphb-title .nphb-from{
    font-size:clamp(48px,13vw,62px)!important;
    line-height:.92!important;
  }

  .nphb-title .nphb-to{
    font-size:clamp(29px,7.6vw,38px)!important;
    line-height:1!important;
  }

  /* 4. Título de la ruta un 10 % más pequeño */
  .nphb-learning-path .nphb-path-title,
  .nphb-learning-path h2{
    font-size:clamp(42px,11vw,58px)!important;
    line-height:1.04!important;
    letter-spacing:-.03em!important;
  }

  /* 5. Botón flotante de subida más pequeño y menos invasivo */
  #ast-scroll-top,
  .ast-scroll-top-icon,
  .scroll-to-top,
  .nphb-scroll-top{
    width:48px!important;
    height:48px!important;
    min-width:48px!important;
    min-height:48px!important;
    right:14px!important;
    bottom:14px!important;
    border-radius:12px!important;
  }

  #ast-scroll-top svg,
  .ast-scroll-top-icon svg,
  .scroll-to-top svg,
  .nphb-scroll-top svg{
    width:20px!important;
    height:20px!important;
  }
}

/* 6. Firma final más corporativa y menos parecida a una tarjeta */
.nphb-path-signature-wrap{
  margin-top:20px!important;
  padding:16px 0 2px!important;
  border-top:1px solid rgba(36,87,245,.10)!important;
}

.nphb-brand-signature-path{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:16px!important;
  min-width:360px!important;
  min-height:78px!important;
  padding:6px 4px!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  text-decoration:none!important;
}

.nphb-brand-signature-path:hover{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  transform:none!important;
}

.nphb-brand-signature-path::before,
.nphb-brand-signature-path::after{
  content:""!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  height:1px!important;
  background:linear-gradient(90deg,transparent,rgba(36,87,245,.22),transparent)!important;
}

.nphb-brand-signature-path::before{
  top:0!important;
}

.nphb-brand-signature-path::after{
  bottom:0!important;
}

.nphb-brand-signature-path .nphb-brand-mark{
  flex:0 0 64px!important;
  width:64px!important;
  height:64px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}

.nphb-brand-signature-path .nphb-brand-mark img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
}

.nphb-brand-signature-path .nphb-brand-identity strong{
  font-size:19px!important;
  line-height:1.1!important;
}

.nphb-brand-signature-path .nphb-brand-identity small{
  margin-top:5px!important;
  font-size:12px!important;
  letter-spacing:.02em!important;
}

/* 7. Cierre más compacto, eliminando vacío innecesario */
.nphb-learning-path{
  padding-bottom:4px!important;
}

.nphb-learning-path .nphb-path-shell{
  padding-bottom:0!important;
}

@media(max-width:760px){
  .nphb-path-signature-wrap{
    justify-content:center!important;
    margin-top:18px!important;
    padding:14px 12px 0!important;
  }

  .nphb-brand-signature-path{
    width:min(100%,340px)!important;
    min-width:0!important;
    min-height:74px!important;
    gap:14px!important;
    padding:5px 2px!important;
  }

  .nphb-brand-signature-path .nphb-brand-mark{
    flex-basis:58px!important;
    width:58px!important;
    height:58px!important;
  }

  .nphb-brand-signature-path .nphb-brand-identity strong{
    font-size:18px!important;
  }

  .nphb-learning-path{
    padding-bottom:6px!important;
  }
}

/* 8. Mantener bordes redondeados consistentes en móvil */
@media(max-width:760px){
  body .nphb-hero,
  body .nphb-learning-path,
  body .nphb-features,
  body .nphb-path-card{
    border-radius:22px!important;
  }
}


/* =========================================================
   v10.4.2 — CORRECCIÓN REAL DEL LOGO EN MÓVIL
   Evita recortes, desbordamientos y escalado excesivo.
   ========================================================= */

@media(max-width:760px){

  /* El bloque deja de forzar una altura fija */
  .nphb-hero-brand-logo-only{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    max-width:330px!important;
    height:auto!important;
    min-height:0!important;
    margin:14px auto 10px!important;
    padding:0 10px!important;
    overflow:visible!important;
    box-sizing:border-box!important;
  }

  .nphb-hero-brand-logo-only .nphb-hero-brand-logo{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    overflow:visible!important;
  }

  /* El logo siempre se muestra completo */
  .nphb-hero-brand-logo-only .nphb-hero-brand-logo img{
    display:block!important;
    width:auto!important;
    max-width:100%!important;
    height:auto!important;
    max-height:82px!important;
    object-fit:contain!important;
    object-position:center!important;
    transform:none!important;
    clip-path:none!important;
  }

  /* Evita que el título quede pegado o se solape */
  .nphb-hero-brand-logo-only + .nphb-title{
    margin-top:8px!important;
  }

  /* Ajuste fino del titular en pantallas estrechas */
  .nphb-title .nphb-from{
    font-size:clamp(44px,12vw,58px)!important;
    line-height:.94!important;
    white-space:nowrap!important;
  }

  .nphb-title .nphb-to{
    font-size:clamp(27px,7vw,34px)!important;
    line-height:1.02!important;
  }

  /* Más respiración lateral dentro del Hero */
  .nphb-hero .nphb-hero-copy{
    padding-left:18px!important;
    padding-right:18px!important;
    box-sizing:border-box!important;
  }
}

/* Pantallas muy estrechas */
@media(max-width:390px){
  .nphb-hero-brand-logo-only{
    max-width:290px!important;
  }

  .nphb-hero-brand-logo-only .nphb-hero-brand-logo img{
    max-height:72px!important;
  }

  .nphb-title .nphb-from{
    font-size:clamp(40px,11.3vw,50px)!important;
  }

  .nphb-title .nphb-to{
    font-size:clamp(24px,6.5vw,30px)!important;
  }
}


/* =========================================================
   v10.4.3 — CIERRE DEFINITIVO DE LA PÁGINA DE INICIO
   Ajustes finos para móvil sin alterar la versión de escritorio.
   ========================================================= */

@media (max-width:760px){

  /* Título de la ruta más proporcionado */
  body .nphb-learning-path #nphb-path-title{
    max-width:620px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    font-size:clamp(38px,9.8vw,50px)!important;
    line-height:1.06!important;
    letter-spacing:-.035em!important;
  }

  /* Descripción algo más compacta */
  body .nphb-learning-path .nphb-path-header > p{
    max-width:590px!important;
    margin-top:20px!important;
    font-size:clamp(20px,5.2vw,27px)!important;
    line-height:1.48!important;
  }

  /* La primera tarjeta aparece antes */
  body .nphb-learning-path .nphb-path-header{
    margin-bottom:24px!important;
    padding-bottom:0!important;
  }

  body .nphb-learning-path .nphb-path-grid{
    margin-top:0!important;
  }

  /* Botón de volver arriba realmente compacto y menos invasivo */
  body #ast-scroll-top,
  body .ast-scroll-top-icon,
  body .scroll-to-top,
  body .nphb-scroll-top{
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    min-height:44px!important;
    max-width:44px!important;
    max-height:44px!important;
    right:12px!important;
    bottom:12px!important;
    padding:0!important;
    border-radius:11px!important;
    opacity:.84!important;
    transform:none!important;
  }

  body #ast-scroll-top:hover,
  body .ast-scroll-top-icon:hover,
  body .scroll-to-top:hover,
  body .nphb-scroll-top:hover{
    opacity:1!important;
  }

  body #ast-scroll-top svg,
  body .ast-scroll-top-icon svg,
  body .scroll-to-top svg,
  body .nphb-scroll-top svg{
    width:18px!important;
    height:18px!important;
  }

  /* Firma final ligeramente más cerca del final de las tarjetas */
  body .nphb-path-signature-wrap{
    margin-top:10px!important;
    padding-top:10px!important;
    padding-bottom:0!important;
  }

  body .nphb-brand-signature-path{
    min-height:68px!important;
    padding-top:4px!important;
    padding-bottom:4px!important;
  }

  /* Menos espacio inferior sobrante */
  body .nphb-learning-path,
  body .nphb-learning-path .nphb-path-shell{
    padding-bottom:0!important;
  }
}

@media (max-width:390px){
  body .nphb-learning-path #nphb-path-title{
    font-size:clamp(35px,9.4vw,44px)!important;
  }

  body .nphb-learning-path .nphb-path-header > p{
    font-size:clamp(18px,4.9vw,23px)!important;
  }
}


/* =========================================================
   v10.5.0 — CONTROLES DE TAMAÑO DEL HERO DESDE EL PANEL
   ========================================================= */

/* Ordenador */
.nphb-hero .nphb-title .nphb-from{
  font-size:82px!important;
}

.nphb-hero .nphb-title .nphb-to{
  font-size:46px!important;
}

.nphb-hero .nphb-hero-brand-logo-only{
  width:min(100%,var(--nphb-logo-desktop,390px))!important;
  max-width:var(--nphb-logo-desktop,390px)!important;
}

/* Móvil */
@media(max-width:760px){
  .nphb-hero .nphb-title .nphb-from{
    font-size:58px!important;
  }

  .nphb-hero .nphb-title .nphb-to{
    font-size:34px!important;
  }

  .nphb-hero .nphb-hero-brand-logo-only{
    width:min(100%,var(--nphb-logo-mobile,330px))!important;
    max-width:var(--nphb-logo-mobile,330px)!important;
  }
}

/* Evita que una elección excesiva rompa el ancho del móvil */
@media(max-width:390px){
  .nphb-hero .nphb-title .nphb-from{
    max-width:100%!important;
    overflow-wrap:anywhere!important;
  }

  .nphb-hero .nphb-title .nphb-to{
    max-width:100%!important;
  }

  .nphb-hero .nphb-hero-brand-logo-only{
    width:min(calc(100vw - 64px),var(--nphb-logo-mobile,330px))!important;
  }
}


/* =========================================================
   v10.5.1 — TAMAÑO EDITABLE DEL TÍTULO DE LA RUTA
   ========================================================= */

.nphb-learning-path #nphb-path-title,
.nphb-learning-path .nphb-path-title,
.nphb-learning-path h2{
  font-size:62px!important;
}

@media(max-width:760px){
  body .nphb-learning-path #nphb-path-title,
  body .nphb-learning-path .nphb-path-title,
  body .nphb-learning-path h2{
    font-size:46px!important;
  }
}

/* =========================================================
   v10.5.4 — MARCO MÓVIL LIMPIO Y DEFINIDO
   Mantiene la Home ancha, elimina el halo excesivo de Safari
   y delimita Hero + Ruta con borde y sombra muy discretos.
   ========================================================= */

@media (max-width:760px){
  /* Primera mitad del marco: Hero */
  body.nphb-home-active .nphb-hero,
  body.nphb-active .nphb-hero,
  body:has(.nphb-hero) .nphb-hero{
    width:calc(100% - 16px)!important;
    max-width:none!important;
    margin:16px 8px 0!important;
    padding-left:0!important;
    padding-right:0!important;
    box-sizing:border-box!important;

    border:1px solid #d7e2ef!important;
    border-bottom:0!important;
    border-radius:28px 28px 0 0!important;

    /* Conserva el fondo original sin crear una neblina translúcida */
    background:#fff!important;
    box-shadow:0 10px 24px rgba(24,47,92,.085)!important;
    overflow:hidden!important;
  }

  /* Segunda mitad del mismo marco: Ruta */
  body.nphb-home-active .nphb-learning-path,
  body.nphb-active .nphb-learning-path,
  body:has(.nphb-hero) .nphb-learning-path{
    width:calc(100% - 16px)!important;
    max-width:none!important;
    margin:0 8px 18px!important;
    box-sizing:border-box!important;

    border:1px solid #d7e2ef!important;
    border-top:0!important;
    border-radius:0 0 28px 28px!important;
    background:#fff!important;
    box-shadow:0 12px 26px rgba(24,47,92,.085)!important;
    overflow:hidden!important;
  }

  body.nphb-home-active .nphb-hero .nphb-inner,
  body.nphb-home-active .nphb-hero .nphb-features,
  body.nphb-home-active .nphb-learning-path .nphb-path-shell,
  body.nphb-active .nphb-hero .nphb-inner,
  body.nphb-active .nphb-hero .nphb-features,
  body.nphb-active .nphb-learning-path .nphb-path-shell{
    width:100%!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  /* Separación casi imperceptible entre Hero y Ruta */
  body .nphb-learning-path::before{
    width:calc(100% - 40px)!important;
    background:linear-gradient(90deg,transparent,#dce6f3,transparent)!important;
  }
}

@media (max-width:390px){
  body.nphb-home-active .nphb-hero,
  body.nphb-active .nphb-hero,
  body:has(.nphb-hero) .nphb-hero{
    width:calc(100% - 12px)!important;
    margin-left:6px!important;
    margin-right:6px!important;
    border-radius:25px 25px 0 0!important;
    box-shadow:0 8px 20px rgba(24,47,92,.08)!important;
  }

  body.nphb-home-active .nphb-learning-path,
  body.nphb-active .nphb-learning-path,
  body:has(.nphb-hero) .nphb-learning-path{
    width:calc(100% - 12px)!important;
    margin-left:6px!important;
    margin-right:6px!important;
    border-radius:0 0 25px 25px!important;
    box-shadow:0 10px 22px rgba(24,47,92,.08)!important;
  }
}

/* =========================================================
   v10.5.5 — HOME MÓVIL REALMENTE A ANCHO DE PANTALLA
   Rompe únicamente el límite del contenedor de Astra en móvil.
   Deja 12 px de margen real por cada lado, similar a LearnDash.
   ========================================================= */
@media (max-width:760px){
  body.nphb-home-active .nphb-hero,
  body.nphb-active .nphb-hero,
  body:has(.nphb-hero) .nphb-hero{
    width:calc(100vw - 24px)!important;
    max-width:calc(100vw - 24px)!important;
    margin-top:16px!important;
    margin-right:0!important;
    margin-bottom:0!important;
    margin-left:50%!important;
    position:relative!important;
    left:0!important;
    transform:translateX(-50%)!important;
    box-sizing:border-box!important;
  }

  body.nphb-home-active .nphb-learning-path,
  body.nphb-active .nphb-learning-path,
  body:has(.nphb-hero) .nphb-learning-path{
    width:calc(100vw - 24px)!important;
    max-width:calc(100vw - 24px)!important;
    margin-top:0!important;
    margin-right:0!important;
    margin-bottom:18px!important;
    margin-left:50%!important;
    position:relative!important;
    left:0!important;
    transform:translateX(-50%)!important;
    box-sizing:border-box!important;
  }

  /* El contenido interno aprovecha todo el nuevo ancho sin crear otro marco. */
  body:has(.nphb-hero) .nphb-hero > *,
  body:has(.nphb-hero) .nphb-learning-path > *{
    max-width:100%!important;
    box-sizing:border-box!important;
  }
}

@media (max-width:390px){
  body.nphb-home-active .nphb-hero,
  body.nphb-active .nphb-hero,
  body:has(.nphb-hero) .nphb-hero,
  body.nphb-home-active .nphb-learning-path,
  body.nphb-active .nphb-learning-path,
  body:has(.nphb-hero) .nphb-learning-path{
    width:calc(100vw - 16px)!important;
    max-width:calc(100vw - 16px)!important;
  }
}


/* =========================================================
   v10.6.0 — HOME MÓVIL PREMIUM COMPACTA
   Mantiene el diseño aprobado, pero reduce altura, aire excesivo
   y tarjetas gigantes en iPhone/Android. Solo afecta <= 760 px.
   ========================================================= */
@media (max-width:760px){
  /* Marco global: ancho real con margen cómodo y sin desbordes */
  body.nphb-home-active .nphb-hero,
  body.nphb-active .nphb-hero,
  body:has(.nphb-hero) .nphb-hero,
  body.nphb-home-active .nphb-learning-path,
  body.nphb-active .nphb-learning-path,
  body:has(.nphb-hero) .nphb-learning-path{
    width:calc(100vw - 20px)!important;
    max-width:calc(100vw - 20px)!important;
  }

  /* HERO: más compacto, sin perder protagonismo */
  body .nphb-hero .nphb-inner{
    padding:28px 18px 18px!important;
    gap:24px!important;
  }
  body .nphb-hero .nphb-copy{
    gap:14px!important;
  }
  body .nphb-hero .nphb-eyebrow{
    margin-bottom:2px!important;
    padding:8px 14px!important;
    font-size:13px!important;
    letter-spacing:.08em!important;
  }
  body .nphb-hero .nphb-hero-brand-logo-only{
    width:min(78vw,270px)!important;
    max-width:270px!important;
    margin:4px auto 2px!important;
  }
  body .nphb-hero .nphb-title{
    margin:2px 0 0!important;
    gap:2px!important;
  }
  body .nphb-hero .nphb-title .nphb-from{
    font-size:clamp(43px,12vw,56px)!important;
    line-height:.98!important;
  }
  body .nphb-hero .nphb-title .nphb-to{
    font-size:clamp(28px,7.7vw,36px)!important;
    line-height:1.02!important;
    white-space:normal!important;
  }
  body .nphb-hero .nphb-brand-phrase{
    margin:3px 0 6px!important;
    font-size:13px!important;
  }
  body .nphb-hero .nphb-description{
    margin:4px auto 8px!important;
    font-size:18px!important;
    line-height:1.48!important;
    max-width:34ch!important;
  }
  body .nphb-hero .nphb-actions{
    gap:10px!important;
    margin-top:6px!important;
  }
  body .nphb-hero .nphb-button{
    min-height:72px!important;
    padding:14px 18px!important;
    border-radius:18px!important;
  }
  body .nphb-hero .nphb-button strong{font-size:18px!important;}
  body .nphb-hero .nphb-button small{font-size:14px!important;}
  body .nphb-hero .nphb-trust{
    margin-top:10px!important;
    padding:12px 6px 2px!important;
    gap:10px!important;
  }
  body .nphb-hero .nphb-trust-icons span{
    width:38px!important;height:38px!important;font-size:19px!important;
  }
  body .nphb-hero .nphb-trust p{font-size:14px!important;line-height:1.35!important;}

  /* Ruta resumen del hero: tarjetas más bajas y elegantes */
  body .nphb-hero .nphb-roadmap{
    gap:10px!important;
    padding:14px 0 4px!important;
  }
  body .nphb-roadmap .nphb-level{
    min-height:112px!important;
    padding:16px 58px 16px 82px!important;
    border-radius:20px!important;
  }
  body .nphb-roadmap .nphb-level-icon{
    width:56px!important;height:56px!important;left:14px!important;
  }
  body .nphb-roadmap .nphb-level-tag{font-size:12px!important;margin-bottom:4px!important;}
  body .nphb-roadmap .nphb-level h2{font-size:23px!important;line-height:1.08!important;}
  body .nphb-roadmap .nphb-level p{font-size:15px!important;line-height:1.35!important;margin-top:5px!important;}
  body .nphb-roadmap .nphb-level-arrow{right:14px!important;width:40px!important;height:40px!important;}

  /* Beneficios: compactos, sin ocupar una pantalla entera */
  body .nphb-features{
    margin:16px 14px 22px!important;
    padding:8px 16px!important;
    border-radius:22px!important;
  }
  body .nphb-features > div{
    min-height:74px!important;
    padding:12px 0!important;
    grid-template-columns:50px 1fr!important;
    column-gap:12px!important;
  }
  body .nphb-features > div > span{width:46px!important;height:46px!important;font-size:22px!important;}
  body .nphb-features strong{font-size:17px!important;}
  body .nphb-features small{font-size:14px!important;margin-top:2px!important;}

  /* Cabecera de la ruta completa */
  body .nphb-learning-path .nphb-path-shell{padding:42px 14px 18px!important;}
  body .nphb-learning-path .nphb-path-header{margin-bottom:24px!important;}
  body .nphb-learning-path .nphb-path-eyebrow{font-size:13px!important;}
  body .nphb-learning-path #nphb-path-title,
  body .nphb-learning-path .nphb-path-title,
  body .nphb-learning-path h2{
    font-size:clamp(34px,9.4vw,44px)!important;
    line-height:1.04!important;
    margin:8px 0 12px!important;
  }
  body .nphb-learning-path .nphb-path-header > p{
    font-size:17px!important;
    line-height:1.5!important;
  }
  body .nphb-learning-path .nphb-path-grid{gap:14px!important;}

  /* Tarjetas de la ruta completa: compactas pero con toda la información */
  body .nphb-learning-path .nphb-path-card{
    min-height:0!important;
    padding:18px!important;
    border-radius:22px!important;
  }
  body .nphb-learning-path .nphb-path-top{
    margin-bottom:12px!important;
  }
  body .nphb-learning-path .nphb-path-icon{
    width:64px!important;height:64px!important;border-radius:18px!important;
  }
  body .nphb-learning-path .nphb-path-number{
    width:52px!important;height:52px!important;font-size:22px!important;
  }
  body .nphb-learning-path .nphb-path-meta{gap:8px!important;margin-bottom:10px!important;}
  body .nphb-learning-path .nphb-path-meta span,
  body .nphb-learning-path .nphb-course-status{
    min-height:30px!important;padding:6px 11px!important;font-size:12px!important;
  }
  body .nphb-learning-path .nphb-path-card h3{
    font-size:32px!important;
    line-height:1.05!important;
    margin:10px 0 8px!important;
  }
  body .nphb-learning-path .nphb-path-card > .nphb-path-content > p{
    font-size:17px!important;
    line-height:1.42!important;
    margin:0 0 14px!important;
  }
  body .nphb-learning-path .nphb-path-difficulty{
    padding:12px 0!important;
    margin:0 0 10px!important;
  }
  body .nphb-learning-path .nphb-skill-list{
    gap:8px!important;
    margin:8px 0 12px!important;
  }
  body .nphb-learning-path .nphb-skill-list li{
    min-height:44px!important;
    font-size:16px!important;
    gap:10px!important;
  }
  body .nphb-learning-path .nphb-skill-icon{
    width:38px!important;height:38px!important;border-radius:11px!important;
  }
  body .nphb-learning-path .nphb-path-link{
    min-height:48px!important;
    margin-top:8px!important;
    font-size:16px!important;
  }
}

@media (max-width:390px){
  body .nphb-hero .nphb-inner{padding-left:14px!important;padding-right:14px!important;}
  body .nphb-roadmap .nphb-level{padding-left:76px!important;padding-right:52px!important;}
  body .nphb-learning-path .nphb-path-card{padding:16px!important;}
  body .nphb-learning-path .nphb-path-card h3{font-size:29px!important;}
}

/* =========================================================
   v10.6.1 — CORRECCIÓN REAL DE RUTA EN MÓVIL
   - Recompone las tarjetas compactas de la ruta superior.
   - Ensancha ligeramente las tarjetas grandes de la ruta completa.
   - Evita textos comprimidos, saltos raros y tarjetas demasiado altas.
   ========================================================= */
@media (max-width:760px){
  /* La columna visual del roadmap usa prácticamente todo el ancho útil */
  body .nphb-hero .nphb-roadmap{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:10px 0 2px!important;
    gap:12px!important;
  }

  /* Tarjetas superiores: composición horizontal clara y estable */
  body .nphb-hero .nphb-roadmap .nphb-level{
    display:grid!important;
    grid-template-columns:58px minmax(0,1fr) 42px!important;
    align-items:center!important;
    column-gap:14px!important;
    width:100%!important;
    min-height:124px!important;
    padding:16px 14px!important;
    border-radius:21px!important;
    overflow:hidden!important;
  }

  body .nphb-hero .nphb-roadmap .nphb-level-icon{
    position:static!important;
    grid-column:1!important;
    grid-row:1!important;
    width:58px!important;
    height:58px!important;
    min-width:58px!important;
    margin:0!important;
    border-radius:17px!important;
    align-self:center!important;
  }

  body .nphb-hero .nphb-roadmap .nphb-level-content,
  body .nphb-hero .nphb-roadmap .nphb-level > div:not(.nphb-level-icon):not(.nphb-level-arrow){
    grid-column:2!important;
    min-width:0!important;
    width:auto!important;
    text-align:left!important;
  }

  body .nphb-hero .nphb-roadmap .nphb-level-tag{
    display:block!important;
    margin:0 0 5px!important;
    font-size:12px!important;
    line-height:1.15!important;
    letter-spacing:.055em!important;
    white-space:normal!important;
  }

  body .nphb-hero .nphb-roadmap .nphb-level h2{
    margin:0 0 5px!important;
    font-size:23px!important;
    line-height:1.04!important;
    letter-spacing:-.025em!important;
    overflow-wrap:anywhere!important;
  }

  body .nphb-hero .nphb-roadmap .nphb-level p{
    margin:0!important;
    font-size:15px!important;
    line-height:1.28!important;
    overflow-wrap:anywhere!important;
  }

  body .nphb-hero .nphb-roadmap .nphb-level-arrow{
    position:static!important;
    grid-column:3!important;
    grid-row:1!important;
    justify-self:end!important;
    align-self:center!important;
    width:40px!important;
    height:40px!important;
    margin:0!important;
  }

  /* Beneficios inferiores un poco más anchos */
  body .nphb-features{
    width:calc(100% + 8px)!important;
    max-width:calc(100% + 8px)!important;
    margin:18px -4px 24px!important;
  }

  /* Ruta completa: gana ancho sin pegarse al borde */
  body .nphb-learning-path{
    width:calc(100vw - 12px)!important;
    max-width:calc(100vw - 12px)!important;
    margin-left:50%!important;
    margin-right:0!important;
    transform:translateX(-50%)!important;
    padding-left:10px!important;
    padding-right:10px!important;
  }

  body .nphb-learning-path .nphb-path-shell{
    width:100%!important;
    max-width:none!important;
    padding-left:0!important;
    padding-right:0!important;
  }

  body .nphb-learning-path .nphb-path-grid{
    width:100%!important;
    gap:16px!important;
  }

  body .nphb-learning-path .nphb-path-card{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:20px 18px 20px!important;
    border-radius:23px!important;
  }

  body .nphb-learning-path .nphb-path-top{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    min-height:66px!important;
    margin-bottom:14px!important;
  }

  body .nphb-learning-path .nphb-path-icon{
    width:62px!important;
    height:62px!important;
    min-width:62px!important;
    margin:0!important;
  }

  body .nphb-learning-path .nphb-path-number{
    position:static!important;
    width:52px!important;
    height:52px!important;
    min-width:52px!important;
    margin:0!important;
    font-size:22px!important;
  }

  body .nphb-learning-path .nphb-path-meta{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:8px!important;
    margin-bottom:10px!important;
  }

  body .nphb-learning-path .nphb-path-card h3{
    font-size:clamp(29px,8.5vw,36px)!important;
    line-height:1.04!important;
    overflow-wrap:anywhere!important;
  }

  body .nphb-learning-path .nphb-path-card > .nphb-path-content > p{
    font-size:17px!important;
    line-height:1.42!important;
  }

  body .nphb-learning-path .nphb-skill-list{
    grid-template-columns:1fr!important;
    gap:6px!important;
  }

  body .nphb-learning-path .nphb-skill-list li{
    min-height:42px!important;
    font-size:16px!important;
    line-height:1.3!important;
  }
}

@media (max-width:390px){
  body .nphb-hero .nphb-roadmap .nphb-level{
    grid-template-columns:54px minmax(0,1fr) 38px!important;
    column-gap:11px!important;
    min-height:116px!important;
    padding:14px 12px!important;
  }
  body .nphb-hero .nphb-roadmap .nphb-level-icon{
    width:54px!important;height:54px!important;min-width:54px!important;
  }
  body .nphb-hero .nphb-roadmap .nphb-level h2{font-size:21px!important;}
  body .nphb-hero .nphb-roadmap .nphb-level p{font-size:14px!important;}
  body .nphb-learning-path{width:calc(100vw - 8px)!important;max-width:calc(100vw - 8px)!important;padding-left:8px!important;padding-right:8px!important;}
  body .nphb-learning-path .nphb-path-card{padding:18px 16px 19px!important;}
}

/* =========================================================
   v10.6.2 — PULIDO PREMIUM MÓVIL FINAL
   - Tarjetas compactas con mejor lectura y menos altura.
   - Tarjetas grandes algo más anchas y compactas.
   - Iconos/listas más ligeros y CTA con mayor presencia.
   - Microinteracciones táctiles suaves.
   ========================================================= */
@media (max-width:760px){
  /* Ruta superior: más aire para el texto y menos volumen visual */
  body .nphb-hero .nphb-roadmap{
    gap:11px!important;
  }

  body .nphb-hero .nphb-roadmap .nphb-level{
    grid-template-columns:50px minmax(0,1fr) 34px!important;
    column-gap:12px!important;
    min-height:108px!important;
    padding:13px 12px!important;
    border-radius:20px!important;
    transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease!important;
  }

  body .nphb-hero .nphb-roadmap .nphb-level-icon{
    width:50px!important;
    height:50px!important;
    min-width:50px!important;
    border-radius:15px!important;
    font-size:25px!important;
  }

  body .nphb-hero .nphb-roadmap .nphb-level-tag{
    margin-bottom:4px!important;
    font-size:11px!important;
    line-height:1.1!important;
    letter-spacing:.05em!important;
  }

  body .nphb-hero .nphb-roadmap .nphb-level h2{
    margin-bottom:4px!important;
    font-size:21px!important;
    line-height:1.02!important;
    white-space:nowrap!important;
    overflow:visible!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }

  body .nphb-hero .nphb-roadmap .nphb-level p{
    font-size:14px!important;
    line-height:1.24!important;
  }

  body .nphb-hero .nphb-roadmap .nphb-level-arrow{
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
  }

  body .nphb-hero .nphb-roadmap .nphb-level-arrow svg{
    width:17px!important;
    height:17px!important;
  }

  body .nphb-hero .nphb-roadmap .nphb-level:active{
    transform:translateY(-2px) scale(.995)!important;
    box-shadow:0 14px 30px rgba(24,55,110,.13)!important;
  }

  /* Beneficios: un poco más anchos y compactos */
  body .nphb-features{
    width:calc(100% + 14px)!important;
    max-width:calc(100% + 14px)!important;
    margin-left:-7px!important;
    margin-right:-7px!important;
  }

  body .nphb-features .nphb-feature{
    padding-top:13px!important;
    padding-bottom:13px!important;
  }

  /* Ruta completa casi a ancho total, conservando borde de seguridad */
  body .nphb-learning-path{
    width:calc(100vw - 6px)!important;
    max-width:calc(100vw - 6px)!important;
    padding-left:7px!important;
    padding-right:7px!important;
  }

  body .nphb-learning-path .nphb-path-grid{
    gap:14px!important;
  }

  body .nphb-learning-path .nphb-path-card{
    padding:18px 16px 17px!important;
    border-radius:22px!important;
    transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease!important;
  }

  body .nphb-learning-path .nphb-path-card:active{
    transform:translateY(-2px) scale(.997)!important;
    box-shadow:0 18px 38px rgba(24,55,110,.13)!important;
  }

  body .nphb-learning-path .nphb-path-top{
    min-height:58px!important;
    margin-bottom:11px!important;
  }

  body .nphb-learning-path .nphb-path-icon{
    width:56px!important;
    height:56px!important;
    min-width:56px!important;
    border-radius:17px!important;
  }

  body .nphb-learning-path .nphb-path-icon svg{
    width:29px!important;
    height:29px!important;
  }

  body .nphb-learning-path .nphb-path-number{
    width:48px!important;
    height:48px!important;
    min-width:48px!important;
    font-size:20px!important;
  }

  body .nphb-learning-path .nphb-path-meta{
    gap:7px!important;
    margin-bottom:8px!important;
  }

  body .nphb-learning-path .nphb-path-meta span,
  body .nphb-learning-path .nphb-course-status{
    min-height:31px!important;
    padding:6px 11px!important;
    font-size:12px!important;
  }

  body .nphb-learning-path .nphb-path-card h3{
    margin-top:11px!important;
    margin-bottom:7px!important;
    font-size:clamp(28px,7.7vw,34px)!important;
    line-height:1.03!important;
  }

  body .nphb-learning-path .nphb-path-card > .nphb-path-content > p{
    margin-bottom:12px!important;
    font-size:16px!important;
    line-height:1.36!important;
  }

  body .nphb-learning-path .nphb-path-difficulty{
    padding:10px 0!important;
    margin:0 0 9px!important;
  }

  body .nphb-learning-path .nphb-skill-list{
    gap:3px!important;
    margin:5px 0 10px!important;
  }

  body .nphb-learning-path .nphb-skill-list li{
    min-height:37px!important;
    gap:9px!important;
    font-size:15px!important;
    line-height:1.22!important;
  }

  body .nphb-learning-path .nphb-skill-icon{
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    border-radius:10px!important;
  }

  body .nphb-learning-path .nphb-skill-icon svg{
    width:18px!important;
    height:18px!important;
  }

  /* CTA más reconocible sin convertirlo en un bloque pesado */
  body .nphb-learning-path .nphb-path-link{
    min-height:46px!important;
    margin-top:8px!important;
    padding:11px 13px!important;
    border-radius:12px!important;
    font-size:15px!important;
    font-weight:850!important;
    background:color-mix(in srgb,currentColor 7%,#fff)!important;
    border-width:1px!important;
  }

  body .nphb-learning-path .nphb-path-link svg{
    width:18px!important;
    height:18px!important;
  }
}

@media (max-width:390px){
  body .nphb-hero .nphb-roadmap .nphb-level{
    grid-template-columns:47px minmax(0,1fr) 32px!important;
    column-gap:10px!important;
    min-height:104px!important;
    padding:12px 10px!important;
  }
  body .nphb-hero .nphb-roadmap .nphb-level-icon{
    width:47px!important;height:47px!important;min-width:47px!important;
  }
  body .nphb-hero .nphb-roadmap .nphb-level h2{
    font-size:19px!important;
  }
  body .nphb-hero .nphb-roadmap .nphb-level p{
    font-size:13px!important;
  }
  body .nphb-learning-path{
    width:calc(100vw - 4px)!important;
    max-width:calc(100vw - 4px)!important;
    padding-left:6px!important;
    padding-right:6px!important;
  }
  body .nphb-learning-path .nphb-path-card{
    padding:17px 14px 16px!important;
  }
}


/* =========================================================
   v10.6.3 — ACABADO PREMIUM FINAL
   Pulido de altura, CTA, ventajas y cierre de la Home.
   Mantiene intacto el escritorio y la configuración existente.
   ========================================================= */

@media (max-width:760px){

  /* Tarjetas grandes: entre un 8 % y un 12 % más compactas */
  body .nphb-learning-path .nphb-path-grid{
    gap:12px!important;
  }

  body .nphb-learning-path .nphb-path-card{
    padding:15px 15px 14px!important;
    border-radius:21px!important;
  }

  body .nphb-learning-path .nphb-path-accent{
    top:14px!important;
    left:15px!important;
    right:15px!important;
    height:5px!important;
    border-radius:999px!important;
  }

  body .nphb-learning-path .nphb-path-top{
    min-height:51px!important;
    margin-bottom:8px!important;
  }

  body .nphb-learning-path .nphb-path-icon{
    width:50px!important;
    height:50px!important;
    min-width:50px!important;
    border-radius:15px!important;
  }

  body .nphb-learning-path .nphb-path-icon svg{
    width:25px!important;
    height:25px!important;
  }

  body .nphb-learning-path .nphb-path-number{
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    font-size:19px!important;
    box-shadow:0 7px 17px rgba(20,55,110,.10)!important;
  }

  body .nphb-learning-path .nphb-path-meta{
    gap:6px!important;
    margin-bottom:6px!important;
  }

  body .nphb-learning-path .nphb-path-meta span,
  body .nphb-learning-path .nphb-course-status{
    min-height:28px!important;
    padding:5px 10px!important;
    font-size:11px!important;
    line-height:1.1!important;
  }

  body .nphb-learning-path .nphb-path-card h3{
    margin-top:8px!important;
    margin-bottom:5px!important;
    font-size:clamp(27px,7.4vw,32px)!important;
    line-height:1.02!important;
  }

  body .nphb-learning-path .nphb-path-card > .nphb-path-content > p{
    margin-bottom:9px!important;
    font-size:15px!important;
    line-height:1.32!important;
  }

  body .nphb-learning-path .nphb-path-difficulty{
    min-height:38px!important;
    padding:7px 0!important;
    margin:0 0 6px!important;
  }

  body .nphb-learning-path .nphb-path-difficulty > span:first-child{
    font-size:11px!important;
  }

  body .nphb-learning-path .nphb-dots{
    gap:7px!important;
  }

  body .nphb-learning-path .nphb-dots i{
    width:9px!important;
    height:9px!important;
  }

  body .nphb-learning-path .nphb-skill-list{
    gap:1px!important;
    margin:3px 0 7px!important;
  }

  body .nphb-learning-path .nphb-skill-list li{
    min-height:34px!important;
    gap:8px!important;
    font-size:14px!important;
    line-height:1.18!important;
  }

  body .nphb-learning-path .nphb-skill-icon{
    width:31px!important;
    height:31px!important;
    min-width:31px!important;
    border-radius:9px!important;
  }

  body .nphb-learning-path .nphb-skill-icon svg{
    width:16px!important;
    height:16px!important;
  }

  /* CTA con mayor presencia pero sin convertirse en botón pesado */
  body .nphb-learning-path .nphb-path-link{
    width:max-content!important;
    max-width:100%!important;
    min-height:43px!important;
    margin-top:6px!important;
    padding:10px 14px!important;
    border:1px solid color-mix(in srgb,currentColor 16%,transparent)!important;
    border-radius:13px!important;
    background:
      linear-gradient(135deg,
        color-mix(in srgb,currentColor 10%,#fff),
        color-mix(in srgb,currentColor 4%,#fff)
      )!important;
    box-shadow:0 8px 20px color-mix(in srgb,currentColor 8%,transparent)!important;
  }

  body .nphb-learning-path .nphb-path-link:not(.nphb-path-link-disabled):active{
    transform:translateY(-1px) scale(.985)!important;
  }

  body .nphb-learning-path .nphb-path-link svg{
    transition:transform .2s ease!important;
  }

  body .nphb-learning-path .nphb-path-link:not(.nphb-path-link-disabled):active svg{
    transform:translateX(3px)!important;
  }

  /* Ventajas: mini tarjetas premium en lugar de una lista plana */
  body .nphb-features{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:9px!important;
    padding:12px!important;
    border-radius:24px!important;
    background:rgba(255,255,255,.84)!important;
    box-shadow:0 18px 42px rgba(22,49,93,.08)!important;
  }

  body .nphb-features .nphb-feature{
    min-height:68px!important;
    padding:11px 12px!important;
    border:1px solid rgba(34,88,190,.08)!important;
    border-radius:16px!important;
    background:linear-gradient(145deg,#fff,rgba(244,248,255,.72))!important;
    box-shadow:0 7px 18px rgba(22,49,93,.045)!important;
  }

  body .nphb-features .nphb-feature + .nphb-feature{
    border-top:1px solid rgba(34,88,190,.08)!important;
  }

  body .nphb-features .nphb-feature-icon{
    width:43px!important;
    height:43px!important;
    min-width:43px!important;
    border-radius:13px!important;
    font-size:21px!important;
    box-shadow:0 6px 15px rgba(22,49,93,.07)!important;
  }

  body .nphb-features .nphb-feature strong{
    font-size:16px!important;
    line-height:1.18!important;
  }

  body .nphb-features .nphb-feature p{
    margin-top:3px!important;
    font-size:13px!important;
    line-height:1.25!important;
  }

  /* Cierre de la ruta y firma algo más compacto */
  body .nphb-learning-path .nphb-path-signature-wrap{
    margin-top:12px!important;
    padding-top:12px!important;
  }

  body .nphb-learning-path .nphb-brand-signature-path{
    min-height:66px!important;
    padding:10px 12px!important;
    border-radius:16px!important;
  }

  /* Footer de Astra: cierre más limpio sin modificar su contenido */
  body.home .site-footer,
  body.home .site-primary-footer-wrap,
  body.home .site-below-footer-wrap{
    background:linear-gradient(180deg,#fff 0%,#f6f9ff 100%)!important;
  }

  body.home .site-below-footer-wrap{
    padding-top:20px!important;
    padding-bottom:20px!important;
    border-top:1px solid rgba(31,94,218,.10)!important;
  }

  body.home .site-below-footer-wrap,
  body.home .site-below-footer-wrap a,
  body.home .ast-footer-copyright{
    color:#40506d!important;
    font-size:13px!important;
    line-height:1.45!important;
  }
}

@media (max-width:390px){
  body .nphb-learning-path .nphb-path-card{
    padding:14px 13px 13px!important;
  }

  body .nphb-learning-path .nphb-path-card h3{
    font-size:clamp(25px,7.2vw,29px)!important;
  }

  body .nphb-learning-path .nphb-path-meta span,
  body .nphb-learning-path .nphb-course-status{
    padding-left:9px!important;
    padding-right:9px!important;
  }
}


/* =========================================================
   v10.6.4 — WEB + MÓVIL EQUILIBRADO
   Compactación de las tarjetas grandes en escritorio y tablet.
   Conserva el acabado móvil de v10.6.3.
   ========================================================= */

/* Escritorio amplio */
@media (min-width:1101px){

  body .nphb-learning-path .nphb-path-grid{
    align-items:stretch!important;
    gap:12px!important;
  }

  body .nphb-learning-path .nphb-path-card{
    min-height:560px!important;
    padding:17px 16px 15px!important;
    border-radius:19px!important;
  }

  body .nphb-learning-path .nphb-path-accent{
    top:14px!important;
    left:16px!important;
    right:16px!important;
    height:5px!important;
  }

  body .nphb-learning-path .nphb-path-top{
    min-height:50px!important;
    margin-bottom:7px!important;
  }

  body .nphb-learning-path .nphb-path-icon{
    width:48px!important;
    height:48px!important;
    min-width:48px!important;
    border-radius:14px!important;
  }

  body .nphb-learning-path .nphb-path-icon svg{
    width:24px!important;
    height:24px!important;
  }

  body .nphb-learning-path .nphb-path-number{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    font-size:17px!important;
  }

  body .nphb-learning-path .nphb-path-meta{
    gap:5px!important;
    margin-bottom:5px!important;
  }

  body .nphb-learning-path .nphb-path-meta span,
  body .nphb-learning-path .nphb-course-status{
    min-height:24px!important;
    padding:4px 8px!important;
    font-size:9px!important;
    line-height:1.05!important;
  }

  body .nphb-learning-path .nphb-path-card h3{
    margin-top:6px!important;
    margin-bottom:4px!important;
    font-size:22px!important;
    line-height:1.04!important;
  }

  body .nphb-learning-path .nphb-path-card > .nphb-path-content > p{
    min-height:48px!important;
    margin-bottom:7px!important;
    font-size:12px!important;
    line-height:1.32!important;
  }

  body .nphb-learning-path .nphb-path-difficulty{
    min-height:32px!important;
    margin:0 0 4px!important;
    padding:5px 0!important;
  }

  body .nphb-learning-path .nphb-path-difficulty > span:first-child{
    font-size:9px!important;
  }

  body .nphb-learning-path .nphb-dots{
    gap:5px!important;
  }

  body .nphb-learning-path .nphb-dots i{
    width:7px!important;
    height:7px!important;
  }

  body .nphb-learning-path .nphb-skill-list{
    gap:0!important;
    margin:2px 0 5px!important;
  }

  body .nphb-learning-path .nphb-skill-list li{
    min-height:30px!important;
    gap:7px!important;
    font-size:11px!important;
    line-height:1.18!important;
  }

  body .nphb-learning-path .nphb-skill-icon{
    width:25px!important;
    height:25px!important;
    min-width:25px!important;
    border-radius:7px!important;
  }

  body .nphb-learning-path .nphb-skill-icon svg{
    width:13px!important;
    height:13px!important;
  }

  body .nphb-learning-path .nphb-path-link{
    min-height:34px!important;
    margin-top:auto!important;
    padding:7px 10px!important;
    border-radius:10px!important;
    font-size:11px!important;
  }

  body .nphb-learning-path .nphb-path-link svg{
    width:14px!important;
    height:14px!important;
  }

  body .nphb-learning-path .nphb-path-content{
    display:flex!important;
    flex-direction:column!important;
    height:100%!important;
  }

  body .nphb-learning-path .nphb-path-signature-wrap{
    margin-top:18px!important;
    padding-top:14px!important;
  }
}

/* Portátiles y tablets horizontales */
@media (min-width:761px) and (max-width:1100px){

  body .nphb-learning-path .nphb-path-grid{
    gap:10px!important;
  }

  body .nphb-learning-path .nphb-path-card{
    min-height:540px!important;
    padding:15px 14px 14px!important;
  }

  body .nphb-learning-path .nphb-path-icon{
    width:46px!important;
    height:46px!important;
    min-width:46px!important;
  }

  body .nphb-learning-path .nphb-path-number{
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
  }

  body .nphb-learning-path .nphb-path-card h3{
    font-size:20px!important;
  }

  body .nphb-learning-path .nphb-path-card > .nphb-path-content > p{
    min-height:46px!important;
    font-size:12px!important;
  }

  body .nphb-learning-path .nphb-skill-list li{
    min-height:29px!important;
    font-size:11px!important;
  }

  body .nphb-learning-path .nphb-path-link{
    margin-top:auto!important;
  }

  body .nphb-learning-path .nphb-path-content{
    display:flex!important;
    flex-direction:column!important;
    height:100%!important;
  }
}

/* Ajuste adicional móvil: mantiene lo logrado y evita exceso de hueco inferior */
@media (max-width:760px){

  body .nphb-learning-path .nphb-path-card{
    min-height:auto!important;
  }

  body .nphb-learning-path .nphb-path-content{
    display:flex!important;
    flex-direction:column!important;
  }

  body .nphb-learning-path .nphb-path-link{
    margin-top:7px!important;
  }

  body .nphb-learning-path .nphb-path-card > .nphb-path-content > p{
    min-height:auto!important;
  }
}


/* =========================================================
   v10.6.5 — TARJETAS WEB PREMIUM COMPACTAS
   Elimina el espacio vacío inferior y acerca el CTA al contenido.
   ========================================================= */

@media (min-width:1101px){

  body .nphb-learning-path .nphb-path-grid{
    align-items:stretch!important;
  }

  body .nphb-learning-path .nphb-path-card{
    min-height:0!important;
    height:auto!important;
    padding-bottom:14px!important;
  }

  body .nphb-learning-path .nphb-path-content{
    display:block!important;
    height:auto!important;
  }

  body .nphb-learning-path .nphb-path-card > .nphb-path-content > p{
    min-height:0!important;
  }

  body .nphb-learning-path .nphb-path-link{
    margin-top:8px!important;
    margin-bottom:0!important;
  }

  body .nphb-learning-path .nphb-skill-list{
    margin-bottom:4px!important;
  }

  /* Altura visual común más compacta sin empujar el CTA al fondo */
  body .nphb-learning-path .nphb-path-card{
    min-height:500px!important;
  }
}

/* Ajuste intermedio para portátiles */
@media (min-width:761px) and (max-width:1100px){

  body .nphb-learning-path .nphb-path-card{
    min-height:500px!important;
    height:auto!important;
    padding-bottom:14px!important;
  }

  body .nphb-learning-path .nphb-path-content{
    display:block!important;
    height:auto!important;
  }

  body .nphb-learning-path .nphb-path-card > .nphb-path-content > p{
    min-height:0!important;
  }

  body .nphb-learning-path .nphb-path-link{
    margin-top:8px!important;
  }
}


/* =========================================================
   v10.6.6 — TARJETAS WEB SIN ESPACIO VACÍO
   Anula las alturas forzadas anteriores y usa altura real.
   ========================================================= */

@media (min-width:1101px){

  body .nphb-learning-path .nphb-path-grid{
    align-items:start!important;
  }

  body .nphb-learning-path .nphb-path-card{
    min-height:0!important;
    height:auto!important;
    align-self:start!important;
    padding-bottom:15px!important;
  }

  body .nphb-learning-path .nphb-path-content{
    display:block!important;
    height:auto!important;
    min-height:0!important;
  }

  body .nphb-learning-path .nphb-path-card > .nphb-path-content > p{
    min-height:0!important;
    height:auto!important;
  }

  body .nphb-learning-path .nphb-skill-list{
    margin-bottom:5px!important;
  }

  body .nphb-learning-path .nphb-path-link{
    position:static!important;
    margin:8px 0 0!important;
    align-self:flex-start!important;
  }

  /* Evita que reglas flex anteriores empujen el CTA al fondo */
  body .nphb-learning-path .nphb-path-card,
  body .nphb-learning-path .nphb-path-content{
    justify-content:flex-start!important;
  }

  /* Pequeño refinamiento premium */
  body .nphb-learning-path .nphb-path-card{
    box-shadow:0 14px 34px rgba(24,58,108,.07)!important;
    transition:transform .22s ease, box-shadow .22s ease!important;
  }

  body .nphb-learning-path .nphb-path-card:hover{
    transform:translateY(-3px)!important;
    box-shadow:0 20px 44px rgba(24,58,108,.11)!important;
  }

  body .nphb-learning-path .nphb-path-grid{
    margin-bottom:18px!important;
  }

  body .nphb-learning-path .nphb-path-signature-wrap{
    margin-top:8px!important;
    padding-top:14px!important;
  }
}


/* =========================================================
   v10.6.7 — CTA MÓVIL CON MARGEN
   Más aire para el texto y la flecha dentro de los botones.
   ========================================================= */

@media (max-width:760px){

  body .nphb-learning-path .nphb-path-link{
    padding-left:18px!important;
    padding-right:18px!important;
    gap:12px!important;
  }

  body .nphb-learning-path .nphb-path-link span,
  body .nphb-learning-path .nphb-path-link strong{
    display:inline-block!important;
  }

  body .nphb-learning-path .nphb-path-link svg{
    flex:0 0 auto!important;
    margin-left:2px!important;
  }
}

@media (max-width:390px){

  body .nphb-learning-path .nphb-path-link{
    padding-left:16px!important;
    padding-right:16px!important;
    gap:10px!important;
  }
}


/* =========================================================
   v10.6.8 — CORRECCIÓN REAL DEL CTA MÓVIL
   La regla antigua de CCST/CCNA tenía mayor especificidad y
   anulaba el margen izquierdo hasta que Safari activaba :hover.
   ========================================================= */

@media (max-width:760px){

  body .nphb-learning-path .nphb-path-card-ccst
  .nphb-path-link:not(.nphb-path-link-disabled),
  body .nphb-learning-path .nphb-path-card-ccna
  .nphb-path-link:not(.nphb-path-link-disabled){
    padding:10px 18px!important;
    gap:12px!important;
    transform:none!important;
  }

  body .nphb-learning-path .nphb-path-card-ccst
  .nphb-path-link:not(.nphb-path-link-disabled):hover,
  body .nphb-learning-path .nphb-path-card-ccna
  .nphb-path-link:not(.nphb-path-link-disabled):hover,
  body .nphb-learning-path .nphb-path-card-ccst
  .nphb-path-link:not(.nphb-path-link-disabled):focus,
  body .nphb-learning-path .nphb-path-card-ccna
  .nphb-path-link:not(.nphb-path-link-disabled):focus,
  body .nphb-learning-path .nphb-path-card-ccst
  .nphb-path-link:not(.nphb-path-link-disabled):active,
  body .nphb-learning-path .nphb-path-card-ccna
  .nphb-path-link:not(.nphb-path-link-disabled):active{
    padding:10px 18px!important;
    transform:none!important;
  }

  body .nphb-learning-path .nphb-path-card-ccst
  .nphb-path-link:not(.nphb-path-link-disabled) svg,
  body .nphb-learning-path .nphb-path-card-ccna
  .nphb-path-link:not(.nphb-path-link-disabled) svg{
    margin-left:2px!important;
    transform:none!important;
  }
}

/* Safari/iPhone puede mantener :hover tras tocar.
   En pantallas táctiles se anula completamente ese efecto. */
@media (hover:none) and (pointer:coarse){

  body .nphb-learning-path .nphb-path-card-ccst
  .nphb-path-link:not(.nphb-path-link-disabled):hover,
  body .nphb-learning-path .nphb-path-card-ccna
  .nphb-path-link:not(.nphb-path-link-disabled):hover{
    padding:10px 18px!important;
    transform:none!important;
  }

  body .nphb-learning-path .nphb-path-card-ccst
  .nphb-path-link:not(.nphb-path-link-disabled):hover::before,
  body .nphb-learning-path .nphb-path-card-ccna
  .nphb-path-link:not(.nphb-path-link-disabled):hover::before{
    opacity:0!important;
    transform:scale(.92)!important;
  }

  body .nphb-learning-path .nphb-path-card-ccst
  .nphb-path-link:not(.nphb-path-link-disabled):hover svg,
  body .nphb-learning-path .nphb-path-card-ccna
  .nphb-path-link:not(.nphb-path-link-disabled):hover svg{
    transform:none!important;
  }
}

@media (max-width:390px){

  body .nphb-learning-path .nphb-path-card-ccst
  .nphb-path-link:not(.nphb-path-link-disabled),
  body .nphb-learning-path .nphb-path-card-ccna
  .nphb-path-link:not(.nphb-path-link-disabled),
  body .nphb-learning-path .nphb-path-card-ccst
  .nphb-path-link:not(.nphb-path-link-disabled):hover,
  body .nphb-learning-path .nphb-path-card-ccna
  .nphb-path-link:not(.nphb-path-link-disabled):hover,
  body .nphb-learning-path .nphb-path-card-ccst
  .nphb-path-link:not(.nphb-path-link-disabled):active,
  body .nphb-learning-path .nphb-path-card-ccna
  .nphb-path-link:not(.nphb-path-link-disabled):active{
    padding-left:16px!important;
    padding-right:16px!important;
    gap:10px!important;
  }
}

/* =========================================================
   NEXTPING HOME BUILDER — RESPONSIVE CONTROLS v10.7.1
   Los valores proceden del panel y solo afectan a esta Home.
   ========================================================= */
body .nphb-hero{padding-top:var(--nphb-section-desktop,68px);padding-left:var(--nphb-pad-desktop,24px);padding-right:var(--nphb-pad-desktop,24px)}
body .nphb-hero .nphb-inner,body .nphb-hero .nphb-features{width:min(var(--nphb-layout-desktop-width,1380px),100%);max-width:var(--nphb-layout-desktop-width,1380px);gap:var(--nphb-gap-desktop,28px)}
body .nphb-learning-path{padding-top:var(--nphb-section-desktop,68px);padding-left:var(--nphb-pad-desktop,24px);padding-right:var(--nphb-pad-desktop,24px)}
body .nphb-learning-path .nphb-path-shell{width:min(var(--nphb-layout-desktop-width,1380px),100%);max-width:var(--nphb-layout-desktop-width,1380px)}
body .nphb-learning-path .nphb-path-grid{grid-template-columns:repeat(var(--nphb-cols-desktop,5),minmax(0,1fr));gap:var(--nphb-gap-desktop,28px)}
@media(max-width:1024px){
  body .nphb-hero{padding-top:var(--nphb-section-tablet,56px);padding-left:var(--nphb-pad-tablet,22px);padding-right:var(--nphb-pad-tablet,22px)}
  body .nphb-hero .nphb-inner,body .nphb-hero .nphb-features{width:min(var(--nphb-layout-tablet-width,960px),100%);max-width:var(--nphb-layout-tablet-width,960px);gap:var(--nphb-gap-tablet,22px)}
  body .nphb-learning-path{padding-top:var(--nphb-section-tablet,56px);padding-left:var(--nphb-pad-tablet,22px);padding-right:var(--nphb-pad-tablet,22px)}
  body .nphb-learning-path .nphb-path-shell{width:min(var(--nphb-layout-tablet-width,960px),100%);max-width:var(--nphb-layout-tablet-width,960px)}
  body .nphb-learning-path .nphb-path-grid{grid-template-columns:repeat(var(--nphb-cols-tablet,2),minmax(0,1fr));gap:var(--nphb-gap-tablet,22px)}
}
@media(max-width:760px){
  body .nphb-hero{padding-top:var(--nphb-section-mobile,38px);padding-left:var(--nphb-pad-mobile,15px);padding-right:var(--nphb-pad-mobile,15px)}
  body .nphb-hero .nphb-inner,body .nphb-hero .nphb-features{width:min(var(--nphb-layout-mobile-width,430px),100%);max-width:var(--nphb-layout-mobile-width,430px);gap:var(--nphb-gap-mobile,14px)}
  body .nphb-learning-path{padding-top:var(--nphb-section-mobile,38px);padding-left:var(--nphb-pad-mobile,15px);padding-right:var(--nphb-pad-mobile,15px)}
  body .nphb-learning-path .nphb-path-shell{width:min(var(--nphb-layout-mobile-width,430px),100%);max-width:var(--nphb-layout-mobile-width,430px)}
  body .nphb-learning-path .nphb-path-grid{grid-template-columns:repeat(var(--nphb-cols-mobile,1),minmax(0,1fr));gap:var(--nphb-gap-mobile,14px)}
}

/* =========================================================
   v10.7.5 — CONTROLES DE TAMAÑO DE LA RUTA VISUAL DEL HERO
   ========================================================= */
@media (min-width:1181px){
  body .nphb-hero .nphb-roadmap{
    width:min(var(--nphb-roadmap-width-desktop,780px),100%)!important;
    min-height:var(--nphb-roadmap-height-desktop,610px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  body .nphb-hero .nphb-level{
    width:var(--nphb-roadmap-card-width-desktop,250px)!important;
    min-height:var(--nphb-roadmap-card-height-desktop,104px)!important;
    padding:var(--nphb-roadmap-card-padding-desktop,17px)!important;
  }
  body .nphb-hero .nphb-level-icon{
    flex-basis:var(--nphb-roadmap-icon-desktop,48px)!important;
    width:var(--nphb-roadmap-icon-desktop,48px)!important;
    height:var(--nphb-roadmap-icon-desktop,48px)!important;
  }
}

@media (min-width:761px) and (max-width:1180px){
  body .nphb-hero .nphb-roadmap{
    width:min(var(--nphb-roadmap-width-tablet,720px),100%)!important;
    min-height:var(--nphb-roadmap-height-tablet,570px)!important;
  }
  body .nphb-hero .nphb-level{
    width:var(--nphb-roadmap-card-width-tablet,230px)!important;
    min-height:var(--nphb-roadmap-card-height-tablet,98px)!important;
    padding:var(--nphb-roadmap-card-padding-tablet,15px)!important;
  }
  body .nphb-hero .nphb-level-icon{
    flex-basis:var(--nphb-roadmap-icon-tablet,46px)!important;
    width:var(--nphb-roadmap-icon-tablet,46px)!important;
    height:var(--nphb-roadmap-icon-tablet,46px)!important;
  }
}

@media (max-width:760px){
  body .nphb-hero .nphb-level{
    min-height:var(--nphb-roadmap-card-height-mobile,82px)!important;
    padding:var(--nphb-roadmap-card-padding-mobile,14px)!important;
  }
  body .nphb-hero .nphb-level-icon{
    flex-basis:var(--nphb-roadmap-icon-mobile,45px)!important;
    width:var(--nphb-roadmap-icon-mobile,45px)!important;
    height:var(--nphb-roadmap-icon-mobile,45px)!important;
  }
}

/* =========================================================
   v10.7.7 — TAMAÑO Y POSICIÓN INDIVIDUAL DE CADA NIVEL
   ========================================================= */
@media (min-width:1181px){
  body .nphb-hero .nphb-roadmap .nphb-level-ccst{width:var(--nphb-ccst-width-desktop,250px)!important;min-height:var(--nphb-ccst-height-desktop,104px)!important;transform:translate(var(--nphb-ccst-x-desktop,0),var(--nphb-ccst-y-desktop,0))!important}
  body .nphb-hero .nphb-roadmap .nphb-level-ccna{width:var(--nphb-ccna-width-desktop,250px)!important;min-height:var(--nphb-ccna-height-desktop,104px)!important;transform:translate(var(--nphb-ccna-x-desktop,0),var(--nphb-ccna-y-desktop,0))!important}
  body .nphb-hero .nphb-roadmap .nphb-level-encor{width:var(--nphb-encor-width-desktop,250px)!important;min-height:var(--nphb-encor-height-desktop,104px)!important;transform:translate(var(--nphb-encor-x-desktop,0),var(--nphb-encor-y-desktop,0))!important}
  body .nphb-hero .nphb-roadmap .nphb-level-enarsi{width:var(--nphb-enarsi-width-desktop,250px)!important;min-height:var(--nphb-enarsi-height-desktop,104px)!important;transform:translate(var(--nphb-enarsi-x-desktop,0),var(--nphb-enarsi-y-desktop,0))!important}
  body .nphb-hero .nphb-roadmap .nphb-level-ccie{width:var(--nphb-ccie-width-desktop,250px)!important;min-height:var(--nphb-ccie-height-desktop,104px)!important;transform:translate(var(--nphb-ccie-x-desktop,0),var(--nphb-ccie-y-desktop,0))!important}
}
@media (min-width:761px) and (max-width:1180px){
  body .nphb-hero .nphb-roadmap .nphb-level-ccst{width:var(--nphb-ccst-width-tablet,230px)!important;min-height:var(--nphb-ccst-height-tablet,98px)!important;transform:translate(var(--nphb-ccst-x-tablet,0),var(--nphb-ccst-y-tablet,0))!important}
  body .nphb-hero .nphb-roadmap .nphb-level-ccna{width:var(--nphb-ccna-width-tablet,230px)!important;min-height:var(--nphb-ccna-height-tablet,98px)!important;transform:translate(var(--nphb-ccna-x-tablet,0),var(--nphb-ccna-y-tablet,0))!important}
  body .nphb-hero .nphb-roadmap .nphb-level-encor{width:var(--nphb-encor-width-tablet,230px)!important;min-height:var(--nphb-encor-height-tablet,98px)!important;transform:translate(var(--nphb-encor-x-tablet,0),var(--nphb-encor-y-tablet,0))!important}
  body .nphb-hero .nphb-roadmap .nphb-level-enarsi{width:var(--nphb-enarsi-width-tablet,230px)!important;min-height:var(--nphb-enarsi-height-tablet,98px)!important;transform:translate(var(--nphb-enarsi-x-tablet,0),var(--nphb-enarsi-y-tablet,0))!important}
  body .nphb-hero .nphb-roadmap .nphb-level-ccie{width:var(--nphb-ccie-width-tablet,230px)!important;min-height:var(--nphb-ccie-height-tablet,98px)!important;transform:translate(var(--nphb-ccie-x-tablet,0),var(--nphb-ccie-y-tablet,0))!important}
}
@media (max-width:760px){
  body .nphb-hero .nphb-roadmap .nphb-level-ccst{min-height:var(--nphb-ccst-height-mobile,82px)!important}
  body .nphb-hero .nphb-roadmap .nphb-level-ccna{min-height:var(--nphb-ccna-height-mobile,82px)!important}
  body .nphb-hero .nphb-roadmap .nphb-level-encor{min-height:var(--nphb-encor-height-mobile,82px)!important}
  body .nphb-hero .nphb-roadmap .nphb-level-enarsi{min-height:var(--nphb-enarsi-height-mobile,82px)!important}
  body .nphb-hero .nphb-roadmap .nphb-level-ccie{min-height:var(--nphb-ccie-height-mobile,82px)!important}
}
body .nphb-hero .nphb-level.nphb-admin-highlight{outline:4px solid rgba(36,87,245,.42)!important;outline-offset:5px!important;transition:outline-color .2s ease!important}


/* =========================================================
   v10.7.8 — CORRECCIÓN DE ALINEACIÓN DEL BLOQUE DE CONFIANZA EN TABLET
   En el breakpoint tablet la regla general centraba el conjunto.
   Se mantiene a la izquierda, igual que el texto, sin afectar móvil.
   ========================================================= */
@media (min-width: 761px) and (max-width: 1180px) {
  .nphb-copy .nphb-trust {
    justify-content: flex-start !important;
    width: 100%;
    text-align: left !important;
  }

  .nphb-copy .nphb-trust > div:last-child {
    display: flex;
    flex-direction: column;
    align-items: flex-start !important;
    text-align: left !important;
  }

  .nphb-copy .nphb-stars {
    align-self: flex-start !important;
    width: auto;
    margin-left: 0 !important;
    margin-right: auto !important;
    text-align: left !important;
  }

  .nphb-copy .nphb-trust p {
    text-align: left !important;
  }
}


/* v10.7.9 · Control responsive independiente del logo principal */
.nphb-hero-brand-logo-only{
  width:min(100%,var(--nphb-logo-desktop,390px))!important;
  max-width:none!important;
  transform:translate(var(--nphb-logo-x-desktop,0px),var(--nphb-logo-y-desktop,0px))!important;
}
.nphb-hero-brand-logo-only .nphb-hero-brand-logo,
.nphb-hero-brand-logo-only .nphb-hero-brand-logo img{
  width:100%!important;
}
@media(min-width:761px) and (max-width:1180px){
  .nphb-hero-brand-logo-only{
    width:min(100%,var(--nphb-logo-tablet,370px))!important;
    transform:translate(var(--nphb-logo-x-tablet,0px),var(--nphb-logo-y-tablet,0px))!important;
  }
}
@media(max-width:760px){
  .nphb-hero-brand-logo-only{
    width:min(100%,var(--nphb-logo-mobile,330px))!important;
    transform:translate(var(--nphb-logo-x-mobile,0px),var(--nphb-logo-y-mobile,0px))!important;
  }
}


/* v10.8.0 Learning path tabs */
body .nphb-learning-path .nphb-route-tabs{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;align-items:center;margin:0 0 18px}
body .nphb-learning-path .nphb-route-tab{appearance:none;border:1px solid #d8e3f3;background:#fff;color:#304665;border-radius:999px;padding:10px 18px;font-size:14px;font-weight:800;line-height:1.1;cursor:pointer;box-shadow:0 8px 18px rgba(20,48,92,.05);transition:all .2s ease}
body .nphb-learning-path .nphb-route-tab:hover{transform:translateY(-1px);border-color:#b9cdf0;color:#183e84}
body .nphb-learning-path .nphb-route-tab.is-active{background:linear-gradient(135deg,#2457f5,#1645d6);border-color:#1645d6;color:#fff;box-shadow:0 12px 24px rgba(36,87,245,.22)}
body .nphb-learning-path .nphb-route-panels{position:relative}
body .nphb-learning-path .nphb-route-panel{display:block}
body .nphb-learning-path .nphb-route-panel[hidden]{display:none!important}
body .nphb-learning-path .nphb-route-copy{max-width:840px;margin:0 auto 18px;text-align:center}
body .nphb-learning-path .nphb-route-copy p{margin:0!important;color:#6a7b92;font-size:15px;line-height:1.6}
body .nphb-learning-path .nphb-route-panel .nphb-path-grid{grid-template-columns:repeat(var(--nphb-route-cols,5),minmax(0,1fr));gap:14px}
body .nphb-learning-path .nphb-route-panel .nphb-path-grid::before{display:block}
body .nphb-learning-path .nphb-route-panel .nphb-path-card{min-height:320px;padding:18px 18px 16px}
body .nphb-learning-path .nphb-route-panel .nphb-path-card h3{font-size:19px!important}
body .nphb-learning-path .nphb-route-panel .nphb-path-card > .nphb-path-content > p{min-height:40px;margin-bottom:12px!important;font-size:12.8px;line-height:1.48}
body .nphb-learning-path .nphb-route-panel .nphb-skill-list{gap:5px;margin-bottom:16px!important}
body .nphb-learning-path .nphb-route-panel .nphb-skill-list li{padding:5px 8px;font-size:10px}
body .nphb-learning-path .nphb-route-panel .nphb-path-link{margin-top:auto}
body .nphb-learning-path .nphb-path-card-cyber_ccst{border-color:#cfe2ff}
body .nphb-learning-path .nphb-path-card-cyber_ccst .nphb-path-icon{color:#fff;background:linear-gradient(145deg,#2c78ff,#1355df);border-color:transparent;box-shadow:0 10px 22px rgba(36,87,245,.22)}
body .nphb-learning-path .nphb-path-card-cyber_ccna{border-color:#d6e6ff}
body .nphb-learning-path .nphb-path-card-cyber_ccna .nphb-path-icon{color:#1d57da;background:linear-gradient(145deg,#eef5ff,#dce9ff);border-color:#cfe0ff}
body .nphb-learning-path .nphb-path-card-cyber_ccnp{border-color:#dfd6ff}
body .nphb-learning-path .nphb-path-card-cyber_ccnp .nphb-path-icon{color:#5f46d7;background:linear-gradient(145deg,#f2efff,#e5ddff);border-color:#ddd2ff}
body .nphb-learning-path .nphb-path-card-scor{border-color:#edd7ff}
body .nphb-learning-path .nphb-path-card-scor .nphb-path-icon{color:#8547d4;background:linear-gradient(145deg,#f8f1ff,#efe1ff);border-color:#ecd8ff}
body .nphb-learning-path .nphb-path-card-ccie_security{border-color:#f0d8e5;background:linear-gradient(180deg,#fffafd 0%,#fff 38%)}
body .nphb-learning-path .nphb-path-card-ccie_security .nphb-path-icon{color:#b34784;background:linear-gradient(145deg,#fff1f8,#ffe2f0);border-color:#f3cfe0}
body .nphb-learning-path .nphb-path-card-auto_ccna{border-color:#d3ece3}
body .nphb-learning-path .nphb-path-card-auto_ccna .nphb-path-icon{color:#0b8c60;background:linear-gradient(145deg,#effcf6,#dcf7ea);border-color:#caecd9}
body .nphb-learning-path .nphb-path-card-auto_ccnp{border-color:#d0eee8}
body .nphb-learning-path .nphb-path-card-auto_ccnp .nphb-path-icon{color:#0f7f76;background:linear-gradient(145deg,#eefcfb,#d8f6f2);border-color:#c8ede8}
body .nphb-learning-path .nphb-path-card-enauto{border-color:#d3eef3}
body .nphb-learning-path .nphb-path-card-enauto .nphb-path-icon{color:#16738c;background:linear-gradient(145deg,#eefbff,#daf5fb);border-color:#cae8f2}
body .nphb-learning-path .nphb-path-card-ccie_automation{border-color:#ccece5;background:linear-gradient(180deg,#f8fffd 0%,#fff 38%)}
body .nphb-learning-path .nphb-path-card-ccie_automation .nphb-path-icon{color:#0f6f5c;background:linear-gradient(145deg,#edfffb,#d8f7ed);border-color:#c5ebdf}
body .nphb-learning-path .nphb-path-card-cyber_ccst .nphb-path-number,body .nphb-learning-path .nphb-path-card-cyber_ccna .nphb-path-number{color:#dbe7ff}
body .nphb-learning-path .nphb-path-card-cyber_ccnp .nphb-path-number,body .nphb-learning-path .nphb-path-card-scor .nphb-path-number{color:#ece4ff}
body .nphb-learning-path .nphb-path-card-ccie_security .nphb-path-number{color:#f7dfeb}
body .nphb-learning-path .nphb-path-card-auto_ccna .nphb-path-number,body .nphb-learning-path .nphb-path-card-auto_ccnp .nphb-path-number,body .nphb-learning-path .nphb-path-card-enauto .nphb-path-number{color:#dcf2ed}
body .nphb-learning-path .nphb-path-card-ccie_automation .nphb-path-number{color:#dbf3eb}
@media (max-width:1260px){
  body .nphb-learning-path .nphb-route-panel .nphb-path-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  body .nphb-learning-path .nphb-route-panel .nphb-path-grid::before{display:none}
}
@media (max-width:900px){
  body .nphb-learning-path .nphb-route-panel .nphb-path-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  body .nphb-learning-path .nphb-route-panel[data-route="redes"] .nphb-path-card:last-child,
  body .nphb-learning-path .nphb-route-panel[data-route="ciberseguridad"] .nphb-path-card:last-child{grid-column:1/-1}
}
@media (max-width:620px){
  body .nphb-learning-path .nphb-route-tabs{gap:8px;margin-bottom:14px}
  body .nphb-learning-path .nphb-route-tab{padding:9px 14px;font-size:13px}
  body .nphb-learning-path .nphb-route-copy{margin-bottom:14px}
  body .nphb-learning-path .nphb-route-copy p{font-size:14px}
  body .nphb-learning-path .nphb-route-panel .nphb-path-grid{grid-template-columns:1fr;gap:12px}
  body .nphb-learning-path .nphb-route-panel .nphb-path-card{min-height:0;padding:18px}
}


/* =========================================================
   v10.8.1 — ruta visual + tarjetas más compactas
   ========================================================= */
body .nphb-learning-path .nphb-route-panel{
  display:grid;
  gap:16px;
}

body .nphb-learning-path .nphb-route-copy{
  max-width:980px;
  margin:0 auto;
  text-align:center;
}

body .nphb-learning-path .nphb-route-copy p{
  margin:0;
  color:#667791;
  font-size:18px;
  line-height:1.55;
}

body .nphb-learning-path .nphb-route-figure{
  width:min(540px,100%);
  margin:2px auto 4px;
  display:flex;
  flex-direction:column;
  gap:10px;
}

body .nphb-learning-path .nphb-route-figure-media{
  overflow:hidden;
  padding:10px;
  border-radius:26px;
  border:1px solid #dbe5f3;
  background:linear-gradient(180deg,#ffffff 0%,#f7faff 100%);
  box-shadow:0 16px 42px rgba(23,51,99,.08);
}

body .nphb-learning-path .nphb-route-figure-media img{
  display:block;
  width:100%;
  height:auto;
  border-radius:18px;
}

body .nphb-learning-path .nphb-route-figure figcaption{
  margin:0;
  text-align:center;
  color:#6c7b91;
  font-size:14px;
  line-height:1.5;
}

body .nphb-learning-path .nphb-path-grid{
  gap:12px;
}

body .nphb-learning-path .nphb-path-card{
  min-height:312px;
  padding:18px 18px 16px;
  border-radius:18px;
}

body .nphb-learning-path .nphb-path-top{
  margin-top:2px;
  margin-bottom:12px;
}

body .nphb-learning-path .nphb-path-icon{
  width:50px;
  height:50px;
  border-radius:14px;
}

body .nphb-learning-path .nphb-path-icon svg{
  width:24px;
  height:24px;
}

body .nphb-learning-path .nphb-path-number{
  font-size:20px;
}

body .nphb-learning-path .nphb-path-meta{
  gap:8px;
  margin-bottom:10px;
}

body .nphb-learning-path .nphb-path-meta span{
  padding:7px 10px;
  font-size:11px;
}

body .nphb-learning-path .nphb-course-status{
  margin:0 0 11px;
  padding:6px 11px;
  font-size:10px;
  letter-spacing:.1em;
}

body .nphb-learning-path .nphb-path-card h3{
  margin-bottom:6px!important;
  font-size:19px!important;
  line-height:1.15!important;
}

body .nphb-learning-path .nphb-path-card > .nphb-path-content > p{
  min-height:0;
  margin-bottom:10px!important;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
  font-size:13px;
  line-height:1.5;
}

body .nphb-learning-path .nphb-path-difficulty{
  margin:0 0 12px;
  padding-top:10px;
}

body .nphb-learning-path .nphb-skill-list{
  gap:8px!important;
  margin:0 0 14px!important;
}

body .nphb-learning-path .nphb-skill-list li{
  gap:8px;
  font-size:10.5px;
  line-height:1.25;
}

body .nphb-learning-path .nphb-skill-icon{
  flex:0 0 22px;
  width:22px;
  height:22px;
  border-radius:7px;
}

body .nphb-learning-path .nphb-skill-icon svg{
  width:13px;
  height:13px;
}

body .nphb-learning-path .nphb-path-link{
  margin-top:auto;
  font-size:11.5px;
}

@media(max-width:1260px){
  body .nphb-learning-path .nphb-path-card{
    min-height:298px;
  }
}

@media(max-width:860px){
  body .nphb-learning-path .nphb-route-copy p{
    font-size:17px;
  }

  body .nphb-learning-path .nphb-route-figure{
    width:min(500px,100%);
  }
}

@media(max-width:620px){
  body .nphb-learning-path .nphb-route-panel{
    gap:14px;
  }

  body .nphb-learning-path .nphb-route-copy p{
    font-size:16px;
  }

  body .nphb-learning-path .nphb-route-figure{
    width:100%;
    gap:8px;
  }

  body .nphb-learning-path .nphb-route-figure-media{
    padding:8px;
    border-radius:22px;
  }

  body .nphb-learning-path .nphb-route-figure-media img{
    border-radius:15px;
  }

  body .nphb-learning-path .nphb-route-figure figcaption{
    font-size:13px;
  }

  body .nphb-learning-path .nphb-path-card{
    min-height:0;
    padding:17px 16px 15px;
  }
}


/* =========================================================
   v10.8.2 — ruta visual limpia + tarjetas compactas
   Usa la imagen como ambiente de fondo, no como póster incrustado.
   ========================================================= */
body .nphb-route-figure{display:none!important}
body .nphb-route-panel[data-route="redes"] .nphb-route-copy{margin-bottom:14px!important}
body .nphb-route-visual{
  margin:0 0 20px!important;
}
body .nphb-route-visual-stage{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:540px;
  border-radius:30px;
  border:1px solid rgba(211,223,246,.9);
  background:linear-gradient(180deg,#f8fbff 0%,#eef4fd 100%);
  box-shadow:0 22px 50px rgba(19,45,92,.10);
}
body .nphb-route-visual-bg,
body .nphb-route-visual-overlay,
body .nphb-route-visual-line,
body .nphb-route-visual-copy,
body .nphb-route-step{position:absolute}
body .nphb-route-visual-bg{
  inset:-4%;
  background-image:var(--nphb-route-visual);
  background-size:cover;
  background-position:center;
  filter:blur(18px) saturate(1.05) brightness(1.06);
  transform:scale(1.08);
  opacity:.94;
}
body .nphb-route-visual-overlay{
  inset:0;
  background:
    linear-gradient(180deg,rgba(255,255,255,.82) 0%,rgba(247,250,255,.70) 24%,rgba(238,244,253,.18) 52%,rgba(255,255,255,.22) 100%),
    radial-gradient(circle at 18% 18%,rgba(255,255,255,.86),transparent 32%),
    radial-gradient(circle at 88% 8%,rgba(133,177,255,.18),transparent 20%),
    linear-gradient(135deg,rgba(255,255,255,.26) 0%,transparent 55%);
  z-index:1;
}
body .nphb-route-visual-line{
  inset:0;
  width:100%;
  height:100%;
  z-index:2;
}
body .nphb-route-visual-line-glow{
  fill:none;
  stroke:rgba(255,255,255,.95);
  stroke-width:18;
  stroke-linecap:round;
  stroke-linejoin:round;
  filter:url(#nphb-route-glow);
  opacity:.78;
}
body .nphb-route-visual-line-core{
  fill:none;
  stroke:#ffffff;
  stroke-width:8;
  stroke-linecap:round;
  stroke-linejoin:round;
  opacity:.98;
}
body .nphb-route-visual-copy{
  top:26px;
  left:28px;
  z-index:3;
  max-width:280px;
  padding:17px 18px;
  background:rgba(255,255,255,.68);
  border:1px solid rgba(220,231,244,.95);
  border-radius:18px;
  backdrop-filter:blur(10px);
  box-shadow:0 10px 26px rgba(16,34,71,.08);
}
body .nphb-route-visual-copy span{
  display:block;
  margin-bottom:7px;
  color:#2457f5;
  font-size:11px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}
body .nphb-route-visual-copy strong{
  display:block;
  margin:0 0 8px;
  color:#102247;
  font-size:20px;
  line-height:1.15;
}
body .nphb-route-visual-copy small{
  display:block;
  color:#60718c;
  font-size:12px;
  line-height:1.48;
}
body .nphb-route-step{
  z-index:4;
  left:var(--nphb-step-x);
  top:var(--nphb-step-y);
  display:flex;
  align-items:center;
  gap:10px;
  text-decoration:none!important;
  transform:translate(-50%,-50%);
}
body .nphb-route-step-dot{
  position:relative;
  flex:0 0 18px;
  width:18px;
  height:18px;
  border-radius:50%;
  background:var(--route-color,#2457f5);
  border:3px solid rgba(255,255,255,.95);
  box-shadow:0 0 0 6px color-mix(in srgb,var(--route-color,#2457f5) 16%,transparent),0 8px 18px rgba(16,34,71,.18);
}
body .nphb-route-step-card{
  display:flex;
  flex-direction:column;
  min-width:138px;
  padding:10px 13px;
  background:rgba(255,255,255,.94);
  border:1px solid rgba(220,231,244,.95);
  border-left:4px solid var(--route-color,#2457f5);
  border-radius:14px;
  box-shadow:0 12px 24px rgba(16,34,71,.10);
  backdrop-filter:blur(8px);
}
body .nphb-route-step-card small{
  margin-bottom:4px;
  color:#6b7d97;
  font-size:10px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}
body .nphb-route-step-card strong{
  color:#102247;
  font-size:15px;
  line-height:1.15;
}
body .nphb-route-step:hover .nphb-route-step-card{
  transform:translateY(-2px);
  box-shadow:0 16px 30px rgba(16,34,71,.15);
}
body .nphb-route-step-ccst{--route-color:#2cccb8}
body .nphb-route-step-ccna{--route-color:#2f75ff}
body .nphb-route-step-encor{--route-color:#8b51f6}
body .nphb-route-step-enarsi{--route-color:#ff8a1e}
body .nphb-route-step-ccie{--route-color:#e1ac22}
body .nphb-route-visual-caption{
  margin:14px auto 0!important;
  max-width:900px;
  color:#66758c;
  font-size:14px;
  line-height:1.58;
  text-align:center;
}

/* Tarjetas más compactas y limpias */
body .nphb-learning-path .nphb-path-grid{
  gap:16px!important;
}
body .nphb-learning-path .nphb-path-card{
  min-height:308px!important;
  padding:18px 18px 16px!important;
  border-radius:17px!important;
}
body .nphb-learning-path .nphb-path-top{
  margin-bottom:12px!important;
}
body .nphb-learning-path .nphb-path-icon{
  width:48px!important;
  height:48px!important;
}
body .nphb-learning-path .nphb-path-number{
  width:46px!important;
  height:46px!important;
  font-size:28px!important;
}
body .nphb-learning-path .nphb-path-meta{
  gap:8px!important;
  margin-bottom:10px!important;
}
body .nphb-learning-path .nphb-course-status{
  margin-bottom:10px!important;
}
body .nphb-learning-path .nphb-path-card h3{
  margin-bottom:6px!important;
  font-size:18px!important;
}
body .nphb-learning-path .nphb-path-card > .nphb-path-content > p{
  min-height:0!important;
  margin-bottom:10px!important;
  font-size:13px!important;
  line-height:1.45!important;
}
body .nphb-learning-path .nphb-path-difficulty{
  margin-bottom:10px!important;
}
body .nphb-learning-path .nphb-skill-list{
  gap:7px!important;
  margin-bottom:14px!important;
}
body .nphb-learning-path .nphb-skill-list li{
  padding:5px 8px!important;
  font-size:10px!important;
}
body .nphb-learning-path .nphb-path-link{
  margin-top:auto!important;
  padding-top:2px!important;
}

@media (max-width: 1180px){
  body .nphb-route-visual-stage{min-height:500px}
}
@media (max-width: 920px){
  body .nphb-route-visual-stage{min-height:470px;border-radius:24px}
  body .nphb-route-visual-copy{top:18px;left:18px;max-width:235px;padding:14px 15px}
  body .nphb-route-visual-copy strong{font-size:18px}
  body .nphb-route-step-card{min-width:124px;padding:9px 11px}
  body .nphb-route-step-card strong{font-size:13px}
  body .nphb-learning-path .nphb-path-card{min-height:295px!important}
}
@media (max-width: 760px){
  body .nphb-route-visual{margin-bottom:16px!important}
  body .nphb-route-visual-stage{min-height:360px;border-radius:22px}
  body .nphb-route-visual-copy{top:12px;left:12px;right:12px;max-width:none;padding:12px 13px}
  body .nphb-route-visual-copy strong{font-size:16px}
  body .nphb-route-visual-copy small{font-size:11px}
  body .nphb-route-step{gap:6px}
  body .nphb-route-step-dot{width:14px;height:14px;flex-basis:14px;border-width:2px;box-shadow:0 0 0 4px color-mix(in srgb,var(--route-color,#2457f5) 14%,transparent),0 5px 12px rgba(16,34,71,.15)}
  body .nphb-route-step-card{min-width:90px;padding:7px 8px;border-left-width:3px;border-radius:12px}
  body .nphb-route-step-card small{font-size:8px;margin-bottom:2px}
  body .nphb-route-step-card strong{font-size:10px;line-height:1.15}
  body .nphb-route-step-ccst{--nphb-step-x:9%;--nphb-step-y:77%}
  body .nphb-route-step-ccna{--nphb-step-x:29%;--nphb-step-y:63%}
  body .nphb-route-step-encor{--nphb-step-x:48%;--nphb-step-y:47%}
  body .nphb-route-step-enarsi{--nphb-step-x:67%;--nphb-step-y:31%}
  body .nphb-route-step-ccie{--nphb-step-x:81%;--nphb-step-y:16%}
  body .nphb-route-visual-caption{font-size:13px}
  body .nphb-learning-path .nphb-path-grid{gap:12px!important}
  body .nphb-learning-path .nphb-path-card{min-height:0!important;padding:16px!important}
}


/* =========================================================
   v10.8.3 — imagen de ruta configurable + cards compactas
   ========================================================= */
body .nphb-route-visual-bg{
  inset:0!important;
  background-size:cover!important;
  background-position:center center!important;
  filter:saturate(1.02) brightness(.96)!important;
  transform:none!important;
  opacity:1!important;
}
body .nphb-route-visual-overlay{
  background:
    linear-gradient(180deg,rgba(255,255,255,.26) 0%,rgba(255,255,255,.06) 34%,rgba(9,34,72,.10) 100%),
    linear-gradient(90deg,rgba(255,255,255,.24) 0%,transparent 32%)!important;
}
body .nphb-route-visual-copy{
  background:rgba(255,255,255,.88)!important;
}
body .nphb-learning-path .nphb-path-difficulty,
body .nphb-learning-path .nphb-skill-list{
  display:none!important;
}
body .nphb-learning-path .nphb-path-card{
  min-height:218px!important;
  padding:16px 17px 15px!important;
}
body .nphb-learning-path .nphb-path-top{margin-bottom:10px!important}
body .nphb-learning-path .nphb-path-icon{width:44px!important;height:44px!important;border-radius:13px!important}
body .nphb-learning-path .nphb-path-icon svg{width:22px!important;height:22px!important}
body .nphb-learning-path .nphb-path-number{width:40px!important;height:40px!important;font-size:15px!important}
body .nphb-learning-path .nphb-path-meta{margin-bottom:8px!important}
body .nphb-learning-path .nphb-path-meta span{padding:5px 8px!important;font-size:9px!important}
body .nphb-learning-path .nphb-course-status{display:inline-flex!important;margin:0 0 9px!important;padding:5px 9px!important;font-size:9px!important}
body .nphb-learning-path .nphb-path-card h3{font-size:18px!important;margin-bottom:4px!important}
body .nphb-learning-path .nphb-path-card > .nphb-path-content > p{
  margin-bottom:10px!important;
  font-size:12px!important;
  line-height:1.4!important;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
body .nphb-learning-path .nphb-path-link{
  position:static!important;
  margin-top:auto!important;
  padding-top:9px!important;
  border-top:1px solid #edf1f7!important;
  font-size:11.5px!important;
}
@media(max-width:920px){
  body .nphb-learning-path .nphb-path-card{min-height:205px!important}
  body .nphb-route-visual-stage{min-height:440px!important}
}
@media(max-width:760px){
  body .nphb-learning-path .nphb-path-card{min-height:0!important;padding:15px!important}
  body .nphb-learning-path .nphb-path-card h3{font-size:20px!important}
  body .nphb-learning-path .nphb-path-card > .nphb-path-content > p{font-size:13px!important}
  body .nphb-route-visual-stage{min-height:350px!important}
}


/* =========================================================
   v10.8.4 — imagen de ruta limpia + tarjetas funcionales compactas
   - La imagen elegida en el plugin queda sola, sin tarjetas/linea/caja superpuestas.
   - Las cards inferiores quedan como accesos de curso, no como una segunda infografia.
   ========================================================= */
body .nphb-learning-path .nphb-route-visual{
  margin:0 0 18px!important;
}
body .nphb-learning-path .nphb-route-visual-stage{
  position:relative!important;
  min-height:0!important;
  aspect-ratio:16 / 9!important;
  overflow:hidden!important;
  border-radius:24px!important;
  border:1px solid #d9e4f2!important;
  background:#eef4fb!important;
  box-shadow:0 14px 34px rgba(22,49,92,.08)!important;
}
body .nphb-learning-path .nphb-route-visual-bg{
  position:absolute!important;
  inset:0!important;
  background-image:var(--nphb-route-visual)!important;
  background-size:cover!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  filter:none!important;
  transform:none!important;
  opacity:1!important;
}
body .nphb-learning-path .nphb-route-visual-overlay,
body .nphb-learning-path .nphb-route-visual-line,
body .nphb-learning-path .nphb-route-visual-copy,
body .nphb-learning-path .nphb-route-step,
body .nphb-learning-path .nphb-route-visual-caption{
  display:none!important;
}

/* Cards: acceso limpio al curso */
body .nphb-learning-path .nphb-path-grid{
  gap:14px!important;
  align-items:stretch!important;
}
body .nphb-learning-path .nphb-path-grid::before{
  display:none!important;
}
body .nphb-learning-path .nphb-path-card{
  min-height:0!important;
  padding:16px 17px 15px!important;
  border-radius:18px!important;
  box-shadow:0 8px 24px rgba(23,51,99,.06)!important;
}
body .nphb-learning-path .nphb-path-card:hover{
  transform:translateY(-3px)!important;
  box-shadow:0 13px 28px rgba(23,51,99,.10)!important;
}
body .nphb-learning-path .nphb-path-top{
  min-height:0!important;
  margin:0 0 10px!important;
  align-items:center!important;
}
body .nphb-learning-path .nphb-path-icon{
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  margin:0!important;
  border-radius:13px!important;
}
body .nphb-learning-path .nphb-path-icon svg{
  width:21px!important;
  height:21px!important;
}
body .nphb-learning-path .nphb-path-number{
  position:static!important;
  width:40px!important;
  height:40px!important;
  min-width:40px!important;
  margin:0!important;
  font-size:18px!important;
}
body .nphb-learning-path .nphb-path-meta{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  margin:0 0 7px!important;
}
body .nphb-learning-path .nphb-path-meta span,
body .nphb-learning-path .nphb-course-status{
  min-height:0!important;
  padding:5px 9px!important;
  border-radius:999px!important;
  font-size:10px!important;
  line-height:1.2!important;
  letter-spacing:.055em!important;
}
body .nphb-learning-path .nphb-course-status{
  display:inline-flex!important;
  width:max-content!important;
  margin:0 0 8px!important;
}
body .nphb-learning-path .nphb-path-card h3{
  margin:0 0 5px!important;
  font-size:19px!important;
  line-height:1.14!important;
  letter-spacing:-.02em!important;
}
body .nphb-learning-path .nphb-path-card > .nphb-path-content > p{
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:1!important;
  overflow:hidden!important;
  min-height:0!important;
  margin:0 0 11px!important;
  color:#6a788d!important;
  font-size:12px!important;
  line-height:1.4!important;
}
body .nphb-learning-path .nphb-path-difficulty,
body .nphb-learning-path .nphb-skill-list{
  display:none!important;
}
body .nphb-learning-path .nphb-path-link{
  min-height:36px!important;
  margin-top:auto!important;
  padding:7px 0 0!important;
  border-top:1px solid #edf1f6!important;
  font-size:12px!important;
  line-height:1.2!important;
}

@media (max-width:900px){
  body .nphb-learning-path .nphb-path-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body .nphb-learning-path .nphb-path-card{
    min-height:0!important;
    padding:16px!important;
  }
  body .nphb-learning-path .nphb-path-card h3{
    font-size:18px!important;
  }
}

@media (max-width:620px){
  body .nphb-learning-path .nphb-route-visual-stage{
    border-radius:18px!important;
  }
  body .nphb-learning-path .nphb-path-grid{
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  body .nphb-learning-path .nphb-path-card{
    display:grid!important;
    grid-template-columns:44px minmax(0,1fr) auto!important;
    column-gap:11px!important;
    row-gap:5px!important;
    align-items:center!important;
    padding:13px 14px!important;
    border-radius:16px!important;
  }
  body .nphb-learning-path .nphb-path-accent,
  body .nphb-learning-path .nphb-path-number,
  body .nphb-learning-path .nphb-path-content > p,
  body .nphb-learning-path .nphb-path-meta,
  body .nphb-learning-path .nphb-course-status{
    display:none!important;
  }
  body .nphb-learning-path .nphb-path-top{
    display:contents!important;
  }
  body .nphb-learning-path .nphb-path-icon{
    grid-column:1!important;
    grid-row:1 / span 2!important;
  }
  body .nphb-learning-path .nphb-path-content{
    display:contents!important;
  }
  body .nphb-learning-path .nphb-path-card h3{
    grid-column:2!important;
    grid-row:1!important;
    margin:0!important;
    font-size:17px!important;
  }
  body .nphb-learning-path .nphb-path-link{
    grid-column:2 / 4!important;
    grid-row:2!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    border-top:0!important;
    font-size:11px!important;
  }
}


/* =========================================================
   v10.8.5 — FIX escritorio: rutas visibles en desktop
   Fuerza pestañas + descripción + imagen + panel activo también
   por encima de 900px sin alterar tablet/móvil.
   ========================================================= */
@media (min-width:901px){
  html body.nphb-home-active .nphb-learning-path .nphb-route-tabs{
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
    position:relative!important;
  }
  html body.nphb-home-active .nphb-learning-path .nphb-route-panels{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
  }
  html body.nphb-home-active .nphb-learning-path .nphb-route-panel.is-active:not([hidden]){
    display:grid!important;
    visibility:visible!important;
    opacity:1!important;
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
  }
  html body.nphb-home-active .nphb-learning-path .nphb-route-panel.is-active .nphb-route-copy{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    height:auto!important;
    max-height:none!important;
  }
  html body.nphb-home-active .nphb-learning-path .nphb-route-panel.is-active .nphb-route-visual{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
  }
  html body.nphb-home-active .nphb-learning-path .nphb-route-panel.is-active .nphb-route-visual-stage{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
  }
  html body.nphb-home-active .nphb-learning-path .nphb-route-panel.is-active .nphb-path-grid{
    display:grid!important;
    visibility:visible!important;
    opacity:1!important;
  }
}

/* =========================================================
   v10.8.6 — Imagen de ruta + mini tarjetas posicionables
   ========================================================= */
body .nphb-route-visual-overlay-mode{margin:4px 0 0!important}
body .nphb-route-image-stage{position:relative;overflow:hidden;border-radius:26px;border:1px solid rgba(214,225,241,.92);background:#eef4fb;box-shadow:0 18px 44px rgba(16,34,71,.09);isolation:isolate}
body .nphb-route-image{display:block;width:100%;height:auto;object-fit:contain;border-radius:inherit}
body .nphb-route-mini-connectors{position:absolute;inset:0;z-index:2;width:100%;height:100%;pointer-events:none}
body .nphb-route-mini-line{fill:none;stroke:rgba(255,255,255,.96);stroke-width:.7;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;filter:drop-shadow(0 2px 3px rgba(36,87,245,.45))}
body .nphb-route-mini-line-tablet,body .nphb-route-mini-line-mobile{display:none}
body .nphb-route-mini-card{position:absolute;z-index:3;left:var(--overlay-x-d);top:var(--overlay-y-d);transform:translate(-50%,-50%);display:inline-flex;align-items:center;gap:7px;min-width:72px;max-width:138px;padding:7px 10px;border:1px solid color-mix(in srgb,var(--overlay-color) 26%,#dbe5f3);border-left:4px solid var(--overlay-color);border-radius:12px;background:rgba(255,255,255,.95);box-shadow:0 9px 22px rgba(16,34,71,.14);color:#102247!important;text-decoration:none!important;backdrop-filter:blur(8px);overflow:hidden;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
body .nphb-route-mini-card::after{content:"";position:absolute;inset:-40% auto -40% -35%;width:28%;transform:skewX(-20deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.75),transparent);opacity:0;transition:left .45s ease,opacity .18s ease;pointer-events:none}
body .nphb-route-mini-card:hover{transform:translate(-50%,-50%) translateY(-3px) scale(1.025);box-shadow:0 14px 28px rgba(16,34,71,.21);border-color:color-mix(in srgb,var(--overlay-color) 48%,#dbe5f3)}
body .nphb-route-mini-card:hover::after{left:115%;opacity:1}
body .nphb-route-mini-icon{display:grid;place-items:center;flex:0 0 26px;width:26px;height:26px;border-radius:8px;background:color-mix(in srgb,var(--overlay-color) 12%,#fff);color:var(--overlay-color)}
body .nphb-route-mini-icon svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8}
body .nphb-route-mini-card strong{overflow:hidden;font-size:12px;font-weight:900;line-height:1.05;white-space:nowrap;text-overflow:ellipsis;letter-spacing:-.01em}

@media(max-width:1024px){
  body .nphb-route-mini-line-desktop,body .nphb-route-mini-line-mobile{display:none}
  body .nphb-route-mini-line-tablet{display:block}
  body .nphb-route-mini-card{left:var(--overlay-x-t);top:var(--overlay-y-t);padding:6px 8px;min-width:66px;max-width:122px;gap:6px}
  body .nphb-route-mini-icon{width:24px;height:24px;flex-basis:24px}
  body .nphb-route-mini-card strong{font-size:11px}
}
@media(max-width:620px){
  body .nphb-route-image-stage{border-radius:18px}
  body .nphb-route-mini-line-desktop,body .nphb-route-mini-line-tablet{display:none}
  body .nphb-route-mini-line-mobile{display:block}
  body .nphb-route-mini-card{left:var(--overlay-x-m);top:var(--overlay-y-m);min-width:0;max-width:92px;padding:5px 7px;border-left-width:3px;border-radius:10px;gap:5px}
  body .nphb-route-mini-icon{width:20px;height:20px;flex-basis:20px;border-radius:6px}
  body .nphb-route-mini-icon svg{width:12px;height:12px}
  body .nphb-route-mini-card strong{font-size:9.5px}
}
@media(prefers-reduced-motion:reduce){
  body .nphb-route-mini-card,body .nphb-route-mini-card::after{transition:none!important}
}

/* =========================================================
   v10.8.7 — Mini tarjetas dimensionables + línea luminosa animada
   ========================================================= */
body .nphb-route-mini-connectors{overflow:visible}
body .nphb-route-mini-line{fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
body .nphb-route-mini-line-glow{stroke:rgba(47,117,255,.32);stroke-width:calc(var(--overlay-line-d,5px) + 7px);filter:blur(.8px)}
body .nphb-route-mini-line-core{stroke:rgba(255,255,255,.99);stroke-width:var(--overlay-line-d,5px);filter:drop-shadow(0 1px 4px rgba(36,87,245,.78))}
body .nphb-route-mini-line-flow{stroke:#4c9cff;stroke-width:2px;stroke-dasharray:2 18;animation:nphbRouteLineFlow 2.2s linear infinite;filter:drop-shadow(0 0 4px rgba(89,170,255,.9))}
@keyframes nphbRouteLineFlow{to{stroke-dashoffset:-40}}

body .nphb-route-mini-card{box-sizing:border-box;width:var(--overlay-card-w-d,120px);height:var(--overlay-card-h-d,42px);min-width:0!important;max-width:none!important;padding:6px 9px;justify-content:flex-start}
body .nphb-route-mini-card strong{min-width:0;flex:1}

@media(max-width:1024px){
  body .nphb-route-mini-line-glow{stroke-width:calc(var(--overlay-line-t,4px) + 6px)}
  body .nphb-route-mini-line-core{stroke-width:var(--overlay-line-t,4px)}
  body .nphb-route-mini-card{width:var(--overlay-card-w-t,108px);height:var(--overlay-card-h-t,38px);padding:5px 8px}
}
@media(max-width:620px){
  body .nphb-route-mini-line-glow{stroke-width:calc(var(--overlay-line-m,3px) + 5px)}
  body .nphb-route-mini-line-core{stroke-width:var(--overlay-line-m,3px)}
  body .nphb-route-mini-card{width:var(--overlay-card-w-m,84px);height:var(--overlay-card-h-m,32px);padding:4px 6px}
}
@media(prefers-reduced-motion:reduce){
  body .nphb-route-mini-line-flow{animation:none!important}
}


/* =========================================================
   v10.8.8 — tamaño independiente por tarjeta + nodo secuencial
   ========================================================= */
body .nphb-route-mini-line-flow{display:none!important}
body .nphb-route-mini-line-glow{display:none!important}
body .nphb-route-mini-line-core{
  stroke:rgba(255,255,255,.98)!important;
  stroke-width:var(--overlay-line-d,4px)!important;
  filter:drop-shadow(0 1px 3px rgba(47,117,255,.72))!important;
}
body .nphb-route-travel-dot{
  position:absolute;
  left:0;top:0;
  z-index:2;
  width:11px;height:11px;
  border-radius:50%;
  background:#4c9cff;
  border:2px solid rgba(255,255,255,.98);
  box-shadow:0 0 0 3px rgba(76,156,255,.18),0 0 9px rgba(76,156,255,.86);
  opacity:0;
  pointer-events:none;
  will-change:transform,opacity;
}
body .nphb-route-mini-card{
  width:var(--overlay-card-w-d,120px)!important;
  height:var(--overlay-card-h-d,42px)!important;
}
@media(max-width:980px){
  body .nphb-route-mini-line-core{stroke-width:var(--overlay-line-t,3.5px)!important}
  body .nphb-route-mini-card{width:var(--overlay-card-w-t,108px)!important;height:var(--overlay-card-h-t,38px)!important}
  body .nphb-route-travel-dot{width:10px;height:10px}
}
@media(max-width:620px){
  body .nphb-route-mini-line-core{stroke-width:var(--overlay-line-m,3px)!important}
  body .nphb-route-mini-card{width:var(--overlay-card-w-m,84px)!important;height:var(--overlay-card-h-m,32px)!important}
  body .nphb-route-travel-dot{width:9px;height:9px;border-width:1.5px}
}
@media(prefers-reduced-motion:reduce){body .nphb-route-travel-dot{display:none!important}}


/* =========================================================
   v10.8.9 — texto editable, tipografía por tarjeta y móvil sin iconos
   ========================================================= */
body .nphb-route-mini-card strong{font-size:var(--overlay-font-d,12px)!important;line-height:1.05!important}
body .nphb-route-label{display:none}
body .nphb-route-label-d{display:inline}
@media(max-width:980px){
  body .nphb-route-mini-card strong{font-size:var(--overlay-font-t,11px)!important}
  body .nphb-route-label-d{display:none}
  body .nphb-route-label-t{display:inline}
}
@media(max-width:620px){
  body .nphb-route-mini-card{justify-content:center!important;gap:0!important;padding-left:6px!important;padding-right:6px!important}
  body .nphb-route-mini-icon{display:none!important}
  body .nphb-route-mini-card strong{font-size:var(--overlay-font-m,10px)!important;text-align:center!important;width:100%}
  body .nphb-route-label-t{display:none}
  body .nphb-route-label-m{display:inline}
}

/* v10.8.13 — línea estática sin nodo animado */
body .nphb-route-travel-dot{display:none!important}

/* =========================================================
   v10.8.14 — mini tarjetas informativas sin enlaces
   ========================================================= */
body .nphb-route-mini-card{
  appearance:none;
  -webkit-appearance:none;
  font:inherit;
  cursor:pointer;
  text-align:left;
}

body .nphb-route-image-stage[data-info-enabled="0"] .nphb-route-mini-card{cursor:default}
body .nphb-route-mini-card:focus-visible{
  outline:3px solid color-mix(in srgb,var(--overlay-color,#2457f5) 32%,transparent);
  outline-offset:3px;
}
body .nphb-route-info-popover{
  --info-color:#2457f5;
  position:absolute;
  z-index:8;
  width:min(292px,calc(100% - 16px));
  padding:15px 16px 14px;
  border:1px solid color-mix(in srgb,var(--info-color) 26%,#dbe5f3);
  border-top:4px solid var(--info-color);
  border-radius:16px;
  background:rgba(255,255,255,.985);
  box-shadow:0 18px 42px rgba(16,34,71,.22),0 2px 8px rgba(16,34,71,.08);
  color:#102247;
  backdrop-filter:blur(10px);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateY(5px) scale(.985);
  transform-origin:center bottom;
  transition:opacity .16s ease,transform .16s ease,visibility .16s ease;
}
body .nphb-route-info-popover.is-open{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translateY(0) scale(1);
}
body .nphb-route-info-popover.is-below{transform-origin:center top}
body .nphb-route-info-meta{
  display:block;
  margin:0 26px 5px 0;
  color:var(--info-color);
  font-size:10px;
  line-height:1.2;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
body .nphb-route-info-title{
  display:block;
  margin:0 28px 7px 0;
  color:#102247;
  font-size:16px;
  line-height:1.15;
  font-weight:900;
  letter-spacing:-.015em;
}
body .nphb-route-info-text{
  margin:0!important;
  color:#5f6f88;
  font-size:var(--nphb-info-text-size,12.5px);
  line-height:1.48;
}
body .nphb-route-info-close{
  position:absolute;
  top:8px;
  right:9px;
  display:grid;
  place-items:center;
  width:25px;
  height:25px;
  padding:0;
  border:0;
  border-radius:8px;
  background:#f2f6fb;
  color:#62718a;
  font-size:19px;
  line-height:1;
  cursor:pointer;
}
body .nphb-route-info-close:hover{background:#e9f0f9;color:#102247}
@media(max-width:620px){
  body .nphb-route-info-popover{width:min(238px,calc(100% - 12px));padding:11px 12px 11px;border-radius:13px}
  body .nphb-route-info-meta{font-size:8px;margin-bottom:3px}
  body .nphb-route-info-title{font-size:12px;margin-bottom:5px}
  body .nphb-route-info-text{font-size:calc(var(--nphb-info-text-size,12.5px) * .8);line-height:1.38}
  body .nphb-route-info-close{width:22px;height:22px;top:6px;right:6px;font-size:16px}
}
@media(prefers-reduced-motion:reduce){
  body .nphb-route-info-popover{transition:none!important}
}

/* =========================================================
   v10.8.15 — Optimización móvil de la Home
   SOLO móvil + modo compacto. No altera tablet ni escritorio.
   Mantiene los controles existentes del Home Builder.
   ========================================================= */
@media (max-width:620px){
  /* Hero: menos altura sin perder jerarquía */
  body.nphb-mobile-compact .nphb-hero .nphb-inner{
    padding:20px 12px 12px!important;
    gap:10px!important;
  }
  body.nphb-mobile-compact .nphb-hero .nphb-copy{
    gap:8px!important;
  }
  body.nphb-mobile-compact .nphb-hero .nphb-eyebrow{
    margin:0 auto 8px!important;
    padding:6px 11px!important;
    font-size:10px!important;
    letter-spacing:.07em!important;
  }
  body.nphb-mobile-compact .nphb-hero .nphb-hero-brand-logo-only{
    width:min(74vw,var(--nphb-logo-mobile,290px))!important;
    max-width:var(--nphb-logo-mobile,290px)!important;
    margin:0 auto 5px!important;
  }
  body.nphb-mobile-compact .nphb-hero .nphb-title{
    margin:0!important;
    gap:0!important;
  }
  body.nphb-mobile-compact .nphb-hero .nphb-title .nphb-from{
    font-size:50px!important;
    line-height:.94!important;
  }
  body.nphb-mobile-compact .nphb-hero .nphb-title .nphb-to{
    margin-top:2px!important;
    font-size:29px!important;
    line-height:1!important;
  }
  body.nphb-mobile-compact .nphb-hero .nphb-brand-phrase{
    margin:4px 0 7px!important;
    font-size:10.5px!important;
    line-height:1.25!important;
    letter-spacing:.045em!important;
  }
  body.nphb-mobile-compact .nphb-hero .nphb-description{
    max-width:35ch!important;
    margin:0 auto 11px!important;
    font-size:15px!important;
    line-height:1.45!important;
  }

  /* CTAs: dos botones compactos en una sola fila */
  body.nphb-mobile-compact .nphb-hero .nphb-actions{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
    margin:0 0 11px!important;
  }
  body.nphb-mobile-compact .nphb-hero .nphb-button{
    min-width:0!important;
    min-height:0!important;
    padding:9px 9px!important;
    gap:7px!important;
    border-radius:12px!important;
    justify-content:center!important;
  }
  body.nphb-mobile-compact .nphb-hero .nphb-button-icon{
    font-size:17px!important;
  }
  body.nphb-mobile-compact .nphb-hero .nphb-button strong{
    font-size:12px!important;
    line-height:1.15!important;
  }
  body.nphb-mobile-compact .nphb-hero .nphb-button small{
    margin-top:2px!important;
    font-size:9.5px!important;
    line-height:1.2!important;
  }

  /* Prueba social: misma información con menos altura */
  body.nphb-mobile-compact .nphb-hero .nphb-trust{
    gap:9px!important;
    margin:0!important;
    justify-content:center!important;
  }
  body.nphb-mobile-compact .nphb-hero .nphb-trust-icons span{
    width:31px!important;
    height:31px!important;
    font-size:14px!important;
    margin-left:-5px!important;
  }
  body.nphb-mobile-compact .nphb-hero .nphb-stars,
  body.nphb-mobile-compact .nphb-hero .nphb-trust-stars{
    font-size:14px!important;
    letter-spacing:1px!important;
  }
  body.nphb-mobile-compact .nphb-hero .nphb-trust p,
  body.nphb-mobile-compact .nphb-hero .nphb-trust-text{
    font-size:11px!important;
    line-height:1.32!important;
  }

  /* Ruta Hero: compactación respetando alturas configurables */
  body.nphb-mobile-compact .nphb-hero .nphb-roadmap{
    gap:8px!important;
    padding-top:1px!important;
  }
  body.nphb-mobile-compact .nphb-hero .nphb-roadmap .nphb-level{
    padding:9px 40px 9px 11px!important;
    gap:9px!important;
    border-radius:15px!important;
  }
  body.nphb-mobile-compact .nphb-hero .nphb-roadmap .nphb-level-icon{
    flex-basis:var(--nphb-roadmap-icon-mobile,40px)!important;
    width:var(--nphb-roadmap-icon-mobile,40px)!important;
    height:var(--nphb-roadmap-icon-mobile,40px)!important;
    border-radius:12px!important;
    font-size:19px!important;
  }
  body.nphb-mobile-compact .nphb-hero .nphb-roadmap .nphb-level-tag{
    margin-bottom:2px!important;
    font-size:8.5px!important;
  }
  body.nphb-mobile-compact .nphb-hero .nphb-roadmap .nphb-level h2{
    margin-bottom:2px!important;
    font-size:16px!important;
    line-height:1.08!important;
  }
  body.nphb-mobile-compact .nphb-hero .nphb-roadmap .nphb-level p{
    font-size:10.5px!important;
    line-height:1.3!important;
  }
  body.nphb-mobile-compact .nphb-hero .nphb-level-arrow{
    width:25px!important;
    height:25px!important;
    right:10px!important;
  }

  /* Ventajas: 2 columnas compactas; la última ocupa todo el ancho */
  body.nphb-mobile-compact .nphb-hero .nphb-features{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:6px!important;
    margin-top:10px!important;
    padding:8px!important;
    border-radius:16px!important;
  }
  body.nphb-mobile-compact .nphb-hero .nphb-features>div{
    grid-template-columns:32px minmax(0,1fr)!important;
    column-gap:8px!important;
    min-height:48px!important;
    padding:6px 7px!important;
  }
  body.nphb-mobile-compact .nphb-hero .nphb-features>div:last-child{
    grid-column:1 / -1!important;
  }
  body.nphb-mobile-compact .nphb-hero .nphb-features span{
    width:31px!important;
    height:31px!important;
    border-radius:10px!important;
    font-size:15px!important;
  }
  body.nphb-mobile-compact .nphb-hero .nphb-features strong{
    font-size:11.5px!important;
    line-height:1.15!important;
  }
  body.nphb-mobile-compact .nphb-hero .nphb-features small{
    margin-top:2px!important;
    font-size:9.5px!important;
    line-height:1.2!important;
  }

  /* Transición a la ruta completa: menos aire y misma identidad */
  body.nphb-mobile-compact .nphb-learning-path{
    padding-top:var(--nphb-section-mobile,26px)!important;
    padding-bottom:34px!important;
  }
  body.nphb-mobile-compact .nphb-learning-path .nphb-path-header{
    margin-bottom:18px!important;
  }
  body.nphb-mobile-compact .nphb-learning-path .nphb-path-header h2,
  body.nphb-mobile-compact .nphb-learning-path #nphb-path-title{
    font-size:38px!important;
    line-height:1.04!important;
    margin-bottom:10px!important;
  }
  body.nphb-mobile-compact .nphb-learning-path .nphb-path-header p{
    font-size:14px!important;
    line-height:1.45!important;
  }
  body.nphb-mobile-compact .nphb-learning-path .nphb-route-tabs{
    flex-wrap:nowrap!important;
    gap:6px!important;
    margin-bottom:12px!important;
  }
  body.nphb-mobile-compact .nphb-learning-path .nphb-route-tab{
    flex:1 1 0!important;
    min-width:0!important;
    padding:8px 8px!important;
    font-size:11px!important;
    white-space:nowrap!important;
  }
  body.nphb-mobile-compact .nphb-learning-path .nphb-route-copy{
    margin-bottom:11px!important;
  }
  body.nphb-mobile-compact .nphb-learning-path .nphb-route-copy p{
    font-size:13px!important;
    line-height:1.42!important;
  }
  body.nphb-mobile-compact .nphb-learning-path .nphb-route-image-stage{
    border-radius:16px!important;
  }
  body.nphb-mobile-compact .nphb-learning-path .nphb-path-signature-wrap{
    margin-top:12px!important;
    padding-top:12px!important;
    padding-bottom:4px!important;
  }
  body.nphb-mobile-compact .nphb-learning-path .nphb-brand-signature-path{
    padding:7px 10px!important;
    gap:9px!important;
  }
}

@media (max-width:340px){
  body.nphb-mobile-compact .nphb-hero .nphb-actions{
    grid-template-columns:1fr!important;
  }
}

/* =========================================================
   v10.8.16 — HERO MÓVIL CON PERSONAJE + RUTA EN ESCALERA
   Solo afecta a móvil. Escritorio y tablet permanecen intactos.
   ========================================================= */
.nphb-mobile-hero-visual,
.nphb-roadmap-mobile-bg{
  display:none;
}

@media (max-width:760px){
  /* Hero visual opcional: la imagen se elige desde Home Builder. */
  body.nphb-mobile-compact .nphb-hero.nphb-has-mobile-hero-visual .nphb-copy{
    position:relative!important;
    overflow:hidden!important;
    align-items:flex-start!important;
    text-align:left!important;
    padding-left:2px!important;
    padding-right:2px!important;
  }
  body.nphb-mobile-compact .nphb-hero.nphb-has-mobile-hero-visual .nphb-copy > *:not(.nphb-mobile-hero-visual){
    position:relative;
    z-index:2;
  }
  body.nphb-mobile-compact .nphb-hero.nphb-has-mobile-hero-visual .nphb-mobile-hero-visual{
    display:flex!important;
    position:absolute!important;
    z-index:1!important;
    top:44px!important;
    right:0!important;
    width:var(--nphb-hero-mobile-visual-width,48%)!important;
    height:var(--nphb-hero-mobile-visual-height,270px)!important;
    transform:translate(var(--nphb-hero-mobile-visual-x,0),var(--nphb-hero-mobile-visual-y,0))!important;
    align-items:flex-end!important;
    justify-content:center!important;
    pointer-events:none!important;
  }
  body.nphb-mobile-compact .nphb-hero.nphb-has-mobile-hero-visual .nphb-mobile-hero-visual::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:1;
    background:linear-gradient(90deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.72) 18%,rgba(255,255,255,0) 50%);
    pointer-events:none;
  }
  body.nphb-mobile-compact .nphb-hero.nphb-has-mobile-hero-visual .nphb-mobile-hero-visual img{
    position:relative;
    z-index:0;
    display:block;
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    object-fit:contain!important;
    object-position:center bottom!important;
    -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 24%,#000 100%);
    mask-image:linear-gradient(90deg,transparent 0%,#000 24%,#000 100%);
  }
  body.nphb-mobile-compact .nphb-hero.nphb-has-mobile-hero-visual .nphb-eyebrow,
  body.nphb-mobile-compact .nphb-hero.nphb-has-mobile-hero-visual .nphb-hero-brand,
  body.nphb-mobile-compact .nphb-hero.nphb-has-mobile-hero-visual .nphb-title,
  body.nphb-mobile-compact .nphb-hero.nphb-has-mobile-hero-visual .nphb-brand-phrase,
  body.nphb-mobile-compact .nphb-hero.nphb-has-mobile-hero-visual .nphb-description{
    width:59%!important;
    max-width:59%!important;
    margin-left:0!important;
    margin-right:0!important;
    text-align:left!important;
  }
  body.nphb-mobile-compact .nphb-hero.nphb-has-mobile-hero-visual .nphb-eyebrow{
    justify-content:flex-start!important;
    width:auto!important;
    max-width:62%!important;
  }
  body.nphb-mobile-compact .nphb-hero.nphb-has-mobile-hero-visual .nphb-hero-brand-logo-only{
    width:min(46vw,var(--nphb-logo-mobile,190px))!important;
    max-width:190px!important;
  }
  body.nphb-mobile-compact .nphb-hero.nphb-has-mobile-hero-visual .nphb-title .nphb-from,
  body.nphb-mobile-compact .nphb-hero.nphb-has-mobile-hero-visual .nphb-title .nphb-to{
    text-align:left!important;
  }
  body.nphb-mobile-compact .nphb-hero.nphb-has-mobile-hero-visual .nphb-brand-phrase{
    font-size:9.5px!important;
  }
  body.nphb-mobile-compact .nphb-hero.nphb-has-mobile-hero-visual .nphb-description{
    font-size:13.5px!important;
    line-height:1.38!important;
  }
  body.nphb-mobile-compact .nphb-hero.nphb-has-mobile-hero-visual .nphb-actions,
  body.nphb-mobile-compact .nphb-hero.nphb-has-mobile-hero-visual .nphb-trust{
    width:100%!important;
    max-width:none!important;
    clear:both!important;
  }
  body.nphb-mobile-compact .nphb-hero.nphb-has-mobile-hero-visual .nphb-actions{
    margin-top:10px!important;
  }

  /* Ruta Hero en escalera, como la composición de escritorio pero adaptada al ancho móvil. */
  body.nphb-mobile-compact .nphb-hero .nphb-roadmap{
    position:relative!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:7px!important;
    overflow:hidden!important;
    padding:10px 0 14px!important;
    min-height:0!important;
  }
  body.nphb-mobile-compact .nphb-hero .nphb-roadmap .nphb-grid-bg,
  body.nphb-mobile-compact .nphb-hero .nphb-roadmap .nphb-cert-bg,
  body.nphb-mobile-compact .nphb-hero .nphb-roadmap .nphb-route{
    display:none!important;
  }
  body.nphb-mobile-compact .nphb-hero .nphb-roadmap .nphb-roadmap-mobile-bg{
    display:block!important;
    position:absolute!important;
    inset:0!important;
    z-index:0!important;
    background-position:right bottom!important;
    background-size:contain!important;
    background-repeat:no-repeat!important;
    opacity:.34!important;
    -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.72) 42%,#000 100%);
    mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.72) 42%,#000 100%);
    pointer-events:none!important;
  }
  body.nphb-mobile-compact .nphb-hero .nphb-roadmap .nphb-level{
    position:relative!important;
    z-index:2!important;
    width:var(--nphb-roadmap-card-width-mobile,80%)!important;
    max-width:var(--nphb-roadmap-card-width-mobile,80%)!important;
    box-sizing:border-box!important;
    margin-right:0!important;
    transform:none!important;
  }
  body.nphb-mobile-compact .nphb-hero .nphb-roadmap .nphb-level-ccst{margin-left:0!important;}
  body.nphb-mobile-compact .nphb-hero .nphb-roadmap .nphb-level-ccna{margin-left:var(--nphb-roadmap-step-mobile,5%)!important;}
  body.nphb-mobile-compact .nphb-hero .nphb-roadmap .nphb-level-encor{margin-left:calc(var(--nphb-roadmap-step-mobile,5%) + var(--nphb-roadmap-step-mobile,5%))!important;}
  body.nphb-mobile-compact .nphb-hero .nphb-roadmap .nphb-level-enarsi{margin-left:calc(var(--nphb-roadmap-step-mobile,5%) + var(--nphb-roadmap-step-mobile,5%) + var(--nphb-roadmap-step-mobile,5%))!important;}
  body.nphb-mobile-compact .nphb-hero .nphb-roadmap .nphb-level-ccie{margin-left:calc(var(--nphb-roadmap-step-mobile,5%) + var(--nphb-roadmap-step-mobile,5%) + var(--nphb-roadmap-step-mobile,5%) + var(--nphb-roadmap-step-mobile,5%))!important;}

  /* Seis ventajas = tres filas equilibradas de dos columnas. */
  body.nphb-mobile-compact .nphb-hero .nphb-features>div:last-child{
    grid-column:auto!important;
  }
}

@media (max-width:390px){
  body.nphb-mobile-compact .nphb-hero.nphb-has-mobile-hero-visual .nphb-eyebrow,
  body.nphb-mobile-compact .nphb-hero.nphb-has-mobile-hero-visual .nphb-hero-brand,
  body.nphb-mobile-compact .nphb-hero.nphb-has-mobile-hero-visual .nphb-title,
  body.nphb-mobile-compact .nphb-hero.nphb-has-mobile-hero-visual .nphb-brand-phrase,
  body.nphb-mobile-compact .nphb-hero.nphb-has-mobile-hero-visual .nphb-description{
    width:61%!important;
    max-width:61%!important;
  }
  body.nphb-mobile-compact .nphb-hero.nphb-has-mobile-hero-visual .nphb-description{
    font-size:12.5px!important;
  }
}


/* =========================================================
   v10.8.17 — Imagen principal del Hero en ordenador/tablet
   Solo se activa cuando hay una imagen seleccionada.
   Móvil conserva la composición independiente de v10.8.16.
   ========================================================= */
.nphb-main-hero-visual{display:none;}

@media (min-width:1181px){
  body .nphb-hero.nphb-has-main-hero-visual.nphb-main-visual-desktop .nphb-inner{
    grid-template-columns:minmax(0,.92fr) minmax(520px,1.08fr)!important;
    grid-template-rows:auto auto!important;
    align-items:center!important;
    min-height:auto!important;
    isolation:isolate!important;
  }
  body .nphb-hero.nphb-has-main-hero-visual.nphb-main-visual-desktop .nphb-copy{
    grid-column:1!important;
    grid-row:1!important;
    position:relative!important;
    z-index:3!important;
    max-width:650px!important;
  }
  body .nphb-hero.nphb-has-main-hero-visual.nphb-main-visual-desktop .nphb-main-hero-visual{
    display:block!important;
    grid-column:1 / -1!important;
    grid-row:1!important;
    justify-self:center!important;
    align-self:center!important;
    position:relative!important;
    z-index:1!important;
    width:var(--nphb-hero-main-visual-width-desktop,100%)!important;
    height:var(--nphb-hero-main-visual-height-desktop,560px)!important;
    transform:translate(var(--nphb-hero-main-visual-x-desktop,0px),var(--nphb-hero-main-visual-y-desktop,0px))!important;
    border-radius:30px!important;
    overflow:hidden!important;
    pointer-events:none!important;
    box-shadow:0 28px 70px rgba(32,72,130,.10)!important;
  }
  body .nphb-hero.nphb-has-main-hero-visual.nphb-main-visual-desktop .nphb-main-hero-visual img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    object-fit:contain!important;
    object-position:center center!important;
  }
  body .nphb-hero.nphb-has-main-hero-visual.nphb-main-visual-desktop .nphb-roadmap{
    grid-column:1 / -1!important;
    grid-row:2!important;
    width:min(var(--nphb-roadmap-width-desktop,780px),100%)!important;
    margin:8px auto 0!important;
  }
}

@media (min-width:761px) and (max-width:1180px){
  body .nphb-hero.nphb-has-main-hero-visual.nphb-main-visual-tablet .nphb-inner{
    grid-template-columns:1fr!important;
    min-height:auto!important;
  }
  body .nphb-hero.nphb-has-main-hero-visual.nphb-main-visual-tablet .nphb-copy{
    grid-column:1!important;
    grid-row:auto!important;
    position:relative!important;
    z-index:3!important;
  }
  body .nphb-hero.nphb-has-main-hero-visual.nphb-main-visual-tablet .nphb-main-hero-visual{
    display:block!important;
    grid-column:1!important;
    grid-row:auto!important;
    justify-self:center!important;
    position:relative!important;
    z-index:1!important;
    width:var(--nphb-hero-main-visual-width-tablet,100%)!important;
    height:var(--nphb-hero-main-visual-height-tablet,420px)!important;
    transform:translate(var(--nphb-hero-main-visual-x-tablet,0px),var(--nphb-hero-main-visual-y-tablet,0px))!important;
    border-radius:26px!important;
    overflow:hidden!important;
    pointer-events:none!important;
    box-shadow:0 24px 58px rgba(32,72,130,.09)!important;
  }
  body .nphb-hero.nphb-has-main-hero-visual.nphb-main-visual-tablet .nphb-main-hero-visual img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    object-fit:contain!important;
    object-position:center center!important;
  }
  body .nphb-hero.nphb-has-main-hero-visual.nphb-main-visual-tablet .nphb-roadmap{
    grid-column:1!important;
    grid-row:auto!important;
    margin:0 auto!important;
  }
}

@media (max-width:760px){
  body .nphb-main-hero-visual{display:none!important;}
}

/* =========================================================
   v10.8.20 — Hero visual integrado sin tarjeta/contenedor blanco
   La imagen se integra directamente en el Hero.
   ========================================================= */
@media (min-width:761px){
  body .nphb-hero.nphb-has-main-hero-visual .nphb-main-hero-visual{
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    overflow:visible!important;
  }
  body .nphb-hero.nphb-has-main-hero-visual .nphb-main-hero-visual img{
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
}


/* =========================================================
   v10.8.21 — Integración visual del Hero sin marco
   Solo afecta al visual principal en ordenador/tablet.
   El contenedor queda totalmente transparente y la imagen
   se funde suavemente con el fondo del Hero por el lado del texto.
   ========================================================= */
@media (min-width:761px){
  body .nphb-hero.nphb-has-main-hero-visual .nphb-main-hero-visual{
    background:none!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    outline:0!important;
    overflow:visible!important;
  }
  body .nphb-hero.nphb-has-main-hero-visual .nphb-main-hero-visual img{
    background:none!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    outline:0!important;
    -webkit-mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.22) 5%,rgba(0,0,0,.62) 11%,#000 20%,#000 100%)!important;
    mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.22) 5%,rgba(0,0,0,.62) 11%,#000 20%,#000 100%)!important;
    -webkit-mask-repeat:no-repeat!important;
    mask-repeat:no-repeat!important;
    -webkit-mask-size:100% 100%!important;
    mask-size:100% 100%!important;
  }
}

/* =========================================================
   v10.8.22 — Hero visual sin contenedor
   Elimina físicamente el wrapper de la imagen principal.
   La propia imagen es el elemento de grid: sin marco, fondo,
   sombra, radio ni máscara adicional. El degradado de la
   imagen se integra directamente con el Hero.
   ========================================================= */
@media (min-width:1181px){
  body .nphb-hero.nphb-has-main-hero-visual.nphb-main-visual-desktop > .nphb-inner > img.nphb-main-hero-visual,
  body .nphb-hero.nphb-has-main-hero-visual.nphb-main-visual-desktop .nphb-inner > img.nphb-main-hero-visual{
    display:block!important;
    grid-column:1 / -1!important;
    grid-row:1!important;
    justify-self:center!important;
    align-self:center!important;
    position:relative!important;
    z-index:1!important;
    width:var(--nphb-hero-main-visual-width-desktop,100%)!important;
    height:var(--nphb-hero-main-visual-height-desktop,560px)!important;
    max-width:none!important;
    transform:translate(var(--nphb-hero-main-visual-x-desktop,0px),var(--nphb-hero-main-visual-y-desktop,0px))!important;
    object-fit:contain!important;
    object-position:center center!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    outline:0!important;
    clip-path:none!important;
    -webkit-clip-path:none!important;
    -webkit-mask:none!important;
    mask:none!important;
    overflow:visible!important;
    pointer-events:none!important;
  }
}

@media (min-width:761px) and (max-width:1180px){
  body .nphb-hero.nphb-has-main-hero-visual.nphb-main-visual-tablet .nphb-inner > img.nphb-main-hero-visual{
    display:block!important;
    grid-column:1!important;
    grid-row:auto!important;
    justify-self:center!important;
    align-self:center!important;
    position:relative!important;
    z-index:1!important;
    width:var(--nphb-hero-main-visual-width-tablet,100%)!important;
    height:var(--nphb-hero-main-visual-height-tablet,420px)!important;
    max-width:none!important;
    transform:translate(var(--nphb-hero-main-visual-x-tablet,0px),var(--nphb-hero-main-visual-y-tablet,0px))!important;
    object-fit:contain!important;
    object-position:center center!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    outline:0!important;
    clip-path:none!important;
    -webkit-clip-path:none!important;
    -webkit-mask:none!important;
    mask:none!important;
    overflow:visible!important;
    pointer-events:none!important;
  }
}

@media (max-width:760px){
  body .nphb-inner > img.nphb-main-hero-visual{display:none!important;}
}

/* =========================================================
   v10.8.23 — Concepto 1 · Hero + ruta horizontal profesional
   Reorganiza ÚNICAMENTE el bloque superior en escritorio.
   Mantiene textos, enlaces, lógica y opciones existentes.
   ========================================================= */
@media (min-width:1181px){
  body .nphb-hero.nphb-concept-top-v1{
    padding:34px 0 0!important;
    background:
      radial-gradient(circle at 76% 12%,rgba(43,102,245,.065),transparent 31%),
      linear-gradient(180deg,#fff 0%,#fbfdff 100%)!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-glow{
    opacity:.36!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-inner{
    display:grid!important;
    grid-template-columns:minmax(0,46%) minmax(0,54%)!important;
    grid-template-rows:auto auto!important;
    column-gap:22px!important;
    row-gap:12px!important;
    align-items:center!important;
    min-height:0!important;
    width:100%!important;
    max-width:none!important;
    margin:0 auto!important;
    padding:28px 44px 0!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-copy{
    grid-column:1!important;
    grid-row:1!important;
    align-self:center!important;
    max-width:560px!important;
    margin:0!important;
    padding:0!important;
    text-align:left!important;
    position:relative!important;
    z-index:5!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-eyebrow{
    margin:0 0 14px!important;
    padding:7px 13px!important;
    font-size:11px!important;
    letter-spacing:.06em!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-hero-brand-logo-only{
    width:min(var(--nphb-hero-logo-width-desktop,390px),300px)!important;
    max-width:300px!important;
    margin:0 0 14px!important;
    transform:translate(var(--nphb-hero-logo-x-desktop,0px),var(--nphb-hero-logo-y-desktop,0px))!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-hero-brand-logo-only .nphb-hero-brand-logo,
  body .nphb-hero.nphb-concept-top-v1 .nphb-hero-brand-logo-only .nphb-hero-brand-logo img{
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    max-height:96px!important;
    object-fit:contain!important;
    object-position:left center!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-title{
    margin:0 0 10px!important;
    line-height:.9!important;
    letter-spacing:-.052em!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-title .nphb-from{
    font-size:clamp(52px,4.35vw,68px)!important;
    line-height:.9!important;
    white-space:nowrap!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-title .nphb-to{
    margin-top:7px!important;
    font-size:clamp(30px,2.45vw,39px)!important;
    line-height:1!important;
    white-space:nowrap!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-brand-phrase{
    margin:0 0 14px!important;
    font-size:12px!important;
    letter-spacing:.075em!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-description{
    max-width:545px!important;
    margin:0 0 17px!important;
    font-size:16px!important;
    line-height:1.5!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-actions{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:12px!important;
    width:min(100%,560px)!important;
    margin:0!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-button{
    width:100%!important;
    min-width:0!important;
    min-height:66px!important;
    padding:11px 15px!important;
    border-radius:15px!important;
    gap:11px!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-button-icon{
    font-size:21px!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-button strong{
    font-size:14px!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-button small{
    font-size:11.5px!important;
  }

  /* En el concepto la confianza baja a la franja inferior. */
  body .nphb-hero.nphb-concept-top-v1 .nphb-trust{
    display:none!important;
  }

  body .nphb-hero.nphb-concept-top-v1 > .nphb-inner > img.nphb-main-hero-visual{
    display:block!important;
    grid-column:2!important;
    grid-row:1!important;
    align-self:center!important;
    justify-self:end!important;
    width:min(var(--nphb-hero-main-visual-width-desktop,100%),100%)!important;
    height:min(var(--nphb-hero-main-visual-height-desktop,560px),500px)!important;
    max-width:100%!important;
    object-fit:contain!important;
    object-position:center bottom!important;
    transform:translate(var(--nphb-hero-main-visual-x-desktop,0px),var(--nphb-hero-main-visual-y-desktop,0px))!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    z-index:2!important;
  }

  /* Ruta horizontal profesional, reutilizando las cinco tarjetas existentes. */
  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap{
    grid-column:1 / -1!important;
    grid-row:2!important;
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:14px!important;
    width:100%!important;
    max-width:none!important;
    min-height:0!important;
    margin:4px auto 0!important;
    padding:44px 0 10px!important;
    border-radius:0!important;
    transform:none!important;
    overflow:visible!important;
    position:relative!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap::before{
    content:""!important;
    display:block!important;
    position:absolute!important;
    top:23px!important;
    left:8%!important;
    right:8%!important;
    height:2px!important;
    background:linear-gradient(90deg,#46c9be 0%,#4387f6 27%,#8b54ea 53%,#ff913c 76%,#e2b12e 100%)!important;
    border:0!important;
    box-shadow:0 0 16px rgba(65,112,239,.16)!important;
    transform:none!important;
    border-radius:999px!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-grid-bg,
  body .nphb-hero.nphb-concept-top-v1 .nphb-cert-bg,
  body .nphb-hero.nphb-concept-top-v1 .nphb-route,
  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap-mobile-bg{
    display:none!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap .nphb-level{
    position:relative!important;
    inset:auto!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    bottom:auto!important;
    display:grid!important;
    grid-template-columns:54px minmax(0,1fr)!important;
    grid-template-rows:auto auto!important;
    column-gap:12px!important;
    align-content:start!important;
    width:100%!important;
    max-width:none!important;
    min-height:188px!important;
    padding:22px 15px 16px!important;
    margin:0!important;
    border-radius:18px!important;
    background:rgba(255,255,255,.96)!important;
    box-shadow:0 11px 28px rgba(25,61,118,.075)!important;
    backdrop-filter:none!important;
    transform:none!important;
    overflow:visible!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap .nphb-level::before{
    position:absolute!important;
    top:-43px!important;
    left:50%!important;
    transform:translateX(-50%)!important;
    display:grid!important;
    place-items:center!important;
    width:42px!important;
    height:42px!important;
    border:3px solid #fff!important;
    border-radius:50%!important;
    color:#fff!important;
    font-size:16px!important;
    font-weight:900!important;
    box-shadow:0 4px 12px rgba(33,61,111,.18)!important;
    z-index:3!important;
  }
  body .nphb-hero.nphb-concept-top-v1 .nphb-level-ccst::before{content:"1"!important;background:#22bbae!important;}
  body .nphb-hero.nphb-concept-top-v1 .nphb-level-ccna::before{content:"2"!important;background:#3281ed!important;}
  body .nphb-hero.nphb-concept-top-v1 .nphb-level-encor::before{content:"3"!important;background:#8849dc!important;}
  body .nphb-hero.nphb-concept-top-v1 .nphb-level-enarsi::before{content:"4"!important;background:#ff8a28!important;}
  body .nphb-hero.nphb-concept-top-v1 .nphb-level-ccie::before{content:"5"!important;background:#d9a400!important;}

  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap .nphb-level::after{
    content:none!important;
    display:none!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap .nphb-level-icon{
    grid-column:1!important;
    grid-row:1!important;
    display:grid!important;
    place-items:center!important;
    width:54px!important;
    height:54px!important;
    flex:0 0 54px!important;
    margin:0!important;
    border-radius:14px!important;
    font-size:25px!important;
    box-shadow:none!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap .nphb-level > div{
    grid-column:2!important;
    grid-row:1 / span 2!important;
    min-width:0!important;
    padding:0!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap .nphb-level-tag{
    display:inline-flex!important;
    align-items:center!important;
    width:auto!important;
    min-height:24px!important;
    margin:0 0 7px!important;
    padding:4px 9px!important;
    border-radius:999px!important;
    font-size:9px!important;
    line-height:1!important;
    letter-spacing:.045em!important;
    white-space:nowrap!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap .nphb-level h2{
    margin:0 0 7px!important;
    font-size:19px!important;
    line-height:1.08!important;
    letter-spacing:-.025em!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap .nphb-level p{
    display:block!important;
    margin:0!important;
    font-size:12.5px!important;
    line-height:1.38!important;
    color:#687895!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap .nphb-level-arrow{
    position:absolute!important;
    top:50%!important;
    right:-25px!important;
    transform:translateY(-50%)!important;
    display:grid!important;
    place-items:center!important;
    width:34px!important;
    height:34px!important;
    border:1px solid #d8e3f6!important;
    border-radius:50%!important;
    background:#fff!important;
    color:#2368ee!important;
    opacity:1!important;
    z-index:5!important;
    box-shadow:0 6px 16px rgba(34,77,148,.08)!important;
  }
  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap .nphb-level-ccie .nphb-level-arrow{display:none!important;}

  body .nphb-hero.nphb-concept-top-v1 .nphb-level-ccst{border-color:#bfece7!important;}
  body .nphb-hero.nphb-concept-top-v1 .nphb-level-ccna{border-color:#cee0fb!important;}
  body .nphb-hero.nphb-concept-top-v1 .nphb-level-encor{border-color:#e1d1f5!important;}
  body .nphb-hero.nphb-concept-top-v1 .nphb-level-enarsi{border-color:#f9d7b8!important;}
  body .nphb-hero.nphb-concept-top-v1 .nphb-level-ccie{border-color:#f0dda1!important;}

  body .nphb-hero.nphb-concept-top-v1 .nphb-level-ccst .nphb-level-icon{background:#eafaf8!important;}
  body .nphb-hero.nphb-concept-top-v1 .nphb-level-ccna .nphb-level-icon{background:#eef5ff!important;}
  body .nphb-hero.nphb-concept-top-v1 .nphb-level-encor .nphb-level-icon{background:#f5effd!important;}
  body .nphb-hero.nphb-concept-top-v1 .nphb-level-enarsi .nphb-level-icon{background:#fff4e9!important;}
  body .nphb-hero.nphb-concept-top-v1 .nphb-level-ccie .nphb-level-icon{background:#fff8e3!important;}

  body .nphb-hero.nphb-concept-top-v1 .nphb-level-ccst .nphb-level-tag{color:#159f95!important;background:#e7f9f6!important;}
  body .nphb-hero.nphb-concept-top-v1 .nphb-level-ccna .nphb-level-tag{color:#276ed8!important;background:#edf4ff!important;}
  body .nphb-hero.nphb-concept-top-v1 .nphb-level-encor .nphb-level-tag{color:#7a3dcc!important;background:#f3ecfd!important;}
  body .nphb-hero.nphb-concept-top-v1 .nphb-level-enarsi .nphb-level-tag{color:#ee7b18!important;background:#fff0e2!important;}
  body .nphb-hero.nphb-concept-top-v1 .nphb-level-ccie .nphb-level-tag{color:#b88900!important;background:#fff6d9!important;}

  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap .nphb-level:hover,
  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap .nphb-level:focus-visible{
    transform:translateY(-4px)!important;
    box-shadow:0 16px 34px rgba(25,61,118,.12)!important;
  }

  /* Franja: solo Laboratorios, Vídeos, Material + frase de marca. */
  body .nphb-hero.nphb-concept-top-v1 .nphb-features-concept{
    grid-template-columns:repeat(3,minmax(0,1fr)) minmax(230px,.9fr)!important;
    gap:0!important;
    width:calc(100% - 88px)!important;
    max-width:none!important;
    margin:0 auto 24px!important;
    padding:13px 14px!important;
    border:1px solid #dfe8f5!important;
    border-radius:18px!important;
    background:rgba(255,255,255,.96)!important;
    box-shadow:0 12px 28px rgba(28,60,111,.065)!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-features-concept > div{
    min-height:58px!important;
    padding:0 17px!important;
    border-left:1px solid #e7edf6!important;
  }
  body .nphb-hero.nphb-concept-top-v1 .nphb-features-concept > div:first-child{border-left:0!important;}

  body .nphb-hero.nphb-concept-top-v1 .nphb-features-concept span{
    width:40px!important;
    height:40px!important;
    border-radius:12px!important;
    font-size:18px!important;
  }
  body .nphb-hero.nphb-concept-top-v1 .nphb-features-concept strong{font-size:13px!important;}
  body .nphb-hero.nphb-concept-top-v1 .nphb-features-concept small{font-size:11px!important;}

  body .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:10px!important;
    color:#123b92!important;
    text-align:center!important;
  }
  body .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-text{
    display:block!important;
    width:auto!important;
    height:auto!important;
    background:none!important;
    border-radius:0!important;
    color:#173e94!important;
    font-family:"Segoe Print","Bradley Hand",cursive!important;
    font-size:16px!important;
    line-height:1.2!important;
    transform:rotate(-2deg)!important;
  }
  body .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-arrow{
    display:block!important;
    width:auto!important;
    height:auto!important;
    background:none!important;
    border-radius:0!important;
    color:#2457f5!important;
    font-size:29px!important;
    line-height:1!important;
  }
}

/* Tablet conserva la estructura actual, pero la franja ya refleja 3 ventajas + frase. */
@media (min-width:761px) and (max-width:1180px){
  body .nphb-hero.nphb-concept-top-v1 .nphb-features-concept{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
  }
  body .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-text,
  body .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-arrow{
    width:auto!important;
    height:auto!important;
    background:none!important;
  }
}

@media (max-width:760px){
  body .nphb-hero.nphb-concept-top-v1 .nphb-features-concept{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:6px!important;
    min-height:58px!important;
    padding:9px 10px!important;
  }
  body .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-text{
    display:block!important;
    width:auto!important;
    height:auto!important;
    background:none!important;
    color:#173e94!important;
    font-size:13px!important;
    font-weight:700!important;
  }
  body .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-arrow{
    width:auto!important;
    height:auto!important;
    background:none!important;
    color:#2457f5!important;
    font-size:20px!important;
  }
}

/* =========================================================
   v10.8.24 — Tarjetas superiores compactas y a ancho completo
   Ajuste exclusivo del concepto superior en escritorio.
   Mantiene contenido, enlaces, lógica, imagen y resto de bloques.
   ========================================================= */
@media (min-width:1181px){
  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap{
    width:calc(100% + 56px)!important;
    margin:2px -28px 0!important;
    padding:42px 0 8px!important;
    gap:10px!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap::before{
    top:22px!important;
    left:6.5%!important;
    right:6.5%!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap .nphb-level{
    --concept-stage:#2457f5;
    --concept-soft:rgba(36,87,245,.045);
    justify-self:stretch!important;
    align-self:stretch!important;
    grid-template-columns:46px minmax(0,1fr)!important;
    grid-template-rows:auto!important;
    column-gap:11px!important;
    width:100%!important;
    min-width:0!important;
    min-height:146px!important;
    padding:15px 12px 13px!important;
    border-radius:17px!important;
    background:linear-gradient(145deg,var(--concept-soft) 0%,rgba(255,255,255,.985) 46%,#fff 100%)!important;
    box-shadow:
      inset 4px 0 0 var(--concept-stage),
      0 9px 23px rgba(25,61,118,.075)!important;
    transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-level-ccst{--concept-stage:#22bbae;--concept-soft:rgba(34,187,174,.055);}
  body .nphb-hero.nphb-concept-top-v1 .nphb-level-ccna{--concept-stage:#3281ed;--concept-soft:rgba(50,129,237,.052);}
  body .nphb-hero.nphb-concept-top-v1 .nphb-level-encor{--concept-stage:#8849dc;--concept-soft:rgba(136,73,220,.052);}
  body .nphb-hero.nphb-concept-top-v1 .nphb-level-enarsi{--concept-stage:#ff8a28;--concept-soft:rgba(255,138,40,.055);}
  body .nphb-hero.nphb-concept-top-v1 .nphb-level-ccie{--concept-stage:#d9a400;--concept-soft:rgba(217,164,0,.055);}

  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap .nphb-level::before{
    top:-40px!important;
    width:40px!important;
    height:40px!important;
    font-size:15px!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap .nphb-level-icon{
    width:46px!important;
    height:46px!important;
    flex:0 0 46px!important;
    border-radius:13px!important;
    font-size:21px!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap .nphb-level > div{
    min-width:0!important;
    padding:0 29px 0 0!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap .nphb-level-tag{
    max-width:100%!important;
    min-height:20px!important;
    margin:0 0 5px!important;
    padding:3px 8px!important;
    font-size:8.2px!important;
    line-height:1.05!important;
    white-space:nowrap!important;
    overflow:visible!important;
    text-overflow:clip!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap .nphb-level h2{
    margin:0 0 5px!important;
    font-size:17px!important;
    line-height:1.08!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap .nphb-level p{
    display:block!important;
    max-width:none!important;
    margin:0!important;
    padding-right:2px!important;
    color:#687895!important;
    font-size:11.5px!important;
    line-height:1.32!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap .nphb-level-arrow{
    top:auto!important;
    right:11px!important;
    bottom:11px!important;
    width:29px!important;
    height:29px!important;
    transform:none!important;
    border-color:color-mix(in srgb,var(--concept-stage) 24%,#dfe7f5)!important;
    background:color-mix(in srgb,var(--concept-stage) 7%,#fff)!important;
    color:var(--concept-stage)!important;
    opacity:.82!important;
    box-shadow:none!important;
    transition:transform .2s ease,background .2s ease,box-shadow .2s ease!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap .nphb-level:hover,
  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap .nphb-level:focus-visible{
    transform:translateY(-5px)!important;
    border-color:color-mix(in srgb,var(--concept-stage) 45%,#dfe7f5)!important;
    box-shadow:
      inset 4px 0 0 var(--concept-stage),
      0 16px 32px color-mix(in srgb,var(--concept-stage) 13%,rgba(25,61,118,.11))!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap .nphb-level-action:hover .nphb-level-arrow,
  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap .nphb-level-action:focus-visible .nphb-level-arrow{
    opacity:1!important;
    transform:translateX(2px)!important;
    background:color-mix(in srgb,var(--concept-stage) 11%,#fff)!important;
  }

  /* Franja inferior: menos aire entre título y subtítulo. */
  body .nphb-hero.nphb-concept-top-v1 .nphb-features-concept{
    width:calc(100% - 56px)!important;
    padding-top:11px!important;
    padding-bottom:11px!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-features-concept > div:not(.nphb-feature-phrase){
    grid-template-rows:auto auto!important;
    row-gap:0!important;
    align-content:center!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-features-concept strong{
    line-height:1.15!important;
    margin:0!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-features-concept small{
    margin-top:1px!important;
    line-height:1.2!important;
  }
}

/* =========================================================
   v10.8.25 — Ruta superior horizontal refinada
   Ajuste EXCLUSIVO de las cinco tarjetas del concepto superior
   en escritorio. Mantiene contenido, enlaces, línea, nodos y
   franja inferior. El contenido interior aprovecha todo el ancho.
   ========================================================= */
@media (min-width:1181px){
  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap{
    width:calc(100% + 72px)!important;
    margin:0 -36px 0!important;
    padding:42px 0 10px!important;
    gap:14px!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap::before{
    top:21px!important;
    left:7.1%!important;
    right:7.1%!important;
    height:2px!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap .nphb-level{
    --concept-stage:#2457f5;
    --concept-soft:rgba(36,87,245,.045);
    display:grid!important;
    grid-template-columns:58px minmax(0,1fr)!important;
    grid-template-rows:auto auto 1fr!important;
    column-gap:12px!important;
    row-gap:8px!important;
    align-content:start!important;
    width:100%!important;
    min-width:0!important;
    min-height:184px!important;
    padding:18px 18px 16px!important;
    border-radius:18px!important;
    background:linear-gradient(145deg,var(--concept-soft) 0%,rgba(255,255,255,.992) 46%,#fff 100%)!important;
    box-shadow:
      inset 3px 0 0 var(--concept-stage),
      0 10px 26px rgba(25,61,118,.07)!important;
    overflow:visible!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-level-ccst{--concept-stage:#22bbae;--concept-soft:rgba(34,187,174,.06);}
  body .nphb-hero.nphb-concept-top-v1 .nphb-level-ccna{--concept-stage:#3281ed;--concept-soft:rgba(50,129,237,.055);}
  body .nphb-hero.nphb-concept-top-v1 .nphb-level-encor{--concept-stage:#8849dc;--concept-soft:rgba(136,73,220,.055);}
  body .nphb-hero.nphb-concept-top-v1 .nphb-level-enarsi{--concept-stage:#ff8a28;--concept-soft:rgba(255,138,40,.06);}
  body .nphb-hero.nphb-concept-top-v1 .nphb-level-ccie{--concept-stage:#d9a400;--concept-soft:rgba(217,164,0,.06);}

  /* El wrapper deja de comprimir título y descripción en una columna estrecha. */
  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap .nphb-level > div{
    display:contents!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap .nphb-level-icon{
    grid-column:1!important;
    grid-row:1!important;
    width:58px!important;
    height:58px!important;
    min-width:58px!important;
    flex-basis:58px!important;
    margin:0!important;
    border-radius:15px!important;
    font-size:25px!important;
    align-self:start!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap .nphb-level-tag{
    grid-column:2!important;
    grid-row:1!important;
    justify-self:start!important;
    align-self:center!important;
    width:auto!important;
    max-width:100%!important;
    min-height:24px!important;
    margin:0!important;
    padding:5px 10px!important;
    font-size:8.6px!important;
    line-height:1!important;
    letter-spacing:.04em!important;
    white-space:nowrap!important;
    overflow:visible!important;
    text-overflow:clip!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap .nphb-level h2{
    grid-column:1 / -1!important;
    grid-row:2!important;
    margin:1px 0 0!important;
    padding:0 40px 0 0!important;
    color:#102247!important;
    font-size:19px!important;
    line-height:1.12!important;
    letter-spacing:-.025em!important;
    white-space:normal!important;
    overflow:visible!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    hyphens:none!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap .nphb-level p{
    grid-column:1 / -1!important;
    grid-row:3!important;
    align-self:start!important;
    max-width:none!important;
    min-height:0!important;
    margin:0!important;
    padding:0 40px 0 0!important;
    color:#687895!important;
    font-size:12.2px!important;
    line-height:1.38!important;
    white-space:normal!important;
    overflow:visible!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    hyphens:none!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap .nphb-level-arrow{
    right:14px!important;
    bottom:14px!important;
    width:31px!important;
    height:31px!important;
    border-color:color-mix(in srgb,var(--concept-stage) 26%,#dfe7f5)!important;
    background:color-mix(in srgb,var(--concept-stage) 7%,#fff)!important;
    color:var(--concept-stage)!important;
    opacity:.9!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap .nphb-level:hover,
  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap .nphb-level:focus-visible{
    transform:translateY(-5px)!important;
    border-color:color-mix(in srgb,var(--concept-stage) 48%,#dfe7f5)!important;
    box-shadow:
      inset 3px 0 0 var(--concept-stage),
      0 18px 38px color-mix(in srgb,var(--concept-stage) 12%,rgba(25,61,118,.12))!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap .nphb-level::before{
    top:-40px!important;
    width:42px!important;
    height:42px!important;
    font-size:16px!important;
  }

  /* Mantener la franja inferior tal y como ya quedó aprobada. */
  body .nphb-hero.nphb-concept-top-v1 .nphb-features-concept strong{
    margin:0!important;
    line-height:1.08!important;
  }
  body .nphb-hero.nphb-concept-top-v1 .nphb-features-concept small{
    margin-top:0!important;
    line-height:1.08!important;
  }
}

/* =========================================================
   v10.8.26 — Ruta superior realmente panorámica
   Ajuste EXCLUSIVO de las cinco tarjetas del concepto superior.
   La ruta sale del grid de dos columnas y ocupa el mismo ancho
   visual que la franja inferior, como en el concepto aprobado.
   ========================================================= */
@media (min-width:1181px){
  body .nphb-hero.nphb-concept-top-v1 > .nphb-roadmap{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    width:calc(100% - 88px)!important;
    max-width:1800px!important;
    min-width:0!important;
    min-height:0!important;
    margin:2px auto 0!important;
    padding:42px 0 8px!important;
    gap:14px!important;
    transform:none!important;
    box-sizing:border-box!important;
    overflow:visible!important;
  }

  body .nphb-hero.nphb-concept-top-v1 > .nphb-roadmap::before{
    top:21px!important;
    left:7.2%!important;
    right:7.2%!important;
    height:2px!important;
  }

  body .nphb-hero.nphb-concept-top-v1 > .nphb-roadmap .nphb-level{
    display:grid!important;
    grid-template-columns:50px minmax(0,1fr)!important;
    grid-template-rows:auto auto 1fr!important;
    column-gap:12px!important;
    row-gap:6px!important;
    align-content:start!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    min-height:158px!important;
    height:auto!important;
    margin:0!important;
    padding:14px 15px 13px!important;
    border-radius:17px!important;
    overflow:visible!important;
  }

  body .nphb-hero.nphb-concept-top-v1 > .nphb-roadmap .nphb-level > div{
    display:contents!important;
  }

  body .nphb-hero.nphb-concept-top-v1 > .nphb-roadmap .nphb-level-icon{
    grid-column:1!important;
    grid-row:1!important;
    width:50px!important;
    height:50px!important;
    min-width:50px!important;
    flex:0 0 50px!important;
    margin:0!important;
    border-radius:14px!important;
    font-size:23px!important;
    align-self:start!important;
  }

  body .nphb-hero.nphb-concept-top-v1 > .nphb-roadmap .nphb-level-tag{
    grid-column:2!important;
    grid-row:1!important;
    align-self:center!important;
    justify-self:start!important;
    display:inline-flex!important;
    width:auto!important;
    max-width:100%!important;
    min-height:22px!important;
    margin:0!important;
    padding:4px 9px!important;
    font-size:8.5px!important;
    line-height:1!important;
    white-space:nowrap!important;
    overflow:visible!important;
    text-overflow:clip!important;
  }

  body .nphb-hero.nphb-concept-top-v1 > .nphb-roadmap .nphb-level h2{
    grid-column:1 / -1!important;
    grid-row:2!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0 34px 0 0!important;
    font-size:18px!important;
    line-height:1.08!important;
    white-space:normal!important;
    overflow:visible!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    hyphens:none!important;
    text-wrap:balance!important;
  }

  body .nphb-hero.nphb-concept-top-v1 > .nphb-roadmap .nphb-level p{
    grid-column:1 / -1!important;
    grid-row:3!important;
    width:100%!important;
    max-width:none!important;
    min-height:0!important;
    margin:0!important;
    padding:0 34px 0 0!important;
    font-size:11.7px!important;
    line-height:1.3!important;
    white-space:normal!important;
    overflow:visible!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    hyphens:none!important;
  }

  body .nphb-hero.nphb-concept-top-v1 > .nphb-roadmap .nphb-level-arrow{
    top:auto!important;
    right:12px!important;
    bottom:12px!important;
    width:28px!important;
    height:28px!important;
    transform:none!important;
  }

  body .nphb-hero.nphb-concept-top-v1 > .nphb-roadmap .nphb-level::before{
    top:-40px!important;
    width:42px!important;
    height:42px!important;
    font-size:16px!important;
  }
}

/* =========================================================
   v10.8.27 — Ruta superior expandida y con más respiración
   Ajuste EXCLUSIVO de las cinco tarjetas del concepto superior
   en escritorio. Aprovecha el ancho real disponible, aumenta la
   separación entre tarjetas y optimiza el espacio interior.
   ========================================================= */
@media (min-width:1181px){
  body .nphb-hero.nphb-concept-top-v1 > .nphb-roadmap{
    position:relative!important;
    left:50%!important;
    right:auto!important;
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    width:min(1680px,calc(100vw - 140px))!important;
    max-width:none!important;
    min-width:0!important;
    min-height:0!important;
    margin:8px 0 0!important;
    padding:46px 0 10px!important;
    gap:24px!important;
    transform:translateX(-50%)!important;
    box-sizing:border-box!important;
    overflow:visible!important;
  }

  body .nphb-hero.nphb-concept-top-v1 > .nphb-roadmap::before{
    top:23px!important;
    left:9.1%!important;
    right:9.1%!important;
    height:2px!important;
  }

  body .nphb-hero.nphb-concept-top-v1 > .nphb-roadmap .nphb-level{
    display:grid!important;
    grid-template-columns:54px minmax(0,1fr)!important;
    grid-template-rows:auto auto 1fr!important;
    column-gap:12px!important;
    row-gap:7px!important;
    align-content:start!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    min-height:172px!important;
    height:auto!important;
    margin:0!important;
    padding:16px 16px 14px!important;
    border-radius:18px!important;
    overflow:visible!important;
  }

  body .nphb-hero.nphb-concept-top-v1 > .nphb-roadmap .nphb-level > div{
    display:contents!important;
  }

  body .nphb-hero.nphb-concept-top-v1 > .nphb-roadmap .nphb-level-icon{
    grid-column:1!important;
    grid-row:1!important;
    width:54px!important;
    height:54px!important;
    min-width:54px!important;
    flex:0 0 54px!important;
    margin:0!important;
    border-radius:15px!important;
    font-size:24px!important;
    align-self:start!important;
  }

  body .nphb-hero.nphb-concept-top-v1 > .nphb-roadmap .nphb-level-tag{
    grid-column:2!important;
    grid-row:1!important;
    align-self:center!important;
    justify-self:start!important;
    display:inline-flex!important;
    width:auto!important;
    max-width:100%!important;
    min-height:23px!important;
    margin:0!important;
    padding:5px 10px!important;
    font-size:8.4px!important;
    line-height:1!important;
    letter-spacing:.035em!important;
    white-space:nowrap!important;
    overflow:visible!important;
    text-overflow:clip!important;
  }

  body .nphb-hero.nphb-concept-top-v1 > .nphb-roadmap .nphb-level h2{
    grid-column:1 / -1!important;
    grid-row:2!important;
    width:100%!important;
    max-width:none!important;
    margin:1px 0 0!important;
    padding:0 34px 0 0!important;
    font-size:19px!important;
    line-height:1.08!important;
    letter-spacing:-.02em!important;
    white-space:normal!important;
    overflow:visible!important;
    overflow-wrap:normal!important;
    word-break:keep-all!important;
    hyphens:none!important;
    text-wrap:balance!important;
  }

  body .nphb-hero.nphb-concept-top-v1 > .nphb-roadmap .nphb-level p{
    grid-column:1 / -1!important;
    grid-row:3!important;
    width:100%!important;
    max-width:none!important;
    min-height:0!important;
    margin:0!important;
    padding:0 34px 0 0!important;
    font-size:12.2px!important;
    line-height:1.35!important;
    white-space:normal!important;
    overflow:visible!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    hyphens:none!important;
  }

  body .nphb-hero.nphb-concept-top-v1 > .nphb-roadmap .nphb-level-arrow{
    top:auto!important;
    right:12px!important;
    bottom:12px!important;
    width:30px!important;
    height:30px!important;
    transform:none!important;
  }

  body .nphb-hero.nphb-concept-top-v1 > .nphb-roadmap .nphb-level::before{
    top:-42px!important;
    width:44px!important;
    height:44px!important;
    font-size:16px!important;
  }
}

/* En escritorios algo más estrechos mantenemos la mejora sin forzar scroll. */
@media (min-width:1181px) and (max-width:1480px){
  body .nphb-hero.nphb-concept-top-v1 > .nphb-roadmap{
    width:calc(100vw - 90px)!important;
    gap:16px!important;
  }

  body .nphb-hero.nphb-concept-top-v1 > .nphb-roadmap .nphb-level{
    grid-template-columns:48px minmax(0,1fr)!important;
    column-gap:10px!important;
    padding:14px 13px 13px!important;
  }

  body .nphb-hero.nphb-concept-top-v1 > .nphb-roadmap .nphb-level-icon{
    width:48px!important;
    height:48px!important;
    min-width:48px!important;
    flex-basis:48px!important;
  }

  body .nphb-hero.nphb-concept-top-v1 > .nphb-roadmap .nphb-level-tag{
    padding-left:8px!important;
    padding-right:8px!important;
    font-size:7.8px!important;
  }

  body .nphb-hero.nphb-concept-top-v1 > .nphb-roadmap .nphb-level h2{
    font-size:17.5px!important;
  }

  body .nphb-hero.nphb-concept-top-v1 > .nphb-roadmap .nphb-level p{
    font-size:11.5px!important;
  }
}

/* =========================================================
   v10.8.28 — Ruta superior centrada y repartida de extremo a extremo
   Ajuste EXCLUSIVO de la fila de cinco tarjetas en escritorio.
   Mantiene diseño interior, colores, hover, línea, nodos y franja inferior.
   ========================================================= */
@media (min-width:1181px){
  body .nphb-hero.nphb-concept-top-v1 > .nphb-roadmap{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    transform:none!important;
    width:calc(100% - 40px)!important;
    max-width:none!important;
    margin:10px auto 0!important;
    padding:46px 0 10px!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    column-gap:clamp(20px,1.6vw,30px)!important;
    row-gap:0!important;
    justify-content:stretch!important;
    align-items:stretch!important;
    box-sizing:border-box!important;
    overflow:visible!important;
  }

  body .nphb-hero.nphb-concept-top-v1 > .nphb-roadmap::before{
    top:23px!important;
    left:8.5%!important;
    right:8.5%!important;
    width:auto!important;
  }

  body .nphb-hero.nphb-concept-top-v1 > .nphb-roadmap .nphb-level{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    justify-self:stretch!important;
    align-self:stretch!important;
    margin:0!important;
  }
}

/* Mantener el reparto limpio en escritorios de ancho intermedio. */
@media (min-width:1181px) and (max-width:1480px){
  body .nphb-hero.nphb-concept-top-v1 > .nphb-roadmap{
    width:calc(100% - 28px)!important;
    column-gap:18px!important;
  }
}

/* =========================================================
   v10.8.29 — Ruta superior al ancho real de la franja inferior
   Ajuste EXCLUSIVO de escritorio. Corrige la regla heredada de
   .nphb-has-main-hero-visual que limitaba el roadmap al ancho
   configurado antiguo. La fila usa ahora el mismo ancho visual
   que Laboratorios / Vídeos / Material / frase.
   ========================================================= */
@media (min-width:1181px){
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1.nphb-has-main-hero-visual.nphb-main-visual-desktop > #ruta-resumen.nphb-roadmap,
  html body .nphb-hero.nphb-concept-top-v1.nphb-has-main-hero-visual.nphb-main-visual-desktop > #ruta-resumen.nphb-roadmap{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    transform:none!important;
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    width:calc(100% - 88px)!important;
    max-width:none!important;
    min-width:0!important;
    margin:10px auto 0!important;
    padding:46px 0 10px!important;
    column-gap:clamp(18px,1.45vw,28px)!important;
    row-gap:0!important;
    justify-content:stretch!important;
    align-items:stretch!important;
    box-sizing:border-box!important;
    overflow:visible!important;
  }

  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1.nphb-has-main-hero-visual.nphb-main-visual-desktop > #ruta-resumen.nphb-roadmap::before,
  html body .nphb-hero.nphb-concept-top-v1.nphb-has-main-hero-visual.nphb-main-visual-desktop > #ruta-resumen.nphb-roadmap::before{
    top:23px!important;
    left:9.1%!important;
    right:9.1%!important;
    width:auto!important;
  }

  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 > #ruta-resumen.nphb-roadmap .nphb-level,
  html body .nphb-hero.nphb-concept-top-v1 > #ruta-resumen.nphb-roadmap .nphb-level{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    min-height:164px!important;
    justify-self:stretch!important;
    align-self:stretch!important;
    margin:0!important;
    padding:15px 16px 14px!important;
    grid-template-columns:54px minmax(0,1fr)!important;
    column-gap:13px!important;
    row-gap:7px!important;
  }

  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 > #ruta-resumen.nphb-roadmap .nphb-level-tag,
  html body .nphb-hero.nphb-concept-top-v1 > #ruta-resumen.nphb-roadmap .nphb-level-tag{
    max-width:100%!important;
    padding:5px 10px!important;
    font-size:8.5px!important;
    white-space:nowrap!important;
  }

  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 > #ruta-resumen.nphb-roadmap .nphb-level h2,
  html body .nphb-hero.nphb-concept-top-v1 > #ruta-resumen.nphb-roadmap .nphb-level h2{
    padding-right:34px!important;
    font-size:19px!important;
    line-height:1.08!important;
    text-wrap:balance!important;
  }

  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 > #ruta-resumen.nphb-roadmap .nphb-level p,
  html body .nphb-hero.nphb-concept-top-v1 > #ruta-resumen.nphb-roadmap .nphb-level p{
    padding-right:34px!important;
    font-size:12.2px!important;
    line-height:1.34!important;
  }
}

/* En escritorio intermedio mantenemos la misma alineación que la franja inferior. */
@media (min-width:1181px) and (max-width:1480px){
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1.nphb-has-main-hero-visual.nphb-main-visual-desktop > #ruta-resumen.nphb-roadmap,
  html body .nphb-hero.nphb-concept-top-v1.nphb-has-main-hero-visual.nphb-main-visual-desktop > #ruta-resumen.nphb-roadmap{
    width:calc(100% - 56px)!important;
    column-gap:16px!important;
  }
}

/* =========================================================
   v10.8.30 — RUTA INFERIOR · CONCEPTO TÉCNICO / TOPOLOGÍA
   Solo reorganiza visualmente la sección inferior. Mantiene
   imágenes, pestañas y mini tarjetas editables existentes.
   ========================================================= */

body .nphb-learning-path-concept2 .nphb-path-shell{
  position:relative;
}

body .nphb-learning-path-concept2 .nphb-learning-features{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  align-items:stretch;
  margin:12px 0 0;
  border:1px solid rgba(214,225,241,.92);
  border-radius:18px;
  background:rgba(255,255,255,.96);
  box-shadow:0 16px 36px rgba(16,34,71,.07);
  overflow:hidden;
}
body .nphb-learning-path-concept2 .nphb-learning-features>div{
  min-width:0;
  min-height:88px;
  display:grid;
  grid-template-columns:54px minmax(0,1fr);
  grid-template-rows:auto auto;
  column-gap:14px;
  align-content:center;
  padding:16px 22px;
  border-right:1px solid #e8eef7;
}
body .nphb-learning-path-concept2 .nphb-learning-features>div:nth-child(3),
body .nphb-learning-path-concept2 .nphb-learning-features>div:last-child{
  border-right:0;
}
body .nphb-learning-path-concept2 .nphb-learning-features>div>span:first-child{
  grid-column:1;
  grid-row:1 / span 2;
  width:50px;
  height:50px;
  display:grid;
  place-items:center;
  border-radius:14px;
  background:#f1f5ff;
  font-size:22px;
}
body .nphb-learning-path-concept2 .nphb-learning-features strong{
  grid-column:2;
  grid-row:1;
  align-self:end;
  margin:0!important;
  color:#102247;
  font-size:15px;
  font-weight:900;
  line-height:1.15;
}
body .nphb-learning-path-concept2 .nphb-learning-features small{
  grid-column:2;
  grid-row:2;
  align-self:start;
  margin:3px 0 0!important;
  color:#74839a;
  font-size:12px;
  line-height:1.25;
}
body .nphb-learning-path-concept2 .nphb-learning-features .nphb-learning-feature-phrase{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  padding:14px 22px;
}
body .nphb-learning-path-concept2 .nphb-learning-feature-phrase-text{
  width:auto!important;
  height:auto!important;
  display:block!important;
  border-radius:0!important;
  background:none!important;
  color:#164bb9;
  font-family:"Segoe Print","Bradley Hand","Comic Sans MS",cursive;
  font-size:19px!important;
  font-weight:500;
  line-height:1.25;
  text-align:center;
}
body .nphb-learning-path-concept2 .nphb-learning-feature-phrase-arrow{
  width:auto!important;
  height:auto!important;
  display:block!important;
  background:none!important;
  color:#2457f5;
  font-size:25px!important;
}

@media(min-width:1181px){
  /* La imagen es el lienzo principal del concepto: el título y tabs
     se colocan sobre la zona libre superior izquierda de la imagen. */
  body .nphb-learning-path-concept2 .nphb-path-shell{
    padding:22px!important;
  }
  body .nphb-learning-path-concept2 .nphb-path-header{
    position:absolute!important;
    z-index:8;
    top:54px;
    left:62px;
    width:min(48%,760px)!important;
    max-width:none!important;
    margin:0!important;
    text-align:left!important;
    pointer-events:none;
  }
  body .nphb-learning-path-concept2 .nphb-path-eyebrow{
    display:block;
    margin:0 0 10px!important;
    color:#5e8fff!important;
    font-size:12px!important;
    font-weight:900!important;
    letter-spacing:.14em!important;
    text-transform:uppercase;
  }
  body .nphb-learning-path-concept2 .nphb-path-header h2,
  body .nphb-learning-path-concept2 #nphb-path-title{
    max-width:720px!important;
    margin:0 0 10px!important;
    color:#102247!important;
    font-size:clamp(34px,3.1vw,56px)!important;
    line-height:1.02!important;
    letter-spacing:-.045em!important;
    text-align:left!important;
  }
  body .nphb-learning-path-concept2 .nphb-path-header>p{
    max-width:650px!important;
    margin:0!important;
    color:#60708a!important;
    font-size:17px!important;
    line-height:1.45!important;
    text-align:left!important;
  }
  body .nphb-learning-path-concept2 .nphb-route-tabs{
    position:absolute!important;
    z-index:9;
    top:224px;
    left:62px;
    width:auto!important;
    margin:0!important;
    justify-content:flex-start!important;
    gap:10px!important;
  }
  body .nphb-learning-path-concept2 .nphb-route-tab{
    min-width:150px;
  }
  body .nphb-learning-path-concept2 .nphb-route-panels{
    margin:0!important;
  }
  body .nphb-learning-path-concept2 .nphb-route-panel.is-active:not([hidden]){
    display:block!important;
  }
  body .nphb-learning-path-concept2 .nphb-route-copy{
    display:none!important;
  }
  body .nphb-learning-path-concept2 .nphb-route-visual-overlay-mode{
    margin:0!important;
  }
  body .nphb-learning-path-concept2 .nphb-route-image-stage{
    border-radius:24px!important;
    border:1px solid rgba(214,225,241,.9)!important;
    background:#f7fbff!important;
    box-shadow:0 18px 44px rgba(16,34,71,.08)!important;
  }
  body .nphb-learning-path-concept2 .nphb-route-image{
    width:100%!important;
    height:auto!important;
    object-fit:contain!important;
  }
  body .nphb-learning-path-concept2 .nphb-path-signature-wrap{
    display:none!important;
  }
}

@media(min-width:761px) and (max-width:1180px){
  body .nphb-learning-path-concept2 .nphb-learning-features{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  body .nphb-learning-path-concept2 .nphb-learning-features>div:nth-child(2){border-right:0}
  body .nphb-learning-path-concept2 .nphb-learning-features>div:nth-child(-n+2){border-bottom:1px solid #e8eef7}
}

@media(max-width:760px){
  body .nphb-learning-path-concept2 .nphb-learning-features{
    grid-template-columns:1fr 1fr;
    border-radius:16px;
  }
  body .nphb-learning-path-concept2 .nphb-learning-features>div{
    min-height:74px;
    grid-template-columns:40px minmax(0,1fr);
    column-gap:10px;
    padding:12px 12px;
  }
  body .nphb-learning-path-concept2 .nphb-learning-features>div:nth-child(2){border-right:0}
  body .nphb-learning-path-concept2 .nphb-learning-features>div:nth-child(-n+2){border-bottom:1px solid #e8eef7}
  body .nphb-learning-path-concept2 .nphb-learning-features>div>span:first-child{
    width:38px;
    height:38px;
    border-radius:11px;
    font-size:17px;
  }
  body .nphb-learning-path-concept2 .nphb-learning-features strong{font-size:12px}
  body .nphb-learning-path-concept2 .nphb-learning-features small{font-size:10px;margin-top:2px!important}
  body .nphb-learning-path-concept2 .nphb-learning-feature-phrase-text{font-size:14px!important}
  body .nphb-learning-path-concept2 .nphb-learning-feature-phrase-arrow{font-size:20px!important}
  body .nphb-learning-path-concept2 .nphb-path-signature-wrap{display:none!important}
}


/* =========================================================
   v10.8.31 — RUTA INFERIOR · CABECERA COMO CONCEPTO TÉCNICO
   Ajuste exclusivo de la sección inferior. No altera tarjetas,
   posiciones, pestañas, ventajas ni lógica de las rutas.
   ========================================================= */
@media (min-width:1181px){
  html body.nphb-home-active .nphb-learning-path.nphb-learning-path-concept2,
  html body .nphb-learning-path.nphb-learning-path-concept2{
    padding-top:28px!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-shell,
  html body .nphb-learning-path-concept2 .nphb-path-shell{
    position:relative!important;
    padding:0 22px 22px!important;
  }

  /* El texto de cada ruta no debe reaparecer encima del título. */
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-route-panel.is-active .nphb-route-copy,
  html body .nphb-learning-path-concept2 .nphb-route-panel.is-active .nphb-route-copy{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    height:0!important;
    max-height:0!important;
    overflow:hidden!important;
    margin:0!important;
    padding:0!important;
  }

  /* Cabecera situada en la zona blanca superior izquierda de la imagen. */
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-header,
  html body .nphb-learning-path-concept2 .nphb-path-header{
    position:absolute!important;
    z-index:12!important;
    top:42px!important;
    left:58px!important;
    width:min(50%,760px)!important;
    max-width:none!important;
    margin:0!important;
    text-align:left!important;
    pointer-events:none!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-eyebrow,
  html body .nphb-learning-path-concept2 .nphb-path-eyebrow{
    display:block!important;
    margin:0 0 10px!important;
    color:#6a95ff!important;
    font-size:12px!important;
    font-weight:900!important;
    line-height:1.1!important;
    letter-spacing:.14em!important;
    text-transform:uppercase!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-header h2,
  html body.nphb-home-active .nphb-learning-path-concept2 #nphb-path-title,
  html body .nphb-learning-path-concept2 .nphb-path-header h2,
  html body .nphb-learning-path-concept2 #nphb-path-title{
    max-width:760px!important;
    margin:0 0 10px!important;
    color:#102247!important;
    font-size:clamp(38px,3vw,56px)!important;
    font-weight:900!important;
    line-height:1.02!important;
    letter-spacing:-.045em!important;
    text-align:left!important;
    text-wrap:balance!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-title-accent,
  html body .nphb-learning-path-concept2 .nphb-path-title-accent{
    color:#2457f5!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-header>p,
  html body .nphb-learning-path-concept2 .nphb-path-header>p{
    max-width:690px!important;
    margin:0!important;
    color:#60708a!important;
    font-size:17px!important;
    line-height:1.38!important;
    text-align:left!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-route-tabs,
  html body .nphb-learning-path-concept2 .nphb-route-tabs{
    position:absolute!important;
    z-index:13!important;
    top:208px!important;
    left:58px!important;
    width:auto!important;
    margin:0!important;
    justify-content:flex-start!important;
    gap:10px!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-route-tab,
  html body .nphb-learning-path-concept2 .nphb-route-tab{
    min-width:150px!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-route-panels,
  html body .nphb-learning-path-concept2 .nphb-route-panels,
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-route-visual-overlay-mode,
  html body .nphb-learning-path-concept2 .nphb-route-visual-overlay-mode{
    margin:0!important;
    padding:0!important;
  }

  /* Recorta solamente la mesa vacía inferior: la imagen original no se modifica. */
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-route-image-stage,
  html body .nphb-learning-path-concept2 .nphb-route-image-stage{
    width:100%!important;
    aspect-ratio:2.15 / 1!important;
    overflow:hidden!important;
    border-radius:24px!important;
    border:1px solid rgba(214,225,241,.9)!important;
    background:#f7fbff!important;
    box-shadow:0 18px 44px rgba(16,34,71,.08)!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-route-image,
  html body .nphb-learning-path-concept2 .nphb-route-image{
    display:block!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center top!important;
    border-radius:0!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-features,
  html body .nphb-learning-path-concept2 .nphb-learning-features{
    margin-top:10px!important;
  }
}


/* =========================================================
   v10.8.37 — Pestañas de ruta al pie de la imagen
   Cambio exclusivo de posición de Redes / Ciberseguridad / Automatización.
   ========================================================= */
body .nphb-learning-path-concept2 .nphb-route-tabs,
html body.nphb-home-active .nphb-learning-path-concept2 .nphb-route-tabs{
  position:relative!important;
  z-index:14!important;
  top:auto!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  width:max-content!important;
  max-width:calc(100% - 32px)!important;
  margin:-68px auto 18px!important;
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  gap:10px!important;
}

@media (max-width:1180px){
  body .nphb-learning-path-concept2 .nphb-route-tabs,
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-route-tabs{
    margin:-58px auto 16px!important;
    max-width:calc(100% - 24px)!important;
    gap:8px!important;
  }
}

@media (max-width:760px){
  body .nphb-learning-path-concept2 .nphb-route-tabs,
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-route-tabs{
    width:calc(100% - 24px)!important;
    max-width:none!important;
    margin:-50px auto 14px!important;
    gap:6px!important;
  }
  body .nphb-learning-path-concept2 .nphb-route-tab,
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-route-tab{
    flex:1 1 0!important;
    min-width:0!important;
  }
}

/* =========================================================
   v10.8.38 — RUTA INFERIOR VISIBLE EN TABLET Y MÓVIL
   Alinea los breakpoints reales de la ruta técnica con los
   breakpoints generales de Home Builder sin tocar escritorio.
   ========================================================= */

/* Tablet real de Home Builder: 761–1180 px. */
@media (min-width:761px) and (max-width:1180px){
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-route-panels,
  html body .nphb-learning-path-concept2 .nphb-route-panels{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-route-panel.is-active:not([hidden]),
  html body .nphb-learning-path-concept2 .nphb-route-panel.is-active:not([hidden]){
    display:grid!important;
    visibility:visible!important;
    opacity:1!important;
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-route-panel.is-active .nphb-route-visual,
  html body .nphb-learning-path-concept2 .nphb-route-panel.is-active .nphb-route-visual,
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-route-panel.is-active .nphb-route-image-stage,
  html body .nphb-learning-path-concept2 .nphb-route-panel.is-active .nphb-route-image-stage{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    height:auto!important;
    max-height:none!important;
  }

  body .nphb-learning-path-concept2 .nphb-route-image-stage{
    width:100%!important;
    overflow:hidden!important;
    border-radius:22px!important;
  }

  body .nphb-learning-path-concept2 .nphb-route-image{
    display:block!important;
    width:100%!important;
    height:auto!important;
    object-fit:contain!important;
  }

  /* En todo el rango tablet se usan posiciones y dimensiones tablet. */
  body .nphb-learning-path-concept2 .nphb-route-mini-line-desktop,
  body .nphb-learning-path-concept2 .nphb-route-mini-line-mobile{
    display:none!important;
  }
  body .nphb-learning-path-concept2 .nphb-route-mini-line-tablet{
    display:block!important;
  }
  body .nphb-learning-path-concept2 .nphb-route-mini-line-core{
    stroke-width:var(--overlay-line-t,3.5px)!important;
  }
  body .nphb-learning-path-concept2 .nphb-route-mini-card{
    left:var(--overlay-x-t)!important;
    top:var(--overlay-y-t)!important;
    width:var(--overlay-card-w-t,108px)!important;
    height:var(--overlay-card-h-t,38px)!important;
    padding:5px 8px!important;
    gap:6px!important;
  }
  body .nphb-learning-path-concept2 .nphb-route-mini-icon{
    display:grid!important;
    width:24px!important;
    height:24px!important;
    flex-basis:24px!important;
  }
  body .nphb-learning-path-concept2 .nphb-route-mini-card strong{
    font-size:var(--overlay-font-t,11px)!important;
    text-align:left!important;
  }
  body .nphb-learning-path-concept2 .nphb-route-label-d,
  body .nphb-learning-path-concept2 .nphb-route-label-m{
    display:none!important;
  }
  body .nphb-learning-path-concept2 .nphb-route-label-t{
    display:inline!important;
  }
}

/* Móvil real de Home Builder: hasta 760 px. */
@media (max-width:760px){
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-route-panels,
  html body .nphb-learning-path-concept2 .nphb-route-panels{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-route-panel.is-active:not([hidden]),
  html body .nphb-learning-path-concept2 .nphb-route-panel.is-active:not([hidden]){
    display:grid!important;
    visibility:visible!important;
    opacity:1!important;
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-route-panel.is-active .nphb-route-visual,
  html body .nphb-learning-path-concept2 .nphb-route-panel.is-active .nphb-route-visual,
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-route-panel.is-active .nphb-route-image-stage,
  html body .nphb-learning-path-concept2 .nphb-route-panel.is-active .nphb-route-image-stage{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    height:auto!important;
    max-height:none!important;
  }

  body .nphb-learning-path-concept2 .nphb-route-image-stage{
    width:100%!important;
    overflow:hidden!important;
    border-radius:16px!important;
  }
  body .nphb-learning-path-concept2 .nphb-route-image{
    display:block!important;
    width:100%!important;
    height:auto!important;
    object-fit:contain!important;
  }

  /* En todo el rango móvil se usan posiciones y dimensiones móvil. */
  body .nphb-learning-path-concept2 .nphb-route-mini-line-desktop,
  body .nphb-learning-path-concept2 .nphb-route-mini-line-tablet{
    display:none!important;
  }
  body .nphb-learning-path-concept2 .nphb-route-mini-line-mobile{
    display:block!important;
  }
  body .nphb-learning-path-concept2 .nphb-route-mini-line-core{
    stroke-width:var(--overlay-line-m,3px)!important;
  }
  body .nphb-learning-path-concept2 .nphb-route-mini-card{
    left:var(--overlay-x-m)!important;
    top:var(--overlay-y-m)!important;
    width:var(--overlay-card-w-m,84px)!important;
    height:var(--overlay-card-h-m,32px)!important;
    min-width:0!important;
    max-width:none!important;
    justify-content:center!important;
    gap:0!important;
    padding:4px 6px!important;
    border-left-width:3px!important;
    border-radius:10px!important;
  }
  body .nphb-learning-path-concept2 .nphb-route-mini-icon{
    display:none!important;
  }
  body .nphb-learning-path-concept2 .nphb-route-mini-card strong{
    width:100%!important;
    font-size:var(--overlay-font-m,10px)!important;
    text-align:center!important;
  }
  body .nphb-learning-path-concept2 .nphb-route-label-d,
  body .nphb-learning-path-concept2 .nphb-route-label-t{
    display:none!important;
  }
  body .nphb-learning-path-concept2 .nphb-route-label-m{
    display:inline!important;
  }

  /* El popover también entra en modo móvil en 621–760 px. */
  body .nphb-learning-path-concept2 .nphb-route-info-popover{
    width:min(238px,calc(100% - 12px));
    padding:11px 12px 11px;
    border-radius:13px;
  }
  body .nphb-learning-path-concept2 .nphb-route-info-meta{font-size:8px;margin-bottom:3px}
  body .nphb-learning-path-concept2 .nphb-route-info-title{font-size:12px;margin-bottom:5px}
  body .nphb-learning-path-concept2 .nphb-route-info-text{font-size:calc(var(--nphb-info-text-size,12.5px) * .8);line-height:1.38}
  body .nphb-learning-path-concept2 .nphb-route-info-close{width:22px;height:22px;top:6px;right:6px;font-size:16px}
}


/* =========================================================
   v10.8.39 — TABLET · MISMO LENGUAJE VISUAL QUE ESCRITORIO
   La tablet mantiene su reflujo responsive, pero no crea un
   diseño distinto. En especial, la frase final de la franja
   reproduce tipografía, inclinación y flecha del escritorio.
   Escritorio y móvil no se modifican.
   ========================================================= */
@media (min-width:761px) and (max-width:1180px){
  /* La franja conserva las cuatro piezas del escritorio,
     reordenadas 2×2 únicamente por falta de ancho. */
  body .nphb-hero.nphb-concept-top-v1 .nphb-features-concept{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  /* La frase no debe adoptar el aspecto de una tarjeta/icono genérico. */
  body .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:10px!important;
    color:#123b92!important;
    text-align:center!important;
  }

  /* Réplica del tratamiento aprobado en escritorio. */
  body .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-text{
    display:block!important;
    width:auto!important;
    height:auto!important;
    max-width:190px!important;
    margin:0!important;
    padding:0!important;
    background:none!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    color:#173e94!important;
    font-family:"Segoe Print","Bradley Hand",cursive!important;
    font-size:16px!important;
    font-weight:400!important;
    line-height:1.2!important;
    text-align:center!important;
    transform:rotate(-2deg)!important;
  }

  body .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-arrow{
    display:block!important;
    flex:0 0 auto!important;
    width:auto!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    background:none!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    color:#2457f5!important;
    font-family:Arial,sans-serif!important;
    font-size:29px!important;
    font-weight:400!important;
    line-height:1!important;
    transform:none!important;
  }
}

/* =========================================================
   v10.8.40 — TABLET VERTICAL · ADAPTACIÓN REAL DEL ESCRITORIO
   761–1180 px conserva la composición y el lenguaje visual
   aprobados en ordenador, escalados al ancho de tablet.
   No modifica escritorio ni móvil.
   ========================================================= */
@media (min-width:761px) and (max-width:1180px){
  /* ---------- HERO: mismo 2 columnas que ordenador ---------- */
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1,
  html body .nphb-hero.nphb-concept-top-v1{
    padding:24px 0 0!important;
    background:
      radial-gradient(circle at 76% 12%,rgba(43,102,245,.065),transparent 31%),
      linear-gradient(180deg,#fff 0%,#fbfdff 100%)!important;
  }

  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-inner,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-inner{
    display:grid!important;
    grid-template-columns:minmax(0,44%) minmax(0,56%)!important;
    grid-template-rows:auto!important;
    column-gap:12px!important;
    row-gap:0!important;
    align-items:center!important;
    width:100%!important;
    max-width:none!important;
    min-height:0!important;
    margin:0 auto!important;
    padding:20px 28px 0!important;
  }

  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-copy,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-copy{
    grid-column:1!important;
    grid-row:1!important;
    align-self:center!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    text-align:left!important;
    position:relative!important;
    z-index:5!important;
  }

  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-eyebrow,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-eyebrow{
    justify-content:flex-start!important;
    margin:0 0 10px!important;
    padding:6px 10px!important;
    font-size:9.5px!important;
    letter-spacing:.055em!important;
  }

  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-hero-brand-logo-only,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-hero-brand-logo-only{
    width:min(var(--nphb-hero-logo-width-tablet,300px),225px)!important;
    max-width:225px!important;
    margin:0 0 10px!important;
    transform:translate(var(--nphb-logo-x-tablet,0px),var(--nphb-logo-y-tablet,0px))!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-hero-brand-logo-only .nphb-hero-brand-logo,
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-hero-brand-logo-only .nphb-hero-brand-logo img,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-hero-brand-logo-only .nphb-hero-brand-logo,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-hero-brand-logo-only .nphb-hero-brand-logo img{
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    max-height:76px!important;
    object-fit:contain!important;
    object-position:left center!important;
  }

  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-title,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-title{
    margin:0 0 8px!important;
    line-height:.91!important;
    letter-spacing:-.05em!important;
    text-align:left!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-title .nphb-from,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-title .nphb-from{
    display:block!important;
    font-size:clamp(38px,5.25vw,51px)!important;
    line-height:.91!important;
    white-space:nowrap!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-title .nphb-to,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-title .nphb-to{
    display:block!important;
    margin-top:5px!important;
    font-size:clamp(22px,3.05vw,30px)!important;
    line-height:1!important;
    white-space:nowrap!important;
  }

  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-brand-phrase,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-brand-phrase{
    margin:0 0 10px!important;
    font-size:9.5px!important;
    letter-spacing:.07em!important;
    text-align:left!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-description,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-description{
    max-width:100%!important;
    margin:0 0 12px!important;
    font-size:12.5px!important;
    line-height:1.45!important;
    text-align:left!important;
  }

  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-actions,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-actions{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    justify-content:stretch!important;
    gap:8px!important;
    width:100%!important;
    margin:0!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-button,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-button{
    width:100%!important;
    min-width:0!important;
    min-height:54px!important;
    padding:8px 9px!important;
    border-radius:13px!important;
    gap:7px!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-button-icon,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-button-icon{font-size:17px!important;}
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-button strong,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-button strong{font-size:10.5px!important;}
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-button small,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-button small{font-size:8.5px!important;}
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-trust,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-trust{display:none!important;}

  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1.nphb-has-main-hero-visual > .nphb-inner > img.nphb-main-hero-visual,
  html body .nphb-hero.nphb-concept-top-v1.nphb-has-main-hero-visual > .nphb-inner > img.nphb-main-hero-visual{
    display:block!important;
    grid-column:2!important;
    grid-row:1!important;
    align-self:center!important;
    justify-self:end!important;
    width:min(var(--nphb-hero-main-visual-width-tablet,100%),100%)!important;
    height:min(var(--nphb-hero-main-visual-height-tablet,420px),390px)!important;
    max-width:100%!important;
    object-fit:contain!important;
    object-position:center bottom!important;
    transform:translate(var(--nphb-hero-main-visual-x-tablet,0px),var(--nphb-hero-main-visual-y-tablet,0px))!important;
    background:transparent!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    -webkit-mask:none!important;
    mask:none!important;
    z-index:2!important;
  }

  /* ---------- RUTA SUPERIOR: cinco tarjetas como ordenador ---------- */
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 > #ruta-resumen.nphb-roadmap,
  html body .nphb-hero.nphb-concept-top-v1 > #ruta-resumen.nphb-roadmap{
    position:relative!important;
    inset:auto!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    bottom:auto!important;
    transform:none!important;
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    width:calc(100% - 56px)!important;
    max-width:none!important;
    min-width:0!important;
    min-height:0!important;
    height:auto!important;
    margin:8px auto 0!important;
    padding:36px 0 8px!important;
    column-gap:8px!important;
    row-gap:0!important;
    overflow:visible!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 > #ruta-resumen.nphb-roadmap::before,
  html body .nphb-hero.nphb-concept-top-v1 > #ruta-resumen.nphb-roadmap::before{
    content:""!important;
    display:block!important;
    position:absolute!important;
    top:18px!important;
    left:8.8%!important;
    right:8.8%!important;
    width:auto!important;
    height:2px!important;
    background:linear-gradient(90deg,#46c9be 0%,#4387f6 27%,#8b54ea 53%,#ff913c 76%,#e2b12e 100%)!important;
    border:0!important;
    border-radius:999px!important;
    box-shadow:0 0 12px rgba(65,112,239,.14)!important;
    transform:none!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-grid-bg,
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-cert-bg,
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-route,
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-roadmap-mobile-bg,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-grid-bg,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-cert-bg,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-route,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-roadmap-mobile-bg{display:none!important;}

  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 > #ruta-resumen .nphb-level,
  html body .nphb-hero.nphb-concept-top-v1 > #ruta-resumen .nphb-level{
    position:relative!important;
    inset:auto!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    bottom:auto!important;
    display:grid!important;
    grid-template-columns:36px minmax(0,1fr)!important;
    grid-template-rows:auto 1fr!important;
    column-gap:7px!important;
    row-gap:4px!important;
    align-content:start!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    min-height:126px!important;
    height:auto!important;
    margin:0!important;
    padding:12px 9px 10px!important;
    border-radius:14px!important;
    background:rgba(255,255,255,.97)!important;
    box-shadow:inset 3px 0 0 var(--concept-stage,#2457f5),0 8px 20px rgba(25,61,118,.065)!important;
    transform:none!important;
    overflow:visible!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 > #ruta-resumen .nphb-level::before,
  html body .nphb-hero.nphb-concept-top-v1 > #ruta-resumen .nphb-level::before{
    position:absolute!important;
    top:-31px!important;
    left:50%!important;
    transform:translateX(-50%)!important;
    display:grid!important;
    place-items:center!important;
    width:31px!important;
    height:31px!important;
    border:2px solid #fff!important;
    border-radius:50%!important;
    color:#fff!important;
    font-size:12px!important;
    font-weight:900!important;
    box-shadow:0 3px 9px rgba(33,61,111,.16)!important;
    z-index:3!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 > #ruta-resumen .nphb-level::after,
  html body .nphb-hero.nphb-concept-top-v1 > #ruta-resumen .nphb-level::after{display:none!important;content:none!important;}
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 > #ruta-resumen .nphb-level-icon,
  html body .nphb-hero.nphb-concept-top-v1 > #ruta-resumen .nphb-level-icon{
    grid-column:1!important;
    grid-row:1!important;
    width:36px!important;
    height:36px!important;
    min-width:36px!important;
    flex:0 0 36px!important;
    margin:0!important;
    border-radius:10px!important;
    font-size:16px!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 > #ruta-resumen .nphb-level > div,
  html body .nphb-hero.nphb-concept-top-v1 > #ruta-resumen .nphb-level > div{
    display:contents!important;
    min-width:0!important;
    padding:0!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 > #ruta-resumen .nphb-level-tag,
  html body .nphb-hero.nphb-concept-top-v1 > #ruta-resumen .nphb-level-tag{
    grid-column:2!important;
    grid-row:1!important;
    align-self:center!important;
    justify-self:start!important;
    display:inline-flex!important;
    width:auto!important;
    max-width:100%!important;
    min-height:17px!important;
    margin:0!important;
    padding:3px 5px!important;
    font-size:6.3px!important;
    line-height:1!important;
    letter-spacing:.02em!important;
    white-space:nowrap!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 > #ruta-resumen .nphb-level h2,
  html body .nphb-hero.nphb-concept-top-v1 > #ruta-resumen .nphb-level h2{
    grid-column:1 / -1!important;
    grid-row:2!important;
    width:100%!important;
    margin:2px 0 0!important;
    padding:0 18px 0 0!important;
    font-size:13px!important;
    line-height:1.08!important;
    letter-spacing:-.018em!important;
    white-space:normal!important;
    text-wrap:balance!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 > #ruta-resumen .nphb-level p,
  html body .nphb-hero.nphb-concept-top-v1 > #ruta-resumen .nphb-level p{
    grid-column:1 / -1!important;
    grid-row:3!important;
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:0 16px 0 0!important;
    color:#687895!important;
    font-size:8.6px!important;
    line-height:1.3!important;
    white-space:normal!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 > #ruta-resumen .nphb-level-arrow,
  html body .nphb-hero.nphb-concept-top-v1 > #ruta-resumen .nphb-level-arrow{
    position:absolute!important;
    top:auto!important;
    right:7px!important;
    bottom:7px!important;
    display:grid!important;
    width:23px!important;
    height:23px!important;
    transform:none!important;
    font-size:11px!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 > #ruta-resumen .nphb-level-ccie .nphb-level-arrow,
  html body .nphb-hero.nphb-concept-top-v1 > #ruta-resumen .nphb-level-ccie .nphb-level-arrow{display:none!important;}

  /* ---------- FRANJA SUPERIOR: 3 ventajas + frase en una fila ---------- */
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-features-concept,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-features-concept{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr)) minmax(165px,.9fr)!important;
    gap:0!important;
    width:calc(100% - 56px)!important;
    max-width:none!important;
    margin:0 auto 20px!important;
    padding:10px 10px!important;
    border:1px solid #dfe8f5!important;
    border-radius:16px!important;
    background:rgba(255,255,255,.96)!important;
    box-shadow:0 10px 24px rgba(28,60,111,.06)!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-features-concept > div,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-features-concept > div{
    min-height:54px!important;
    padding:0 10px!important;
    border-left:1px solid #e7edf6!important;
    border-bottom:0!important;
    border-right:0!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-features-concept > div:first-child,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-features-concept > div:first-child{border-left:0!important;}
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-features-concept > div:not(.nphb-feature-phrase),
  html body .nphb-hero.nphb-concept-top-v1 .nphb-features-concept > div:not(.nphb-feature-phrase){
    grid-template-columns:34px minmax(0,1fr)!important;
    column-gap:8px!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-features-concept > div:not(.nphb-feature-phrase) > span:first-child,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-features-concept > div:not(.nphb-feature-phrase) > span:first-child{
    width:34px!important;
    height:34px!important;
    border-radius:10px!important;
    font-size:15px!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-features-concept strong,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-features-concept strong{font-size:10.5px!important;}
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-features-concept small,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-features-concept small{font-size:8.5px!important;}

  /* Flecha manuscrita SIN emoji de iOS. */
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    color:#123b92!important;
    text-align:center!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-text,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-text{
    max-width:145px!important;
    color:#173e94!important;
    font-family:"Segoe Print","Bradley Hand","Comic Sans MS",cursive!important;
    font-size:14px!important;
    font-weight:400!important;
    line-height:1.18!important;
    transform:rotate(-2deg)!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-arrow,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-arrow{
    position:relative!important;
    display:block!important;
    flex:0 0 30px!important;
    width:30px!important;
    height:24px!important;
    overflow:visible!important;
    color:transparent!important;
    font-size:0!important;
    line-height:0!important;
    background:none!important;
    border:0!important;
    box-shadow:none!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-arrow::before,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-arrow::before{
    content:""!important;
    position:absolute!important;
    left:2px!important;
    top:13px!important;
    width:27px!important;
    height:2px!important;
    border-radius:999px!important;
    background:#2457f5!important;
    transform:rotate(-39deg)!important;
    transform-origin:left center!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-arrow::after,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-arrow::after{
    content:""!important;
    position:absolute!important;
    right:1px!important;
    top:1px!important;
    width:8px!important;
    height:8px!important;
    border-top:2px solid #2457f5!important;
    border-right:2px solid #2457f5!important;
  }

  /* ---------- RUTA TÉCNICA: cabecera dentro de la imagen como ordenador ---------- */
  html body.nphb-home-active .nphb-learning-path.nphb-learning-path-concept2,
  html body .nphb-learning-path.nphb-learning-path-concept2{
    padding-top:24px!important;
  }
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-shell,
  html body .nphb-learning-path-concept2 .nphb-path-shell{
    position:relative!important;
    padding:0 18px 18px!important;
  }
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-route-panel.is-active .nphb-route-copy,
  html body .nphb-learning-path-concept2 .nphb-route-panel.is-active .nphb-route-copy{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    height:0!important;
    max-height:0!important;
    overflow:hidden!important;
    margin:0!important;
    padding:0!important;
  }
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-header,
  html body .nphb-learning-path-concept2 .nphb-path-header{
    position:absolute!important;
    z-index:12!important;
    top:35px!important;
    left:46px!important;
    width:min(48%,520px)!important;
    max-width:none!important;
    margin:0!important;
    text-align:left!important;
    pointer-events:none!important;
  }
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-eyebrow,
  html body .nphb-learning-path-concept2 .nphb-path-eyebrow{
    display:block!important;
    margin:0 0 7px!important;
    color:#5e8fff!important;
    font-size:9.5px!important;
    font-weight:900!important;
    line-height:1.05!important;
    letter-spacing:.13em!important;
    text-transform:uppercase!important;
  }
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-header h2,
  html body.nphb-home-active .nphb-learning-path-concept2 #nphb-path-title,
  html body .nphb-learning-path-concept2 .nphb-path-header h2,
  html body .nphb-learning-path-concept2 #nphb-path-title{
    max-width:520px!important;
    margin:0 0 7px!important;
    color:#102247!important;
    font-size:clamp(29px,4vw,38px)!important;
    font-weight:900!important;
    line-height:1.02!important;
    letter-spacing:-.045em!important;
    text-align:left!important;
    text-wrap:balance!important;
  }
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-title-accent,
  html body .nphb-learning-path-concept2 .nphb-path-title-accent{color:#2457f5!important;}
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-header>p,
  html body .nphb-learning-path-concept2 .nphb-path-header>p{
    max-width:500px!important;
    margin:0!important;
    color:#60708a!important;
    font-size:12.5px!important;
    line-height:1.36!important;
    text-align:left!important;
  }
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-route-image-stage,
  html body .nphb-learning-path-concept2 .nphb-route-image-stage{
    width:100%!important;
    aspect-ratio:2.15 / 1!important;
    height:auto!important;
    overflow:hidden!important;
    border-radius:22px!important;
    border:1px solid rgba(214,225,241,.9)!important;
    background:#f7fbff!important;
    box-shadow:0 16px 38px rgba(16,34,71,.075)!important;
  }
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-route-image,
  html body .nphb-learning-path-concept2 .nphb-route-image{
    display:block!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center top!important;
    border-radius:0!important;
  }

  /* La franja inferior mantiene las 4 piezas de escritorio en una fila. */
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-features,
  html body .nphb-learning-path-concept2 .nphb-learning-features{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr)) minmax(190px,.9fr)!important;
    margin-top:8px!important;
    border-radius:16px!important;
    overflow:hidden!important;
  }
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-features>div,
  html body .nphb-learning-path-concept2 .nphb-learning-features>div{
    min-height:72px!important;
    grid-template-columns:38px minmax(0,1fr)!important;
    grid-template-rows:auto auto!important;
    column-gap:9px!important;
    align-content:center!important;
    padding:11px 12px!important;
    border-right:1px solid #e8eef7!important;
    border-bottom:0!important;
  }
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-features>div:nth-child(3),
  html body .nphb-learning-path-concept2 .nphb-learning-features>div:nth-child(3),
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-features>div:last-child,
  html body .nphb-learning-path-concept2 .nphb-learning-features>div:last-child{border-right:0!important;}
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-features>div>span:first-child,
  html body .nphb-learning-path-concept2 .nphb-learning-features>div>span:first-child{
    width:38px!important;
    height:38px!important;
    border-radius:11px!important;
    font-size:17px!important;
  }
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-features strong,
  html body .nphb-learning-path-concept2 .nphb-learning-features strong{font-size:11px!important;}
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-features small,
  html body .nphb-learning-path-concept2 .nphb-learning-features small{font-size:9px!important;}
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-feature-phrase,
  html body .nphb-learning-path-concept2 .nphb-learning-feature-phrase{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:9px!important;
    padding:10px 12px!important;
  }
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-feature-phrase-text,
  html body .nphb-learning-path-concept2 .nphb-learning-feature-phrase-text{
    color:#164bb9!important;
    font-family:"Segoe Print","Bradley Hand","Comic Sans MS",cursive!important;
    font-size:15px!important;
    font-weight:500!important;
    line-height:1.2!important;
    text-align:center!important;
    transform:rotate(-2deg)!important;
  }
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-feature-phrase-arrow,
  html body .nphb-learning-path-concept2 .nphb-learning-feature-phrase-arrow{
    position:relative!important;
    display:block!important;
    flex:0 0 30px!important;
    width:30px!important;
    height:24px!important;
    overflow:visible!important;
    color:transparent!important;
    font-size:0!important;
    line-height:0!important;
    background:none!important;
  }
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-feature-phrase-arrow::before,
  html body .nphb-learning-path-concept2 .nphb-learning-feature-phrase-arrow::before{
    content:""!important;
    position:absolute!important;
    left:2px!important;
    top:13px!important;
    width:27px!important;
    height:2px!important;
    border-radius:999px!important;
    background:#2457f5!important;
    transform:rotate(-39deg)!important;
    transform-origin:left center!important;
  }
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-feature-phrase-arrow::after,
  html body .nphb-learning-path-concept2 .nphb-learning-feature-phrase-arrow::after{
    content:""!important;
    position:absolute!important;
    right:1px!important;
    top:1px!important;
    width:8px!important;
    height:8px!important;
    border-top:2px solid #2457f5!important;
    border-right:2px solid #2457f5!important;
  }
}


/* =========================================================
   v10.8.41 — TABLET: numeración de etapas + ajuste de frases
              MÓVIL: tipografía manuscrita y flechas coherentes
   Escritorio permanece intacto.
   ========================================================= */

/* TABLET 761–1180 px: recupera los números 1–5 de escritorio. */
@media (min-width:761px) and (max-width:1180px){
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 > #ruta-resumen .nphb-level-ccst::before,
  html body .nphb-hero.nphb-concept-top-v1 > #ruta-resumen .nphb-level-ccst::before{
    content:"1"!important;
    background:#22bbae!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 > #ruta-resumen .nphb-level-ccna::before,
  html body .nphb-hero.nphb-concept-top-v1 > #ruta-resumen .nphb-level-ccna::before{
    content:"2"!important;
    background:#3281ed!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 > #ruta-resumen .nphb-level-encor::before,
  html body .nphb-hero.nphb-concept-top-v1 > #ruta-resumen .nphb-level-encor::before{
    content:"3"!important;
    background:#8849dc!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 > #ruta-resumen .nphb-level-enarsi::before,
  html body .nphb-hero.nphb-concept-top-v1 > #ruta-resumen .nphb-level-enarsi::before{
    content:"4"!important;
    background:#ff8a28!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 > #ruta-resumen .nphb-level-ccie::before,
  html body .nphb-hero.nphb-concept-top-v1 > #ruta-resumen .nphb-level-ccie::before{
    content:"5"!important;
    background:#d9a400!important;
  }

  /* Evita que la frase inferior herede el tamaño de los iconos. */
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-feature-phrase-text,
  html body .nphb-learning-path-concept2 .nphb-learning-feature-phrase-text{
    display:block!important;
    flex:0 1 auto!important;
    width:auto!important;
    min-width:0!important;
    max-width:180px!important;
    height:auto!important;
    min-height:0!important;
    padding:0!important;
    border-radius:0!important;
    background:none!important;
    color:#164bb9!important;
    font-family:"Segoe Print","Bradley Hand","Comic Sans MS",cursive!important;
    font-size:14px!important;
    font-weight:500!important;
    line-height:1.18!important;
    text-align:center!important;
    transform:rotate(-2deg)!important;
  }

  /* Un poco más de aire para Acompañamiento sin cambiar la fila. */
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-features,
  html body .nphb-learning-path-concept2 .nphb-learning-features{
    grid-template-columns:minmax(0,.92fr) minmax(0,.92fr) minmax(0,1.14fr) minmax(190px,1fr)!important;
  }
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-features>div:nth-child(3) strong,
  html body .nphb-learning-path-concept2 .nphb-learning-features>div:nth-child(3) strong{
    font-size:10.5px!important;
    white-space:nowrap!important;
  }

  /* Flechas más compactas y cercanas al gesto del escritorio. */
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-arrow,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-arrow,
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-feature-phrase-arrow,
  html body .nphb-learning-path-concept2 .nphb-learning-feature-phrase-arrow{
    flex:0 0 24px!important;
    width:24px!important;
    height:20px!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-arrow::before,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-arrow::before,
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-feature-phrase-arrow::before,
  html body .nphb-learning-path-concept2 .nphb-learning-feature-phrase-arrow::before{
    left:2px!important;
    top:11px!important;
    width:21px!important;
    height:2px!important;
    transform:rotate(-40deg)!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-arrow::after,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-arrow::after,
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-feature-phrase-arrow::after,
  html body .nphb-learning-path-concept2 .nphb-learning-feature-phrase-arrow::after{
    right:1px!important;
    top:1px!important;
    width:7px!important;
    height:7px!important;
  }
}

/* MÓVIL <=760 px: conserva el diseño móvil, pero usa el mismo
   lenguaje manuscrito y una flecha CSS monocroma (sin emoji iOS). */
@media (max-width:760px){
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase,
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-feature-phrase,
  html body .nphb-learning-path-concept2 .nphb-learning-feature-phrase{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:7px!important;
  }

  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-text,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-text{
    display:block!important;
    flex:0 1 auto!important;
    width:auto!important;
    min-width:0!important;
    max-width:150px!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:none!important;
    box-shadow:none!important;
    color:#173e94!important;
    font-family:"Segoe Print","Bradley Hand","Comic Sans MS",cursive!important;
    font-size:13px!important;
    font-weight:400!important;
    line-height:1.18!important;
    text-align:center!important;
    transform:rotate(-2deg)!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-feature-phrase-text,
  html body .nphb-learning-path-concept2 .nphb-learning-feature-phrase-text{
    display:block!important;
    flex:0 1 auto!important;
    width:auto!important;
    min-width:0!important;
    max-width:155px!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:none!important;
    box-shadow:none!important;
    color:#164bb9!important;
    font-family:"Segoe Print","Bradley Hand","Comic Sans MS",cursive!important;
    font-size:13px!important;
    font-weight:500!important;
    line-height:1.18!important;
    text-align:center!important;
    transform:rotate(-2deg)!important;
  }

  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-arrow,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-arrow,
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-feature-phrase-arrow,
  html body .nphb-learning-path-concept2 .nphb-learning-feature-phrase-arrow{
    position:relative!important;
    display:block!important;
    flex:0 0 22px!important;
    width:22px!important;
    height:19px!important;
    min-width:22px!important;
    min-height:19px!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    color:transparent!important;
    font-size:0!important;
    line-height:0!important;
    background:none!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }

  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-arrow::before,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-arrow::before,
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-feature-phrase-arrow::before,
  html body .nphb-learning-path-concept2 .nphb-learning-feature-phrase-arrow::before{
    content:""!important;
    position:absolute!important;
    left:2px!important;
    top:10px!important;
    width:20px!important;
    height:2px!important;
    border-radius:999px!important;
    background:#2457f5!important;
    transform:rotate(-40deg)!important;
    transform-origin:left center!important;
  }

  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-arrow::after,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-arrow::after,
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-feature-phrase-arrow::after,
  html body .nphb-learning-path-concept2 .nphb-learning-feature-phrase-arrow::after{
    content:""!important;
    position:absolute!important;
    right:0!important;
    top:1px!important;
    width:7px!important;
    height:7px!important;
    border-top:2px solid #2457f5!important;
    border-right:2px solid #2457f5!important;
  }
}

/* =========================================================
   v10.8.42 — TABLET/MÓVIL · FRASES MANUSCRITAS Y FLECHA
   Corrige la herencia del tamaño de icono en la frase inferior
   y usa el mismo glifo de flecha de escritorio en presentación
   de texto (FE0E), evitando el emoji de Safari/iPadOS.
   Escritorio permanece intacto.
   ========================================================= */

@media (min-width:761px) and (max-width:1180px){
  /* La frase inferior NO es un icono: ancho real para respetar las dos líneas. */
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-features .nphb-learning-feature-phrase > span.nphb-learning-feature-phrase-text,
  html body .nphb-learning-path-concept2 .nphb-learning-features .nphb-learning-feature-phrase > span.nphb-learning-feature-phrase-text{
    display:block!important;
    flex:0 0 138px!important;
    width:138px!important;
    min-width:138px!important;
    max-width:138px!important;
    height:auto!important;
    min-height:0!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    background:none!important;
    box-shadow:none!important;
    color:#164bb9!important;
    font-family:"Segoe Print","Bradley Hand","Comic Sans MS",cursive!important;
    font-size:13px!important;
    font-weight:500!important;
    line-height:1.22!important;
    white-space:nowrap!important;
    text-align:center!important;
    transform:rotate(-2deg)!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-feature-phrase,
  html body .nphb-learning-path-concept2 .nphb-learning-feature-phrase{
    gap:5px!important;
    padding-left:7px!important;
    padding-right:7px!important;
  }

  /* Misma flecha tipográfica que escritorio, forzada como texto y no emoji. */
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-arrow,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-arrow,
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-feature-phrase-arrow,
  html body .nphb-learning-path-concept2 .nphb-learning-feature-phrase-arrow{
    position:relative!important;
    display:block!important;
    flex:0 0 27px!important;
    width:27px!important;
    min-width:27px!important;
    height:30px!important;
    min-height:30px!important;
    overflow:visible!important;
    color:transparent!important;
    font-size:0!important;
    line-height:0!important;
    background:none!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-arrow::before,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-arrow::before,
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-feature-phrase-arrow::before,
  html body .nphb-learning-path-concept2 .nphb-learning-feature-phrase-arrow::before{
    content:"↗︎"!important;
    position:absolute!important;
    inset:auto!important;
    left:0!important;
    top:0!important;
    width:27px!important;
    height:30px!important;
    background:none!important;
    border:0!important;
    border-radius:0!important;
    transform:none!important;
    color:#2457f5!important;
    font-family:Arial,"Helvetica Neue",sans-serif!important;
    font-size:28px!important;
    font-weight:400!important;
    line-height:30px!important;
    text-align:center!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-arrow::after,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-arrow::after,
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-feature-phrase-arrow::after,
  html body .nphb-learning-path-concept2 .nphb-learning-feature-phrase-arrow::after{
    content:none!important;
    display:none!important;
  }
}

@media (max-width:760px){
  /* En móvil la frase mantiene exactamente sus dos líneas, sin heredar caja de icono. */
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-features .nphb-learning-feature-phrase > span.nphb-learning-feature-phrase-text,
  html body .nphb-learning-path-concept2 .nphb-learning-features .nphb-learning-feature-phrase > span.nphb-learning-feature-phrase-text{
    display:block!important;
    flex:0 1 150px!important;
    width:auto!important;
    min-width:0!important;
    max-width:150px!important;
    height:auto!important;
    min-height:0!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    background:none!important;
    box-shadow:none!important;
    white-space:nowrap!important;
  }

  /* Flecha tipográfica de escritorio, forzada como texto en Safari/iOS. */
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-arrow,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-arrow,
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-feature-phrase-arrow,
  html body .nphb-learning-path-concept2 .nphb-learning-feature-phrase-arrow{
    position:relative!important;
    display:block!important;
    flex:0 0 25px!important;
    width:25px!important;
    min-width:25px!important;
    height:28px!important;
    min-height:28px!important;
    overflow:visible!important;
    color:transparent!important;
    font-size:0!important;
    line-height:0!important;
    background:none!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-arrow::before,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-arrow::before,
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-feature-phrase-arrow::before,
  html body .nphb-learning-path-concept2 .nphb-learning-feature-phrase-arrow::before{
    content:"↗︎"!important;
    position:absolute!important;
    inset:auto!important;
    left:0!important;
    top:0!important;
    width:25px!important;
    height:28px!important;
    background:none!important;
    border:0!important;
    border-radius:0!important;
    transform:none!important;
    color:#2457f5!important;
    font-family:Arial,"Helvetica Neue",sans-serif!important;
    font-size:26px!important;
    font-weight:400!important;
    line-height:28px!important;
    text-align:center!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-arrow::after,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-arrow::after,
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-feature-phrase-arrow::after,
  html body .nphb-learning-path-concept2 .nphb-learning-feature-phrase-arrow::after{
    content:none!important;
    display:none!important;
  }
}


/* =========================================================
   v10.8.43 — Compacta la franja superior de ventajas en
   tablet y móvil para igualar la densidad visual de la
   franja inferior (menos aire entre título y subtítulo).
   ========================================================= */
@media (min-width:761px) and (max-width:1180px){
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-features-concept,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-features-concept{
    grid-template-columns:repeat(3,minmax(0,1fr)) minmax(190px,.9fr)!important;
    margin:0 auto 16px!important;
    padding:8px 10px!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-features-concept > div,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-features-concept > div{
    min-height:48px!important;
    padding:0 10px!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-features-concept > div:not(.nphb-feature-phrase),
  html body .nphb-hero.nphb-concept-top-v1 .nphb-features-concept > div:not(.nphb-feature-phrase){
    display:grid!important;
    grid-template-columns:34px minmax(0,1fr)!important;
    grid-template-rows:auto auto!important;
    column-gap:8px!important;
    row-gap:1px!important;
    align-items:center!important;
    align-content:center!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-features-concept strong,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-features-concept strong{
    margin:0!important;
    font-size:10.5px!important;
    line-height:1.12!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-features-concept small,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-features-concept small{
    margin-top:0!important;
    font-size:8.5px!important;
    line-height:1.18!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase{
    min-height:48px!important;
    padding:0 10px!important;
    gap:8px!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-text,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-feature-phrase .nphb-feature-phrase-text{
    line-height:1.12!important;
  }
}

@media (max-width:760px){
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-features-concept,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-features-concept{
    padding:8px 10px!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-features-concept > div,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-features-concept > div{
    min-height:50px!important;
    padding:8px 10px!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-features-concept > div:not(.nphb-feature-phrase),
  html body .nphb-hero.nphb-concept-top-v1 .nphb-features-concept > div:not(.nphb-feature-phrase){
    row-gap:1px!important;
    align-content:center!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-features-concept strong,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-features-concept strong{
    margin:0!important;
    line-height:1.12!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-features-concept small,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-features-concept small{
    margin-top:0!important;
    line-height:1.18!important;
  }
}


/* =========================================================
   v10.8.44 — TABLET: elimina el resplandor heredado de la
   línea superior de progreso 1–5. Conserva gradiente, nodos,
   colores, posiciones y tarjetas sin cambios.
   ========================================================= */
@media (min-width:761px) and (max-width:1180px){
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 > #ruta-resumen.nphb-roadmap::before,
  html body .nphb-hero.nphb-concept-top-v1 > #ruta-resumen.nphb-roadmap::before{
    box-shadow:none!important;
    filter:none!important;
  }
}


/* =========================================================
   v10.8.45 — Oculta la firma final "NextPing Academy / From Zero"
   al final de la ruta técnica. Se mantiene el resto del bloque.
   ========================================================= */
html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-signature-wrap,
html body .nphb-learning-path-concept2 .nphb-path-signature-wrap{
  display:none!important;
}


/* =========================================================
   v10.8.48 — MÓVIL LIMPIO
   - Recupera el hero móvil aprobado (imagen lateral integrada).
   - Oculta SOLO las 5 tarjetas CCST→CCIE del hero.
   - Eyebrow a una sola línea y ancho completo.
   - Ruta técnica con composición tipo tablet, escalada a móvil.
   - NO modifica la línea ENARSI → CCIE.
   ========================================================= */
@media (max-width:760px){

  /* 1) Ocultar únicamente las cinco tarjetas superiores. */
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 > #ruta-resumen.nphb-roadmap,
  html body .nphb-hero.nphb-concept-top-v1 > #ruta-resumen.nphb-roadmap{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    height:0!important;
    max-height:0!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    border:0!important;
  }

  /* 2) Recuperar el hero móvil original: una sola columna base.
        La imagen móvil sigue integrada a la derecha dentro del copy. */
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-inner,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-inner,
  html body.nphb-mobile-compact .nphb-hero.nphb-concept-top-v1 .nphb-inner{
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-rows:auto!important;
    gap:10px!important;
    align-items:start!important;
    width:100%!important;
    max-width:none!important;
    padding:20px 12px 12px!important;
  }

  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-copy,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-copy,
  html body.nphb-mobile-compact .nphb-hero.nphb-concept-top-v1 .nphb-copy{
    grid-column:1!important;
    grid-row:1!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding-left:2px!important;
    padding-right:2px!important;
    position:relative!important;
    overflow:hidden!important;
    text-align:left!important;
  }

  /* 3) "TU CAMINO..." a todo el ancho y en una sola línea. */
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-eyebrow,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-eyebrow,
  html body.nphb-mobile-compact .nphb-hero.nphb-concept-top-v1.nphb-has-mobile-hero-visual .nphb-eyebrow{
    display:flex!important;
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
    justify-content:flex-start!important;
    margin:0 0 10px!important;
    padding:8px 12px!important;
    font-size:8.4px!important;
    line-height:1.1!important;
    letter-spacing:.035em!important;
    white-space:nowrap!important;
  }

  /* 4) Ruta técnica: misma composición de tablet, escalada. */
  html body.nphb-home-active .nphb-learning-path.nphb-learning-path-concept2,
  html body .nphb-learning-path.nphb-learning-path-concept2,
  html body.nphb-mobile-compact .nphb-learning-path.nphb-learning-path-concept2{
    padding:18px 8px 34px!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-shell,
  html body .nphb-learning-path-concept2 .nphb-path-shell,
  html body.nphb-mobile-compact .nphb-learning-path-concept2 .nphb-path-shell{
    position:relative!important;
    padding:0 4px 14px!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-route-panels,
  html body .nphb-learning-path-concept2 .nphb-route-panels{
    margin:0!important;
    padding:0!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-route-panel.is-active:not([hidden]),
  html body .nphb-learning-path-concept2 .nphb-route-panel.is-active:not([hidden]){
    display:block!important;
    margin:0!important;
    padding:0!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-route-panel.is-active .nphb-route-copy,
  html body .nphb-learning-path-concept2 .nphb-route-panel.is-active .nphb-route-copy{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    height:0!important;
    max-height:0!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-header,
  html body .nphb-learning-path-concept2 .nphb-path-header,
  html body.nphb-mobile-compact .nphb-learning-path-concept2 .nphb-path-header{
    position:absolute!important;
    z-index:12!important;
    top:14px!important;
    left:18px!important;
    width:45%!important;
    max-width:45%!important;
    margin:0!important;
    text-align:left!important;
    pointer-events:none!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-eyebrow,
  html body .nphb-learning-path-concept2 .nphb-path-eyebrow{
    display:block!important;
    margin:0 0 4px!important;
    color:#5e8fff!important;
    font-size:5.6px!important;
    font-weight:900!important;
    line-height:1!important;
    letter-spacing:.105em!important;
    text-transform:uppercase!important;
    text-align:left!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-header h2,
  html body.nphb-home-active .nphb-learning-path-concept2 #nphb-path-title,
  html body .nphb-learning-path-concept2 .nphb-path-header h2,
  html body .nphb-learning-path-concept2 #nphb-path-title{
    max-width:100%!important;
    margin:0 0 4px!important;
    color:#102247!important;
    font-size:14.5px!important;
    font-weight:900!important;
    line-height:.98!important;
    letter-spacing:-.045em!important;
    text-align:left!important;
    text-wrap:balance!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-title-accent,
  html body .nphb-learning-path-concept2 .nphb-path-title-accent{
    color:#2457f5!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-header>p,
  html body .nphb-learning-path-concept2 .nphb-path-header>p{
    max-width:100%!important;
    margin:0!important;
    color:#60708a!important;
    font-size:6.6px!important;
    line-height:1.22!important;
    text-align:left!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-route-image-stage,
  html body .nphb-learning-path-concept2 .nphb-route-image-stage{
    width:100%!important;
    aspect-ratio:2 / 1!important;
    height:auto!important;
    overflow:hidden!important;
    border-radius:18px!important;
    border:1px solid rgba(214,225,241,.9)!important;
    background:#f7fbff!important;
    box-shadow:0 12px 26px rgba(16,34,71,.065)!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-route-image,
  html body .nphb-learning-path-concept2 .nphb-route-image{
    display:block!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center top!important;
    border-radius:0!important;
  }

  /* Tabs pegadas al pie de la imagen, como tablet. */
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-route-tabs,
  html body .nphb-learning-path-concept2 .nphb-route-tabs{
    width:calc(100% - 20px)!important;
    max-width:none!important;
    margin:-42px auto 12px!important;
    gap:5px!important;
  }

  /* Frase inferior: conservar estilo aprobado. */
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-features .nphb-learning-feature-phrase > span.nphb-learning-feature-phrase-text,
  html body .nphb-learning-path-concept2 .nphb-learning-features .nphb-learning-feature-phrase > span.nphb-learning-feature-phrase-text{
    flex:0 1 170px!important;
    max-width:170px!important;
    white-space:normal!important;
    line-height:1.18!important;
  }
}


/* =========================================================
   v10.8.49 — líneas técnicas sin animación (global)
   - Elimina flujo animado, nodo viajero y resplandores.
   - Sustituye las conexiones CCST → CCIE por una línea técnica simple.
   ========================================================= */
body .nphb-route-mini-line-flow,
body .nphb-route-travel-dot{
  display:none!important;
  animation:none!important;
  opacity:0!important;
}
body .nphb-route-mini-line-glow{
  display:none!important;
}
body .nphb-route-mini-connectors{
  overflow:visible!important;
}
body .nphb-route-mini-line-core{
  display:block!important;
  stroke:#8aa9e8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  stroke-width:var(--overlay-line-d,2.6px)!important;
  filter:none!important;
  opacity:.96!important;
}
@media(max-width:1024px){
  body .nphb-route-mini-line-core{
    stroke-width:var(--overlay-line-t,2.35px)!important;
  }
}
@media(max-width:760px){
  body .nphb-route-mini-line-core{
    stroke-width:var(--overlay-line-m,2.1px)!important;
  }
}


/* =========================================================
   v10.8.50 — conexión única
   - deja una sola línea técnica real, sin triple trazo
   ========================================================= */
body .nphb-route-mini-line-core{
  fill:none!important;
  stroke:#8fa7d8!important;
  stroke-width:1.8px!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  vector-effect:non-scaling-stroke!important;
  filter:none!important;
  opacity:1!important;
}
@media(max-width:1024px){
  body .nphb-learning-path-concept2 .nphb-route-mini-line-core,
  body .nphb-route-mini-line-core{stroke-width:1.7px!important;}
}
@media(max-width:760px){
  body .nphb-learning-path-concept2 .nphb-route-mini-line-core,
  body .nphb-route-mini-line-core{stroke-width:1.55px!important;}
}


/* =========================================================
   v10.8.51 — UNA SOLA LÍNEA VISIBLE POR DISPOSITIVO
   Corrige la v10.8.50: el selector genérico del core forzaba
   display:block y hacía visibles desktop/tablet/mobile a la vez.
   ========================================================= */

/* Escritorio: SOLO desktop. */
html body .nphb-learning-path-concept2 .nphb-route-mini-line-desktop{
  display:block!important;
}
html body .nphb-learning-path-concept2 .nphb-route-mini-line-tablet,
html body .nphb-learning-path-concept2 .nphb-route-mini-line-mobile{
  display:none!important;
}

/* Tablet: SOLO tablet. */
@media (min-width:761px) and (max-width:1180px){
  html body .nphb-learning-path-concept2 .nphb-route-mini-line-desktop,
  html body .nphb-learning-path-concept2 .nphb-route-mini-line-mobile{
    display:none!important;
  }
  html body .nphb-learning-path-concept2 .nphb-route-mini-line-tablet{
    display:block!important;
  }
}

/* Móvil: SOLO mobile. */
@media (max-width:760px){
  html body .nphb-learning-path-concept2 .nphb-route-mini-line-desktop,
  html body .nphb-learning-path-concept2 .nphb-route-mini-line-tablet{
    display:none!important;
  }
  html body .nphb-learning-path-concept2 .nphb-route-mini-line-mobile{
    display:block!important;
  }
}


/* =========================================================
   v10.9.0 — Reviews reales NextPing
   ========================================================= */
.nphb-reviews-section{padding:0 24px 86px;background:linear-gradient(180deg,#f7f9fd 0%,#f2f6fc 100%);color:#102247}
.nphb-reviews-shell{width:min(var(--nphb-layout-desktop-width,1380px),100%);margin:0 auto;padding:28px;border:1px solid #dfe7f3;border-radius:24px;background:rgba(255,255,255,.97);box-shadow:0 18px 44px rgba(16,34,71,.07)}
.nphb-reviews-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:start;margin-bottom:22px}
.nphb-reviews-kicker{display:block;margin-bottom:8px;color:#5e8fff;font-size:11px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.nphb-reviews-heading h2,.nphb-reviews-archive h1{margin:0!important;color:#102247;font-size:clamp(34px,3.7vw,54px)!important;font-weight:900!important;line-height:1.02!important;letter-spacing:-.045em!important}
.nphb-reviews-accent{color:#2457f5}
.nphb-reviews-heading p{max-width:760px;margin:9px 0 0!important;color:#66758d;font-size:15px;line-height:1.5}
.nphb-reviews-summary{display:grid;grid-template-columns:auto auto 1fr;grid-template-rows:auto auto;align-items:center;min-width:260px;padding:18px 20px;border:1px solid #e1e8f3;border-radius:18px;background:#f9fbff}
.nphb-reviews-summary>strong{font-size:36px;line-height:1;color:#102247}.nphb-reviews-summary-star{margin-left:6px;color:#f7b924;font-size:31px;line-height:1}.nphb-reviews-summary-count{margin-left:16px;padding-left:16px;border-left:1px solid #d9e2ef;color:#304665;font-size:13px;font-weight:800}.nphb-reviews-summary small{grid-column:1/4;margin-top:8px;color:#7b8ba3;font-size:10px}
.nphb-reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:stretch}.nphb-reviews-grid.nphb-reviews-grid-count-1{grid-template-columns:minmax(0,780px);max-width:780px}.nphb-reviews-grid.nphb-reviews-grid-count-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.nphb-review-card{display:flex;flex-direction:column;min-width:0;min-height:170px;padding:16px 16px 14px;border:1px solid #dfe7f2;border-radius:18px;background:#fff;box-shadow:0 8px 22px rgba(16,34,71,.035)}
.nphb-review-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.nphb-review-stars{color:#f7b924;font-size:17px;letter-spacing:1px;white-space:nowrap}.nphb-review-card time{color:#8493a8;font-size:10px;white-space:nowrap}
.nphb-review-text{flex:1;margin:10px 0 14px!important;color:#42536d;font-size:13px;line-height:1.52;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.nphb-review-meta{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;align-items:center}.nphb-review-avatar{width:42px!important;height:42px!important;border-radius:50%!important}.nphb-review-person{min-width:0}.nphb-review-person strong{display:block;overflow:hidden;color:#102247;font-size:12px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.nphb-review-person a{display:-webkit-box;overflow:hidden;margin-top:3px;color:#65758c!important;font-size:10px;line-height:1.3;text-decoration:none!important;-webkit-line-clamp:2;-webkit-box-orient:vertical;white-space:normal}
.nphb-review-badge{display:inline-flex;align-items:center;justify-content:center;justify-self:start;align-self:center;width:auto;max-width:max-content;padding:6px 10px;border-radius:999px;font-size:10px;font-weight:900;line-height:1;white-space:nowrap}.nphb-review-badge-curso{color:#087f77;background:#e7f9f6}.nphb-review-badge-simulador{color:#7137c9;background:#f1eafd}.nphb-review-badge-prueba{color:#175cc7;background:#eaf2ff}
.nphb-reviews-actions{display:flex;justify-content:flex-end;margin-top:14px}.nphb-reviews-all{display:inline-flex;align-items:center;gap:8px;padding:10px 17px;border:1px solid #2457f5;border-radius:999px;color:#2457f5!important;background:#fff;text-decoration:none!important;font-size:12px;font-weight:900;transition:.2s ease}.nphb-reviews-all:hover{transform:translateY(-1px);background:#2457f5;color:#fff!important}
.nphb-reviews-empty{display:flex;flex-direction:column;gap:4px;padding:24px;border:1px dashed #ccd9ed;border-radius:16px;background:#f9fbff;color:#64738b;text-align:center}.nphb-reviews-empty strong{color:#102247}

.nphb-reviews-archive{padding:54px 24px 90px;background:#f5f8fc;color:#102247}.nphb-reviews-archive-shell{width:min(1080px,100%);margin:0 auto}.nphb-reviews-archive header{margin-bottom:18px}.nphb-reviews-archive header p{margin:12px 0 0;color:#66758d;font-size:16px}.nphb-reviews-archive-summary{display:flex;align-items:center;gap:14px;margin:22px 0;padding:15px 18px;border:1px solid #dfe7f2;border-radius:16px;background:#fff}.nphb-reviews-archive-summary strong{color:#102247;font-size:22px}.nphb-reviews-archive-summary span{color:#66758d;font-size:13px}.nphb-reviews-archive-list{display:grid;grid-template-columns:1fr 1fr;gap:16px}.nphb-reviews-pagination{display:flex;justify-content:center;gap:6px;margin-top:26px}.nphb-reviews-pagination .page-numbers{display:grid;place-items:center;min-width:38px;height:38px;padding:0 10px;border:1px solid #dce5f2;border-radius:10px;background:#fff;color:#29415f;text-decoration:none}.nphb-reviews-pagination .current{color:#fff;background:#2457f5;border-color:#2457f5}

@media(max-width:1180px){.nphb-reviews-section{padding:0 22px 64px}.nphb-reviews-shell{width:min(var(--nphb-layout-tablet-width,960px),100%);padding:22px}.nphb-reviews-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nphb-reviews-grid .nphb-review-card:nth-child(n+3){display:none}.nphb-reviews-head{grid-template-columns:1fr}.nphb-reviews-summary{justify-self:start}.nphb-reviews-archive-list{grid-template-columns:1fr}.nphb-reviews-grid.nphb-reviews-grid-count-1,.nphb-reviews-grid.nphb-reviews-grid-count-2{max-width:none}}
@media(max-width:760px){.nphb-reviews-section{padding:0 12px 38px}.nphb-reviews-shell{width:min(var(--nphb-layout-mobile-width,430px),100%);padding:18px 14px;border-radius:20px}.nphb-reviews-kicker{font-size:9px}.nphb-reviews-heading h2,.nphb-reviews-archive h1{font-size:29px!important}.nphb-reviews-heading p{font-size:12px}.nphb-reviews-summary{width:100%;min-width:0;padding:14px 15px}.nphb-reviews-summary>strong{font-size:30px}.nphb-reviews-grid{display:flex;gap:12px;overflow-x:auto;padding-bottom:8px;scroll-snap-type:x mandatory}.nphb-reviews-grid .nphb-review-card:nth-child(n){display:flex}.nphb-review-card{flex:0 0 88%;min-height:184px;scroll-snap-align:start}.nphb-reviews-actions{justify-content:center}.nphb-reviews-all{width:100%;justify-content:center}.nphb-reviews-archive{padding:34px 12px 70px}.nphb-reviews-archive header p{font-size:13px}.nphb-review-meta{grid-template-columns:38px minmax(0,1fr) auto}.nphb-review-avatar{width:38px!important;height:38px!important}.nphb-review-text{font-size:12px;line-height:1.48}.nphb-review-badge{font-size:9px;padding:5px 9px}}


/* =========================================================
   v10.9.1 — Reviews LearnDash nativas + fondo limpio
   ========================================================= */
.nphb-reviews-section{
  background:transparent!important;
}
/* Evita cualquier banda/recuadro exterior: solo permanece la tarjeta blanca. */
.nphb-reviews-section::before,
.nphb-reviews-section::after{
  content:none!important;
  display:none!important;
}


/* =========================================================
   v10.9.4 — Reviews: autor/curso completos + cards compactas
   - Mantiene siempre la columna de avatar con fallback de iniciales.
   - Evita que autor/curso queden atrapados en una columna de 42px.
   - Reduce espacio vacío interno en opiniones cortas.
   ========================================================= */
.nphb-reviews-grid{align-items:stretch!important}
.nphb-review-card{
  min-height:148px!important;
  padding:15px 16px 13px!important;
}
.nphb-review-text{
  flex:0 0 auto!important;
  margin:9px 0 13px!important;
}
.nphb-review-meta{
  width:100%!important;
  grid-template-columns:42px minmax(0,1fr) auto!important;
  gap:10px!important;
}
.nphb-review-avatar{
  display:grid!important;
  place-items:center!important;
  flex:0 0 42px!important;
  width:42px!important;
  min-width:42px!important;
  height:42px!important;
  min-height:42px!important;
  object-fit:cover!important;
}
.nphb-review-avatar-fallback{
  border-radius:50%!important;
  background:#edf3ff!important;
  color:#2457f5!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.02em!important;
}
.nphb-review-person{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
}
.nphb-review-person strong{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  overflow:visible!important;
  text-overflow:clip!important;
  white-space:normal!important;
  font-size:12.5px!important;
  line-height:1.25!important;
}
.nphb-review-person a{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  overflow:visible!important;
  margin-top:3px!important;
  white-space:normal!important;
  text-overflow:clip!important;
  -webkit-line-clamp:unset!important;
  -webkit-box-orient:initial!important;
  font-size:10.5px!important;
  line-height:1.3!important;
}
.nphb-review-badge{
  width:auto!important;
  min-width:0!important;
  max-width:max-content!important;
  justify-self:end!important;
}
@media(max-width:760px){
  .nphb-review-card{min-height:164px!important}
  .nphb-review-meta{grid-template-columns:38px minmax(0,1fr) auto!important}
  .nphb-review-avatar{width:38px!important;min-width:38px!important;height:38px!important;min-height:38px!important;flex-basis:38px!important}
  .nphb-review-person strong{font-size:11.5px!important}
  .nphb-review-person a{font-size:9.8px!important}
}
\n\n/* =========================================================\n   v10.9.6 — Reviews: tarjetas visualmente cerradas\n   - Menos espacio vacío y jerarquía más clara.\n   - Pie separado para avatar, autor, curso y tipo.\n   - Misma altura visual aunque las reseñas sean cortas.\n   ========================================================= */\n.nphb-reviews-grid{\n  gap:18px!important;\n}\n.nphb-review-card{\n  display:grid!important;\n  grid-template-rows:auto auto auto!important;\n  align-content:start!important;\n  row-gap:11px!important;\n  min-height:0!important;\n  padding:15px 16px 14px!important;\n  border-color:#e2e9f3!important;\n  border-radius:17px!important;\n  background:#fff!important;\n  box-shadow:0 10px 26px rgba(16,34,71,.045)!important;\n}\n.nphb-review-card-top{\n  min-height:24px!important;\n  align-items:center!important;\n}\n.nphb-review-stars{\n  font-size:16px!important;\n  letter-spacing:.7px!important;\n  line-height:1!important;\n}\n.nphb-review-card time{\n  color:#8291a7!important;\n  font-size:10.5px!important;\n  line-height:1!important;\n}\n.nphb-review-text{\n  flex:none!important;\n  display:-webkit-box!important;\n  min-height:0!important;\n  margin:0!important;\n  overflow:hidden!important;\n  color:#42536d!important;\n  font-size:13.2px!important;\n  line-height:1.48!important;\n  -webkit-line-clamp:3!important;\n  -webkit-box-orient:vertical!important;\n}\n.nphb-review-meta{\n  display:grid!important;\n  grid-template-columns:48px minmax(0,1fr) auto!important;\n  gap:12px!important;\n  align-items:center!important;\n  width:100%!important;\n  margin-top:1px!important;\n  padding-top:11px!important;\n  border-top:1px solid #edf2f8!important;\n}\n.nphb-review-avatar-wrap{\n  display:grid!important;\n  place-items:center!important;\n  width:48px!important;\n  height:48px!important;\n  overflow:hidden!important;\n  border:1px solid #e7edf7!important;\n  border-radius:50%!important;\n  background:#f6f9ff!important;\n}\n.nphb-review-avatar-wrap .nphb-review-avatar{\n  display:block!important;\n  width:100%!important;\n  min-width:100%!important;\n  height:100%!important;\n  min-height:100%!important;\n  margin:0!important;\n  border:0!important;\n  border-radius:50%!important;\n  object-fit:cover!important;\n  object-position:center!important;\n}\n.nphb-review-avatar-wrap .nphb-review-avatar-fallback{\n  display:grid!important;\n  place-items:center!important;\n  background:#edf3ff!important;\n  color:#2457f5!important;\n  font-size:12px!important;\n  font-weight:900!important;\n}\n.nphb-review-person{\n  align-self:center!important;\n}\n.nphb-review-person strong{\n  margin:0!important;\n  color:#102247!important;\n  font-size:13.5px!important;\n  font-weight:800!important;\n  line-height:1.22!important;\n}\n.nphb-review-person a{\n  margin-top:4px!important;\n  color:#6d7d94!important;\n  font-size:10.8px!important;\n  line-height:1.25!important;\n}\n.nphb-review-badge{\n  align-self:center!important;\n  justify-self:end!important;\n  padding:6px 11px!important;\n  font-size:10px!important;\n  box-shadow:inset 0 0 0 1px rgba(8,127,119,.04)!important;\n}\n@media(max-width:1180px){\n  .nphb-review-card{\n    padding:14px 15px 13px!important;\n    row-gap:10px!important;\n  }\n  .nphb-review-meta{\n    grid-template-columns:44px minmax(0,1fr) auto!important;\n    gap:10px!important;\n    padding-top:10px!important;\n  }\n  .nphb-review-avatar-wrap{width:44px!important;height:44px!important}\n}\n@media(max-width:760px){\n  .nphb-review-card{\n    flex:0 0 90%!important;\n    min-height:0!important;\n    padding:14px!important;\n    row-gap:10px!important;\n  }\n  .nphb-review-card-top{min-height:22px!important}\n  .nphb-review-stars{font-size:15px!important}\n  .nphb-review-card time{font-size:9.8px!important}\n  .nphb-review-text{font-size:12.2px!important;line-height:1.45!important}\n  .nphb-review-meta{\n    grid-template-columns:42px minmax(0,1fr) auto!important;\n    gap:9px!important;\n    padding-top:10px!important;\n  }\n  .nphb-review-avatar-wrap{width:42px!important;height:42px!important}\n  .nphb-review-person strong{font-size:11.8px!important}\n  .nphb-review-person a{font-size:9.8px!important}\n  .nphb-review-badge{padding:5px 9px!important;font-size:9px!important}\n}\n
/* =========================================================
   v10.9.7 — Reviews: acolchado interior y fecha bien integrada
   - Más padding interior para que nada toque bordes.
   - Fecha dentro de pastilla sutil y alineada.
   - Texto y pie con más aire y mejor jerarquía.
   ========================================================= */
.nphb-reviews-grid{
  gap:20px!important;
}
.nphb-review-card{
  overflow:hidden!important;
  min-height:192px!important;
  padding:18px 20px 18px!important;
  row-gap:14px!important;
  border:1px solid #dde6f2!important;
  border-radius:20px!important;
  box-shadow:0 10px 24px rgba(16,34,71,.038)!important;
}
.nphb-review-card-top{
  min-height:auto!important;
  gap:14px!important;
  align-items:flex-start!important;
}
.nphb-review-stars{
  display:inline-flex!important;
  align-items:center!important;
  min-height:24px!important;
  font-size:16px!important;
  letter-spacing:.65px!important;
  line-height:1!important;
}
.nphb-review-card time{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 auto!important;
  margin-left:auto!important;
  padding:4px 9px!important;
  border:1px solid #e8eef7!important;
  border-radius:999px!important;
  background:#f8fbff!important;
  color:#8a99ae!important;
  font-size:11px!important;
  font-weight:700!important;
  line-height:1.1!important;
  white-space:nowrap!important;
}
.nphb-review-text{
  margin:0!important;
  padding-right:2px!important;
  min-height:52px!important;
  color:#42536d!important;
  font-size:13.5px!important;
  line-height:1.54!important;
  -webkit-line-clamp:3!important;
}
.nphb-review-meta{
  grid-template-columns:52px minmax(0,1fr) auto!important;
  gap:12px!important;
  margin-top:auto!important;
  padding-top:13px!important;
}
.nphb-review-avatar-wrap{
  width:52px!important;
  height:52px!important;
  border-width:1px!important;
  box-shadow:0 2px 8px rgba(36,87,245,.04)!important;
}
.nphb-review-avatar-wrap .nphb-review-avatar-fallback{
  font-size:13px!important;
}
.nphb-review-person strong{
  font-size:14px!important;
  line-height:1.18!important;
}
.nphb-review-person a{
  margin-top:5px!important;
  font-size:11.5px!important;
  line-height:1.25!important;
}
.nphb-review-badge{
  justify-self:end!important;
  align-self:center!important;
  padding:7px 12px!important;
  border-radius:999px!important;
  font-size:10.5px!important;
  font-weight:800!important;
  line-height:1!important;
}
@media(max-width:1320px){
  .nphb-review-card{
    padding:17px 18px 17px!important;
    row-gap:13px!important;
  }
  .nphb-review-meta{
    grid-template-columns:48px minmax(0,1fr) auto!important;
  }
  .nphb-review-avatar-wrap{width:48px!important;height:48px!important}
}
@media(max-width:1180px){
  .nphb-reviews-grid{gap:16px!important}
  .nphb-review-card{
    min-height:184px!important;
    padding:16px 17px!important;
    row-gap:12px!important;
  }
  .nphb-review-card time{
    padding:4px 8px!important;
    font-size:10.5px!important;
  }
  .nphb-review-text{
    min-height:48px!important;
    font-size:13px!important;
  }
  .nphb-review-meta{
    grid-template-columns:44px minmax(0,1fr) auto!important;
    gap:10px!important;
    padding-top:11px!important;
  }
  .nphb-review-avatar-wrap{width:44px!important;height:44px!important}
  .nphb-review-person strong{font-size:13px!important}
  .nphb-review-person a{font-size:10.8px!important}
}
@media(max-width:760px){
  .nphb-review-card{
    flex:0 0 90%!important;
    min-height:174px!important;
    padding:15px!important;
    row-gap:11px!important;
  }
  .nphb-review-card-top{gap:10px!important}
  .nphb-review-stars{min-height:22px!important;font-size:15px!important}
  .nphb-review-card time{
    padding:3px 7px!important;
    font-size:9.8px!important;
  }
  .nphb-review-text{
    min-height:44px!important;
    font-size:12.2px!important;
    line-height:1.47!important;
  }
  .nphb-review-meta{
    grid-template-columns:42px minmax(0,1fr) auto!important;
    gap:9px!important;
    padding-top:10px!important;
  }
  .nphb-review-avatar-wrap{width:42px!important;height:42px!important}
  .nphb-review-person strong{font-size:11.9px!important}
  .nphb-review-person a{font-size:9.8px!important}
  .nphb-review-badge{padding:5px 9px!important;font-size:9px!important}
}

/* =========================================================
   v10.9.8 — Reviews: tarjetas más limpias y mejor equilibradas
   - Fecha fija en esquina, más limpia y separada.
   - Menos hueco vacío y contenido más centrado visualmente.
   - Más aire interior y mejor jerarquía general.
   ========================================================= */
.nphb-reviews-grid{
  gap:22px!important;
  align-items:stretch!important;
}
.nphb-review-card{
  position:relative!important;
  display:grid!important;
  grid-template-rows:auto minmax(48px,auto) auto!important;
  min-height:176px!important;
  padding:18px 18px 16px!important;
  row-gap:12px!important;
  overflow:hidden!important;
  border:1px solid #dfe7f3!important;
  border-radius:20px!important;
  background:#fff!important;
  box-shadow:0 10px 28px rgba(16,34,71,.04)!important;
}
.nphb-review-card-top{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  min-height:22px!important;
  gap:10px!important;
  padding-right:126px!important;
}
.nphb-review-stars{
  display:inline-flex!important;
  align-items:center!important;
  gap:0!important;
  font-size:16px!important;
  line-height:1!important;
  letter-spacing:.55px!important;
}
.nphb-review-card time{
  position:absolute!important;
  top:14px!important;
  right:14px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  padding:6px 12px!important;
  border:1px solid #e7edf6!important;
  border-radius:999px!important;
  background:#f8fbff!important;
  color:#8b99ad!important;
  font-size:11px!important;
  font-weight:800!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.nphb-review-text{
  margin:0!important;
  padding-right:2px!important;
  min-height:44px!important;
  color:#465773!important;
  font-size:13.4px!important;
  line-height:1.5!important;
  overflow:hidden!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow-wrap:anywhere!important;
}
.nphb-review-meta{
  display:grid!important;
  grid-template-columns:52px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:12px!important;
  margin-top:auto!important;
  padding-top:12px!important;
  border-top:1px solid #edf2f8!important;
}
.nphb-review-avatar-wrap{
  width:52px!important;
  height:52px!important;
  border:1px solid #e6ecf6!important;
  border-radius:50%!important;
  background:#f6f9ff!important;
  box-shadow:0 2px 8px rgba(36,87,245,.04)!important;
}
.nphb-review-person strong{
  display:block!important;
  margin:0!important;
  color:#102247!important;
  font-size:13.8px!important;
  font-weight:800!important;
  line-height:1.18!important;
}
.nphb-review-person a{
  display:block!important;
  margin-top:5px!important;
  color:#6d7d95!important;
  font-size:11.3px!important;
  line-height:1.22!important;
}
.nphb-review-badge{
  justify-self:end!important;
  align-self:center!important;
  padding:7px 12px!important;
  border-radius:999px!important;
  font-size:10.2px!important;
  font-weight:800!important;
  line-height:1!important;
}
@media(max-width:1320px){
  .nphb-review-card{
    min-height:170px!important;
    padding:17px 17px 15px!important;
  }
  .nphb-review-card-top{padding-right:118px!important}
  .nphb-review-card time{top:13px!important;right:13px!important;padding:5px 11px!important}
  .nphb-review-meta{grid-template-columns:48px minmax(0,1fr) auto!important;gap:11px!important}
  .nphb-review-avatar-wrap{width:48px!important;height:48px!important}
}
@media(max-width:1180px){
  .nphb-reviews-grid{gap:18px!important}
  .nphb-review-card{
    min-height:166px!important;
    padding:16px!important;
    row-gap:11px!important;
  }
  .nphb-review-card-top{padding-right:104px!important}
  .nphb-review-card time{top:12px!important;right:12px!important;font-size:10px!important;padding:5px 10px!important}
  .nphb-review-text{font-size:13px!important;min-height:42px!important}
  .nphb-review-meta{grid-template-columns:44px minmax(0,1fr) auto!important;gap:10px!important;padding-top:11px!important}
  .nphb-review-avatar-wrap{width:44px!important;height:44px!important}
  .nphb-review-person strong{font-size:13px!important}
  .nphb-review-person a{font-size:10.6px!important}
  .nphb-review-badge{font-size:9.8px!important;padding:6px 10px!important}
}
@media(max-width:760px){
  .nphb-review-card{
    flex:0 0 90%!important;
    min-height:158px!important;
    padding:15px!important;
    row-gap:10px!important;
  }
  .nphb-review-card-top{padding-right:0!important;gap:8px!important}
  .nphb-review-card time{
    position:static!important;
    margin-left:auto!important;
    padding:4px 8px!important;
    font-size:9.4px!important;
  }
  .nphb-review-stars{font-size:15px!important}
  .nphb-review-text{font-size:12.2px!important;line-height:1.45!important;min-height:40px!important}
  .nphb-review-meta{grid-template-columns:42px minmax(0,1fr) auto!important;gap:9px!important;padding-top:10px!important}
  .nphb-review-avatar-wrap{width:42px!important;height:42px!important}
  .nphb-review-person strong{font-size:11.8px!important}
  .nphb-review-person a{font-size:9.8px!important}
  .nphb-review-badge{padding:5px 9px!important;font-size:9px!important}
}

/* =========================================================
   v10.9.9 — Reviews: compactado final de tarjetas
   - Reduce altura sin perder legibilidad.
   - Mantiene las tarjetas igualadas visualmente.
   - Acerca autor/curso al texto de la review.
   - Avatar más presente y CTA más próximo al bloque.
   ========================================================= */
.nphb-reviews-grid{
  align-items:stretch!important;
}
.nphb-review-card{
  min-height:152px!important;
  padding:16px 18px 14px!important;
  row-gap:8px!important;
  grid-template-rows:auto minmax(32px,auto) auto!important;
}
.nphb-review-card-top{
  min-height:20px!important;
  padding-right:120px!important;
}
.nphb-review-stars{
  min-height:20px!important;
}
.nphb-review-card time{
  top:12px!important;
  right:14px!important;
  padding:5px 10px!important;
  font-size:10.5px!important;
}
.nphb-review-text{
  min-height:32px!important;
  font-size:13.2px!important;
  line-height:1.45!important;
  -webkit-line-clamp:2!important;
}
.nphb-review-meta{
  grid-template-columns:50px minmax(0,1fr) auto!important;
  gap:11px!important;
  margin-top:0!important;
  padding-top:9px!important;
}
.nphb-review-avatar-wrap{
  width:50px!important;
  height:50px!important;
}
.nphb-review-avatar-wrap img.nphb-review-avatar{
  transform:scale(1.12)!important;
  transform-origin:center!important;
}
.nphb-review-person strong{
  font-size:13.6px!important;
}
.nphb-review-person a{
  margin-top:3px!important;
  font-size:11px!important;
}
.nphb-review-badge{
  padding:6px 11px!important;
  font-size:10px!important;
}
.nphb-reviews-actions{
  margin-top:9px!important;
}
@media(max-width:1320px){
  .nphb-review-card{
    min-height:150px!important;
    padding:15px 16px 13px!important;
    row-gap:8px!important;
  }
  .nphb-review-card-top{padding-right:112px!important}
  .nphb-review-card time{top:11px!important;right:12px!important}
  .nphb-review-meta{grid-template-columns:46px minmax(0,1fr) auto!important;gap:10px!important;padding-top:8px!important}
  .nphb-review-avatar-wrap{width:46px!important;height:46px!important}
}
@media(max-width:1180px){
  .nphb-review-card{
    min-height:148px!important;
    padding:15px!important;
    row-gap:8px!important;
  }
  .nphb-review-card-top{padding-right:100px!important}
  .nphb-review-card time{top:10px!important;right:10px!important;padding:4px 9px!important;font-size:9.8px!important}
  .nphb-review-text{min-height:30px!important;font-size:12.8px!important}
  .nphb-review-meta{grid-template-columns:44px minmax(0,1fr) auto!important;gap:9px!important;padding-top:8px!important}
  .nphb-review-avatar-wrap{width:44px!important;height:44px!important}
  .nphb-review-person strong{font-size:12.8px!important}
  .nphb-review-person a{font-size:10.4px!important}
}
@media(max-width:760px){
  .nphb-review-card{
    min-height:156px!important;
    padding:14px!important;
    row-gap:8px!important;
  }
  .nphb-review-card-top{padding-right:0!important}
  .nphb-review-card time{
    position:static!important;
    margin-left:auto!important;
    padding:4px 8px!important;
    font-size:9.3px!important;
  }
  .nphb-review-text{min-height:34px!important;font-size:12.1px!important;line-height:1.42!important}
  .nphb-review-meta{grid-template-columns:42px minmax(0,1fr) auto!important;gap:8px!important;padding-top:8px!important}
  .nphb-review-avatar-wrap{width:42px!important;height:42px!important}
  .nphb-review-person strong{font-size:11.7px!important}
  .nphb-review-person a{margin-top:2px!important;font-size:9.6px!important}
  .nphb-review-badge{padding:5px 8px!important;font-size:8.8px!important}
  .nphb-reviews-actions{margin-top:8px!important}
}

/* =========================================================
   v10.10.0 — Reviews: estructura interna corregida
   La tarjeta se divide en cuerpo y pie, cada uno con su
   propio padding. Nada queda pegado a los bordes.
   ========================================================= */
body .nphb-review-card{
  display:flex!important;
  flex-direction:column!important;
  min-height:0!important;
  padding:0!important;
  overflow:hidden!important;
  border:1px solid #dfe7f2!important;
  border-radius:20px!important;
  background:#fff!important;
  box-shadow:0 10px 26px rgba(16,34,71,.045)!important;
}
body .nphb-review-main{
  display:flex!important;
  flex-direction:column!important;
  gap:14px!important;
  min-height:108px!important;
  padding:18px 20px 16px!important;
  box-sizing:border-box!important;
}
body .nphb-review-card-top{
  position:static!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  min-height:24px!important;
  padding:0!important;
  margin:0!important;
}
body .nphb-review-stars{
  display:inline-flex!important;
  align-items:center!important;
  flex:0 0 auto!important;
  margin:0!important;
  padding:0!important;
  color:#f7b924!important;
  font-size:16px!important;
  line-height:1!important;
  letter-spacing:.6px!important;
  white-space:nowrap!important;
}
body .nphb-review-card time{
  position:static!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 auto!important;
  margin:0!important;
  padding:5px 10px!important;
  border:1px solid #e6edf7!important;
  border-radius:999px!important;
  background:#f8fbff!important;
  color:#8594aa!important;
  font-size:10.5px!important;
  font-weight:800!important;
  line-height:1!important;
  white-space:nowrap!important;
}
body .nphb-review-text{
  display:-webkit-box!important;
  flex:none!important;
  min-height:42px!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  color:#455671!important;
  font-size:13.4px!important;
  line-height:1.5!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow-wrap:anywhere!important;
}
body .nphb-review-meta{
  display:grid!important;
  grid-template-columns:50px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:12px!important;
  width:100%!important;
  margin:0!important;
  padding:14px 20px 15px!important;
  box-sizing:border-box!important;
  border-top:1px solid #edf2f8!important;
  background:#fff!important;
}
body .nphb-review-avatar-wrap{
  display:grid!important;
  place-items:center!important;
  width:50px!important;
  height:50px!important;
  margin:0!important;
  overflow:hidden!important;
  border:1px solid #e5ecf7!important;
  border-radius:50%!important;
  background:#f6f9ff!important;
}
body .nphb-review-avatar-wrap img.nphb-review-avatar,
body .nphb-review-avatar-wrap .nphb-review-avatar{
  display:block!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:50%!important;
  object-fit:cover!important;
  object-position:center!important;
}
body .nphb-review-person{
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  align-self:center!important;
}
body .nphb-review-person strong{
  display:block!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  color:#102247!important;
  font-size:13.6px!important;
  font-weight:800!important;
  line-height:1.2!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
body .nphb-review-person a{
  display:block!important;
  margin:4px 0 0!important;
  padding:0!important;
  overflow:hidden!important;
  color:#6d7d94!important;
  font-size:11px!important;
  line-height:1.25!important;
  text-decoration:none!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
body .nphb-review-badge{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  justify-self:end!important;
  align-self:center!important;
  width:auto!important;
  max-width:max-content!important;
  margin:0!important;
  padding:7px 12px!important;
  border-radius:999px!important;
  font-size:10px!important;
  font-weight:800!important;
  line-height:1!important;
  white-space:nowrap!important;
}

@media(max-width:1180px){
  body .nphb-review-main{
    min-height:104px!important;
    padding:16px 17px 14px!important;
    gap:12px!important;
  }
  body .nphb-review-meta{
    grid-template-columns:46px minmax(0,1fr) auto!important;
    gap:10px!important;
    padding:12px 17px 13px!important;
  }
  body .nphb-review-avatar-wrap{width:46px!important;height:46px!important}
  body .nphb-review-person strong{font-size:12.8px!important}
  body .nphb-review-person a{font-size:10.4px!important}
}

@media(max-width:760px){
  body .nphb-review-card{
    flex:0 0 90%!important;
  }
  body .nphb-review-main{
    min-height:100px!important;
    padding:14px 15px 13px!important;
    gap:11px!important;
  }
  body .nphb-review-card-top{gap:10px!important}
  body .nphb-review-stars{font-size:15px!important}
  body .nphb-review-card time{
    padding:4px 8px!important;
    font-size:9.5px!important;
  }
  body .nphb-review-text{
    min-height:38px!important;
    font-size:12.2px!important;
    line-height:1.45!important;
  }
  body .nphb-review-meta{
    grid-template-columns:42px minmax(0,1fr) auto!important;
    gap:9px!important;
    padding:11px 15px 12px!important;
  }
  body .nphb-review-avatar-wrap{width:42px!important;height:42px!important}
  body .nphb-review-person strong{font-size:11.8px!important}
  body .nphb-review-person a{font-size:9.6px!important}
  body .nphb-review-badge{padding:5px 8px!important;font-size:8.8px!important}
}

/* =========================================================
   v10.10.1 — Reviews: mismo ancho visual que el bloque superior
   - Un pequeño aumento del ancho únicamente en escritorio.
   - Tablet y móvil conservan sus medidas aprobadas.
   ========================================================= */
@media (min-width:1181px){
  .nphb-reviews-shell{
    width:min(calc(var(--nphb-layout-desktop-width,1380px) + 24px),100%)!important;
    max-width:calc(var(--nphb-layout-desktop-width,1380px) + 24px)!important;
  }
}

/* =========================================================
   v10.10.2 — Página /opiniones/ integrada con la Home
   - Mismo lenguaje visual, ancho, tarjeta exterior y resumen.
   - Tres columnas en escritorio; dos en tablet; una en móvil.
   ========================================================= */
body .nphb-reviews-archive{
  box-sizing:border-box!important;
  width:100%!important;
  margin:0!important;
  padding:54px 24px 86px!important;
  background:linear-gradient(180deg,#f7f9fd 0%,#f2f6fc 100%)!important;
  color:#102247!important;
}
body .nphb-reviews-archive-shell{
  box-sizing:border-box!important;
  width:min(calc(var(--nphb-layout-desktop-width,1380px) + 24px),100%)!important;
  max-width:calc(var(--nphb-layout-desktop-width,1380px) + 24px)!important;
  margin:0 auto!important;
  padding:30px!important;
  border:1px solid #dfe7f3!important;
  border-radius:26px!important;
  background:rgba(255,255,255,.98)!important;
  box-shadow:0 18px 44px rgba(16,34,71,.07)!important;
}
body .nphb-reviews-archive-head{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:30px!important;
  align-items:start!important;
  margin:0 0 24px!important;
}
body .nphb-reviews-archive-heading{
  margin:0!important;
  padding:0!important;
}
body .nphb-reviews-archive-heading .nphb-reviews-kicker{
  margin-bottom:10px!important;
}
body .nphb-reviews-archive h1{
  margin:0!important;
  color:#102247!important;
  font-size:clamp(38px,3.7vw,58px)!important;
  font-weight:900!important;
  line-height:1.02!important;
  letter-spacing:-.045em!important;
}
body .nphb-reviews-archive-heading p{
  max-width:780px!important;
  margin:10px 0 0!important;
  color:#66758d!important;
  font-size:15px!important;
  line-height:1.5!important;
}
body .nphb-reviews-archive-summary{
  margin:0!important;
  min-width:280px!important;
}
body .nphb-reviews-archive-list{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:20px!important;
  align-items:stretch!important;
}
body .nphb-reviews-archive-list .nphb-review-card{
  min-width:0!important;
  width:100%!important;
}
body .nphb-reviews-pagination{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:center!important;
  gap:8px!important;
  margin:26px 0 0!important;
  padding:0!important;
}
body .nphb-reviews-pagination .page-numbers{
  display:grid!important;
  place-items:center!important;
  min-width:40px!important;
  height:40px!important;
  padding:0 11px!important;
  border:1px solid #dce5f2!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#29415f!important;
  box-shadow:0 4px 12px rgba(16,34,71,.035)!important;
  text-decoration:none!important;
  font-size:12px!important;
  font-weight:800!important;
}
body .nphb-reviews-pagination .page-numbers:hover{
  border-color:#2457f5!important;
  color:#2457f5!important;
}
body .nphb-reviews-pagination .current{
  border-color:#2457f5!important;
  background:#2457f5!important;
  color:#fff!important;
}

@media(max-width:1180px){
  body .nphb-reviews-archive{
    padding:38px 22px 64px!important;
  }
  body .nphb-reviews-archive-shell{
    width:min(var(--nphb-layout-tablet-width,960px),100%)!important;
    max-width:none!important;
    padding:24px!important;
    border-radius:24px!important;
  }
  body .nphb-reviews-archive-head{
    grid-template-columns:1fr!important;
    gap:18px!important;
    margin-bottom:20px!important;
  }
  body .nphb-reviews-archive-summary{
    justify-self:start!important;
  }
  body .nphb-reviews-archive-list{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:16px!important;
  }
}

@media(max-width:760px){
  body .nphb-reviews-archive{
    padding:28px 12px 48px!important;
  }
  body .nphb-reviews-archive-shell{
    width:min(var(--nphb-layout-mobile-width,430px),100%)!important;
    padding:18px 14px!important;
    border-radius:20px!important;
  }
  body .nphb-reviews-archive-head{
    gap:15px!important;
    margin-bottom:16px!important;
  }
  body .nphb-reviews-archive h1{
    font-size:31px!important;
  }
  body .nphb-reviews-archive-heading p{
    margin-top:8px!important;
    font-size:12px!important;
  }
  body .nphb-reviews-archive-summary{
    width:100%!important;
    min-width:0!important;
    padding:14px 15px!important;
  }
  body .nphb-reviews-archive-summary>strong{
    font-size:30px!important;
  }
  body .nphb-reviews-archive-list{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
}


/* =========================================================
   v10.10.3 — /opiniones/ usa el mismo lienzo de página que NextPing
   - Fondo azul claro ocupa toda la zona de contenido, no una caja interior.
   - El contenedor blanco de opiniones queda centrado sobre ese fondo.
   - El footer conserva su fondo blanco global.
   ========================================================= */
body.nphb-reviews-page,
body.nphb-reviews-page #page,
body.nphb-reviews-page .site{
  background:#eef3f8!important;
}

body.nphb-reviews-page .site-content{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:56px 0 78px!important;
  background:#eef3f8!important;
}

body.nphb-reviews-page .site-content > .ast-container,
body.nphb-reviews-page .ast-container.site-content,
body.nphb-reviews-page main.site-main{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
}

body.nphb-reviews-page #primary,
body.nphb-reviews-page .content-area,
body.nphb-reviews-page article.page,
body.nphb-reviews-page article.type-page,
body.nphb-reviews-page .entry-content,
body.nphb-reviews-page .entry-content-wrap{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

body.nphb-reviews-page .entry-header{
  display:none!important;
}

body.nphb-reviews-page .nphb-reviews-archive{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0 24px!important;
  background:transparent!important;
}

body.nphb-reviews-page .nphb-reviews-archive-shell{
  margin:0 auto!important;
}

@media(max-width:1180px){
  body.nphb-reviews-page .site-content{
    padding:38px 0 64px!important;
  }
  body.nphb-reviews-page .nphb-reviews-archive{
    padding:0 22px!important;
  }
}

@media(max-width:760px){
  body.nphb-reviews-page .site-content{
    padding:28px 0 48px!important;
  }
  body.nphb-reviews-page .nphb-reviews-archive{
    padding:0 12px!important;
  }
}

/* =========================================================
   v10.10.4 — /opiniones/ mismo ancho exacto que la portada
   - Escritorio: mismo frame exterior de 1280px y 16px de margen mínimo.
   - No cambia tarjetas, fondo, tablet ni móvil.
   ========================================================= */
@media(min-width:1181px){
  body.nphb-reviews-page .nphb-reviews-archive{
    padding-left:0!important;
    padding-right:0!important;
  }
  body.nphb-reviews-page .nphb-reviews-archive-shell{
    box-sizing:border-box!important;
    width:calc(100% - 32px)!important;
    max-width:var(--nphb-page-frame-width,1280px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}

/* =========================================================
   v10.10.5 — Reviews: ancho unificado + resumen idéntico
   - Home: el bloque de Reviews usa exactamente el mismo frame exterior que la portada.
   - /opiniones/: reutiliza ese mismo ancho, sin un frame independiente.
   - La caja 5,0 ★ de /opiniones/ queda visualmente idéntica a la de la Home.
   ========================================================= */
@media(min-width:1181px){
  body .nphb-reviews-section{
    box-sizing:border-box!important;
    width:calc(100% - 32px)!important;
    max-width:var(--nphb-page-frame-width,1280px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:0!important;
    padding-right:0!important;
  }

  body .nphb-reviews-section .nphb-reviews-shell{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  body.nphb-reviews-page .nphb-reviews-archive{
    padding-left:0!important;
    padding-right:0!important;
  }

  body.nphb-reviews-page .nphb-reviews-archive-shell{
    box-sizing:border-box!important;
    width:calc(100% - 32px)!important;
    max-width:var(--nphb-page-frame-width,1280px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}

/* /opiniones/: el resumen de valoración copia exactamente la Home. */
body .nphb-reviews-archive-summary{
  display:grid!important;
  grid-template-columns:auto auto 1fr!important;
  grid-template-rows:auto auto!important;
  align-items:center!important;
  min-width:260px!important;
  margin:0!important;
  padding:18px 20px!important;
  border:1px solid #e1e8f3!important;
  border-radius:18px!important;
  background:#f9fbff!important;
  gap:0!important;
}
body .nphb-reviews-archive-summary>strong{
  color:#102247!important;
  font-size:36px!important;
  font-weight:900!important;
  line-height:1!important;
}
body .nphb-reviews-archive-summary .nphb-reviews-summary-star{
  margin-left:6px!important;
  padding:0!important;
  border:0!important;
  color:#f7b924!important;
  font-size:31px!important;
  line-height:1!important;
}
body .nphb-reviews-archive-summary .nphb-reviews-summary-count{
  margin-left:16px!important;
  padding-left:16px!important;
  border-left:1px solid #d9e2ef!important;
  color:#304665!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:1.2!important;
  white-space:nowrap!important;
}
body .nphb-reviews-archive-summary small{
  grid-column:1/4!important;
  margin-top:8px!important;
  color:#7b8ba3!important;
  font-size:10px!important;
  line-height:1.25!important;
}

@media(max-width:760px){
  body .nphb-reviews-archive-summary{
    width:100%!important;
    min-width:0!important;
    padding:14px 15px!important;
  }
  body .nphb-reviews-archive-summary>strong{font-size:30px!important}
  body .nphb-reviews-archive-summary .nphb-reviews-summary-star{font-size:27px!important}
  body .nphb-reviews-archive-summary .nphb-reviews-summary-count{
    margin-left:12px!important;
    padding-left:12px!important;
    font-size:11px!important;
  }
}

/* =========================================================
   v10.10.6 — /opiniones/ ancho igualado a la portada aprobada
   - Reduce únicamente el ancho del contenedor principal de /opiniones/.
   - Conserva intacto el bloque de reviews de la Home.
   - Mantiene la caja resumen superior derecha como en la portada.
   ========================================================= */
@media(min-width:1181px){
  body.nphb-reviews-page .nphb-reviews-archive{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:none!important;
    padding-left:0!important;
    padding-right:0!important;
  }

  body.nphb-reviews-page .nphb-reviews-archive-shell{
    box-sizing:border-box!important;
    width:calc(100% - 32px)!important;
    max-width:1216px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}

/* =========================================================
   v10.10.7 — HOME: Reviews unidas a la Ruta
   - Reviews pasa a ser la tercera parte del mismo marco visual.
   - Sin hueco ni tarjeta exterior separada.
   - Misma continuidad que Hero -> Ruta.
   ========================================================= */

/* Escritorio */
@media(min-width:1181px){
  body.nphb-home-active .nphb-learning-path,
  body.nphb-active .nphb-learning-path,
  body:has(.nphb-hero) .nphb-learning-path{
    margin-bottom:0!important;
    border-bottom:0!important;
    border-radius:0!important;
    box-shadow:0 10px 24px rgba(24,47,92,.055)!important;
  }

  body.nphb-home-active .nphb-reviews-section,
  body.nphb-active .nphb-reviews-section,
  body:has(.nphb-hero) .nphb-reviews-section{
    box-sizing:border-box!important;
    width:calc(100% - 32px)!important;
    max-width:var(--nphb-page-frame-width,1280px)!important;
    margin:0 auto 24px!important;
    padding:0!important;
    border:1px solid var(--nphb-page-frame-border,#dfe7f2)!important;
    border-top:0!important;
    border-radius:0 0 18px 18px!important;
    background:#fff!important;
    box-shadow:var(--nphb-page-frame-shadow,0 18px 46px rgba(24,47,92,.08))!important;
    overflow:hidden!important;
  }

  body.nphb-home-active .nphb-reviews-section::before,
  body.nphb-active .nphb-reviews-section::before,
  body:has(.nphb-hero) .nphb-reviews-section::before{
    content:""!important;
    display:block!important;
    width:calc(100% - 88px)!important;
    height:1px!important;
    margin:0 auto!important;
    background:linear-gradient(90deg,transparent,#dce6f3,transparent)!important;
  }

  body.nphb-home-active .nphb-reviews-section::after,
  body.nphb-active .nphb-reviews-section::after,
  body:has(.nphb-hero) .nphb-reviews-section::after{
    content:none!important;
    display:none!important;
  }

  body.nphb-home-active .nphb-reviews-section .nphb-reviews-shell,
  body.nphb-active .nphb-reviews-section .nphb-reviews-shell,
  body:has(.nphb-hero) .nphb-reviews-section .nphb-reviews-shell{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:44px!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
}

/* Tablet */
@media(min-width:761px) and (max-width:1180px){
  body.nphb-home-active .nphb-learning-path,
  body.nphb-active .nphb-learning-path,
  body:has(.nphb-hero) .nphb-learning-path{
    margin-bottom:0!important;
    border-bottom:0!important;
    border-radius:0!important;
  }

  body.nphb-home-active .nphb-reviews-section,
  body.nphb-active .nphb-reviews-section,
  body:has(.nphb-hero) .nphb-reviews-section{
    box-sizing:border-box!important;
    width:calc(100% - 28px)!important;
    max-width:none!important;
    margin:0 auto 20px!important;
    padding:0!important;
    border:1px solid var(--nphb-page-frame-border,#dfe7f2)!important;
    border-top:0!important;
    border-radius:0 0 18px 18px!important;
    background:#fff!important;
    box-shadow:var(--nphb-page-frame-shadow,0 18px 46px rgba(24,47,92,.08))!important;
    overflow:hidden!important;
  }

  body.nphb-home-active .nphb-reviews-section::before,
  body.nphb-active .nphb-reviews-section::before,
  body:has(.nphb-hero) .nphb-reviews-section::before{
    content:""!important;
    display:block!important;
    width:calc(100% - 52px)!important;
    height:1px!important;
    margin:0 auto!important;
    background:linear-gradient(90deg,transparent,#dce6f3,transparent)!important;
  }

  body.nphb-home-active .nphb-reviews-section .nphb-reviews-shell,
  body.nphb-active .nphb-reviews-section .nphb-reviews-shell,
  body:has(.nphb-hero) .nphb-reviews-section .nphb-reviews-shell{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:32px 26px!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
}

/* Móvil */
@media(max-width:760px){
  body.nphb-home-active .nphb-learning-path,
  body.nphb-active .nphb-learning-path,
  body:has(.nphb-hero) .nphb-learning-path{
    margin-bottom:0!important;
    border-bottom:0!important;
    border-radius:0!important;
  }

  body.nphb-home-active .nphb-reviews-section,
  body.nphb-active .nphb-reviews-section,
  body:has(.nphb-hero) .nphb-reviews-section{
    position:relative!important;
    left:0!important;
    box-sizing:border-box!important;
    width:calc(100vw - 20px)!important;
    max-width:calc(100vw - 20px)!important;
    margin-top:0!important;
    margin-right:0!important;
    margin-bottom:18px!important;
    margin-left:50%!important;
    padding:0!important;
    transform:translateX(-50%)!important;
    border:1px solid #d7e2ef!important;
    border-top:0!important;
    border-radius:0 0 28px 28px!important;
    background:#fff!important;
    box-shadow:0 12px 26px rgba(24,47,92,.085)!important;
    overflow:hidden!important;
  }

  body.nphb-home-active .nphb-reviews-section::before,
  body.nphb-active .nphb-reviews-section::before,
  body:has(.nphb-hero) .nphb-reviews-section::before{
    content:""!important;
    display:block!important;
    width:calc(100% - 40px)!important;
    height:1px!important;
    margin:0 auto!important;
    background:linear-gradient(90deg,transparent,#dce6f3,transparent)!important;
  }

  body.nphb-home-active .nphb-reviews-section .nphb-reviews-shell,
  body.nphb-active .nphb-reviews-section .nphb-reviews-shell,
  body:has(.nphb-hero) .nphb-reviews-section .nphb-reviews-shell{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:28px 14px 22px!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
}

@media(max-width:390px){
  body.nphb-home-active .nphb-reviews-section,
  body.nphb-active .nphb-reviews-section,
  body:has(.nphb-hero) .nphb-reviews-section{
    width:calc(100vw - 16px)!important;
    max-width:calc(100vw - 16px)!important;
    border-radius:0 0 25px 25px!important;
  }
}

/* =========================================================
   v10.10.8 — HOME: compactar unión Ruta -> Reviews
   - Reduce el vacío vertical entre ambas secciones.
   - Título de Reviews con la misma escala que la Ruta técnica.
   - Solo escritorio; no altera tarjetas ni /opiniones/.
   ========================================================= */
@media(min-width:1181px){
  body.nphb-home-active .nphb-learning-path.nphb-learning-path-concept2,
  body.nphb-active .nphb-learning-path.nphb-learning-path-concept2,
  body:has(.nphb-hero) .nphb-learning-path.nphb-learning-path-concept2{
    padding-bottom:32px!important;
  }

  body.nphb-home-active .nphb-reviews-section .nphb-reviews-shell,
  body.nphb-active .nphb-reviews-section .nphb-reviews-shell,
  body:has(.nphb-hero) .nphb-reviews-section .nphb-reviews-shell{
    padding-top:28px!important;
    padding-bottom:34px!important;
  }

  body.nphb-home-active .nphb-reviews-heading h2,
  body.nphb-active .nphb-reviews-heading h2,
  body:has(.nphb-hero) .nphb-reviews-heading h2{
    font-size:clamp(38px,3vw,56px)!important;
    font-weight:900!important;
    line-height:1.02!important;
    letter-spacing:-.045em!important;
  }
}

/* =========================================================
   v10.10.9 — Etiquetas de sección tipo pill NextPing
   - Ruta técnica / topología.
   - Comunidad NextPing.
   - Mismo lenguaje visual azul suave del Hero.
   ========================================================= */
html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-eyebrow,
html body .nphb-learning-path-concept2 .nphb-path-eyebrow,
html body.nphb-home-active .nphb-reviews-section .nphb-reviews-kicker,
html body .nphb-reviews-section .nphb-reviews-kicker{
  display:inline-flex!important;
  align-items:center!important;
  width:auto!important;
  max-width:max-content!important;
  min-height:30px!important;
  margin:0 0 12px!important;
  padding:7px 13px!important;
  border:1px solid rgba(36,87,245,.12)!important;
  border-radius:999px!important;
  background:rgba(36,87,245,.075)!important;
  color:#3567f5!important;
  box-shadow:none!important;
  font-size:11px!important;
  font-weight:900!important;
  line-height:1!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}

/* Mantener el mismo tratamiento también en /opiniones/. */
body .nphb-reviews-archive-heading .nphb-reviews-kicker{
  display:inline-flex!important;
  align-items:center!important;
  width:auto!important;
  max-width:max-content!important;
  min-height:30px!important;
  margin:0 0 12px!important;
  padding:7px 13px!important;
  border:1px solid rgba(36,87,245,.12)!important;
  border-radius:999px!important;
  background:rgba(36,87,245,.075)!important;
  color:#3567f5!important;
  box-shadow:none!important;
  font-size:11px!important;
  font-weight:900!important;
  line-height:1!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}

@media(max-width:760px){
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-eyebrow,
  html body .nphb-learning-path-concept2 .nphb-path-eyebrow,
  html body.nphb-home-active .nphb-reviews-section .nphb-reviews-kicker,
  html body .nphb-reviews-section .nphb-reviews-kicker,
  body .nphb-reviews-archive-heading .nphb-reviews-kicker{
    min-height:26px!important;
    margin-bottom:10px!important;
    padding:6px 10px!important;
    font-size:9px!important;
    letter-spacing:.10em!important;
  }
}


/* =========================================================
   v10.11.0 — Tablet vertical: bloque Reviews más compacto
   - Menos padding y menos hueco vertical en iPad vertical.
   - Cabecera en dos columnas: título a la izquierda, resumen a la derecha.
   - Título algo más compacto para no invadir el resumen.
   - Solo 2 reviews visibles en tablet vertical; CTA para ver el resto.
   ========================================================= */
@media (min-width: 761px) and (max-width: 1024px){
  body .nphb-reviews-section{
    padding:0 18px 44px!important;
  }
  body .nphb-reviews-shell{
    width:min(var(--nphb-layout-tablet-width,960px),100%)!important;
    max-width:var(--nphb-layout-tablet-width,960px)!important;
    padding:20px 18px 18px!important;
    border-radius:22px!important;
  }
  body .nphb-reviews-head{
    grid-template-columns:minmax(0,1fr) 325px!important;
    gap:18px!important;
    align-items:start!important;
    margin-bottom:16px!important;
  }
  body .nphb-reviews-heading{
    min-width:0!important;
  }
  body .nphb-reviews-kicker{
    display:inline-flex!important;
    align-items:center!important;
    gap:8px!important;
    margin:0 0 10px!important;
    padding:8px 16px!important;
    border:1px solid #d9e5fa!important;
    border-radius:999px!important;
    background:#f4f8ff!important;
    color:#5e8fff!important;
    font-size:10px!important;
    line-height:1!important;
    letter-spacing:.13em!important;
  }
  body .nphb-reviews-heading h2{
    max-width:560px!important;
    font-size:clamp(30px,5vw,46px)!important;
    line-height:1.03!important;
    letter-spacing:-.04em!important;
  }
  body .nphb-reviews-heading p{
    max-width:560px!important;
    margin-top:10px!important;
    font-size:13.5px!important;
    line-height:1.45!important;
  }
  body .nphb-reviews-summary{
    justify-self:end!important;
    align-self:start!important;
    min-width:0!important;
    width:100%!important;
    max-width:325px!important;
    padding:16px 18px!important;
    grid-template-columns:auto auto 1fr!important;
    grid-template-rows:auto auto!important;
    border-radius:18px!important;
    background:#f9fbff!important;
    border:1px solid #dfe7f3!important;
  }
  body .nphb-reviews-summary>strong{
    font-size:34px!important;
    line-height:1!important;
  }
  body .nphb-reviews-summary-star{
    margin-left:8px!important;
    color:#f7b924!important;
    font-size:29px!important;
    line-height:1!important;
  }
  body .nphb-reviews-summary-count{
    margin-left:14px!important;
    padding-left:14px!important;
    border-left:1px solid #d9e2ef!important;
    color:#304665!important;
    font-size:12px!important;
    font-weight:800!important;
    white-space:nowrap!important;
  }
  body .nphb-reviews-summary small{
    grid-column:1 / 4!important;
    margin-top:8px!important;
    color:#7b8ba3!important;
    font-size:10px!important;
    line-height:1.25!important;
  }
  body .nphb-reviews-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:16px!important;
  }
  body .nphb-reviews-grid .nphb-review-card:nth-child(n+3){
    display:none!important;
  }
  body .nphb-review-card{
    min-height:0!important;
  }
  body .nphb-review-main{
    min-height:96px!important;
    padding:16px 16px 14px!important;
    gap:12px!important;
  }
  body .nphb-review-card-top{
    gap:12px!important;
  }
  body .nphb-review-stars{
    font-size:15px!important;
  }
  body .nphb-review-card time{
    padding:4px 9px!important;
    font-size:9.8px!important;
  }
  body .nphb-review-text{
    min-height:36px!important;
    font-size:12.6px!important;
    line-height:1.42!important;
    -webkit-line-clamp:2!important;
  }
  body .nphb-review-meta{
    grid-template-columns:44px minmax(0,1fr) auto!important;
    gap:9px!important;
    padding:12px 16px 13px!important;
  }
  body .nphb-review-avatar-wrap{
    width:44px!important;
    height:44px!important;
  }
  body .nphb-review-person strong{
    font-size:12.6px!important;
  }
  body .nphb-review-person a{
    margin-top:3px!important;
    font-size:10.2px!important;
  }
  body .nphb-review-badge{
    padding:6px 9px!important;
    font-size:9px!important;
  }
  body .nphb-reviews-actions{
    justify-content:flex-end!important;
    margin-top:12px!important;
  }
  body .nphb-reviews-all{
    width:auto!important;
    padding:10px 16px!important;
    font-size:12px!important;
  }
}


/* =========================================================
   v10.11.1 — Tablet vertical: unión más compacta y summary alineado
   - Reduce el espacio entre Ruta técnica y Reviews.
   - Baja la valoración para alinearla con el título principal.
   ========================================================= */
@media (min-width:761px) and (max-width:1024px){
  html body.nphb-home-active .nphb-learning-path.nphb-learning-path-concept2,
  html body.nphb-active .nphb-learning-path.nphb-learning-path-concept2,
  html body:has(.nphb-hero) .nphb-learning-path.nphb-learning-path-concept2{
    padding-bottom:8px!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-shell,
  html body.nphb-active .nphb-learning-path-concept2 .nphb-path-shell,
  html body:has(.nphb-hero) .nphb-learning-path-concept2 .nphb-path-shell{
    padding-bottom:6px!important;
  }

  body.nphb-home-active .nphb-reviews-section .nphb-reviews-shell,
  body.nphb-active .nphb-reviews-section .nphb-reviews-shell,
  body:has(.nphb-hero) .nphb-reviews-section .nphb-reviews-shell{
    padding-top:14px!important;
  }

  body.nphb-home-active .nphb-reviews-summary,
  body.nphb-active .nphb-reviews-summary,
  body:has(.nphb-hero) .nphb-reviews-summary{
    margin-top:56px!important;
  }
}


/* =========================================================
   v10.11.2 — Navegación superior oculta en vertical
   - Home únicamente.
   - Tablet vertical + móvil vertical.
   - No se elimina el header: solo se oculta por CSS.
   - El Dock inferior permanece como navegación principal.
   ========================================================= */
@media (orientation: portrait) and (max-width: 1024px) {
  body.nphb-home-active #masthead,
  body.nphb-home-active header#masthead,
  body.nphb-home-active .site-header,
  body.nphb-home-active header.site-header,
  body.nphb-home-active .ast-desktop-header,
  body.nphb-home-active .ast-mobile-header-wrap,
  body.nphb-home-active .ast-mobile-header,
  body.nphb-home-active .main-header-bar-wrap,
  body.nphb-home-active .ast-primary-header-bar,
  body.nphb-home-active .ast-builder-grid-row-container.ast-builder-grid-row-tablet-3-equal,
  body.nphb-home-active .ast-builder-grid-row-container.ast-builder-grid-row-mobile-full {
    display: none !important;
  }

  /* Evita que Astra conserve altura o separación reservada al header. */
  body.nphb-home-active #masthead,
  body.nphb-home-active .site-header,
  body.nphb-home-active .main-header-bar-wrap {
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
  }

  body.nphb-home-active .site-content,
  body.nphb-home-active #content {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
}


/* =========================================================
   v10.11.3 — Header oculto en TODO el sitio en vertical
   + /opiniones/ en tablet vertical con cabecera a dos columnas
   ========================================================= */
@media (orientation: portrait) and (max-width: 1024px) {
  body #masthead,
  body header#masthead,
  body .site-header,
  body header.site-header,
  body .ast-desktop-header,
  body .ast-mobile-header-wrap,
  body .ast-mobile-header,
  body .main-header-bar-wrap,
  body .ast-primary-header-bar,
  body .ast-builder-grid-row-container.ast-builder-grid-row-tablet-3-equal,
  body .ast-builder-grid-row-container.ast-builder-grid-row-mobile-full {
    display:none!important;
  }
  body #masthead,
  body .site-header,
  body .main-header-bar-wrap{
    height:0!important;
    min-height:0!important;
    max-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    overflow:hidden!important;
  }
  body .site-content,
  body #content{
    margin-top:0!important;
    padding-top:0!important;
  }
}

@media (orientation: portrait) and (min-width: 761px) and (max-width: 1024px) {
  body.nphb-reviews-page .nphb-reviews-archive{
    padding-top:24px!important;
  }
  body.nphb-reviews-page .nphb-reviews-archive-shell{
    padding:20px 18px 20px!important;
  }
  body.nphb-reviews-page .nphb-reviews-archive-head{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 325px!important;
    gap:18px!important;
    align-items:start!important;
    margin:0 0 18px!important;
  }
  body.nphb-reviews-page .nphb-reviews-archive-heading{
    min-width:0!important;
  }
  body.nphb-reviews-page .nphb-reviews-archive-heading .nphb-reviews-kicker{
    display:inline-flex!important;
    align-items:center!important;
    margin:0 0 10px!important;
    padding:8px 16px!important;
    border:1px solid #d9e5fa!important;
    border-radius:999px!important;
    background:#f4f8ff!important;
    color:#5e8fff!important;
    font-size:10px!important;
    line-height:1!important;
    letter-spacing:.13em!important;
  }
  body.nphb-reviews-page .nphb-reviews-archive h1{
    max-width:560px!important;
    font-size:clamp(30px,5vw,46px)!important;
    line-height:1.03!important;
    letter-spacing:-.04em!important;
  }
  body.nphb-reviews-page .nphb-reviews-archive-heading p{
    max-width:560px!important;
    margin-top:10px!important;
    font-size:13.5px!important;
    line-height:1.45!important;
  }
  body.nphb-reviews-page .nphb-reviews-archive-summary{
    justify-self:end!important;
    align-self:start!important;
    width:100%!important;
    max-width:325px!important;
    min-width:0!important;
    margin-top:56px!important;
    padding:16px 18px!important;
    display:grid!important;
    grid-template-columns:auto auto 1fr!important;
    grid-template-rows:auto auto!important;
    align-items:center!important;
    border:1px solid #dfe7f3!important;
    border-radius:18px!important;
    background:#f9fbff!important;
  }
  body.nphb-reviews-page .nphb-reviews-archive-summary>strong{
    font-size:34px!important;
    line-height:1!important;
  }
  body.nphb-reviews-page .nphb-reviews-archive-summary .nphb-reviews-summary-star{
    margin-left:8px!important;
    color:#f7b924!important;
    font-size:29px!important;
    line-height:1!important;
  }
  body.nphb-reviews-page .nphb-reviews-archive-summary .nphb-reviews-summary-count{
    margin-left:14px!important;
    padding-left:14px!important;
    border-left:1px solid #d9e2ef!important;
    color:#304665!important;
    font-size:12px!important;
    font-weight:800!important;
    white-space:nowrap!important;
  }
  body.nphb-reviews-page .nphb-reviews-archive-summary small{
    grid-column:1/4!important;
    margin-top:8px!important;
    color:#7b8ba3!important;
    font-size:10px!important;
    line-height:1.25!important;
  }
}

/* =========================================================
   v10.11.4 — /opiniones/: cabecera tablet vertical definitiva
   Igual que Home: título izquierda y valoración derecha.
   ========================================================= */
@media (orientation: portrait) and (min-width:761px) and (max-width:1024px){
  html body.nphb-reviews-page .nphb-reviews-archive{
    padding:22px 18px 54px!important;
  }
  html body.nphb-reviews-page .nphb-reviews-archive-shell{
    padding:20px 18px 20px!important;
  }
  html body.nphb-reviews-page .nphb-reviews-archive-head{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 320px!important;
    grid-template-areas:"heading summary"!important;
    column-gap:18px!important;
    row-gap:0!important;
    align-items:start!important;
    margin:0 0 18px!important;
  }
  html body.nphb-reviews-page .nphb-reviews-archive-heading{
    grid-area:heading!important;
    min-width:0!important;
  }
  html body.nphb-reviews-page .nphb-reviews-archive-summary{
    grid-area:summary!important;
    justify-self:end!important;
    align-self:start!important;
    width:320px!important;
    max-width:320px!important;
    min-width:0!important;
    margin:54px 0 0!important;
    padding:16px 18px!important;
  }
  html body.nphb-reviews-page .nphb-reviews-archive h1{
    font-size:clamp(30px,5vw,44px)!important;
    line-height:1.03!important;
  }
  html body.nphb-reviews-page .nphb-reviews-archive-heading p{
    max-width:540px!important;
    font-size:13.5px!important;
    line-height:1.45!important;
  }
}

/* =========================================================
   v10.11.8 — Reviews responsive corregido sobre rama 10.11.x
   - Tablet vertical: 2 reviews, cabecera compacta.
   - Móvil vertical: 1 review, sin carrusel ni tarjeta cortada.
   - Mantiene todos los cambios 10.11.0–10.11.7.
   ========================================================= */

/* TABLET VERTICAL */
@media (orientation: portrait) and (min-width:761px) and (max-width:1024px){
  body.nphb-home-active .nphb-reviews-section .nphb-reviews-shell,
  body.nphb-active .nphb-reviews-section .nphb-reviews-shell,
  body:has(.nphb-hero) .nphb-reviews-section .nphb-reviews-shell{
    padding:18px 18px 18px!important;
  }

  body .nphb-reviews-section .nphb-reviews-head{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 250px!important;
    gap:18px!important;
    align-items:start!important;
    margin-bottom:16px!important;
  }

  body .nphb-reviews-section .nphb-reviews-heading h2{
    max-width:520px!important;
    font-size:clamp(30px,4vw,38px)!important;
    line-height:1.02!important;
  }

  body .nphb-reviews-section .nphb-reviews-heading p{
    margin-top:8px!important;
    font-size:13px!important;
    line-height:1.42!important;
  }

  body .nphb-reviews-section .nphb-reviews-summary{
    justify-self:end!important;
    align-self:start!important;
    width:250px!important;
    min-width:250px!important;
    margin-top:48px!important;
    padding:14px 15px!important;
  }

  body .nphb-reviews-section .nphb-reviews-summary>strong{
    font-size:31px!important;
  }

  body .nphb-reviews-section .nphb-reviews-summary-star{
    font-size:27px!important;
  }

  body .nphb-reviews-section .nphb-reviews-summary-count{
    margin-left:11px!important;
    padding-left:11px!important;
    font-size:10.5px!important;
  }

  body .nphb-reviews-section .nphb-reviews-summary small{
    margin-top:7px!important;
    font-size:9.5px!important;
  }

  body .nphb-reviews-section .nphb-reviews-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:14px!important;
    overflow:visible!important;
    padding:0!important;
  }

  body .nphb-reviews-section .nphb-reviews-grid .nphb-review-card:nth-child(-n+2){
    display:flex!important;
  }

  body .nphb-reviews-section .nphb-reviews-grid .nphb-review-card:nth-child(n+3){
    display:none!important;
  }

  body .nphb-reviews-section .nphb-reviews-actions{
    margin-top:12px!important;
    justify-content:flex-end!important;
  }
}

/* MÓVIL VERTICAL */
@media (orientation: portrait) and (max-width:760px){
  body.nphb-home-active .nphb-reviews-section .nphb-reviews-shell,
  body.nphb-active .nphb-reviews-section .nphb-reviews-shell,
  body:has(.nphb-hero) .nphb-reviews-section .nphb-reviews-shell{
    padding:18px 12px 16px!important;
  }

  body .nphb-reviews-section .nphb-reviews-head{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
    margin-bottom:14px!important;
  }

  body .nphb-reviews-section .nphb-reviews-heading h2{
    max-width:100%!important;
    font-size:28px!important;
    line-height:1!important;
    letter-spacing:-.04em!important;
  }

  body .nphb-reviews-section .nphb-reviews-heading p{
    margin-top:9px!important;
    font-size:12px!important;
    line-height:1.42!important;
  }

  body .nphb-reviews-section .nphb-reviews-summary{
    justify-self:stretch!important;
    width:100%!important;
    min-width:0!important;
    margin-top:0!important;
    padding:12px 14px!important;
    border-radius:16px!important;
  }

  body .nphb-reviews-section .nphb-reviews-summary>strong{
    font-size:30px!important;
  }

  body .nphb-reviews-section .nphb-reviews-summary-star{
    font-size:27px!important;
  }

  body .nphb-reviews-section .nphb-reviews-summary-count{
    margin-left:11px!important;
    padding-left:11px!important;
    font-size:10.5px!important;
  }

  body .nphb-reviews-section .nphb-reviews-summary small{
    margin-top:7px!important;
    font-size:9.5px!important;
  }

  /* Una sola review, sin carrusel ni overflow lateral */
  body .nphb-reviews-section .nphb-reviews-grid{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:0!important;
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
    padding:0!important;
    scroll-snap-type:none!important;
  }

  body .nphb-reviews-section .nphb-reviews-grid .nphb-review-card{
    display:none!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    flex:none!important;
    margin:0!important;
    scroll-snap-align:none!important;
  }

  body .nphb-reviews-section .nphb-reviews-grid .nphb-review-card:first-child{
    display:flex!important;
  }

  body .nphb-reviews-section .nphb-review-main{
    min-height:0!important;
    padding:12px 13px 11px!important;
    gap:9px!important;
  }

  body .nphb-reviews-section .nphb-review-meta{
    grid-template-columns:40px minmax(0,1fr) auto!important;
    gap:8px!important;
    padding:9px 13px 10px!important;
  }

  body .nphb-reviews-section .nphb-review-avatar-wrap{
    width:40px!important;
    height:40px!important;
  }

  body .nphb-reviews-section .nphb-review-person strong{
    font-size:11.5px!important;
  }

  body .nphb-reviews-section .nphb-review-person a{
    font-size:9.5px!important;
  }

  body .nphb-reviews-section .nphb-review-badge{
    padding:5px 8px!important;
    font-size:8.5px!important;
  }

  body .nphb-reviews-section .nphb-reviews-actions{
    margin-top:12px!important;
    justify-content:center!important;
  }

  body .nphb-reviews-section .nphb-reviews-all{
    width:100%!important;
    min-height:44px!important;
    justify-content:center!important;
    padding:10px 14px!important;
    font-size:11.5px!important;
  }
}


/* =========================================================
   v10.11.9 — Ruta técnica: cabecera fuera de la imagen
   - Eyebrow, título y descripción pasan al flujo normal.
   - La imagen/topología queda limpia en escritorio, tablet y móvil.
   - Pestañas y franja inferior conservan su posición aprobada.
   ========================================================= */

/* Base común: la cabecera deja de superponerse a la imagen. */
html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-header,
html body.nphb-active .nphb-learning-path-concept2 .nphb-path-header,
html body:has(.nphb-hero) .nphb-learning-path-concept2 .nphb-path-header,
html body .nphb-learning-path-concept2 .nphb-path-header{
  position:relative!important;
  z-index:2!important;
  top:auto!important;
  right:auto!important;
  bottom:auto!important;
  left:auto!important;
  width:100%!important;
  max-width:none!important;
  margin:0 0 16px!important;
  padding:0!important;
  text-align:left!important;
  pointer-events:auto!important;
}

html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-eyebrow,
html body.nphb-active .nphb-learning-path-concept2 .nphb-path-eyebrow,
html body:has(.nphb-hero) .nphb-learning-path-concept2 .nphb-path-eyebrow,
html body .nphb-learning-path-concept2 .nphb-path-eyebrow{
  margin:0 0 10px!important;
}

html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-header h2,
html body.nphb-home-active .nphb-learning-path-concept2 #nphb-path-title,
html body.nphb-active .nphb-learning-path-concept2 .nphb-path-header h2,
html body.nphb-active .nphb-learning-path-concept2 #nphb-path-title,
html body:has(.nphb-hero) .nphb-learning-path-concept2 .nphb-path-header h2,
html body:has(.nphb-hero) .nphb-learning-path-concept2 #nphb-path-title,
html body .nphb-learning-path-concept2 .nphb-path-header h2,
html body .nphb-learning-path-concept2 #nphb-path-title{
  max-width:900px!important;
  margin:0 0 8px!important;
  color:#102247!important;
  font-size:clamp(38px,3vw,56px)!important;
  font-weight:900!important;
  line-height:1.02!important;
  letter-spacing:-.045em!important;
  text-align:left!important;
  text-wrap:balance!important;
}

html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-header>p,
html body.nphb-active .nphb-learning-path-concept2 .nphb-path-header>p,
html body:has(.nphb-hero) .nphb-learning-path-concept2 .nphb-path-header>p,
html body .nphb-learning-path-concept2 .nphb-path-header>p{
  max-width:900px!important;
  margin:0!important;
  color:#60708a!important;
  font-size:17px!important;
  line-height:1.38!important;
  text-align:left!important;
}

/* ESCRITORIO */
@media (min-width:1181px){
  html body.nphb-home-active .nphb-learning-path.nphb-learning-path-concept2,
  html body.nphb-active .nphb-learning-path.nphb-learning-path-concept2,
  html body:has(.nphb-hero) .nphb-learning-path.nphb-learning-path-concept2{
    padding-top:22px!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-shell,
  html body.nphb-active .nphb-learning-path-concept2 .nphb-path-shell,
  html body:has(.nphb-hero) .nphb-learning-path-concept2 .nphb-path-shell{
    padding-top:0!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-header,
  html body.nphb-active .nphb-learning-path-concept2 .nphb-path-header,
  html body:has(.nphb-hero) .nphb-learning-path-concept2 .nphb-path-header{
    margin-bottom:18px!important;
  }
}

/* TABLET */
@media (min-width:761px) and (max-width:1180px){
  html body.nphb-home-active .nphb-learning-path.nphb-learning-path-concept2,
  html body.nphb-active .nphb-learning-path.nphb-learning-path-concept2,
  html body:has(.nphb-hero) .nphb-learning-path.nphb-learning-path-concept2{
    padding-top:18px!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-header,
  html body.nphb-active .nphb-learning-path-concept2 .nphb-path-header,
  html body:has(.nphb-hero) .nphb-learning-path-concept2 .nphb-path-header{
    width:100%!important;
    max-width:100%!important;
    margin:0 0 14px!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-header h2,
  html body.nphb-home-active .nphb-learning-path-concept2 #nphb-path-title,
  html body.nphb-active .nphb-learning-path-concept2 .nphb-path-header h2,
  html body.nphb-active .nphb-learning-path-concept2 #nphb-path-title,
  html body:has(.nphb-hero) .nphb-learning-path-concept2 .nphb-path-header h2,
  html body:has(.nphb-hero) .nphb-learning-path-concept2 #nphb-path-title{
    max-width:760px!important;
    font-size:clamp(31px,4.5vw,42px)!important;
    margin-bottom:7px!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-header>p,
  html body.nphb-active .nphb-learning-path-concept2 .nphb-path-header>p,
  html body:has(.nphb-hero) .nphb-learning-path-concept2 .nphb-path-header>p{
    max-width:760px!important;
    font-size:13.5px!important;
    line-height:1.4!important;
  }
}

/* MÓVIL */
@media (max-width:760px){
  html body.nphb-home-active .nphb-learning-path.nphb-learning-path-concept2,
  html body.nphb-active .nphb-learning-path.nphb-learning-path-concept2,
  html body.nphb-mobile-compact .nphb-learning-path.nphb-learning-path-concept2,
  html body:has(.nphb-hero) .nphb-learning-path.nphb-learning-path-concept2{
    padding-top:12px!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-header,
  html body.nphb-active .nphb-learning-path-concept2 .nphb-path-header,
  html body.nphb-mobile-compact .nphb-learning-path-concept2 .nphb-path-header,
  html body:has(.nphb-hero) .nphb-learning-path-concept2 .nphb-path-header{
    width:100%!important;
    max-width:100%!important;
    margin:0 0 12px!important;
    padding:0 6px!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-eyebrow,
  html body.nphb-active .nphb-learning-path-concept2 .nphb-path-eyebrow,
  html body.nphb-mobile-compact .nphb-learning-path-concept2 .nphb-path-eyebrow,
  html body:has(.nphb-hero) .nphb-learning-path-concept2 .nphb-path-eyebrow{
    margin-bottom:8px!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-header h2,
  html body.nphb-home-active .nphb-learning-path-concept2 #nphb-path-title,
  html body.nphb-active .nphb-learning-path-concept2 .nphb-path-header h2,
  html body.nphb-active .nphb-learning-path-concept2 #nphb-path-title,
  html body.nphb-mobile-compact .nphb-learning-path-concept2 .nphb-path-header h2,
  html body.nphb-mobile-compact .nphb-learning-path-concept2 #nphb-path-title,
  html body:has(.nphb-hero) .nphb-learning-path-concept2 .nphb-path-header h2,
  html body:has(.nphb-hero) .nphb-learning-path-concept2 #nphb-path-title{
    max-width:100%!important;
    margin:0 0 7px!important;
    font-size:clamp(25px,7.2vw,32px)!important;
    line-height:1.01!important;
  }

  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-header>p,
  html body.nphb-active .nphb-learning-path-concept2 .nphb-path-header>p,
  html body.nphb-mobile-compact .nphb-learning-path-concept2 .nphb-path-header>p,
  html body:has(.nphb-hero) .nphb-learning-path-concept2 .nphb-path-header>p{
    max-width:100%!important;
    font-size:11.5px!important;
    line-height:1.38!important;
  }
}

/* =========================================================
   v10.11.10 — Ruta técnica sin línea separadora superior
   - Elimina la línea horizontal encima de "Ruta técnica / Topología".
   - Aplicado en ordenador, tablet y móvil.
   ========================================================= */
html body .nphb-learning-path::before,
html body.nphb-home-active .nphb-learning-path::before,
html body.nphb-active .nphb-learning-path::before,
html body:has(.nphb-hero) .nphb-learning-path::before{
  content:none!important;
  display:none!important;
  width:0!important;
  height:0!important;
  margin:0!important;
  background:none!important;
}

/* =========================================================
   v10.11.11 — Escritorio: franja inferior de ruta un poco más abajo
   - Separa visualmente Exámenes/Ruta completa/Seguimiento de la imagen.
   - No modifica tablet ni móvil.
   ========================================================= */
@media (min-width:1181px){
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-features,
  html body.nphb-active .nphb-learning-path-concept2 .nphb-learning-features,
  html body:has(.nphb-hero) .nphb-learning-path-concept2 .nphb-learning-features,
  html body .nphb-learning-path-concept2 .nphb-learning-features{
    margin-top:22px!important;
  }
}

/* =========================================================
   v10.11.12 — Escritorio: separación final bajo la imagen
   - Baja 12px adicionales la franja de Exámenes/Ruta/Seguimiento.
   - No modifica tablet ni móvil.
   ========================================================= */
@media (min-width:1181px){
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-learning-features,
  html body.nphb-active .nphb-learning-path-concept2 .nphb-learning-features,
  html body:has(.nphb-hero) .nphb-learning-path-concept2 .nphb-learning-features,
  html body .nphb-learning-path-concept2 .nphb-learning-features{
    margin-top:34px!important;
  }
}


/* =========================================================
   v10.11.14-dev2 — HOME RESPONSIVE · MARCO ÚNICO SIN RECORTES
   - Corrige el problema global de ancho/corte lateral en móvil y tablet.
   - Usa el bloque Reviews (que ya se comportaba bien) como referencia.
   - Neutraliza reglas antiguas 100vw/anchos extra/offsets heredados.
   - En escritorio alinea Reviews con el mismo ancho visual del bloque superior.
   - No altera textos, lógica, contenido ni composición de escritorio.
   ========================================================= */

/* Todos los bloques principales comparten exactamente el mismo marco en escritorio. */
@media (min-width:1181px){
  html body.nphb-home-active .nphb-hero,
  html body.nphb-home-active .nphb-learning-path,
  html body.nphb-home-active .nphb-reviews-section,
  html body:has(.nphb-hero) .nphb-hero,
  html body:has(.nphb-hero) .nphb-learning-path,
  html body:has(.nphb-hero) .nphb-reviews-section{
    box-sizing:border-box!important;
    width:calc(100% - 32px)!important;
    max-width:var(--nphb-page-frame-width,1280px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  /* El contenido de Reviews quedaba visualmente algo más estrecho que la Ruta. */
  html body.nphb-home-active .nphb-reviews-section .nphb-reviews-shell,
  html body:has(.nphb-hero) .nphb-reviews-section .nphb-reviews-shell{
    padding-left:22px!important;
    padding-right:22px!important;
  }
}

/* Tablet: un solo sistema de ancho, sin desplazamientos laterales. */
@media (min-width:761px) and (max-width:1180px){
  html body.nphb-home-active .nphb-hero,
  html body.nphb-home-active .nphb-learning-path,
  html body.nphb-home-active .nphb-reviews-section,
  html body:has(.nphb-hero) .nphb-hero,
  html body:has(.nphb-hero) .nphb-learning-path,
  html body:has(.nphb-hero) .nphb-reviews-section{
    position:relative!important;
    left:auto!important;
    box-sizing:border-box!important;
    width:calc(100% - 28px)!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
    transform:none!important;
  }

  html body.nphb-home-active .nphb-hero .nphb-inner,
  html body.nphb-home-active .nphb-hero .nphb-copy,
  html body.nphb-home-active .nphb-hero .nphb-features,
  html body.nphb-home-active .nphb-learning-path .nphb-path-shell,
  html body.nphb-home-active .nphb-learning-path .nphb-route-panels,
  html body.nphb-home-active .nphb-learning-path .nphb-route-panel,
  html body.nphb-home-active .nphb-learning-path .nphb-route-image-stage,
  html body:has(.nphb-hero) .nphb-hero .nphb-inner,
  html body:has(.nphb-hero) .nphb-hero .nphb-copy,
  html body:has(.nphb-hero) .nphb-hero .nphb-features,
  html body:has(.nphb-hero) .nphb-learning-path .nphb-path-shell,
  html body:has(.nphb-hero) .nphb-learning-path .nphb-route-panels,
  html body:has(.nphb-hero) .nphb-learning-path .nphb-route-panel,
  html body:has(.nphb-hero) .nphb-learning-path .nphb-route-image-stage{
    box-sizing:border-box!important;
    min-width:0!important;
    max-width:100%!important;
  }

  html body.nphb-home-active .nphb-hero .nphb-main-hero-visual,
  html body:has(.nphb-hero) .nphb-hero .nphb-main-hero-visual{
    max-width:100%!important;
  }
}

/* Móvil: Hero, Ruta y Reviews usan exactamente el marco que ya funcionaba en Reviews. */
@media (max-width:760px){
  html body.nphb-home-active,
  html body:has(.nphb-hero){
    overflow-x:clip!important;
  }

  html body.nphb-home-active .nphb-hero,
  html body.nphb-home-active .nphb-learning-path,
  html body.nphb-home-active .nphb-reviews-section,
  html body:has(.nphb-hero) .nphb-hero,
  html body:has(.nphb-hero) .nphb-learning-path,
  html body:has(.nphb-hero) .nphb-reviews-section{
    position:relative!important;
    left:0!important;
    box-sizing:border-box!important;
    width:calc(100vw - 20px)!important;
    max-width:calc(100vw - 20px)!important;
    margin-right:0!important;
    margin-left:50%!important;
    transform:translateX(-50%)!important;
  }

  html body.nphb-home-active .nphb-hero .nphb-inner,
  html body.nphb-home-active .nphb-hero .nphb-copy,
  html body.nphb-home-active .nphb-hero .nphb-actions,
  html body.nphb-home-active .nphb-hero .nphb-features,
  html body.nphb-home-active .nphb-learning-path .nphb-path-shell,
  html body.nphb-home-active .nphb-learning-path .nphb-route-panels,
  html body.nphb-home-active .nphb-learning-path .nphb-route-panel,
  html body.nphb-home-active .nphb-learning-path .nphb-route-image-stage,
  html body.nphb-home-active .nphb-learning-path .nphb-learning-features,
  html body:has(.nphb-hero) .nphb-hero .nphb-inner,
  html body:has(.nphb-hero) .nphb-hero .nphb-copy,
  html body:has(.nphb-hero) .nphb-hero .nphb-actions,
  html body:has(.nphb-hero) .nphb-hero .nphb-features,
  html body:has(.nphb-hero) .nphb-learning-path .nphb-path-shell,
  html body:has(.nphb-hero) .nphb-learning-path .nphb-route-panels,
  html body:has(.nphb-hero) .nphb-learning-path .nphb-route-panel,
  html body:has(.nphb-hero) .nphb-learning-path .nphb-route-image-stage,
  html body:has(.nphb-hero) .nphb-learning-path .nphb-learning-features{
    box-sizing:border-box!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
  }

  /* Anula los ensanches y márgenes negativos heredados de versiones móviles antiguas. */
  html body.nphb-home-active .nphb-hero .nphb-features,
  html body:has(.nphb-hero) .nphb-hero .nphb-features{
    margin-left:0!important;
    margin-right:0!important;
  }

  html body.nphb-home-active .nphb-learning-path .nphb-route-image,
  html body:has(.nphb-hero) .nphb-learning-path .nphb-route-image{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
  }
}

@media (max-width:390px){
  html body.nphb-home-active .nphb-hero,
  html body.nphb-home-active .nphb-learning-path,
  html body.nphb-home-active .nphb-reviews-section,
  html body:has(.nphb-hero) .nphb-hero,
  html body:has(.nphb-hero) .nphb-learning-path,
  html body:has(.nphb-hero) .nphb-reviews-section{
    width:calc(100vw - 16px)!important;
    max-width:calc(100vw - 16px)!important;
  }
}


/* === Home refresh 10.11.15-dev2 === */
body .nphb-hero .nphb-roadmap .nphb-level-icon svg{
  width:22px;
  height:22px;
  stroke:currentColor;
  fill:none;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
}
body .nphb-learning-visual-simple{
  width:min(1180px,100%);
  margin:0 auto;
}
body .nphb-learning-visual-frame{
  position:relative;
  overflow:hidden;
  border-radius:34px;
  background:linear-gradient(180deg,#ffffff 0%,#f4f8ff 100%);
  border:1px solid rgba(28,67,165,.08);
  box-shadow:0 24px 70px rgba(16,34,71,.10);
}
body .nphb-learning-visual-image{
  display:block;
  width:100%;
  height:auto;
}
@media (max-width: 760px){
  body .nphb-learning-visual-frame{
    border-radius:22px;
  }
}


/* === Home refresh 10.11.15-dev3 · cards 1–5 informational only === */
body .nphb-hero .nphb-roadmap .nphb-level-info{cursor:default!important;text-decoration:none!important;}
body .nphb-hero .nphb-roadmap .nphb-level-info .nphb-level-arrow{display:none!important;}
body .nphb-hero .nphb-roadmap .nphb-level-info:hover,
body .nphb-hero .nphb-roadmap .nphb-level-info:focus{transform:none;}

/* ============================================================
   v10.11.17-dev1 — NP-173 / Opiniones: hero editorial de mismo
   ancho, radio y proporción de Noticias. No afecta Home ni los
   motores/cálculo/orden de las reseñas ni otros componentes.
   ============================================================ */
html body.nphb-reviews-page .nphb-reviews-archive{
  padding-top:30px!important;
}
html body.nphb-reviews-page .nphb-reviews-hero{
  position:relative;isolation:isolate;box-sizing:border-box;
  width:min(1180px,100%);min-height:212px;
  margin:0 auto 22px;padding:26px 28px;
  display:flex;align-items:center;overflow:hidden;
  border:1px solid #dbe5f0;border-radius:24px;
  background:linear-gradient(135deg,#f5f9ff 0%,#edf4ff 54%,#f8fbff 100%);
  box-shadow:0 12px 32px rgba(20,52,95,.055);
}
html body.nphb-reviews-page .nphb-reviews-hero-content{
  position:relative;z-index:1;min-width:0;max-width:100%;
}
html body.nphb-reviews-page .nphb-reviews-hero:has(.nphb-reviews-hero-media) .nphb-reviews-hero-content{
  max-width:calc(100% - 260px);
}
html body.nphb-reviews-page .nphb-reviews-hero-kicker{
  display:block;margin:0 0 7px!important;color:#2862f4;
  font-size:11px;font-weight:850;letter-spacing:.13em;text-transform:uppercase;
}
html body.nphb-reviews-page .nphb-reviews-hero h1{
  margin:0!important;color:#102142;font-family:var(--np-font-heading,inherit);
  font-size:clamp(30px,4vw,48px)!important;font-weight:850!important;
  letter-spacing:-.035em!important;line-height:1.03!important;
}
html body.nphb-reviews-page .nphb-reviews-hero p{
  max-width:760px;margin:10px 0 0!important;color:#60718a;
  font-size:15px;line-height:1.55;
}
html body.nphb-reviews-page .nphb-reviews-hero-media{
  position:absolute;z-index:0;top:auto;bottom:12px;right:7%;
  display:flex;align-items:flex-end;justify-content:center;
  width:min(260px,43%);height:min(210px,calc(100% - 26px));
  max-height:calc(100% - 26px);overflow:hidden;pointer-events:none;
}
html body.nphb-reviews-page .nphb-reviews-hero-image{
  display:block;width:100%;height:100%;max-height:100%;
  object-fit:contain;object-position:center bottom;
}
html body.nphb-reviews-page .nphb-reviews-archive-shell{
  width:min(1180px,100%)!important;max-width:1180px!important;margin:0 auto!important;padding:26px;
  background:#fff;border:1px solid #dfe7f3;border-radius:24px;
  box-shadow:0 14px 34px rgba(16,34,71,.055);
}
html body.nphb-reviews-page .nphb-reviews-archive-feedback{
  display:flex;align-items:center;justify-content:space-between;
  flex-wrap:wrap;gap:12px 18px;margin:0 0 18px;
}
html body.nphb-reviews-page .nphb-reviews-archive-feedback-label{
  margin:0!important;color:#304665;font-size:13px;line-height:1.4;font-weight:750;
}
html body.nphb-reviews-page .nphb-reviews-archive-feedback .nphb-reviews-archive-summary{
  flex:none;max-width:100%;margin:0!important;
}
@media(max-width:1050px){
  html body.nphb-reviews-page .nphb-reviews-hero-media{display:none!important;}
  html body.nphb-reviews-page .nphb-reviews-hero:has(.nphb-reviews-hero-media) .nphb-reviews-hero-content{max-width:100%;}
}
@media(max-width:768px){
  html body.nphb-reviews-page .nphb-reviews-archive{padding:16px 12px 42px!important;}
  html body.nphb-reviews-page .nphb-reviews-hero{
    display:block;min-height:0;margin:0 auto 14px;padding:18px;
    border-radius:18px;
  }
  html body.nphb-reviews-page .nphb-reviews-hero h1{font-size:31px!important;line-height:1.08!important;}
  html body.nphb-reviews-page .nphb-reviews-hero p{font-size:13px;line-height:1.5;}
  html body.nphb-reviews-page .nphb-reviews-hero-media{
    position:relative;display:flex!important;inset:auto;width:100%;max-width:none;
    height:clamp(138px,42vw,170px);max-height:none;margin:14px auto 0;
    align-items:center;justify-content:center;
  }
  html body.nphb-reviews-page .nphb-reviews-archive-shell{
    width:100%!important;max-width:100%!important;padding:18px 14px;border-radius:20px;
  }
  html body.nphb-reviews-page .nphb-reviews-archive-feedback{
    align-items:start;margin-bottom:16px;
  }
  html body.nphb-reviews-page .nphb-reviews-archive-feedback .nphb-reviews-archive-summary{
    width:100%;max-width:100%;min-width:0;margin:0!important;
  }
}


/* ===============================================================
   v10.11.21-dev3 - Logo editable: usar los valores del formulario.
   Corrige topes heredados de 300/225/190px que impedían que el
   ancho guardado se aplicase de verdad. Mantener ajuste al padre.
   =============================================================== */
@media (min-width:1181px){
  html body .nphb-hero.nphb-concept-top-v1 .nphb-hero-brand-logo-only{
    width:min(100%,var(--nphb-logo-desktop,390px))!important;max-width:100%!important;
    transform:translate(var(--nphb-logo-x-desktop,0px),var(--nphb-logo-y-desktop,0px))!important;
  }
}
@media (min-width:761px) and (max-width:1180px){
  html body .nphb-hero.nphb-concept-top-v1 .nphb-hero-brand-logo-only{
    width:min(100%,var(--nphb-logo-tablet,370px))!important;max-width:100%!important;
    transform:translate(var(--nphb-logo-x-tablet,0px),var(--nphb-logo-y-tablet,0px))!important;
  }
}
@media (max-width:760px){
  html body .nphb-hero.nphb-concept-top-v1 .nphb-hero-brand-logo-only{
    width:min(100%,var(--nphb-logo-mobile,190px))!important;max-width:100%!important;
    transform:translate(var(--nphb-logo-x-mobile,0px),var(--nphb-logo-y-mobile,0px))!important;
  }
}
/* El logo era además limitado artificialmente a 96/76px de altura.
   Un ancho configurable debe escalar la propia imagen, no solo su caja. */
html body .nphb-hero.nphb-concept-top-v1 .nphb-hero-brand-logo-only .nphb-hero-brand-logo,
html body .nphb-hero.nphb-concept-top-v1 .nphb-hero-brand-logo-only .nphb-hero-brand-logo img{
  max-height:none!important;height:auto!important;
}
/* Móvil horizontal simulado 844×390: aplicar la familia móvil
   al logo en lugar de dejar que prevalezca la regla tablet. */
@media (min-width:761px) and (max-width:950px) and (max-height:600px) and (orientation:landscape){
  html body .nphb-hero.nphb-concept-top-v1 .nphb-hero-brand-logo-only{
    width:min(100%,var(--nphb-logo-mobile,190px))!important;max-width:100%!important;
    transform:translate(var(--nphb-logo-x-mobile,0px),var(--nphb-logo-y-mobile,0px))!important;
  }
}



/* ================================================================
   v10.11.26-dev8 · Marca: logo principal configurable en cinco vistas.
   Prioridad final sobre topes heredados de ancho/alto. No altera textos
   (tipografía controlada exclusivamente por Sistema Visual).
   ================================================================ */
html body .nphb-hero.nphb-concept-top-v1 .nphb-inner .nphb-copy .nphb-hero-brand-logo-only .nphb-hero-brand-logo,
html body .nphb-hero.nphb-concept-top-v1 .nphb-inner .nphb-copy .nphb-hero-brand-logo-only .nphb-hero-brand-logo img{
  width:100%!important;height:auto!important;max-height:none!important;max-width:100%!important;
}
@media (min-width:1181px){
  html body .nphb-hero.nphb-concept-top-v1 .nphb-inner .nphb-copy .nphb-hero-brand-logo-only{
    width:var(--nphb-logo-desktop,390px)!important;max-width:none!important;min-width:0!important;
    transform:translate(var(--nphb-logo-x-desktop,0px),var(--nphb-logo-y-desktop,0px))!important;
  }
}
@media (min-width:761px) and (max-width:1180px){
  html body .nphb-hero.nphb-concept-top-v1 .nphb-inner .nphb-copy .nphb-hero-brand-logo-only{
    width:var(--nphb-logo-tablet,370px)!important;max-width:none!important;min-width:0!important;
    transform:translate(var(--nphb-logo-x-tablet,0px),var(--nphb-logo-y-tablet,0px))!important;
  }
}
@media (min-width:761px) and (max-width:1180px) and (orientation:landscape) and (min-height:601px){
  html body .nphb-hero.nphb-concept-top-v1 .nphb-inner .nphb-copy .nphb-hero-brand-logo-only{
    width:var(--nphb-logo-tablet-landscape,370px)!important;max-width:none!important;min-width:0!important;
    transform:translate(var(--nphb-logo-x-tablet-landscape,0px),var(--nphb-logo-y-tablet-landscape,0px))!important;
  }
}
@media (max-width:760px){
  html body .nphb-hero.nphb-concept-top-v1 .nphb-inner .nphb-copy .nphb-hero-brand-logo-only{
    width:var(--nphb-logo-mobile,190px)!important;max-width:none!important;min-width:0!important;
    transform:translate(var(--nphb-logo-x-mobile,0px),var(--nphb-logo-y-mobile,0px))!important;
  }
}
@media (max-width:760px) and (orientation:landscape), (min-width:761px) and (max-width:950px) and (max-height:600px) and (orientation:landscape){
  html body .nphb-hero.nphb-concept-top-v1 .nphb-inner .nphb-copy .nphb-hero-brand-logo-only{
    width:var(--nphb-logo-mobile-landscape,190px)!important;max-width:none!important;min-width:0!important;
    transform:translate(var(--nphb-logo-x-mobile-landscape,0px),var(--nphb-logo-y-mobile-landscape,0px))!important;
  }
}


/* ================================================================
   v10.11.27-dev9 · Correcciones finales del Hero.
   Evita recortes del logo, permite mover badge y ajusta botones por vista.
   ================================================================ */
html body .nphb-hero.nphb-concept-top-v1 .nphb-copy,
html body .nphb-hero.nphb-concept-top-v1 .nphb-inner,
html body .nphb-hero.nphb-concept-top-v1 .nphb-copy > *{
  overflow:visible!important;
}
html body .nphb-hero.nphb-concept-top-v1 .nphb-hero-brand-logo-only,
html body .nphb-hero.nphb-concept-top-v1 .nphb-hero-brand-logo-only .nphb-hero-brand-logo,
html body .nphb-hero.nphb-concept-top-v1 .nphb-hero-brand-logo-only .nphb-hero-brand-logo img{
  overflow:visible!important;
  min-height:0!important;
  height:auto!important;
}
html body .nphb-hero.nphb-concept-top-v1 .nphb-hero-brand-logo-only .nphb-hero-brand-logo img{
  display:block!important;
  object-fit:contain!important;
  object-position:left center!important;
}


/* v10.11.30-dev12 — Las estrellas y el mensaje de confianza no deben
   desaparecer en ordenador/tablet por reglas antiguas del concepto.
   NO altera ni mueve la estructura del Hero móvil. */
@media (min-width:761px) and (min-height:601px) {
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1 .nphb-copy > .nphb-trust,
  html body .nphb-hero.nphb-concept-top-v1 .nphb-copy > .nphb-trust {
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    flex-wrap:wrap!important;
    visibility:visible!important;
    opacity:1!important;
    max-width:100%!important;
    margin-top:12px!important;
  }
}

/* v10.11.30-dev15 · NetAcad conserva el marco del resto de la Home.
   Imagen original sin máscaras/fundidos; la propia imagen puede venir preparada
   para fundirse con el fondo. Sin altura vacía cuando no hay imagen. */
html body .nphb-netacad-zone,html body .nphb-netacad-zone *{box-sizing:border-box}
html body .nphb-netacad-zone{
  position:relative;
  box-sizing:border-box;
  width:calc(100% - 32px);
  max-width:var(--nphb-page-frame-width,1280px);
  margin:0 auto;
  padding:42px clamp(18px,3vw,46px) 46px;
  background:#f7f9fd;
  color:#102247;
  overflow:clip;
  isolation:isolate;
}
html body .nphb-netacad-zone::before{content:none!important}
html body .nphb-netacad-shell{
  position:relative;z-index:1;
  display:grid;
  grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
  align-items:center;
  gap:clamp(18px,2.8vw,42px);
  width:100%;max-width:100%;margin:0 auto;
}
html body .nphb-netacad-copy{min-width:0;max-width:590px}
html body .nphb-netacad-eyebrow{
  display:inline-flex;align-items:center;gap:10px;
  max-width:100%;padding:9px 17px;margin:0 0 20px;
  background:#edf2ff;border:1px solid #dfe8ff;
  border-radius:999px;
  color:#2457f5;font-size:12px;line-height:1.35;
  font-weight:850;letter-spacing:.065em;text-transform:uppercase;
}
html body .nphb-netacad-eyebrow::before{
  content:"";flex:none;width:10px;height:10px;border-radius:50%;
  background:#2457f5;box-shadow:0 0 0 5px #d5e3ff;
}
html body .nphb-netacad-copy h2{
  margin:0 0 16px!important;max-width:100%;
  font-size:clamp(28px,2.85vw,44px)!important;
  line-height:1.10!important;letter-spacing:-.032em!important;
  font-weight:820!important;color:#102247!important;text-wrap:balance;
}
html body .nphb-netacad-copy p{
  max-width:570px;margin:0 0 23px!important;
  font-size:clamp(15px,1.4vw,17px);line-height:1.58;
  color:#64738b;
}
html body .nphb-netacad-cta{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:48px;min-width:0;padding:13px 24px;
  color:#fff!important;text-decoration:none!important;
  border-radius:15px;border:0;
  background:linear-gradient(120deg,#2457f5,#2f75ff);
  font-weight:800;font-size:15px;line-height:1.3;
  box-shadow:0 12px 23px rgba(36,87,245,.14);
  transition:transform .18s ease,box-shadow .18s ease;
}
html body .nphb-netacad-cta:hover{transform:translateY(-2px);box-shadow:0 15px 30px rgba(36,87,245,.22)}
html body .nphb-netacad-cta:focus-visible{outline:3px solid #153ba5;outline-offset:3px}
html body .nphb-netacad-mobile-cta-wrap{display:none}
html body .nphb-netacad-cta-mobile{display:none}
html body .nphb-netacad-visual{
  position:relative;min-width:0;min-height:0;
  display:flex;align-items:center;justify-content:center;
  background:transparent!important;box-shadow:none!important;
  border:0!important;border-radius:0!important;overflow:visible;
}
html body .nphb-netacad-image{
  position:relative;display:block;
  width:var(--nphb-netacad-width-desktop,100%);height:auto;
  max-width:none;max-height:490px;
  margin:0 auto;object-fit:contain;
  object-position:center;
  border:0!important;border-radius:0!important;box-shadow:none!important;
  filter:none!important;background:transparent!important;
  transform:translate(var(--nphb-netacad-x-desktop,0px),var(--nphb-netacad-y-desktop,0px));
  /* La imagen ya preparada por NextPing se muestra íntegra, sin máscaras. */
  -webkit-mask-image:none!important;
  mask-image:none!important;
  opacity:1;
}
html body .nphb-netacad-no-image .nphb-netacad-shell{grid-template-columns:minmax(0,1fr)}
html body .nphb-netacad-no-image .nphb-netacad-copy{max-width:870px}
html body .nphb-netacad-no-image{padding-block:34px}
/* Los ajustes separados reproducen el sistema de cinco vistas del Home. */
@media (min-width:761px) and (max-width:1180px){
 html body .nphb-netacad-zone{width:calc(100% - 28px);max-width:none}
 html body .nphb-netacad-shell{gap:20px}
 html body .nphb-netacad-copy h2{font-size:clamp(28px,3.65vw,40px)!important}
 html body .nphb-netacad-image{width:var(--nphb-netacad-width-tablet,100%);transform:translate(var(--nphb-netacad-x-tablet,0px),var(--nphb-netacad-y-tablet,0px))}
}
@media (min-width:761px) and (max-width:1180px) and (orientation:landscape) and (min-height:601px){
 html body .nphb-netacad-image{width:var(--nphb-netacad-width-tablet_landscape,100%);transform:translate(var(--nphb-netacad-x-tablet_landscape,0px),var(--nphb-netacad-y-tablet_landscape,0px))}
}
@media (max-width:760px){
 html body .nphb-netacad-zone{
   width:calc(100vw - 20px);max-width:calc(100vw - 20px);
   margin-left:50%;margin-right:0;
   transform:translateX(-50%);
   padding:28px 18px 32px;
 }
 html body .nphb-netacad-shell{grid-template-columns:minmax(0,1fr);gap:8px}
 html body .nphb-netacad-copy{max-width:none}
 html body .nphb-netacad-eyebrow{padding:8px 12px;font-size:10px;gap:8px;letter-spacing:.04em;margin-bottom:14px}
 html body .nphb-netacad-copy h2{font-size:clamp(26px,7.2vw,35px)!important;margin-bottom:12px!important;line-height:1.13!important}
 html body .nphb-netacad-copy p{font-size:14px;line-height:1.53;margin-bottom:15px!important}
 html body .nphb-netacad-cta{min-height:44px;font-size:14px;padding:11px 17px;border-radius:13px}
 html body .nphb-netacad-visual{margin:0 auto;width:100%;max-width:540px}
 html body .nphb-netacad-image{width:var(--nphb-netacad-width-mobile,100%);max-height:350px;transform:translate(var(--nphb-netacad-x-mobile,0px),var(--nphb-netacad-y-mobile,0px))}
 html body .nphb-netacad-zone::before{width:100%;left:0;top:35%;height:65%}
 html body .nphb-netacad-no-image{padding-block:26px}
}
@media (max-width:390px){
 html body .nphb-netacad-zone{width:calc(100vw - 16px);max-width:calc(100vw - 16px);padding-inline:14px}
}
@media (max-width:760px) and (orientation:landscape),
       (min-width:761px) and (max-width:950px) and (max-height:600px) and (orientation:landscape){
 html body .nphb-netacad-zone{padding-block:20px 22px}
 html body .nphb-netacad-shell{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}
 html body .nphb-netacad-copy h2{font-size:clamp(22px,3.3vw,29px)!important;margin-bottom:8px!important}
 html body .nphb-netacad-copy p{font-size:12px;line-height:1.35;margin-bottom:10px!important}
 html body .nphb-netacad-eyebrow{font-size:9px;margin-bottom:9px}
 html body .nphb-netacad-cta{min-height:36px;font-size:12px;padding:8px 14px}
 html body .nphb-netacad-image{width:var(--nphb-netacad-width-mobile_landscape,100%);max-height:260px;transform:translate(var(--nphb-netacad-x-mobile_landscape,0px),var(--nphb-netacad-y-mobile_landscape,0px))}
 html body .nphb-netacad-no-image .nphb-netacad-shell{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){html body .nphb-netacad-cta{transition:none}}

/* v10.11.30-dev16 · Cisco NetAcad: composición HERO, texto izquierda, imagen derecha.
   No alteramos imágenes guardadas ni les aplicamos efectos artificiales. */
html body.nphb-home-active .nphb-netacad-zone{overflow:hidden}
html body.nphb-home-active .nphb-netacad-shell{
  grid-template-columns:minmax(0,.98fr) minmax(0,1.02fr);
  align-items:center;
  gap:clamp(16px,3.2vw,46px);
}
html body.nphb-home-active .nphb-netacad-copy{
  grid-column:1;
  min-width:0;
  width:100%;
  text-align:left;
  transform:translate(var(--nphb-netacad-text-x-desktop,0px),var(--nphb-netacad-text-y-desktop,0px));
}
html body.nphb-home-active .nphb-netacad-visual{
  grid-column:2;
  grid-row:1;
  min-width:0;
  width:100%;
}
html body.nphb-home-active .nphb-netacad-no-image .nphb-netacad-shell{grid-template-columns:minmax(0,1fr)}
html body.nphb-home-active .nphb-netacad-no-image .nphb-netacad-copy{grid-column:1}
@media (min-width:761px) and (max-width:1180px){
 html body.nphb-home-active .nphb-netacad-copy{transform:translate(var(--nphb-netacad-text-x-tablet,0px),var(--nphb-netacad-text-y-tablet,0px))}
}
@media (min-width:761px) and (max-width:1180px) and (orientation:landscape) and (min-height:601px){
 html body.nphb-home-active .nphb-netacad-copy{transform:translate(var(--nphb-netacad-text-x-tablet_landscape,0px),var(--nphb-netacad-text-y-tablet_landscape,0px))}
}
@media (max-width:760px) and (orientation:portrait){
 html body.nphb-home-active .nphb-netacad-shell{grid-template-columns:minmax(0,1fr);gap:12px}
 html body.nphb-home-active .nphb-netacad-copy{grid-column:1;grid-row:1;transform:translate(var(--nphb-netacad-text-x-mobile,0px),var(--nphb-netacad-text-y-mobile,0px))}
 html body.nphb-home-active .nphb-netacad-visual{grid-column:1;grid-row:2}
 html body.nphb-home-active .nphb-netacad-cta-desktop{display:none}
 html body.nphb-home-active .nphb-netacad-mobile-cta-wrap{
   display:flex;grid-column:1;grid-row:3;justify-content:flex-start;
   align-items:flex-start;margin-top:2px;width:100%;
 }
 html body.nphb-home-active .nphb-netacad-cta-mobile{
   display:inline-flex;box-sizing:border-box;flex:0 0 auto;
   width:var(--nphb-netacad-btn-w-mobile,72%)!important;max-width:none!important;
   margin-left:0!important;margin-right:auto!important;
   height:var(--nphb-netacad-btn-h-mobile,44px)!important;
   min-height:0!important;padding-block:0!important;
   overflow:hidden;white-space:normal;text-align:center;
 }
 html body.nphb-home-active .nphb-netacad-no-image .nphb-netacad-mobile-cta-wrap{grid-row:2}
}
@media (max-width:760px) and (orientation:landscape),
 (min-width:761px) and (max-width:950px) and (max-height:600px) and (orientation:landscape){
 html body.nphb-home-active .nphb-netacad-shell{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto;gap:14px;align-items:start}
 html body.nphb-home-active .nphb-netacad-copy{grid-column:1;grid-row:1;transform:translate(var(--nphb-netacad-text-x-mobile_landscape,0px),var(--nphb-netacad-text-y-mobile_landscape,0px))}
 html body.nphb-home-active .nphb-netacad-visual{grid-column:2;grid-row:1}
 html body.nphb-home-active .nphb-netacad-cta-desktop{display:none}
 html body.nphb-home-active .nphb-netacad-mobile-cta-wrap{
   display:flex;grid-column:2;grid-row:2;justify-content:flex-start;align-items:flex-start;
   margin-top:2px;width:100%;
 }
 html body.nphb-home-active .nphb-netacad-cta-mobile{
   display:inline-flex;box-sizing:border-box;flex:0 0 auto;
   width:var(--nphb-netacad-btn-w-mobile-landscape,58%)!important;max-width:none!important;
   margin-left:0!important;margin-right:auto!important;
   height:var(--nphb-netacad-btn-h-mobile-landscape,36px)!important;
   min-height:0!important;padding-block:0!important;
   overflow:hidden;white-space:normal;text-align:center;
 }
 html body.nphb-home-active .nphb-netacad-no-image .nphb-netacad-mobile-cta-wrap{grid-column:1;grid-row:2}
}

/* =========================================================
   v10.11.30-dev17 · QUÉ ENSEÑAMOS — temas + carrusel 16:9
   Solo #ruta-aprendizaje; no altera Hero, NetAcad ni Reviews.
   ========================================================= */
html body .nphb-learning-path .nphb-learning-showcase{
  box-sizing:border-box!important;
  width:min(1380px,100%)!important;
  max-width:100%!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:minmax(0,.93fr) minmax(0,1.07fr)!important;
  align-items:center!important;
  gap:clamp(20px,3vw,42px)!important;
  padding:0 0 12px!important;
}
html body .nphb-learning-path .nphb-learning-showcase > *{min-width:0!important;box-sizing:border-box}
html body .nphb-learning-path .nphb-path-header{max-width:990px!important;margin-bottom:34px!important}
html body .nphb-learning-path .nphb-learning-topic-list{
  min-width:0!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:11px!important;
  padding:0!important;
}
html body .nphb-learning-path .nphb-learning-topic-card{
  box-sizing:border-box!important;
  display:flex!important;
  gap:12px!important;
  align-items:flex-start!important;
  min-width:0!important;
  min-height:83px!important;
  padding:15px 13px!important;
  border:1px solid #dfe8f8!important;
  background:linear-gradient(150deg,#fff,#f7faff)!important;
  border-radius:17px!important;
  box-shadow:0 8px 22px rgba(19,49,111,.045)!important;
  transition:transform .18s ease,border-color .18s ease!important;
}
html body .nphb-learning-path .nphb-learning-topic-card:hover{
  transform:translateY(-2px)!important;
  border-color:#bed0ff!important;
}
html body .nphb-learning-path .nphb-learning-topic-icon{
  display:grid!important;place-items:center!important;
  flex:0 0 37px!important;
  width:37px!important;height:37px!important;
  border-radius:12px!important;
  background:#eaf0ff!important;
  font-size:22px!important;line-height:1!important;
}
html body .nphb-learning-path .nphb-learning-topic-copy{min-width:0!important}
html body .nphb-learning-path .nphb-learning-topic-copy strong{
  display:block!important;
  margin:1px 0 4px!important;
  color:#14295a!important;
  font-size:14px!important;line-height:1.3!important;
  font-weight:800!important;
}
html body .nphb-learning-path .nphb-learning-topic-copy small{
  display:block!important;
  color:#62718b!important;
  font-size:12px!important;line-height:1.45!important;
}
html body .nphb-learning-path .nphb-learning-carousel-wrap{min-width:0!important;width:100%!important}
html body .nphb-learning-path .nphb-learning-carousel{
  position:relative!important;
  width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
  border-radius:25px!important;
  border:1px solid #e2eaf8!important;
  background:linear-gradient(135deg,#edf4ff,#fff)!important;
  box-shadow:0 16px 43px rgba(25,65,133,.10)!important;
}
html body .nphb-learning-path .nphb-learning-carousel-stage{
  position:relative!important;
  box-sizing:border-box!important;
  display:block!important;
  aspect-ratio:16 / 9!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  overflow:hidden!important;
}
html body .nphb-learning-path .nphb-learning-slide{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transition:opacity .45s ease!important;
}
html body .nphb-learning-path .nphb-learning-slide.is-active{
  opacity:1!important;visibility:visible!important;
  pointer-events:auto!important;
}
html body .nphb-learning-path .nphb-learning-slide img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  mask:none!important;
  -webkit-mask:none!important;
}
html body .nphb-learning-path .nphb-learning-carousel-controls{
  position:relative!important;
  box-sizing:border-box!important;
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  gap:18px!important;
  min-height:53px!important;
  padding:7px 12px 10px!important;
  background:rgba(247,250,255,.93)!important;
}
html body .nphb-learning-path .nphb-learning-carousel-controls[hidden]{display:none!important}
html body .nphb-learning-path .nphb-learning-prev,
html body .nphb-learning-path .nphb-learning-next{
  all:unset!important;
  box-sizing:border-box!important;
  display:grid!important;place-items:center!important;
  width:34px!important;height:34px!important;
  border:1px solid #cddbf8!important;
  border-radius:50%!important;
  background:#fff!important;
  color:#2457f5!important;
  font-size:20px!important;line-height:1!important;
  cursor:pointer!important;
}
html body .nphb-learning-path .nphb-learning-prev:focus-visible,
html body .nphb-learning-path .nphb-learning-next:focus-visible,
html body .nphb-learning-path .nphb-learning-carousel-dot:focus-visible{outline:3px solid #2457f5!important;outline-offset:3px!important}
html body .nphb-learning-path .nphb-learning-carousel-dots{display:flex!important;gap:8px!important;align-items:center!important}
html body .nphb-learning-path .nphb-learning-carousel-dot{
  all:unset!important;box-sizing:border-box!important;
  display:block!important;width:9px!important;height:9px!important;
  background:#c5d3ec!important;border-radius:50%!important;cursor:pointer!important;
}
html body .nphb-learning-path .nphb-learning-carousel-dot.is-active{
  width:25px!important;border-radius:10px!important;background:#2457f5!important;
}
html body .nphb-learning-path .nphb-learning-carousel-caption{
  margin:10px 0 0!important;
  color:#647691!important;
  font-size:13px!important;
  text-align:center!important;
}
html body .nphb-learning-path .nphb-learning-carousel-placeholder{
  box-sizing:border-box!important;
  display:grid!important;place-items:center!important;
  width:100%!important;aspect-ratio:16 / 9!important;
  border:1px dashed #a8c4fc!important;border-radius:20px!important;
  background:#f8fbff!important;color:#71809a!important;
}
@media(max-width:1080px){
  html body .nphb-learning-path .nphb-learning-showcase{
    grid-template-columns:minmax(0,1fr)!important;
    gap:24px!important;
  }
  html body .nphb-learning-path .nphb-learning-carousel-wrap{width:min(100%,760px)!important;margin:0 auto!important}
}
@media(max-width:640px){
  html body .nphb-learning-path .nphb-path-header{margin-bottom:20px!important}
  html body .nphb-learning-path .nphb-learning-topic-list{grid-template-columns:1fr!important;gap:8px!important}
  html body .nphb-learning-path .nphb-learning-topic-card{min-height:64px!important;padding:10px 12px!important}
  html body .nphb-learning-path .nphb-learning-topic-icon{width:33px!important;height:33px!important;flex-basis:33px!important;font-size:19px!important}
  html body .nphb-learning-path .nphb-learning-carousel{border-radius:17px!important}
}
@media(prefers-reduced-motion:reduce){
  html body .nphb-learning-path .nphb-learning-slide,
  html body .nphb-learning-path .nphb-learning-topic-card{transition:none!important}
}


/* v10.11.30-dev18 · Ajuste mínimo de aire inferior en «Qué enseñamos».
   Exclusivo para móvil vertical; sin alterar el carrusel 16:9, tamaños,
   tarjetas, Sistema Visual, Cisco NetAcad ni el resto de la Home. */
@media (max-width:760px) and (orientation:portrait){
  html body.nphb-home-active .nphb-learning-path.nphb-learning-path-concept2,
  html body.nphb-active .nphb-learning-path.nphb-learning-path-concept2,
  html body.nphb-mobile-compact .nphb-learning-path.nphb-learning-path-concept2,
  html body:has(.nphb-hero) .nphb-learning-path.nphb-learning-path-concept2{
    padding-bottom:18px!important;
  }
  html body.nphb-home-active .nphb-learning-path-concept2 .nphb-path-shell,
  html body.nphb-active .nphb-learning-path-concept2 .nphb-path-shell,
  html body.nphb-mobile-compact .nphb-learning-path-concept2 .nphb-path-shell,
  html body:has(.nphb-hero) .nphb-learning-path-concept2 .nphb-path-shell{
    padding-bottom:7px!important;
  }
  html body .nphb-learning-path .nphb-learning-showcase{
    padding-bottom:6px!important;
  }
}

/* v10.11.31-dev1 · Contador compacto para carpetas de muchas imágenes. */
html body .nphb-learning-path .nphb-learning-slide-counter{
  color:#647691!important;font-size:12px!important;font-weight:750!important;
  font-variant-numeric:tabular-nums!important;white-space:nowrap!important;
}
html body .nphb-learning-path .nphb-learning-carousel-dots:empty{display:none!important}

/* v10.11.34-dev1 · Imagen Hero: controles REALES por orientación, sin alterar las otras secciones. */
@media (orientation:landscape) and (min-width:951px) and (max-width:1400px) and (min-height:601px){
  body .nphb-hero.nphb-has-main-hero-visual .nphb-inner > img.nphb-main-hero-visual,
  body .nphb-hero.nphb-has-main-hero-visual.nphb-main-visual-tablet .nphb-inner > img.nphb-main-hero-visual,
  body .nphb-hero.nphb-concept-top-v1.nphb-has-main-hero-visual .nphb-inner > img.nphb-main-hero-visual{display:none!important;}
  body .nphb-hero.nphb-main-visual-tablet-landscape.nphb-has-main-hero-visual .nphb-inner > img.nphb-main-hero-visual{
    display:block!important;grid-column:1!important;grid-row:auto!important;justify-self:center!important;
    width:var(--nphb-hero-main-visual-width-tablet-landscape,100%)!important;
    height:var(--nphb-hero-main-visual-height-tablet-landscape,420px)!important;
    transform:translate(var(--nphb-hero-main-visual-x-tablet-landscape,0px),var(--nphb-hero-main-visual-y-tablet-landscape,0px))!important;
    object-fit:contain!important;max-width:100%!important;position:relative!important;border:0!important;
    box-shadow:none!important;pointer-events:none!important;
  }
}
@media (orientation:landscape) and (max-width:950px) and (max-height:600px) and (min-width:761px){
  body .nphb-hero.nphb-has-main-hero-visual .nphb-inner > img.nphb-main-hero-visual,
  body .nphb-hero.nphb-has-main-hero-visual.nphb-main-visual-tablet .nphb-inner > img.nphb-main-hero-visual,
  body .nphb-hero.nphb-concept-top-v1.nphb-has-main-hero-visual .nphb-inner > img.nphb-main-hero-visual{display:none!important;}
  body .nphb-hero.nphb-main-visual-mobile-landscape.nphb-has-main-hero-visual .nphb-inner > img.nphb-main-hero-visual{
    display:block!important;grid-column:1!important;grid-row:auto!important;justify-self:end!important;
    position:relative!important;z-index:1!important;
    width:var(--nphb-hero-mobile-visual-width-landscape,48%)!important;
    height:var(--nphb-hero-mobile-visual-height-landscape,270px)!important;
    transform:translate(var(--nphb-hero-mobile-visual-x-landscape,0px),var(--nphb-hero-mobile-visual-y-landscape,0px))!important;
    object-fit:contain!important;max-width:100%!important;box-shadow:none!important;border:0!important;pointer-events:none!important;
  }
}
@media (orientation:landscape) and (max-width:760px) and (max-height:600px){
  body.nphb-mobile-compact .nphb-hero.nphb-has-mobile-hero-visual .nphb-mobile-hero-visual{display:none!important;}
  body.nphb-mobile-compact .nphb-hero.nphb-main-visual-mobile-landscape .nphb-mobile-hero-visual{
    display:flex!important;
    width:var(--nphb-hero-mobile-visual-width-landscape,48%)!important;
    height:var(--nphb-hero-mobile-visual-height-landscape,270px)!important;
    transform:translate(var(--nphb-hero-mobile-visual-x-landscape,0px),var(--nphb-hero-mobile-visual-y-landscape,0px))!important;
  }
}

@media (orientation:portrait) and (max-width:760px){
  body.nphb-mobile-compact .nphb-hero.nphb-has-mobile-hero-visual:not(.nphb-main-visual-mobile-portrait) .nphb-mobile-hero-visual{display:none!important;}
}

/* v10.11.34-dev2 · FIX zoom real imagen Hero en Tablet V.
   Antes la regla de concepto v10.8.40 anulaba valores >100% y alturas >390px,
   y max-width:100% impedía aumentar la imagen. Solo tablet portrait,
   conservando Tablet H, móvil, escritorio, DOM y demás secciones. */
@media (min-width:761px) and (max-width:1180px) and (orientation:portrait){
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1.nphb-has-main-hero-visual.nphb-main-visual-tablet > .nphb-inner > img.nphb-main-hero-visual,
  html body .nphb-hero.nphb-concept-top-v1.nphb-has-main-hero-visual.nphb-main-visual-tablet > .nphb-inner > img.nphb-main-hero-visual{
    width:var(--nphb-hero-main-visual-width-tablet,100%)!important;
    height:var(--nphb-hero-main-visual-height-tablet,420px)!important;
    max-width:none!important;
    min-width:0!important;
    object-fit:contain!important;
  }
}


/* v10.11.34-dev3 — CORRECCIÓN REAL de la imagen Hero en ambas vistas H.
   Las reglas del concepto top-v1 (v10.8.40) eran más específicas que
   los ajustes H de DEV1: aplicaban 100%/390px y X/Y de Tablet V, también
   en Tablet H 1180x820 y Móvil H 844x390. No alterar Tablet V, móvil V
   ni escritorio. Preservar el grid de DOS columnas del Hero publicado. */
@media (orientation:landscape) and (min-width:951px) and (max-width:1400px) and (min-height:601px){
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1.nphb-has-main-hero-visual > .nphb-inner > img.nphb-main-hero-visual,
  html body .nphb-hero.nphb-concept-top-v1.nphb-has-main-hero-visual > .nphb-inner > img.nphb-main-hero-visual{
    display:none!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1.nphb-has-main-hero-visual.nphb-main-visual-tablet-landscape > .nphb-inner > img.nphb-main-hero-visual,
  html body .nphb-hero.nphb-concept-top-v1.nphb-has-main-hero-visual.nphb-main-visual-tablet-landscape > .nphb-inner > img.nphb-main-hero-visual{
    display:block!important;
    grid-column:2!important;
    grid-row:1!important;
    justify-self:end!important;
    align-self:center!important;
    width:var(--nphb-hero-main-visual-width-tablet-landscape,100%)!important;
    height:var(--nphb-hero-main-visual-height-tablet-landscape,420px)!important;
    max-width:none!important;
    min-width:0!important;
    transform:translate(var(--nphb-hero-main-visual-x-tablet-landscape,0px),var(--nphb-hero-main-visual-y-tablet-landscape,0px))!important;
    object-fit:contain!important;
    border:0!important;
    box-shadow:none!important;
    pointer-events:none!important;
  }
}
/* Móvil H ancho de 761–950: CSS de tablet establece el visual principal
   de la derecha, por lo que hay que anularlo CON la misma especificidad. */
@media (orientation:landscape) and (min-width:761px) and (max-width:950px) and (max-height:600px){
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1.nphb-has-main-hero-visual > .nphb-inner > img.nphb-main-hero-visual,
  html body .nphb-hero.nphb-concept-top-v1.nphb-has-main-hero-visual > .nphb-inner > img.nphb-main-hero-visual{
    display:none!important;
  }
  html body.nphb-home-active .nphb-hero.nphb-concept-top-v1.nphb-has-main-hero-visual.nphb-main-visual-mobile-landscape > .nphb-inner > img.nphb-main-hero-visual,
  html body .nphb-hero.nphb-concept-top-v1.nphb-has-main-hero-visual.nphb-main-visual-mobile-landscape > .nphb-inner > img.nphb-main-hero-visual{
    display:block!important;
    grid-column:2!important;
    grid-row:1!important;
    justify-self:end!important;
    align-self:center!important;
    width:var(--nphb-hero-mobile-visual-width-landscape,48%)!important;
    height:var(--nphb-hero-mobile-visual-height-landscape,270px)!important;
    max-width:none!important;
    min-width:0!important;
    position:relative!important;
    transform:translate(var(--nphb-hero-mobile-visual-x-landscape,0px),var(--nphb-hero-mobile-visual-y-landscape,0px))!important;
    object-fit:contain!important;
    border:0!important;
    box-shadow:none!important;
    pointer-events:none!important;
  }
}
/* Móvil H estrecho (<=760px): usa un DIV visual dentro de nphb-copy,
   NO el IMG principal. Aquí ya existía el movimiento correcto; se asegura
   que el tamaño H siga mandando incluso con las reglas de concepto. */
@media (orientation:landscape) and (max-width:760px) and (max-height:600px){
  html body.nphb-mobile-compact .nphb-hero.nphb-concept-top-v1.nphb-main-visual-mobile-landscape .nphb-copy > .nphb-mobile-hero-visual{
    display:flex!important;
    width:var(--nphb-hero-mobile-visual-width-landscape,48%)!important;
    height:var(--nphb-hero-mobile-visual-height-landscape,270px)!important;
    max-width:none!important;
    transform:translate(var(--nphb-hero-mobile-visual-x-landscape,0px),var(--nphb-hero-mobile-visual-y-landscape,0px))!important;
  }
}

/* v10.11.36-dev1 · Opiniones completas sin alterar las tarjetas ni su tipografia de UI Pack.
   El texto original se entrega sólo en la tarjeta aprobada; <details> funciona sin JS. */
body .nphb-review-card .nphb-review-expander{
  display:block!important;
  min-width:0!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
}
body .nphb-review-card .nphb-review-expander-summary{
  display:block!important;
  cursor:pointer;
  list-style:none!important;
  margin:0!important;
  padding:0!important;
  color:inherit;
}
body .nphb-review-card .nphb-review-expander-summary::-webkit-details-marker{display:none!important}
body .nphb-review-card .nphb-review-expander-summary::marker{content:""}
body .nphb-review-card .nphb-review-expander .nphb-review-excerpt{
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
  min-height:0!important;
  margin:0!important;
}
body .nphb-review-card .nphb-review-expander[open] .nphb-review-excerpt{display:none!important}
body .nphb-review-card .nphb-review-expander .nphb-review-complete{
  display:none!important;
  margin:10px 0 0!important;
  min-height:0!important;
  -webkit-line-clamp:unset!important;
  -webkit-box-orient:initial!important;
  overflow:visible!important;
  white-space:pre-wrap!important;
  overflow-wrap:anywhere!important;
}
body .nphb-review-card .nphb-review-expander[open] .nphb-review-complete{display:block!important}
body .nphb-review-card .nphb-review-short{
  display:block!important;
  -webkit-line-clamp:unset!important;
  -webkit-box-orient:initial!important;
  overflow:visible!important;
  min-height:0!important;
}
body .nphb-review-card .nphb-review-toggle{
  display:inline-flex!important;
  align-items:center!important;
  margin:8px 0 0!important;
  color:#2457f5!important;
  font-size:12px;
  font-weight:800;
  line-height:1.4;
  text-decoration:underline;
  text-underline-offset:2px;
}
body .nphb-review-card .nphb-review-less{display:none}
body .nphb-review-card .nphb-review-expander[open] .nphb-review-more{display:none}
body .nphb-review-card .nphb-review-expander[open] .nphb-review-less{display:inline}
body .nphb-review-card .nphb-review-expander-summary:focus-visible{outline:2px solid #2457f5;outline-offset:3px;border-radius:4px}

/* ===============================================================
   NextPing Home Builder v10.11.36-dev3 · 31/10/2026 · SOLO DEV
   /opiniones/ en pantalla estrecha: propiedad visual acotada.
   El CSS Maestro v25.2 añade ancho calc(100%-24px) y padding vertical
   al .site-content > .ast-container general; lo neutralizamos SOLO
   en la pagina de opiniones sin modificar el CSS Maestro global,
   UI Pack/Sistema Visual, footer, Home, reseñas ni comportamiento.
   =============================================================== */
@media (max-width:760px){
  /* #content ofrece especificidad suficiente frente al selector
     general con :not(...) del CSS Maestro incluso con !important. */
  html body.nphb-reviews-page #content.site-content > .ast-container{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding:0!important;
  }
  /* 8 px reales a cada lado; sin doble margen Astra + builder. */
  html body.nphb-reviews-page .nphb-reviews-archive{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:12px 8px 20px!important;
  }
  html body.nphb-reviews-page .nphb-reviews-hero{
    width:100%!important;
    max-width:100%!important;
    margin-bottom:12px!important;
  }
  html body.nphb-reviews-page .nphb-reviews-archive-shell{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding:14px 9px!important;
  }
  /* La caja de valoración tenía width:100% más padding en
     content-box. Al ampliar el lienzo podría crear scroll lateral.
     Se limita a su contenedor para no tocar tipografías de UI Pack. */
  html body.nphb-reviews-page .nphb-reviews-archive-feedback .nphb-reviews-archive-summary{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
}
