/* Network wordmarks: preserve the site's fonts, colours and emblem. */
[data-logo-balanced] { min-width: min(100%, var(--logo-min-width, 0px)) !important; max-width: 100%; flex-shrink: 0 !important; }
[data-logo-grid-wrap] > [data-logo-balanced] { grid-column: 1 / -1; justify-self: start; }
[data-logo-wrap] { flex-wrap: wrap !important; row-gap: 12px; }
[data-logo-wrap] > [data-logo-balanced] { flex-shrink: 0 !important; }
[data-logo-balanced] > img,
[data-logo-balanced] > svg,
[data-logo-balanced] > [class*="mark"],
[data-logo-balanced] > [class*="icon"],
[data-logo-balanced] > [class*="symbol"] { flex-shrink: 0; object-fit: contain; }
[data-logo-copy] {
  display: inline-flex !important;
  flex-direction: column !important;
  justify-content: center;
  align-items: center;
  min-width: 0 !important;
  max-width: 100% !important;
  width: var(--logo-copy-width, max-content);
  flex: 0 0 auto !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  gap: .22em;
  text-align: center !important;
}
[data-logo-copy] > [data-logo-line] {
  display: block !important;
  flex: none !important;
  width: max-content !important;
  max-width: none !important;
  margin: 0 !important;
  margin-inline-end: var(--logo-trailing-space, 0px) !important;
  padding: 0 !important;
  white-space: nowrap !important;
  line-height: 1.12 !important;
  text-align: center !important;
}
/* Image signatures scale as one unit, without stretching or cropping. */
[data-logo-image] { min-width: 0 !important; max-width: 100%; }
[data-logo-image] > img,
[data-logo-image] > svg { max-width: 100%; height: auto; object-fit: contain; }
[data-logo-image] > span:has(> svg) { min-width: 0; max-width: 100%; }
[data-logo-image] > span > svg { max-width: 100%; height: auto; object-fit: contain; }
[data-logo-copy] > [data-logo-rule] {
  display: flex !important; align-items: center; justify-content: center;
  gap: .6em; width: var(--logo-copy-width) !important;
  margin-inline-end: 0 !important;
}
[data-logo-rule]::before, [data-logo-rule]::after {
  content: ""; flex: 1 1 0; min-width: .5em;
  height: 1px; background: currentColor; opacity: .55;
}
.footer-top > .brand--balanced-footer > img {
  width: 54px; height: 54px; flex-basis: 54px;
  object-fit: cover; border-radius: 50%;
}
@media (max-width: 480px) {
  [data-logo-host] { flex-wrap: wrap; column-gap: 10px !important; row-gap: 12px; }
  [data-logo-host] > [data-logo-balanced] { flex-shrink: 0 !important; }
  [data-logo-balanced] { column-gap: 8px !important; }
  [data-logo-copy] { gap: .18em; }
}
