/* Site nav additions (Bid Calendar + Tools links). Loaded after main CSS. */
.site-header .nav { flex-wrap: wrap; justify-content: flex-end; gap: .35rem 1rem; }
.site-header .nav a[aria-current="page"] { color: #fff; box-shadow: inset 0 -2px 0 var(--orange, #e85d04); }
.site-header .nav a.nav-cta[aria-current="page"] { box-shadow: none; }
@media (max-width: 1100px) {
  .site-header .nav { gap: .3rem .8rem; }
  .site-header .nav a { font-size: .9rem; }
}
@media (max-width: 900px) {
  .site-header .header-inner { flex-wrap: wrap; row-gap: .35rem; padding-bottom: .55rem; }
  .site-header .nav {
    display: flex; order: 3; flex: 1 0 100%;
    flex-wrap: wrap; justify-content: flex-start; align-items: center;
    overflow: visible; min-width: 0;
    gap: .4rem .9rem; padding: .15rem 0 .1rem;
  }
  .site-header .nav::-webkit-scrollbar { display: none; }
  .site-header .nav a { white-space: nowrap; font-size: .88rem; }
  .site-header .nav .nav-cta { padding: .3rem .65rem; }
}
/* Small phones (320-414px): keep every header item, incl. "Request a quote", on screen. */
@media (max-width: 480px) {
  .site-header .header-inner { gap: .35rem .75rem; }
  .site-header .brand { min-width: 0; }
  .site-header .brand-name { font-size: .95rem; letter-spacing: .03em; }
  .site-header .brand-sub { font-size: .62rem; }
  .site-header .nav { gap: .35rem .75rem; }
  .site-header .nav a { font-size: .84rem; }
  .site-header .nav .nav-cta { padding: .28rem .6rem; }
  .site-header .header-tools { flex-direction: row; flex-wrap: wrap; align-items: baseline; gap: .1rem .8rem; }
}
