.site-shell {
  min-height: 100vh;
}

.site-header,
.site-main,
.site-footer {
  width: min(100%, var(--content-max-width) + (var(--content-padding) * 2));
  padding-inline: var(--content-padding);
  margin-inline: auto;
}

.site-header {
  padding-top: 1.25rem;
}

.site-main {
  padding-top: 0.5rem;
}

.site-main > * + * {
  margin-top: 1rem;
}

.site-footer {
  padding-top: 1.5rem;
  padding-bottom: 2rem;
}

.site-title-link {
  color: var(--muted-text);
  text-decoration: none;
}

.site-nav {
  display: flex;
  gap: 0.9rem;
  font-size: 1rem;
}
