:root {
  --page-header-top-height: 2rem;
  --page-header-middle-height: 6rem;
  --page-header-bottom-height: 4.5rem;
  --page-header-mobile-height: 3rem;
}

.page-header {
  background-color: var(--color-surface);
  box-shadow: var(--shadow-md);
  position: relative;
  z-index: 100;
  top: 0;
}

.page-header__top {
  height: var(--page-header-top-height);
  display: none;
}

.page-header__top-container {
  display: flex;
  align-items: center;
}

.page-header__top-info {
  margin-left: auto;
}

.page-header__middle {
  padding: var(--spacing-sm) 0;
  height: var(--page-header-middle-height);
  display: none;
}

.page-header__middle-container {
  display: grid;
  align-items: center;
  grid-gap: var(--spacing-lg);
  grid-template-columns: max-content max-content 1fr max-content max-content;
}

.page-header__actions {
  display: flex;
  align-items: center;
  gap: var(--spacing-md);
}

.page-header__mobile {
  height: var(--page-header-mobile-height);
  display: flex;
}

.page-header__mobile .mobile-header {
  width: 100%;
}

.page-header__mobile-search {
  padding: 0 var(--spacing-sm) var(--spacing-sm);
}

.header-mobile__mobile-search-input {
  width: 100%;
  border-radius: var(--radius-xs);
  border: 2px solid var(--color-primary);
  padding: var(--spacing-xs) var(--spacing-sm);
}

@media (min-width: 1240px) {
  .page-header--sticky {
    position: sticky;
    top: calc(var(--toolbar-height) + (var(--page-header-top-height) * -1));
  }

  .page-header__top,
  .page-header__middle {
    display: flex;
  }

  .page-header__mobile,
  .page-header__mobile-search {
    display: none;
  }
}

.page-header--sticky {
  transition: transform 0.3s ease;
}

.page-header--hidden.page-header--sticky {
  transform: translateY(-100%);
  pointer-events: none;
}

