.winners {
  padding: 64px 24px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.winners-inner {
  max-width: var(--max-width);
  margin: 0 auto;
  display: grid;
  gap: 32px;
}

.winners-header {
  display: grid;
  gap: 16px;
}

.winners-header h2 {
  font-size: 32px;
  font-weight: 700;
}

.winners-podium {
  display: grid;
  grid-template-columns: repeat(3, 198px);
  gap: 200px;
  justify-content: center;
  align-items: end;
  padding: 64px 0 32px;
}

.winner-card {
  display: grid;
  gap: 1rem;
  justify-items: center;
  text-align: center;
}

.winner-info {
  display: grid;
  gap: 16px;
}

.winner-info h3 {
  font-size: 24px;
  font-weight: 700;
}

.winner-rank {
  font-size: 16px;
  font-weight: 700;
}

.winner-rank--blue {
  color: #0465ff;
}

.winner-rank--red {
  color: #fb422d;
}

.winner-rank--green {
  color: #02c13d;
}

.winner-bar {
  width: 100%;
  border-radius: 8px 8px 0 0;
  border-style: solid;
  border-width: 2px 2px 0 2px;
}

.winner-bar--blue {
  height: 125px;
  border-color: #0465ff;
  background: linear-gradient(
    to bottom,
    rgba(4, 101, 255, 0.7),
    rgba(11, 33, 14, 0.7)
  );
}

.winner-bar--red {
  height: 206px;
  border-color: #f63c2e;
  background: linear-gradient(
    to bottom,
    rgba(246, 60, 46, 0.7),
    rgba(11, 33, 14, 0.7)
  );
}

.winner-bar--green {
  height: 125px;
  border-color: #02c13d;
  background: linear-gradient(
    to bottom,
    rgba(2, 193, 61, 0.7),
    rgba(11, 33, 14, 0.7)
  );
}

.winners-cta {
  display: grid;
  justify-items: center;
}

@media (max-width: 1024px) {
  .winners-podium {
    gap: 60px;
  }
}

@media (max-width: 768px) {
  .winners {
    padding: 40px 24px;
  }

  .winners-podium {
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    padding: 32px 0 16px;
  }

  .winner-info h3 {
    font-size: 16px;
  }

  .winner-rank {
    font-size: 12px;
  }

  .winner-bar--blue,
  .winner-bar--green {
    height: 80px;
  }

  .winner-bar--red {
    height: 130px;
  }

  .winners-header h2 {
    font-size: 24px;
  }
}
