.site-loader { display: none; }
html.site-loading { overflow: hidden; }
.site-loading .page-wrap, .site-loading .hero-logo-status { visibility: hidden; }
.site-loader {
  position: fixed;
  inset: 0;
  z-index: 2147483647;
  background: #000;
  color: #397cff;
  opacity: 0;
  pointer-events: none;
  transition: opacity 350ms ease;
}
.site-loading .site-loader { display: block; opacity: 1; pointer-events: auto; }
.site-loader[aria-hidden="true"] { display: block; }
.terminal-loader {
  position: absolute;
  left: clamp(20px, 2vw, 40px);
  right: 20px;
  bottom: 13vh;
  bottom: 13svh;
  font: 400 clamp(11px, 1.05vw, 18px)/1.7 "SFMono-Regular", Consolas, "Liberation Mono", monospace;
  letter-spacing: 0.015em;
  -webkit-font-smoothing: antialiased;
}
.terminal-line { display: flex; align-items: baseline; gap: 0.65em; margin-bottom: 0.65em; }
.terminal-time { color: #34465e; flex: none; }
.terminal-message { overflow-wrap: anywhere; white-space: pre-wrap; }
.terminal-cursor { display: inline-block; animation: terminal-blink 900ms steps(1) infinite; }
@keyframes terminal-blink { 50% { opacity: 0; } }
@media (prefers-reduced-motion: reduce) {
  .site-loader { transition: none; }
  .terminal-cursor { animation: none; }
}
