/* Shared navigation layout and homepage product-image interaction. */
@media (min-width: 801px) {
  .main-nav>.container {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .main-nav>.container>a,
  .nav-dropdown>a {
    min-width: 0;
  }

  .nav-dropdown>a {
    width: 100%;
  }

  .dropdown-menu {
    width: 100%;
  }
}

.promo-image-link {
  display: block;
}

.promo-image-link:focus-visible {
  outline: 2px solid var(--blue);
  outline-offset: 3px;
}

.promo-image-link img {
  transition: opacity 160ms ease;
}

.promo-image-link:hover img {
  opacity: .82;
}

/* Sidebar contact information follows a clear title, image, then details order. */
.side-contact .side-contact-banner {
  display: flex;
  min-height: 54px;
  overflow: hidden;
  background: #f4f4f4;
}

.side-contact .side-contact-banner span {
  display: flex;
  width: 100%;
  min-height: 54px;
  padding: 0 15px;
  align-items: center;
  color: #168bd0;
  font-size: 21px;
  font-weight: normal;
}

.side-contact .side-contact-image {
  display: block;
  width: 100%;
  height: auto;
  border-bottom: 1px solid #edf0f1;
}

@media (max-width: 520px) {
  body .breadcrumbs h1 {
    margin: 0 0 3px;
  }
}

/* Rich-text images preserve their natural size until they exceed the detail column. */
.product-description .description-copy img,
article.content-panel img {
  max-width: 100%;
  height: auto;
}

.company-news-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0 0 18px;
}

.company-news-heading h2 {
  margin: 0;
  padding-left: 12px;
  border-left: 4px solid var(--blue);
  color: #555;
  font-size: 18px;
  font-weight: normal;
}

.company-news-heading a {
  color: var(--blue);
  font-size: 12px;
}

.company-news article+article {
  margin-top: 14px;
}

.company-news article a:hover,
.company-news-heading a:hover {
  color: var(--blue-dark);
}

/* Dropdown primary links are highlighted by script.js with the shared current state. */
.main-nav>.container>.nav-dropdown>a.current {
  background: var(--blue-dark);
  color: #fff;
}

/* Keep the legal notice and sitemap together while the hotline remains right-aligned. */
.copyright-left {
  display: inline-flex;
  align-items: center;
  gap: 16px;
}

.copyright-left .footer-sitemap-link {
  display: inline;
  margin: 0;
}

@media (max-width: 800px) {
  .copyright-left {
    display: flex;
    justify-content: center;
  }
}
