/* NVR Studios — Tubelight navbar v1.0
   Pill flotante con indicador deslizante + glow (desktop)
   Pill inferior con iconos (móvil) · Dropdown Servicios */

.nav .nav-links {
  position: relative;
  display: flex;
  align-items: center;
  gap: 2px;
  background: rgba(255,255,255,0.04);
  border: 0.5px solid var(--iron);
  border-radius: 999px;
  padding: 4px;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}
.nav .nav-link {
  padding: 9px 18px;
  border-radius: 999px;
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  gap: 7px;
  background: none;
  border: none;
  transition: color 0.3s ease;
}
.nav .nav-link::after { content: none }
.nav .nav-link.active::before { content: none }
.nav .nav-link.active { color: var(--white) }
.nav .nav-link .nav-icon { display: none; width: 17px; height: 17px; flex-shrink: 0 }

/* Lámpara deslizante */
.nav .nav-lamp {
  position: absolute;
  top: 4px;
  bottom: 4px;
  left: 0;
  width: 0;
  border-radius: 999px;
  background: rgba(255,122,26,0.07);
  opacity: 0;
  pointer-events: none;
  transition:
    left 0.55s cubic-bezier(0.3, 1.3, 0.4, 1),
    width 0.55s cubic-bezier(0.3, 1.3, 0.4, 1),
    opacity 0.3s ease;
}
.nav .nav-lamp .lamp-bar {
  position: absolute;
  top: -5px;
  left: 50%;
  transform: translateX(-50%);
  width: 30px;
  height: 3px;
  background: var(--papaya);
  border-radius: 0 0 4px 4px;
}
.nav .nav-lamp .lamp-bar::before {
  content: "";
  position: absolute;
  width: 48px;
  height: 22px;
  background: rgba(255,122,26,0.22);
  border-radius: 999px;
  filter: blur(10px);
  top: -9px;
  left: 50%;
  transform: translateX(-50%);
}
.nav .nav-lamp .lamp-bar::after {
  content: "";
  position: absolute;
  width: 16px;
  height: 12px;
  background: rgba(255,122,26,0.35);
  border-radius: 999px;
  filter: blur(5px);
  top: -3px;
  left: 50%;
  transform: translateX(-50%);
}

/* Dropdown Servicios */
.nav .nav-svc { position: relative; display: flex }
.nav .nav-svc-btn {
  cursor: pointer;
  font-family: 'Courier New', monospace;
  font-size: 11px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--aluminum);
}
.nav .nav-svc-btn:hover { color: var(--white) }
.nav .nav-svc-btn.active { color: var(--white) }
.nav .nav-svc .caret { font-size: 8px; transition: transform 0.3s ease; display: inline-block; margin-left: -2px }
.nav .nav-svc.open .caret { transform: rotate(180deg) }
.nav .nav-dropdown {
  position: absolute;
  top: calc(100% + 16px);
  left: 50%;
  transform: translateX(-50%) translateY(8px);
  min-width: 320px;
  background: rgba(14,14,16,0.94);
  backdrop-filter: blur(18px) saturate(140%);
  -webkit-backdrop-filter: blur(18px) saturate(140%);
  border: 0.5px solid var(--iron);
  border-radius: 14px;
  padding: 8px;
  box-shadow: 0 18px 48px rgba(0,0,0,0.5);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.28s ease, transform 0.28s cubic-bezier(0.2,0.8,0.2,1), visibility 0.28s;
  z-index: 90;
}
.nav .nav-svc.open .nav-dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0);
}
.nav .nav-dropdown a {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 13px 16px;
  border-radius: 9px;
  text-decoration: none;
  font-family: 'Helvetica Neue', 'Inter', Arial, sans-serif;
  font-weight: 700;
  font-size: 14px;
  letter-spacing: -0.01em;
  text-transform: none;
  color: var(--white);
  transition: background 0.22s ease, color 0.22s ease;
}
.nav .nav-dropdown a:hover { background: rgba(255,122,26,0.09); color: var(--papaya) }
.nav .nav-dropdown a .num { font-family: 'Courier New', monospace; font-size: 10px; letter-spacing: 0.18em; color: var(--papaya) }
.nav .nav-dropdown a .tag {
  margin-left: auto;
  font-family: 'Courier New', monospace;
  font-size: 8px;
  letter-spacing: 0.16em;
  color: var(--papaya);
  border: 0.5px solid rgba(255,122,26,0.45);
  border-radius: 3px;
  padding: 3px 6px;
}
.nav .nav-dropdown .dd-all {
  border-top: 0.5px solid var(--iron);
  margin-top: 6px;
  font-family: 'Courier New', monospace;
  font-weight: 400;
  font-size: 10px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--aluminum);
}
.nav .nav-dropdown .dd-all:hover { color: var(--papaya); background: none }

/* ── Móvil: pill inferior con iconos ── */
@media (max-width: 900px) {
  /* backdrop-filter en .nav crea un containing block y rompería el position:fixed del pill */
  .nav { backdrop-filter: none !important; -webkit-backdrop-filter: none !important; background: rgba(24,24,26,0.96) !important }
  .nav .nav-links {
    display: flex;
    position: fixed;
    bottom: max(16px, env(safe-area-inset-bottom));
    left: 50%;
    transform: translateX(-50%);
    z-index: 95;
    background: rgba(18,18,20,0.85);
    backdrop-filter: blur(18px) saturate(140%);
    -webkit-backdrop-filter: blur(18px) saturate(140%);
    box-shadow: 0 10px 36px rgba(0,0,0,0.5);
    gap: 0;
    padding: 5px;
  }
  .nav .nav-link { padding: 12px 13px }
  .nav .nav-link .nav-label { display: none }
  .nav .nav-link .nav-icon { display: block }
  .nav .nav-svc .caret { display: none }
  .nav .nav-svc { position: static }
  .nav .nav-dropdown {
    position: fixed;
    top: auto;
    bottom: calc(max(16px, env(safe-area-inset-bottom)) + 62px);
    left: 50%;
    min-width: 0;
    width: min(340px, calc(100vw - 32px));
    transform: translateX(-50%) translateY(8px);
  }
  .nav .nav-svc.open .nav-dropdown { transform: translateX(-50%) translateY(0) }
  .wa-float { bottom: 90px !important; right: 18px !important; width: 50px !important; height: 50px !important }
}

@media (prefers-reduced-motion: reduce) {
  .nav .nav-lamp, .nav .nav-dropdown, .nav .nav-svc .caret { transition: none }
}
