
.site-header {
  position: sticky;
  top: 0;
  z-index: 120;
  border-bottom: 1px solid rgba(173, 178, 182, 0.1);
  background: rgba(3, 6, 11, 0.9);
  backdrop-filter: blur(22px);
  box-shadow: 0 14px 38px rgba(0, 0, 0, 0.24);
}

.site-header.is-condensed {
  background: rgba(3, 6, 11, 0.96);
}

.site-header-inner {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 22px;
  min-height: 78px;
  transition: min-height 180ms ease;
}

.site-header.is-condensed .site-header-inner {
  min-height: 70px;
}

.site-brand {
  display: inline-flex;
  align-items: center;
  min-width: 0;
}

.site-brand-logo {
  display: block;
  width: auto;
  height: 42px;
  max-width: 272px;
}

#primary-menu,
.menu {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-width: 0;
}

.header-nav-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 11px;
  border: 1px solid transparent;
  border-radius: 999px;
  color: rgba(234, 236, 238, 0.8);
  font-size: 0.84rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  white-space: nowrap;
}

.header-nav-link:hover,
.header-nav-link:focus-visible {
  color: var(--o4-white);
  background: rgba(255, 255, 255, 0.055);
}

.header-nav-link.is-active {
  color: var(--o4-white);
  border-color: rgba(173, 178, 182, 0.18);
  background:
    linear-gradient(135deg, rgba(200, 184, 141, 0.72), rgba(17, 19, 24, 0.58));
}

.header-right {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
}

.header-search {
  display: block;
  width: 300px;
}

.header-search input {
  min-width: 0;
  width: 100%;
  min-height: 46px;
  border-radius: 999px;
  background: rgba(3, 6, 11, 0.52);
}

.header-submit-cta {
  min-width: 154px;
  white-space: nowrap;
}

.header-submit-label-short {
  display: none;
}

.nav-toggle {
  display: none;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 14px;
  border: 1px solid rgba(173, 178, 182, 0.22);
  border-radius: var(--o4-radius);
  color: var(--o4-white);
  background: rgba(255, 255, 255, 0.055);
}
