/* Header-specific styles for Novoriona */

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

.site-logo {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.3rem 0.6rem;
  border-radius: var(--radius-pill);
  border: 1px solid rgba(245, 200, 76, 0.55);
  background: radial-gradient(circle at top left, rgba(139, 92, 246, 0.4), rgba(5, 5, 16, 0.96));
  box-shadow: var(--shadow-soft);
}

.site-logo span {
  font-weight: 700;
  font-size: var(--font-size-sm);
}

.nav__list {
  background: transparent;
}

.nav__item--cta .nav__link--cta {
  padding-inline: 1.1rem;
  padding-block: 0.45rem;
  border-radius: var(--radius-pill);
  border: 1px solid rgba(245, 200, 76, 0.8);
  background: linear-gradient(135deg, rgba(139, 92, 246, 0.16), rgba(245, 200, 76, 0.18));
  box-shadow: 0 0 0 1px rgba(15, 23, 42, 0.9);
}

.nav__item--cta .nav__link--cta:hover {
  background: linear-gradient(135deg, var(--color-primary), var(--color-accent));
  color: #050510;
  box-shadow: var(--shadow-glow-yellow);
}

/* Mobile navigation panel */
@media (max-width: 959.98px) {
  .nav {
    position: fixed;
    inset-inline: 0;
    top: 3.5rem;
    z-index: 30;
    padding: 0 var(--space-4) var(--space-4);
    pointer-events: none;
  }

  .nav__list {
    width: 100%;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--space-2);
    background: radial-gradient(circle at top left, #1b1333, #050510);
    border-radius: var(--radius-xl);
    border: 1px solid rgba(139, 92, 246, 0.7);
    box-shadow: var(--shadow-strong);
    padding: var(--space-4);
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transform: translateY(-8px);
    transition: opacity var(--transition-base), transform var(--transition-base), max-height var(--transition-base);
  }

  .nav--open .nav__list {
    pointer-events: auto;
    max-height: 500px;
    opacity: 1;
    transform: translateY(0);
  }

  .nav__link {
    width: 100%;
  }
}

@media (min-width: 960px) {
  .nav__list {
    background: transparent;
    box-shadow: none;
    max-height: none;
    opacity: 1;
    transform: none;
  }

  .nav__item--cta .nav__link--cta {
    margin-left: var(--space-2);
  }
}

/* Focus styles for navigation */
.nav__link:focus-visible {
  outline: 2px solid var(--color-accent);
  outline-offset: 4px;
}

.nav-toggle:focus-visible {
  outline: 2px solid var(--color-accent);
  outline-offset: 3px;
}