/* Small standards and accessibility additions; original animation styles remain unchanged. */

#logo-loading {
  opacity: 0;
}

.loading__brand {
  margin-bottom: 13px;
}

.loading__logo {
  width: 160px;
  height: 60px;
}

.loading__progress {
  font-size: 0;
  line-height: 0;
}

.skip-link {
  position: fixed;
  top: 1rem;
  left: 1rem;
  z-index: 100;
  padding: 0.75rem 1rem;
  color: #fff;
  background: #111;
  transform: translateY(-200%);
  transition: transform 160ms ease-out;
}

.skip-link:focus {
  color: #fff;
  transform: translateY(0);
}

a:focus-visible,
button:focus-visible,
[role="button"]:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 5px;
}

button.pointer__layer-item {
  display: block;
  padding: 0;
  color: inherit;
  font: inherit;
  background: transparent;
  border: 0;
  appearance: none;
}

.pointer__layer-item-area,
.pointer__layer-item-bg,
.pointer__layer-item-dot {
  display: block;
}

.pointer__layer-item:focus-visible {
  outline-color: #fff;
  outline-offset: -1rem;
  border-radius: 50%;
}

@media (prefers-reduced-motion: reduce) {
  .skip-link {
    transition: none;
  }
}
