.hall-of-fame {
  background: linear-gradient(180deg, #0b0b0e, #121217);
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.hall-heading {
  display: grid;
  grid-template-columns: 1.25fr .75fr;
  gap: 9vw;
  align-items: end;
  margin-bottom: 60px;
}
.hall-heading h2 { font-size: clamp(50px, 6vw, 88px); }
.hall-heading h2 em { font-style: normal; color: var(--red); }
.hall-heading > p { color: var(--muted); max-width: 500px; }
.winners-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border: 1px solid var(--line);
}
.winner-card {
  padding: 28px;
  min-height: 365px;
  position: relative;
  background: rgba(255,255,255,.015);
  transition: .25s ease;
}
.winner-card + article { border-left: 1px solid var(--line); }
.winner-card:hover { background: rgba(243,25,45,.055); transform: translateY(-5px); }
.winner-top { display: flex; justify-content: space-between; align-items: start; text-transform: uppercase; color: var(--muted); font-size: 10px; letter-spacing: .16em; }
.winner-top strong { font-family: var(--display); font-size: 42px; line-height: .8; color: #383840; }
.winner-medal { width: 52px; height: 52px; border-radius: 50%; display: grid; place-items: center; margin: 65px 0 28px; background: var(--red); color: #fff; box-shadow: 0 0 0 8px rgba(243,25,45,.08); }
.winner-label { text-transform: uppercase; letter-spacing: .16em; font-size: 9px; color: var(--red); margin: 0 0 7px; }
.winner-card h3 { font-size: 27px; }
.winner-meta { display: flex; gap: 22px; margin-top: 28px; padding-top: 18px; border-top: 1px solid var(--line); }
.winner-meta span { font-size: 9px; letter-spacing: .1em; text-transform: uppercase; color: #666670; }
.winner-meta b { display: block; color: #bbb; font-size: 14px; margin-top: 3px; }
.hall-note { display: flex; align-items: center; gap: 10px; color: var(--muted); font-size: 12px; margin: 28px 0 0; }
.hall-note span { width: 22px; height: 2px; background: var(--red); }
@media (max-width: 900px) {
  .hall-heading { grid-template-columns: 1fr; gap: 20px; }
  .winners-grid { grid-template-columns: repeat(2, 1fr); }
  .winner-card:nth-child(3) { border-left: 0; border-top: 1px solid var(--line); }
  .winner-card:nth-child(4) { border-top: 1px solid var(--line); }
}
@media (max-width: 560px) {
  .winners-grid { grid-template-columns: 1fr; }
  .winner-card + article { border-left: 0; border-top: 1px solid var(--line); }
  .winner-card { min-height: 330px; }
}
