/* Overrides for the shared masthead and footer. */

/* Masthead runs the full viewport width so the Contact button sits flush with the right edge. */
@media (min-width: 900px) {
  .av-masthead .av-nav-inner { max-width: none; padding-right: 0; }
}

.av-directory-credit { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; margin: 0; padding: 0 0 28px; font-size: 12px; line-height: 1.5; }
.av-directory-credit span { opacity: .8; }
.av-directory-credit a { display: inline-flex; opacity: .85; transition: opacity .2s; }
.av-directory-credit a:hover, .av-directory-credit a:focus-visible { opacity: 1; }
.av-directory-credit img { display: block; width: auto; height: 14px; }
@media (max-width: 899px) {
  .av-directory .av-directory-bottom { padding-bottom: 20px; }
  .av-directory-credit { padding-bottom: 75px; }
}

/* Solutions menu: the same three-column panel on every page, hanging from the masthead under the nav
   (the base rules centre it on the viewport, and the pages that did not load them showed a squeezed
   single column with page-sized headings). */
@media (min-width: 900px) {
  .av-masthead .av-nav-inner { position: relative; }
  .av-nav-inner details.av-solutions-menu { position: static; }
  .av-nav-inner .av-solutions-menu > .av-solutions-panel {
    position: absolute; top: 100%; left: auto; right: 24px; transform: none; margin: 0;
    width: min(820px, calc(100vw - 48px)); max-height: calc(100dvh - 120px);
    border-radius: 0 0 10px 10px; background: #fff; box-shadow: 0 18px 40px #0921232b;
  }
  .av-nav-inner .av-solutions-menu .av-solutions-group a { color: #092123; text-decoration: none; }
  .av-nav-inner .av-solutions-menu .av-solutions-group a:hover { background: #eaf0ef; }
  .av-nav-inner .av-solutions-menu[open] > summary { box-shadow: 0 2px 0 #092123; }
}
.av-nav-inner .av-solutions-menu .av-solutions-group h2 { font-family: inherit; font-size: 11px; font-weight: 600; line-height: 1.5; letter-spacing: .09em; margin: 0 0 12px; padding: 0 10px; text-transform: uppercase; color: #527365; }
.av-nav-inner .av-solutions-menu .av-solutions-group a { display: block; font-size: 14px; line-height: 1.5; padding: 10px; }
