/* Header-specific styles for Music And Gather */

.site-header {
  box-shadow: 0 14px 40px rgba(0, 0, 0, 0.8);
}

.navbar__brand-text {
  font-size: 0.9rem;
  letter-spacing: 0.22em;
}

.navbar__cta-wrapper {
  margin-left: 16px;
}

.navbar__cta {
  font-size: 0.7rem;
  padding-inline: 18px;
}

/* Mobile layout */
@media (max-width: 960px) {
  .navbar {
    gap: 12px;
  }

  .navbar__nav {
    position: absolute;
    inset-inline: 0;
    top: 100%;
    background: radial-gradient(circle at top, rgba(225, 27, 59, 0.2), transparent 65%), rgba(5, 5, 9, 0.98);
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
    transform-origin: top;
    transform: scaleY(0.9);
    opacity: 0;
    pointer-events: none;
    transition: opacity var(--transition-normal), transform var(--transition-normal);
  }

  .navbar__links {
    display: flex;
    flex-direction: column;
    padding: var(--space-4);
    gap: 6px;
  }

  .navbar__nav.is-open {
    opacity: 1;
    transform: scaleY(1);
    pointer-events: auto;
  }

  .navbar__cta-wrapper {
    display: none;
  }
}


/* Utility class used by JS to lock body scroll when menu open */
.body-nav-open {
  overflow: hidden;
}
