/* Menú móvil refinado: sin cambios de color ni de grosor de fuente */
@media (max-width: 768px) {
  html body header .nav-container > .nav-links {
    text-align: center !important;
  }

  html body header .nav-container > .nav-links > a {
    display: block !important;
    text-align: center !important;
    font-size: 1.08rem !important;
    letter-spacing: .06em !important;
    padding: 17px 24px !important;
    border-radius: 0 !important;
    border-bottom: 1px solid color-mix(in srgb, currentColor 12%, transparent) !important;
    opacity: 0;
    transform: translateY(8px);
    animation: mmSoftIn .6s cubic-bezier(.22, 1, .36, 1) forwards;
    transition: opacity .3s ease, letter-spacing .3s ease !important;
  }
  html body header .nav-container > .nav-links > a:hover,
  html body header .nav-container > .nav-links > a:active {
    letter-spacing: .09em !important;
  }

  html body header .nav-container > .nav-links > a:nth-child(1) { animation-delay: .05s; }
  html body header .nav-container > .nav-links > a:nth-child(2) { animation-delay: .10s; }
  html body header .nav-container > .nav-links > a:nth-child(3) { animation-delay: .15s; }
  html body header .nav-container > .nav-links > a:nth-child(4) { animation-delay: .20s; }
  html body header .nav-container > .nav-links > a:nth-child(5) { animation-delay: .25s; }
  html body header .nav-container > .nav-links > a:nth-child(6) { animation-delay: .30s; }
  html body header .nav-container > .nav-links > a:nth-child(7) { animation-delay: .35s; }

  html body header .nav-container > .nav-links > a:last-of-type {
    border-bottom: 0 !important;
  }
  html body header .nav-container > .nav-links > a.btn-accent {
    width: fit-content !important;
    min-width: 200px;
    margin: 22px auto 10px !important;
    padding: 14px 34px !important;
    border-radius: 999px !important;
    border-bottom: 0 !important;
    letter-spacing: .05em !important;
  }

  /* Desplegable de idiomas: más compacto */
  html body header .nav-container > .language-switcher-mobile .language-menu {
    width: auto !important;
    min-width: 138px !important;
    height: auto !important;
    min-height: 0 !important;
    padding: 4px !important;
    gap: 0 !important;
  }
  html body header .nav-container > .language-switcher-mobile .language-menu a {
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 8px 10px !important;
    line-height: 1.25 !important;
  }
}

@keyframes mmSoftIn {
  from { opacity: 0; transform: translateY(8px); }
  to   { opacity: 1; transform: none; }
}

@media (prefers-reduced-motion: reduce) {
  header .nav-links a {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
}
