/* ========== LAST-RESORT CONTACT FALLBACK ========== */
/* #site-fallback is hidden by its `hidden` attribute and revealed in exactly two
   situations, both of which mean the normal page never rendered:

   1. JavaScript is disabled — the <noscript><style> block in index.html un-hides it.
   2. The boot sequence threw — js/boot-guard.js clears `hidden` and puts
      .boot-failed on <body>.

   Every value here is hardcoded rather than a var(--token) on purpose: this is the
   stylesheet that has to work when something else has already gone wrong, so it
   must not depend on globaldesigntokens.css having loaded first. For the same
   reason it declares no `display` on #site-fallback — that would beat the UA's
   [hidden] rule and leak the fallback onto the working page. */

#site-fallback {
  padding: 3rem 1.25rem;
  background-color: #ffffff;
  color: #333333;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  line-height: 1.6;
}

.site-fallback-inner {
  max-width: 640px;
  margin: 0 auto;
  border: 1px solid #d9dde2;
  border-radius: 8px;
  padding: 2rem;
}

.site-fallback-inner h1 {
  font-size: 1.6rem;
  color: #1a2a3a;
  margin-bottom: 0.75rem;
}

.site-fallback-note {
  margin-bottom: 1.5rem;
  color: #333333;
}

.site-fallback-contact {
  list-style: none;
  margin: 0;
  padding: 0;
}

.site-fallback-contact li {
  padding: 0.5rem 0;
  border-top: 1px solid #eceff2;
}

.site-fallback-contact li:first-child {
  border-top: none;
}

.site-fallback-contact strong {
  display: inline-block;
  min-width: 7.5rem;
  color: #1a2a3a;
}

.site-fallback-contact a {
  color: #a8570f; /* 5.2:1 on #fff — an accessible darkening of --accent-color */
  text-decoration: underline;
}

/* When boot failed, the empty #include-* containers would otherwise sit there
   spinning forever (see layout.css's :empty loading state). Collapse them so the
   fallback is the only thing on the page. */
body.boot-failed [id^="include-"] {
  display: none !important;
}
