.construction-banner {
  padding: 10px 20px;
  background:
    linear-gradient(90deg,
      transparent 0%,
      transparent 31%,
      #ffc72c 31%,
      #ffc72c 69%,
      transparent 69%,
      transparent 100%),
    repeating-linear-gradient(135deg,
      #111 0 18px,
      #ffc72c 18px 36px);
  color: #111;
  font-family: 'Montserrat', Arial, sans-serif;
  font-size: .9rem;
  font-weight: 900;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: .02em;
  text-shadow: 0 1px 0 rgba(255,255,255,.25);
}
.site-header { position: sticky; top: 0; z-index: 50; background: var(--navy); border-bottom: 5px solid var(--gold); }
.nav-inner { min-height: 92px; display: grid; grid-template-columns: 330px minmax(0, 1fr) 200px; align-items: center; gap: 24px; }
.brand { display: grid; grid-template-columns: 64px max-content; align-items: center; gap: 13px; min-width: 0; color: #fff; }
.brand img { width: 64px; height: 64px; object-fit: contain; }
.brand strong { display: block; color: #fff; font-family: 'Bebas Neue', Impact, sans-serif; font-size: 3rem; font-weight: 700; line-height: .84; text-transform: uppercase; white-space: nowrap; }
.brand span span { display: block; color: var(--gold); font-family: 'Montserrat', Arial, sans-serif; font-size: .78rem; font-weight: 900; line-height: 1.15; letter-spacing: .055em; word-spacing: .16em; text-transform: uppercase; white-space: nowrap; }
.brand .subline { color: #fff; font-size: .68rem; margin-top: 4px; letter-spacing: .015em; word-spacing: 0; text-transform: none; }
.nav-links { display: flex; align-items: center; justify-content: center; gap: clamp(12px, 1.35vw, 22px); min-width: 0; }
.nav-links a { position: relative; padding: 34px 0; color: #fff; font-family: 'Montserrat', Arial, sans-serif; font-size: clamp(.68rem, .82vw, .8rem); font-weight: 900; text-transform: uppercase; white-space: nowrap; }
.nav-links a.active, .nav-links a:hover { color: var(--gold); }
.nav-links a.active::after { content: ''; position: absolute; left: 0; right: 0; bottom: 24px; height: 4px; border-radius: 999px; background: var(--gold); }
.mobile-toggle { display: none; }
.visit-btn { width: 200px; white-space: nowrap; }
@media (max-width: 1240px) and (min-width: 981px) { .nav-inner { grid-template-columns: 285px minmax(0, 1fr) 178px; gap: 16px; } .brand { grid-template-columns: 56px max-content; gap: 10px; } .brand img { width: 56px; height: 56px; } .brand strong { font-size: 2.45rem; } .brand span span { font-size: .65rem; } .brand .subline { display: none; } .visit-btn { width: 178px; font-size: .78rem; } .nav-links { gap: 10px; } .nav-links a { font-size: .66rem; } }
@media (max-width: 980px) { .nav-inner { min-height: 84px; grid-template-columns: 1fr auto; gap: 14px; padding: 10px 0; } .brand { grid-template-columns: 58px max-content; gap: 11px; } .brand img { width: 58px; height: 58px; } .brand strong { font-size: 2.35rem; } .brand span span { font-size: .64rem; } .brand .subline { display: none; } .mobile-toggle { display: inline-flex; justify-self: end; padding: 10px 14px; border: 1px solid rgba(255,255,255,.28); border-radius: 7px; background: transparent; color: #fff; font-family: 'Montserrat', Arial, sans-serif; font-weight: 900; text-transform: uppercase; } .visit-btn { display: none; } .nav-links { display: none; grid-column: 1 / -1; flex-direction: column; align-items: stretch; gap: 0; padding-top: 10px; } .nav-links.is-open, .site-header.menu-open .nav-links { display: flex; } .nav-links a { padding: 13px 0; border-top: 1px solid rgba(255,255,255,.12); } .nav-links a.active::after { display: none; } }
@media (max-width: 430px) { .brand { grid-template-columns: 50px max-content; gap: 9px; } .brand img { width: 50px; height: 50px; } .brand strong { font-size: 2rem; } .brand span span { font-size: .55rem; letter-spacing: .03em; word-spacing: .08em; } }

/* Header fit refinement */
@media (min-width: 981px) {
  .nav-inner {
    grid-template-columns: 300px minmax(0, 1fr) 178px;
    gap: 18px;
  }
  .brand {
    grid-template-columns: 58px max-content;
    gap: 11px;
  }
  .brand img {
    width: 58px;
    height: 58px;
  }
  .brand strong {
    font-size: 2.55rem;
  }
  .brand span span {
    font-size: .66rem;
  }
  .brand .subline {
    font-size: .6rem;
  }
  .nav-links {
    justify-content: center;
    gap: clamp(8px, .9vw, 15px);
  }
  .nav-links a {
    font-size: clamp(.58rem, .72vw, .72rem);
    letter-spacing: 0;
  }
  .visit-btn {
    width: 178px;
    min-width: 178px;
    padding-left: 14px;
    padding-right: 14px;
    font-size: .74rem;
  }
}
@media (max-width: 1180px) and (min-width: 981px) {
  .nav-inner {
    grid-template-columns: 270px minmax(0, 1fr) 160px;
    gap: 12px;
  }
  .brand {
    grid-template-columns: 52px max-content;
  }
  .brand img {
    width: 52px;
    height: 52px;
  }
  .brand strong {
    font-size: 2.25rem;
  }
  .brand span span {
    font-size: .58rem;
  }
  .brand .subline {
    display: none;
  }
  .nav-links {
    gap: 8px;
  }
  .nav-links a {
    font-size: .58rem;
  }
  .visit-btn {
    width: 160px;
    min-width: 160px;
    font-size: .68rem;
  }
}
@media (max-width: 1060px) and (min-width: 981px) {
  .nav-inner {
    grid-template-columns: auto auto;
    gap: 8px 18px;
    padding: 10px 0;
  }
  .brand {
    grid-column: 1 / 2;
  }
  .visit-btn {
    grid-column: 2 / 3;
    justify-self: end;
  }
  .nav-links {
    grid-column: 1 / -1;
    justify-content: center;
  }
  .nav-links a {
    padding: 8px 0 12px;
    font-size: .7rem;
  }
  .nav-links a.active::after {
    bottom: 2px;
  }
}
