.site-container {
  width: 100%;
  max-width: var(--container-wide);
  margin-inline: auto;
  padding-inline: clamp(var(--gutter-mobile), 4vw, var(--gutter-desktop));
}

.site-container--text {
  max-width: calc(var(--container-text) + (2 * var(--gutter-desktop)));
}

.site-container--narrow {
  max-width: calc(var(--container-narrow) + (2 * var(--gutter-desktop)));
}

.site-main {
  min-height: 42vh;
}

.section {
  padding-block: var(--section-y-mobile);
}

.section--subtle {
  background: var(--surface-subtle);
}

.entry-header,
.archive-header {
  padding-block: clamp(var(--space-9), 6vw, var(--space-12));
}

.entry-content {
  padding-block: clamp(var(--space-9), 6vw, var(--space-12));
}

.prose > * + * {
  margin-block-start: var(--space-6);
}

.prose > h2 {
  margin-block-start: var(--space-10);
}

.prose > h3 {
  margin-block-start: var(--space-8);
}

.prose ul,
.prose ol {
  padding-inline-start: 1.5em;
}

.prose img,
.entry-featured-image {
  border-radius: var(--radius-lg);
}

.archive-list {
  display: grid;
  gap: var(--space-7);
  padding-block: var(--space-10) var(--section-y-mobile);
}

.post-summary {
  padding: var(--space-7);
  border: 1px solid var(--border-subtle);
  border-radius: var(--radius-lg);
  background: var(--surface-card);
  box-shadow: var(--shadow-sm);
}

.post-summary__title {
  margin-block: var(--space-2) var(--space-3);
  font-size: var(--fs-xl);
}

.post-summary__title a {
  color: var(--text-heading);
  text-decoration: none;
}

.entry-meta {
  color: var(--text-muted);
  font-size: var(--fs-xs);
}

.error-404 {
  display: grid;
  align-items: center;
}

.error-404 h1 {
  margin-block: var(--space-3) var(--space-5);
}

@media (min-width: 1024px) {
  .section {
    padding-block: var(--section-y-desktop);
  }

  .archive-list {
    padding-block-end: var(--section-y-desktop);
  }
}
