/* Loaded after every page stylesheet so shared navigation cannot be pushed
   off-canvas by legacy page-specific desktop header scaling. */
@media (min-width: 1221px) and (max-width: 2200px) {
  .site-header .site-header__inner {
    width: calc(100% - 24px);
    max-width: none;
    margin-inline: auto;
    padding-inline: 0;
    gap: 8px;
  }

  .site-header .brand {
    gap: 12px;
  }

  .site-header .brand__logo {
    width: 116px;
  }

  .site-header .brand__divider {
    width: 1px;
    height: 42px;
    display: block;
  }

  .site-header .brand__descriptor {
    width: auto;
    max-width: 126px;
    display: block;
    font-size: 0.52rem;
    line-height: 1.55;
  }

  .site-header .site-nav {
    min-width: 0;
    margin-left: auto;
    display: flex;
    gap: clamp(8px, 0.75vw, 14px);
  }

  .site-header .site-nav a {
    padding-block: 12px;
    font-size: clamp(0.55rem, 0.62vw, 0.66rem);
    letter-spacing: 0.025em;
    white-space: nowrap;
  }

  .site-header .header-contacts {
    display: flex;
    gap: 6px;
  }

  .site-header .site-header__cta {
    width: 146px;
    min-width: 146px;
    min-height: 44px;
    height: 44px;
    margin-left: 0;
    padding: 10px 12px;
    border-radius: 11px;
    font-size: 0.61rem;
  }

  .site-header .mobile-menu {
    margin-left: 0;
    display: block;
    flex: 0 0 auto;
  }

  .site-header .mobile-menu__toggle {
    width: 44px;
    height: 44px;
  }
}

@media (max-width: 1220px) {
  .site-header .site-nav,
  .site-header .site-header__cta,
  .site-header .site-header__inner > .header-contacts {
    display: none;
  }

  .site-header .mobile-menu {
    margin-left: auto;
    display: block;
  }
}
