.contest-hero {
  text-align: center;
  max-width: 720px;
  margin: 0 auto var(--space-8);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-2);
}

/* Mobile-first: одна колонка -> две -> три. */
.contest-grid {
  grid-template-columns: 1fr;
}

@media (min-width: 640px) {
  .contest-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1024px) {
  .contest-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
