/* Header Builder — layout shell */
.mhb {
  --mhb-ink: #12161f;
  --mhb-line: #d9dde3;
  --mhb-paper: #fff;
  --mhb-wash: #f4f5f7;
  position: relative;
  z-index: 40;
  background: var(--mhb-paper);
  color: var(--mhb-ink);
}
.mhb--overlap {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  background: transparent;
}
.mhb--overlap.mhb--scheme-light,
.mhb--overlap:not(.is-scrolled) {
  color: #fff;
}
.mhb.is-scrolled {
  box-shadow: 0 1px 0 var(--mhb-line);
  background: var(--mhb-paper);
  color: var(--mhb-ink);
}
.mhb--shrink.is-scrolled .mhb-row--sticky {
  --mhb-row-h: 56px;
}
.mhb-row {
  min-height: var(--mhb-row-h, 64px);
  display: flex;
  align-items: stretch;
}
.mhb-row--border {
  border-bottom: 1px solid var(--mhb-line);
}
.mhb-row--sticky.is-stuck {
  position: sticky;
  top: 0;
  z-index: 45;
  background: inherit;
}
.mhb-row__inner {
  width: 100%;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 16px;
  min-height: inherit;
}
.mhb-row[data-flex="equal-sides"] .mhb-row__inner {
  grid-template-columns: 1fr auto 1fr;
}
.mhb-row[data-flex="equal-sides"] .mhb-col--left { justify-content: flex-start; }
.mhb-row[data-flex="equal-sides"] .mhb-col--right { justify-content: flex-end; }
.mhb-row .mhb-col:only-child,
.mhb-row__inner:has(> .mhb-col:only-child) {
  grid-template-columns: 1fr;
}
.mhb-col {
  display: flex;
  align-items: center;
  gap: var(--mhb-gap, 16px);
  min-width: 0;
}
.mhb-col[data-align="center"] { justify-content: center; }
.mhb-col[data-align="end"] { justify-content: flex-end; }
.mhb-col[data-align="start"] { justify-content: flex-start; }
.mhb-col--right { justify-content: flex-end; }
.mhb-col--center { justify-content: center; }

.mhb-el {
  display: inline-flex;
  align-items: center;
  min-width: 0;
  color: var(--mhb-el-color, inherit);
  background: var(--mhb-el-bg, transparent);
  gap: var(--mhb-el-gap, 0);
  border-radius: var(--mhb-el-radius, 0);
}
.mhb-desktop { display: block; }
.mhb-mobile { display: none; }
@media (max-width: 880px) {
  .mhb-desktop { display: none; }
  .mhb-mobile { display: block; }
}
.screen-reader-text {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
}
