.language-nav a {
  min-block-size: 40px;
  transition-duration: 160ms;
  transition-property: color, text-decoration-color;
}

.language-nav a:focus-visible,
.home-link:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 3px;
}

.logo,
.rule,
h1,
.message p,
.home-link {
  animation: enter 700ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

.rule { animation-delay: 80ms; }
h1 { animation-delay: 150ms; }
.message p { animation-delay: 220ms; }
.home-link { animation-delay: 290ms; }

@keyframes enter {
  from { opacity: 0; transform: translateY(16px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 600px) {
  .language-nav {
    inset-inline: 14px;
    justify-content: center;
  }

  .message {
    margin-inline: 20px;
    margin-block-end: 46px;
  }

  .backdrop {
    background-position: 58% center;
  }

  h1 {
    line-height: 1.08;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
  }
}
