/* Header sections share the same centered content edge. */
.market-bar .top-info-band-inner,
.masthead > .masthead-inner,
.main-nav > .nav-links {
  width: min(1360px, calc(100% - clamp(32px, 4vw, 64px)));
  margin-inline: auto;
}

.market-bar .top-info-band-inner {
  justify-content: space-between;
}

.market-scroll-area {
  flex: 0 1 auto;
  width: min(100%, 920px);
  margin-left: auto;
}

.market-bar-inner {
  justify-content: flex-end;
}

.masthead-inner { min-height: 76px; height: 76px; }
.brand { min-width: 0; }
.masthead .brand-logo {
  display: block;
  width: min(260px, 22vw);
  max-height: 68px;
  height: auto;
  object-fit: contain;
  object-position: left center;
}
.masthead-actions { align-items: center; }
.nav-links a { position: relative; }
.nav-links a.active::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -1px;
  left: 0;
  height: 3px;
  background: #D71920;
}
.nav-links a:focus-visible,
.masthead-actions button:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 3px;
}

@media (max-width: 1100px) {
  .market-bar .top-info-band-inner,
  .masthead > .masthead-inner,
  .main-nav > .nav-links {
    width: min(1400px, calc(100% - 32px));
  }
}

@media (min-width: 1600px) {
  .market-bar .top-info-band-inner,
  .masthead > .masthead-inner,
  .main-nav > .nav-links {
    width: min(1400px, calc(100% - 80px));
  }
}

@media (max-width: 820px) {
  .masthead > .masthead-inner { min-height: 66px; }
  .masthead .brand-logo { width: min(52vw, 230px); max-height: 58px; }
  .market-bar .top-info-band-inner { width: calc(100% - 20px); }
  .market-scroll-area { flex: 1 1 0; width: 0; }
  .market-bar-inner { justify-content: flex-start; }
}

@media (min-width: 821px) {
  .masthead-inner { height: 76px; }
  .masthead-actions { gap: 8px; }
  .masthead-actions .icon-button {
    display: grid;
    width: 44px;
    height: 44px;
    place-items: center;
    border-radius: 8px;
    transition: background-color .16s ease;
  }
  .masthead-actions .icon-button:hover { background: #ffffff12; }
  .nav-links { height: 44px; gap: clamp(10px, 1.2vw, 18px); }
  .nav-links a { font-size: 10px; letter-spacing: .025em; }
  .nav-links a:hover::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: -1px;
    left: 0;
    height: 2px;
    background: #D71920;
    opacity: .7;
  }
}
