/* ══════════ NAV MENU móvil (componente compartido MT) ══════════
   Hamburguesa + panel a pantalla completa para home y landings de producto
   (los sectores llevan su propio burger de plantilla, anterior y funcional).
   El botón y el panel los monta /nav-menu.js en [data-nav-menu-mount]; los
   enlaces viven SOLO en el JS. Solo visible ≤860px (breakpoint de la home). */

.nav-menu-btn {
  display: none;
  appearance: none; background: none; border: 0; cursor: pointer;
  width: 44px; height: 44px; padding: 10px;
  flex-direction: column; justify-content: center; gap: 5px;
  color: inherit;
}
.nav-menu-btn span { display: block; height: 2px; width: 100%; background: currentColor; border-radius: 2px; }

.nav-menu-panel {
  display: none;
  position: fixed; inset: 0; z-index: 130;
  background: #FCFCFB; color: #241F33;
  padding: 4.6rem 1.6rem 2rem;
  flex-direction: column; gap: .35rem;
  overflow-y: auto;
}
.nav-menu-panel a {
  font-weight: 700; font-size: 1.45rem; letter-spacing: -.01em;
  color: inherit; text-decoration: none; padding: .55rem 0;
  border-bottom: 1px solid rgba(36,31,51,.08);
}
.nav-menu-panel a.nav-menu-cta {
  margin-top: 1.1rem; border: 0; border-radius: 14px;
  background: #6D28D9; color: #fff; text-align: center;
  padding: .8em 1.2em; font-size: 1.15rem;
}
.nav-menu-close {
  position: absolute; top: .9rem; right: 1.1rem;
  appearance: none; background: none; border: 0; cursor: pointer;
  font-size: 2.1rem; line-height: 1; padding: .4rem .6rem; color: inherit;
}
.nav-menu-brand {
  position: absolute; top: 1.35rem; left: 1.6rem;
  font-weight: 800; font-size: 1.25rem; letter-spacing: -.03em; color: inherit; text-decoration: none;
}
body.nav-menu-open { overflow: hidden; }
body.nav-menu-open .nav-menu-panel { display: flex; }

@media (max-width: 860px) {
  .nav-menu-btn { display: flex; }
}
