.site-header {
  position: relative;
  z-index: 50;
  border-bottom: 1px solid rgba(40, 46, 26, 0.9);
  background:
    linear-gradient(180deg, rgba(6, 8, 6, 0.99), rgba(4, 5, 4, 0.98));
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

/* ── Top header bar ─────────────────────────────────────── */

.top-header {
  display: flex;
  align-items: center;
  gap: 14px;
  min-height: 62px;
}

.logo {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
}

.logo-text {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
}

.logo-emblem {
  font-size: 36px;
  color: #8fa032;
  filter: drop-shadow(0 0 6px rgba(140, 165, 40, 0.5));
  line-height: 1;
  flex-shrink: 0;
}

.logo-wordmark {
  display: flex;
  flex-direction: column;
  gap: 1px;
}

.logo-title {
  display: flex;
  flex-direction: row;
  align-items: baseline;
  gap: 0;
  line-height: 1;
}

.logo-plague,
.logo-base {
  font-family: Oswald, Impact, "Arial Black", sans-serif;
  font-size: 26px;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1;
}

.logo-plague {
  color: #e8e2cc;
  text-shadow: 0 1px 8px rgba(0, 0, 0, 0.6);
}

.logo-base {
  color: #b8d030;
  text-shadow: 0 0 12px rgba(160, 200, 40, 0.35);
}

.logo-sub {
  display: block;
  font-family: Inter, Arial, sans-serif;
  font-size: 8px;
  font-weight: 700;
  letter-spacing: 0.32em;
  color: #7a7660;
  text-transform: uppercase;
  white-space: nowrap;
}

/* ── Social icons ───────────────────────────────────────── */

.social-links {
  margin-left: auto;
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.social-link {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  border: 1px solid rgba(90, 100, 68, 0.45);
  background: rgba(12, 14, 10, 0.7);
  color: #9aa48a;
  font-size: 13px;
  font-weight: 700;
  line-height: 1;
  transition: border-color 0.15s, color 0.15s;
}

.social-link:hover {
  border-color: rgba(140, 160, 60, 0.7);
  color: #c8d89a;
}

.social-telegram { font-size: 12px; }
.social-discord  { font-size: 11px; }
.social-vk       { font-size: 9px; letter-spacing: -0.02em; }
.social-youtube  { font-size: 11px; padding-left: 1px; }

/* ── Header action buttons ──────────────────────────────── */

.header-actions {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}

.action-link,
.search-btn {
  height: 30px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  font-size: 11px;
  font-weight: 600;
  font-family: Inter, Arial, sans-serif;
  letter-spacing: 0.01em;
  padding: 0 14px;
  border-radius: 2px;
  white-space: nowrap;
  border: 1px solid #2e3326;
  color: #c8c0a2;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.04), transparent 55%),
    rgba(8, 10, 7, 0.9);
}

.action-link:hover,
.search-btn:hover {
  border-color: #3e4834;
  color: #ddd8bc;
}

.action-link-accent {
  min-width: 102px;
  border-color: #7a9618 #4e6410 #2a380a;
  color: #131a05;
  font-weight: 700;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.2), transparent 46%),
    linear-gradient(180deg, #a8bf30, #627010);
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.16);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.18), 0 2px 6px rgba(0, 0, 0, 0.35);
}

.action-link-accent:hover {
  filter: brightness(1.06);
  color: #131a05;
}

.search-btn {
  cursor: pointer;
  gap: 6px;
  color: #a8a890;
  border-color: #262a20;
}

/* ── Main navigation ────────────────────────────────────── */

.main-nav {
  display: flex;
  align-items: stretch;
  flex-wrap: nowrap;
  gap: 0;
  padding: 0;
  min-height: 38px;
  border-top: 1px solid rgba(32, 36, 26, 0.95);
  background: linear-gradient(180deg, rgba(10, 12, 10, 0.98), rgba(4, 5, 4, 0.99));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.02),
    inset 0 -1px 0 rgba(0, 0, 0, 0.8),
    0 4px 10px rgba(0, 0, 0, 0.3);
  overflow: hidden;
}

.nav-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  flex: 0 0 auto;
  padding: 0 16px;
  border-radius: 0;
  border: 0;
  border-right: 1px solid rgba(255, 255, 255, 0.028);
  color: #b8b09a;
  font-size: 12px;
  text-transform: uppercase;
  font-family: var(--font-heading);
  letter-spacing: 0.03em;
  line-height: 1;
  white-space: nowrap;
  transition: background 0.12s, color 0.12s;
}

.nav-ico {
  display: inline-block;
  flex-shrink: 0;
  color: #8a9060;
  font-size: 13px;
  line-height: 1;
  transform: translateY(-1px);
}

.nav-text {
  display: inline-block;
  line-height: 1;
}

.nav-link:hover {
  color: #ddd8b8;
  background:
    linear-gradient(180deg, rgba(160, 190, 48, 0.14), rgba(70, 90, 14, 0.18) 60%, rgba(8, 10, 5, 0.9));
}

.nav-link:hover .nav-ico {
  color: #b0b870;
}

.nav-link.is-active {
  color: #e8e2c4;
  background:
    linear-gradient(180deg, rgba(180, 212, 56, 0.22), rgba(84, 106, 16, 0.28) 58%, rgba(8, 11, 4, 0.96));
  box-shadow:
    inset 0 1px 0 rgba(190, 220, 60, 0.28),
    inset 0 -1px 0 rgba(0, 0, 0, 0.6);
}

.nav-link.is-active .nav-ico {
  color: #c8c070;
}

