 h1 {
      text-align: center;
      font-weight: 700;
      color: #0d6efd;
      margin: 30px 0;
      text-transform: uppercase;
      letter-spacing: 1px;
    }
    .winner-grid {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      gap: 20px;
    }
    .winner-item {
      flex: 0 0 calc(16.66% - 20px); /* 6 per row on large screens */
      box-sizing: border-box;
      position: relative;
    }
    @media (max-width: 1200px) {
      .winner-item { flex: 0 0 calc(20% - 20px); } /* 5 per row */
    }
    @media (max-width: 992px) {
      .winner-item { flex: 0 0 calc(25% - 20px); } /* 4 per row */
    }
    @media (max-width: 768px) {
      .winner-item { flex: 0 0 calc(33.33% - 20px); } /* 3 per row */
    }
    @media (max-width: 576px) {
      .winner-item { flex: 0 0 calc(50% - 20px); } /* 2 per row */
    }

    .winner-card {
      border: none;
      border-radius: 15px;
      overflow: hidden;
      background: #fff;
      box-shadow: 0 4px 10px rgba(0,0,0,0.1);
      transition: transform 0.2s, box-shadow 0.2s;
      height: 100%;
    }
    .winner-card:hover {
      transform: translateY(-6px);
      box-shadow: 0 6px 15px rgba(0,0,0,0.15);
    }
    .winner-card img {
      width: 100%;
      height: 220px;
      object-fit: cover;
    }
    .winner-info {
      text-align: center;
      padding: 15px;
    }
    .winner-info h5 {
      margin-bottom: 5px;
      font-weight: 600;
      font-size: 1rem;
      text-transform: uppercase;
    }
    .winner-info p {
      margin: 0;
      color: #555;
      font-size: 0.9rem;
    }
    .ribbon {
      position: absolute;
      top: 10px;
      left: -5px;
      background: #ffc107;
      color: #000;
      padding: 5px 12px;
      font-weight: 600;
      font-size: 0.8rem;
      border-radius: 0 5px 5px 0;
      box-shadow: 0 2px 6px rgba(0,0,0,0.2);
    }
    .quiz-badge {
      background: #0d6efd;
      color: #fff;
      font-size: 0.8rem;
      border-radius: 50px;
      padding: 3px 10px;
      display: inline-block;
      margin-top: 5px;
    }