.main-content { min-height: 60vh; }

.reveal {
  opacity: 0;
  transform: translateY(14px);
  transition: opacity var(--transition-base), transform var(--transition-base);
}
.reveal[data-visible='true'] { opacity: 1; transform: translateY(0); }

.load-more-sentinel { height: 1px; }

.load-more-wrap { display: flex; justify-content: center; margin-top: var(--space-6); }

.two-col {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-6);
  align-items: center;
}
@media (max-width: 800px) {
  .two-col { grid-template-columns: 1fr; }
}

.badge-row { display: flex; gap: var(--space-2); flex-wrap: wrap; justify-content: center; margin-top: var(--space-5); }

.stack { display: flex; flex-direction: column; gap: var(--space-3); }
.cluster { display: flex; align-items: center; flex-wrap: wrap; gap: var(--space-3); }

.text-center { text-align: center; }
.muted { color: var(--color-text-muted); }
.faint { color: var(--color-text-faint); }

@media (max-width: 640px) {
  .container { padding-inline: var(--space-4); }
  .section { padding-block: var(--space-6); }
  h1 { font-size: 1.9rem; }
}

/* 404 page */
.error-page {
  min-height: 70vh;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: var(--space-6);
}
.error-page .code {
  font-family: var(--font-heading);
  font-weight: 800;
  font-size: 5rem;
  color: var(--color-primary);
  line-height: 1;
}
