/*
 * H11.6-HDR2 R2
 * Desktop header geometry stabilization.
 *
 * Purpose:
 * - Keep brand, primary navigation, search and actions in one row.
 * - Override inherited flex/wrap/position rules that produced a detached top row.
 * - Use the full desktop viewport width instead of compressing everything
 *   inside the former 1480px container.
 * - Add controlled compact tiers for medium desktop widths.
 */

@media (min-width: 1100px) {
  header.site-header.hdr2-desktop-header {
    height: 88px !important;
    min-height: 88px !important;
    overflow: visible !important;
  }

  header.site-header.hdr2-desktop-header > .hdr2-header-inner {
    width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    min-height: 0 !important;
    display: grid !important;
    grid-template-columns: minmax(205px, 260px) minmax(0, 1fr) !important;
    align-items: center !important;
    align-content: center !important;
    gap: 18px !important;
    padding-inline: clamp(18px, 2.4vw, 42px) !important;
    margin: 0 !important;
    overflow: visible !important;
    flex-wrap: nowrap !important;
  }

  .hdr2-header-inner > .hdr2-brand {
    grid-column: 1 !important;
    align-self: center !important;
    min-width: 0 !important;
    margin: 0 !important;
    position: static !important;
    inset: auto !important;
    transform: none !important;
  }

  .hdr2-header-inner > .hdr2-main-nav {
    grid-column: 2 !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 100% !important;
    display: grid !important;
    grid-template-columns: max-content minmax(0, 1fr) !important;
    align-items: center !important;
    align-content: center !important;
    justify-items: stretch !important;
    justify-content: stretch !important;
    gap: clamp(10px, 1.3vw, 22px) !important;
    margin: 0 !important;
    padding: 0 !important;
    position: static !important;
    inset: auto !important;
    flex: none !important;
    flex-wrap: nowrap !important;
    overflow: visible !important;
  }

  .hdr2-main-nav > .hdr2-primary-links {
    grid-column: 1 !important;
    align-self: center !important;
    justify-self: start !important;
    display: flex !important;
    align-items: center !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 2px !important;
    width: max-content !important;
    min-width: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    position: static !important;
    inset: auto !important;
    transform: none !important;
  }

  [dir="rtl"] .hdr2-main-nav > .hdr2-primary-links {
    justify-self: end !important;
  }

  .hdr2-main-nav > .hdr2-nav-actions {
    grid-column: 2 !important;
    align-self: center !important;
    justify-self: stretch !important;
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: clamp(6px, .75vw, 10px) !important;
    margin: 0 !important;
    padding: 0 !important;
    position: static !important;
    inset: auto !important;
    transform: none !important;
    overflow: visible !important;
    border: 0 !important;
  }

  [dir="rtl"] .hdr2-main-nav > .hdr2-nav-actions {
    justify-content: flex-start !important;
  }

  .hdr2-header-search {
    width: clamp(170px, 16vw, 270px) !important;
    min-width: 150px !important;
    max-width: 270px !important;
    flex: 1 1 220px !important;
  }

  .hdr2-user-trigger {
    min-width: 180px !important;
    max-width: 220px !important;
  }

  .hdr2-lang-switch,
  .hdr2-post-btn,
  .hdr2-auth-actions,
  .hdr2-user-menu {
    flex: 0 0 auto !important;
  }

  .hdr2-brand-copy,
  .hdr2-user-copy {
    min-width: 0 !important;
  }

  .hdr2-brand-copy .brand-text,
  .hdr2-brand-copy .brand-sub,
  .hdr2-user-copy .header-user-name,
  .hdr2-user-copy small {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }
}

@media (min-width: 1280px) and (max-width: 1499px) {
  header.site-header.hdr2-desktop-header > .hdr2-header-inner {
    grid-template-columns: minmax(185px, 220px) minmax(0, 1fr) !important;
    gap: 12px !important;
    padding-inline: 18px !important;
  }

  .hdr2-brand {
    gap: 9px !important;
  }

  .hdr2-brand-mark {
    width: 46px !important;
    height: 46px !important;
  }

  .hdr2-brand-copy .brand-text {
    font-size: 18px !important;
  }

  .hdr2-brand-copy .brand-sub {
    display: none !important;
  }

  .hdr2-employer-link {
    display: none !important;
  }

  .hdr2-nav-link {
    padding-inline: 10px !important;
    font-size: 13px !important;
  }

  .hdr2-header-search {
    width: clamp(150px, 13vw, 190px) !important;
    min-width: 145px !important;
    max-width: 190px !important;
  }

  .hdr2-user-trigger {
    min-width: 165px !important;
    max-width: 190px !important;
  }

  .hdr2-user-copy {
    max-width: 92px !important;
  }

  .hdr2-lang-switch {
    width: 48px !important;
    padding-inline: 0 !important;
  }

  .hdr2-lang-switch > span {
    display: none !important;
  }

  .hdr2-post-btn {
    padding-inline: 13px !important;
  }
}

@media (min-width: 1100px) and (max-width: 1279px) {
  header.site-header.hdr2-desktop-header > .hdr2-header-inner {
    grid-template-columns: minmax(150px, 180px) minmax(0, 1fr) !important;
    gap: 8px !important;
    padding-inline: 12px !important;
  }

  .hdr2-brand-copy .brand-sub,
  .hdr2-employer-link,
  .hdr2-primary-links > a[href*="career-advice"],
  .hdr2-lang-switch > span {
    display: none !important;
  }

  .hdr2-brand-mark {
    width: 42px !important;
    height: 42px !important;
  }

  .hdr2-brand-copy .brand-text {
    font-size: 17px !important;
  }

  .hdr2-nav-link {
    padding-inline: 8px !important;
    font-size: 12.5px !important;
  }

  .hdr2-header-search {
    width: 46px !important;
    min-width: 46px !important;
    max-width: 46px !important;
    flex: 0 0 46px !important;
    padding: 5px !important;
  }

  .hdr2-header-search input {
    position: absolute !important;
    inline-size: 1px !important;
    block-size: 1px !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  .hdr2-user-trigger {
    min-width: 150px !important;
    max-width: 170px !important;
  }

  .hdr2-user-copy {
    max-width: 78px !important;
  }

  .hdr2-lang-switch {
    width: 46px !important;
    padding-inline: 0 !important;
  }

  .hdr2-post-btn {
    padding-inline: 10px !important;
    font-size: 12px !important;
  }
}
