/* Bounded post-deploy phone/navigation hotfix. Existing asset URLs remain immutable. */
.site-header .header-layout { width: min(1340px, calc(100% - 32px)); gap: 1rem; }
.site-header .primary-navigation { order: 1; gap: 1rem; }
.header-call { order: 2; flex: 0 0 auto; gap: .3em; min-height: 44px; white-space: nowrap; }
.hero__phone { margin-top: 1rem; }
.hero__phone a { display: inline-block; min-height: 44px; padding-block: .5rem; color: #f0c967; font-size: .9rem; line-height: 1.5; text-underline-offset: .22em; }
.hero__phone strong { white-space: nowrap; }
/* Keep all desktop links available without crowding the phone action. */
@media (min-width: 981px) and (max-width: 1280px) {
  .site-header .header-layout { display: grid; grid-template-columns: 1fr auto; gap: 0; padding-block: 4px; }
  .site-header .site-logo-link { grid-column: 1; grid-row: 1; justify-self: start; }
  .header-call { grid-column: 2; grid-row: 1; }
  .site-header .primary-navigation { grid-column: 1 / -1; grid-row: 2; justify-content: space-between; }
}
@media (max-width: 980px) {
  .site-header .header-layout { gap: .5rem; }
  .site-header .site-logo-link { position: relative; z-index: 102; min-width: 0; }
  .header-call { position: relative; z-index: 102; order: 1; margin-inline-start: auto; min-height: 44px; padding-inline: .85rem; }
  .header-call__number { display: none; }
  .site-header .menu-button { order: 2; flex: 0 0 46px; }
  /* The additional navigation item and expanded submenus must remain scrollable. */
  .site-header .primary-navigation { order: 3; align-content: start; gap: .8rem; padding: 6rem 1.5rem 2rem; overflow-y: auto; overscroll-behavior: contain; }
}
