.rankings-hero {
  background: radial-gradient(circle at top, rgba(79, 70, 229, 0.25), transparent 55%);
}

.breadcrumbs {
  font-size: var(--font-size-sm);
  color: var(--color-text-muted);
  margin-bottom: var(--space-4);
}

.breadcrumbs ol {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
}

.breadcrumbs li + li::before {
  content: "/";
  margin: 0 var(--space-1);
  color: var(--color-text-muted);
}

.rankings-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
  gap: var(--space-8);
  align-items: center;
}

.rankings-hero-actions {
  margin-top: var(--space-4);
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
}

.rankings-hero-media figcaption {
  font-size: var(--font-size-xs);
  color: var(--color-text-muted);
  margin-top: var(--space-2);
}

.rankings-alert {
  margin-top: var(--space-4);
}

.rankings-filters {
  margin-top: var(--space-6);
}

.rankings-section-header {
  max-width: 52rem;
  margin: 0 auto var(--space-6);
  text-align: left;
}

.rankings-section-header p {
  margin-top: var(--space-2);
}

.rankings-table-wrapper {
  overflow-x: auto;
}

.rankings-note {
  margin-top: var(--space-3);
  font-size: var(--font-size-sm);
  color: var(--color-text-muted);
}

.rankings-genre-grid {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
  gap: var(--space-6);
  align-items: flex-start;
}

.rankings-genre-tables {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-4);
}

.rankings-genre-tables article:last-child {
  grid-column: 1 / -1;
}

.rankings-cta-text {
  margin-top: var(--space-4);
}

.rankings-multi-grid {
  display: grid;
  grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
  gap: var(--space-6);
  align-items: stretch;
}

.rankings-list {
  list-style: disc;
  padding-left: 1.25rem;
  color: var(--color-text-muted);
}

.rankings-list li + li {
  margin-top: var(--space-2);
}

.rankings-methodology-card {
  margin-top: var(--space-4);
}

.rankings-bottom-cta-card {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}

.rankings-bottom-links {
  margin-top: var(--space-2);
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
}

.rankings-section {
  display: none;
}

.rankings-section.is-active {
  display: block;
}

.rankings-beginners-grid,
.rankings-single-grid {
  align-items: flex-start;
}

.rankings-graphics-grid {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
  gap: var(--space-6);
  align-items: flex-start;
}

@media (max-width: 960px) {
  .rankings-hero-grid,
  .rankings-genre-grid,
  .rankings-multi-grid,
  .rankings-graphics-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .rankings-genre-tables {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 640px) {
  .rankings-hero-actions,
  .rankings-bottom-links {
    flex-direction: column;
    align-items: stretch;
  }

  .rankings-section-header {
    text-align: left;
  }
}
