/* Compact, collision-safe header shared by home, catalog, and product pages. */
.site-header {
  column-gap: clamp(12px, 2vw, 28px) !important;
  padding-left: clamp(18px, 3vw, 48px) !important;
  padding-right: clamp(18px, 3vw, 48px) !important;
}

.site-header .brand {
  min-width: 0 !important;
  max-width: 300px;
}

.site-header .brand-title,
.site-header .brand strong {
  font-size: 18px !important;
  letter-spacing: .16em !important;
}

.site-header .brand-sub,
.site-header .brand em,
.site-header .brand small {
  font-size: 9px !important;
  letter-spacing: .3em !important;
}

.site-header .nav,
.site-header .main-nav {
  min-width: 0;
  gap: clamp(12px, 1.55vw, 26px) !important;
}

.site-header .nav > a,
.site-header .main-nav > a,
.site-header .collections-trigger {
  font-size: 12px !important;
  letter-spacing: .16em !important;
}

.site-header .lang {
  gap: 2px !important;
  padding: 3px !important;
  flex: 0 0 auto;
}

.site-header .lang span {
  width: 32px !important;
  height: 32px !important;
  font-size: 11px !important;
}

.site-header .lang-switch {
  gap: 2px !important;
  padding: 3px !important;
  flex: 0 0 auto;
}

.site-header .lang-switch button {
  padding: 8px 10px !important;
  font-size: 11px !important;
}

@media (min-width: 1181px) {
  .site-header {
    grid-template-columns: minmax(230px, 300px) minmax(0, 1fr) auto !important;
  }
}

@media (max-width: 1180px) and (min-width: 861px) {
  .site-header {
    height: auto !important;
    min-height: 112px;
    grid-template-columns: minmax(0, 1fr) auto !important;
    row-gap: 8px !important;
    padding-top: 11px !important;
    padding-bottom: 11px !important;
  }

  .site-header .brand {
    max-width: 280px;
  }

  .site-header .nav,
  .site-header .main-nav {
    grid-column: 1 / -1 !important;
    order: 3 !important;
    width: 100%;
    justify-content: center !important;
    flex-wrap: wrap !important;
    overflow: visible !important;
  }
}

@media (max-width: 860px) {
  .site-header .brand {
    max-width: calc(100vw - 130px);
  }

  .site-header .brand-title,
  .site-header .brand strong {
    font-size: 15px !important;
  }

  .site-header .nav,
  .site-header .main-nav {
    column-gap: 16px !important;
    row-gap: 9px !important;
  }

  .site-header .nav > a,
  .site-header .main-nav > a,
  .site-header .collections-trigger {
    font-size: 11px !important;
    letter-spacing: .13em !important;
  }
}

@media (max-width: 460px) {
  .site-header .lang span {
    width: 29px !important;
    height: 29px !important;
    font-size: 10px !important;
  }

  .site-header .lang-switch button {
    padding: 7px 8px !important;
    font-size: 10px !important;
  }

  .site-header .nav,
  .site-header .main-nav {
    justify-content: flex-start !important;
  }
}
