/* Premium desktop navigation spacing and interaction polish. */
@media (min-width: 701px) {
  html body .nav .wrap {
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) minmax(240px, 430px) auto !important;
    column-gap: 10px !important;
    align-items: center !important;
  }

  html body .nav .spacer {
    display: none !important;
  }

  html body .nav .menu {
    margin-left: 0 !important;
    padding-right: clamp(20px, 1.7vw, 30px);
    justify-self: end;
    gap: clamp(26px, 1.75vw, 32px) !important;
  }

  html body .nav .search-wrap {
    width: 100% !important;
    max-width: 430px !important;
    margin-left: 0 !important;
  }

  html body .nav .menu > a {
    position: relative;
    isolation: isolate;
    padding: 9px 2px;
    border-radius: 7px;
    transition: color .24s ease, transform .24s cubic-bezier(.2,.8,.2,1), text-shadow .24s ease;
    animation: navLinkReveal .48s both cubic-bezier(.2,.8,.2,1);
  }

  html body .nav .menu > a:nth-child(2) { animation-delay: 45ms; }
  html body .nav .menu > a:nth-child(3) { animation-delay: 90ms; }
  html body .nav .menu > a:nth-child(4) { animation-delay: 135ms; }
  html body .nav .menu > a:nth-child(5) { animation-delay: 180ms; }
  html body .nav .menu > a:nth-child(6) { animation-delay: 225ms; }
  html body .nav .menu > a:nth-child(7) { animation-delay: 270ms; }

  html body .nav .menu > a::after {
    content: "";
    position: absolute;
    left: 2px;
    right: 2px;
    bottom: 3px;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, transparent, var(--gold), var(--gold2), transparent);
    box-shadow: 0 2px 9px rgba(201, 142, 42, .24);
    transform: scaleX(0);
    transform-origin: center;
    transition: transform .28s cubic-bezier(.2,.8,.2,1);
  }

  html body .nav .menu > a:hover,
  html body .nav .menu > a:focus-visible {
    color: var(--gold);
    transform: translateY(-2px);
    text-shadow: 0 7px 18px rgba(201, 142, 42, .18);
    outline: none;
  }

  html body .nav .menu > a:hover::after,
  html body .nav .menu > a:focus-visible::after {
    transform: scaleX(1);
  }

  html body .nav .menu > a:active {
    transform: translateY(0) scale(.98);
  }

  @keyframes navLinkReveal {
    from { opacity: 0; transform: translateY(-7px); }
    to { opacity: 1; transform: translateY(0); }
  }
}

/* Keep comfortable spacing without pushing account/cart off-screen at higher zoom. */
@media (min-width: 701px) and (max-width: 1450px) {
  html body .nav .wrap {
    grid-template-columns: auto minmax(0, 1fr) minmax(210px, 320px) auto !important;
  }

  html body .nav .menu {
    margin-left: 0 !important;
    padding-right: 22px;
    gap: 28px !important;
  }


  html body .nav .search-wrap {
    margin-left: 0 !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html body .nav .menu > a {
    animation: none !important;
    transition-duration: .01ms !important;
  }
}
