/* Shared Party Life nav (from the homepage), used by pages that are not the homepage. */
:root { --nav: 68px; --ease: cubic-bezier(.16, 1, .3, 1); --pad: clamp(16px, 3vw, 48px); }
.nav { position: sticky; top: 0; z-index: 800; height: var(--nav); display: flex; align-items: center; gap: 32px; padding-inline: var(--pad); background: var(--ink); border-bottom: 1px solid var(--rule); }
.nav-logo { display: flex; align-items: center; min-height: 44px; }
.nav-logo img { height: 30px; width: auto; }
.nav-links { display: flex; gap: 28px; margin-left: auto; }
.nav-links a { font: 500 15px var(--cover); letter-spacing: .1em; text-transform: uppercase; text-decoration: none; color: var(--paper); min-height: 44px; display: inline-flex; align-items: center; border-bottom: 2px solid transparent; }
.nav-links a:hover { border-bottom-color: var(--spot); }
.nav-cta { min-height: 44px; padding: 10px 18px; font-size: 15px; }
.btn:hover { filter: brightness(1.12); }
.nav-toggle { display: none; width: 44px; height: 44px; background: transparent; border: 1px solid var(--rule); position: relative; }
.nav-toggle span { position: absolute; left: 12px; right: 12px; height: 2px; background: var(--paper); transition: transform .3s var(--ease); }
.nav-toggle span:first-child { top: 17px; } .nav-toggle span:last-child { top: 25px; }
.nav-toggle[aria-expanded="true"] span:first-child { transform: translateY(4px) rotate(45deg); }
.nav-toggle[aria-expanded="true"] span:last-child { transform: translateY(-4px) rotate(-45deg); }
@media (max-width: 860px) {
  .nav { gap: 10px; }
  .nav-logo img { height: 22px; }
  .nav-cta { margin-left: auto; padding: 8px 12px; font-size: 13px; white-space: nowrap; letter-spacing: .06em; }
  .nav-toggle { display: block; }
  .nav-links { display: none; position: absolute; top: var(--nav); left: 0; right: 0; flex-direction: column; gap: 0; background: var(--ink); border-bottom: 1px solid var(--rule); padding: 8px var(--pad) 16px; }
  .nav-links.open { display: flex; }
  .nav-links a { font-size: 22px; min-height: 52px; border-bottom: 1px solid var(--rule); }
}
