.tst-site-footer,
.tst-site-footer * {
  box-sizing: border-box;
}

.tst-site-footer {
  background: #080e18;
  color: #a9b8cc;
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  padding: 2.5rem 0;
}

.tst-site-footer__inner {
  align-items: center;
  display: grid;
  gap: 1rem 2rem;
  grid-template-columns: minmax(10rem, 1fr) minmax(16rem, auto) auto auto;
  margin-inline: auto;
  max-width: 76rem;
  padding-inline: clamp(1.1rem, 4vw, 2rem);
}

.tst-site-footer__brand {
  color: #fff !important;
  font-size: 1.05rem;
  font-weight: 850;
  letter-spacing: -0.04em;
  text-decoration: none;
}

.tst-site-footer__brand span {
  color: #4380ff;
}

.tst-site-footer p {
  color: #a9b8cc !important;
  font-size: 0.8rem;
  margin: 0;
}

.tst-site-footer__nav {
  display: flex;
  gap: 1.25rem;
}

.tst-site-footer__nav a,
.tst-site-footer .tst-site-attribution {
  color: #c4cede !important;
  font-size: 0.78rem;
  text-decoration-color: rgb(196 206 222 / 55%);
  text-underline-offset: 0.25rem;
  white-space: nowrap;
}

.tst-site-footer__nav a:hover,
.tst-site-footer .tst-site-attribution:hover {
  color: #fff !important;
  text-decoration-color: currentcolor;
}

.tst-site-footer a:focus-visible {
  border-radius: 0.2rem;
  outline: 3px solid #8ab1ff;
  outline-offset: 3px;
}

.tst-standard-template {
  background: #f5f6f0;
  color: #101827;
  margin: 0;
}

.tst-standard-site {
  background: #f5f6f0;
  min-height: 100vh;
}

.tst-standard-main {
  margin-inline: auto;
  max-width: 76rem;
  padding: clamp(3rem, 7vw, 6rem) clamp(1.1rem, 4vw, 2rem);
}

.tst-standard-main > article {
  margin-inline: auto;
  max-width: 52rem;
}

.tst-standard-main :where(h1, h2, h3, p, li) {
  overflow-wrap: anywhere;
}

.tst-standard-main h1 {
  font-size: clamp(2.5rem, 6vw, 5rem);
  letter-spacing: -0.06em;
  line-height: 0.98;
}

.tst-standard-main :where(a) {
  color: #1d4ed8;
}

@media (max-width: 58rem) {
  .tst-site-footer__inner {
    align-items: start;
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 38rem) {
  .tst-site-footer {
    padding-block: 2rem;
  }

  .tst-site-footer__inner {
    grid-template-columns: 1fr;
  }

  .tst-site-footer__nav {
    flex-wrap: wrap;
  }
}
