.home-name-heading {
  position: absolute !important;
  width: 1px !important;
  height: var(--cell-h) !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.home-name-banner-shell {
  display: block;
  width: max-content;
  max-width: 100%;
  margin: 0 0 var(--cell-h);
  font: inherit;
  line-height: var(--cell-h);
  background-color: #000000;
}

.home-name-heading:focus-visible + .home-name-banner-shell {
  filter: invert(1);
}

.home-name-banner {
  display: block;
  width: max-content;
  max-width: 100%;
  white-space: pre;
  font: inherit;
  line-height: var(--cell-h);
  user-select: text;
}

.home-name-banner[hidden] {
  display: none;
}

.ascii-red {
  color: #FF0000;
}

.ascii-white {
  color: #FFFFFF;
}

.ascii-grey-light,
.ascii-grey-dark,
.ascii-grey-dark-red {
  color: #FFFFFF;
  background-color: #000000;
}

.ascii-white-red {
  color: #FFFFFF;
  background-color: #FF0000;
}
