.page-container {
    width: 100vw;
    height: auto;
    padding: 5rem 2rem;
    box-sizing: border-box;

    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-direction: column;
    gap: 8rem;
}

.awards-content {
    width: 100%;
    max-width: 1200px;
    height: auto;
    padding: 0;
    box-sizing: border-box;

    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    gap: 0;
}

.awards-content h1 {
    width: 100%;
    text-align: center;
    font-size: clamp(2rem, 5vw, 3rem);
    font-weight: 700;
    text-transform: uppercase;
    margin: 0 0 1rem 0;
}

.page-container h2 {
    font-size: 2.5rem;
    margin: 0 0 2rem 0;
    text-align: center;
}

.category-container {
    width: 100%;
    height: auto;
    padding: 0;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    gap: 1rem;
    margin-top:6rem;
}

.top-list {
    width: 100%;
    height: auto;
    padding:0;
    box-sizing: border-box;
    display: grid;
    gap: 1rem;
}

.top-list.top-5{
    grid-template-columns: repeat(4, minmax(calc(calc(1200px - 3rem) / 4), 1fr));
}

.top-list.top-3{
    max-width: 900px;
    margin: 0 auto;
    grid-template-columns: repeat(3, minmax(calc(calc(1200px - 3rem) / 4), 1fr));
}

.top-list.top-1{
    max-width: 600px;
    margin: 0 auto;
    grid-template-columns: repeat(2, minmax(calc(calc(1200px - 3rem) / 4), 1fr));
}



.top-card {
    width: 100%;
    height: auto;
    padding: 0;
    box-sizing: border-box;
    background-color: #17181b;
    border-radius: 8px;
    overflow: hidden;

    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    gap: 0;

    background-color: rgb(102, 0, 236);
    border: 1px solid rgb(102, 0, 236);
    color: rgb(213,213,213);
    transform: scale(1);
    transition: all 0.3s ease;
}

.top-card:hover {
    background-color: #00FF85;
    border: 3px solid #00FF85;
    color: black;
    transform: scale(1.05);
}
.top-card.winner {
    grid-column: span 2;
    grid-row: span 2;
}

.title {
    grid-column: span 2;
    text-align: center;
}

.top-list.top-3 .title.title-finalists {
    grid-column: span 1;
}

.top-list.top-1 .title.title-finalists {
    display: none;
}

.top-list.top-finalists .title.title-finalists {
    grid-column: 1 / -1;
}

.top-list.top-finalists {
    grid-template-columns: repeat(5, minmax(calc(calc(1200px - 3rem) / 5), 1fr));
}

.top-list.top-finalists.top-3,
.top-list.top-finalists.top-1 {
    max-width: 1200px;
}

.top-list.top-finalists.top-3 .top-card:first-of-type {
    grid-column-start: 2;
}

.top-list.top-finalists.top-1 .top-card {
    grid-column-start: 3;
}

.top-list.top-finalists .top-placeholder {
    aspect-ratio: 16 / 9;
    height: auto;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.top-list.top-5.web3-top3 .title-winner {
    order: 0;
}

.top-list.top-5.web3-top3 .title-2nd-place {
    grid-column: span 1;
    order: 1;
}

.top-list.top-5.web3-top3 .title-3rd-place {
    grid-column: span 1;
    order: 2;
}

.top-list.top-5.web3-top3 .top-card.winner {
    order: 3;
    grid-row: span 3;
}

.top-list.top-5.web3-top3 .top-card.card-2nd-place {
    order: 4;
}

.top-list.top-5.web3-top3 .top-card.card-3rd-place {
    order: 5;
}

.top-list.top-5.web3-top3 .title-finalists {
    order: 6;
}

.top-list.top-5.web3-top3 .top-card.finalist {
    order: 7;
}


h2.title {
    font-size: 1.5rem;
    margin: 1.5rem 0;
}

.top-card .game-image {
    width: 100%;
    height: 100%;
    aspect-ratio: 16/9;
    padding:0;
    box-sizing: border-box;
    overflow: hidden;
}

.top-card .game-image img,
.top-card .game-image video  {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.top-card .game-details {
    box-sizing: border-box;
    padding: 1rem;

    width: 100%;
    height: auto;

    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 0.25rem;
}

.top-card .game-details h3,
.top-card .game-details h4 {
    margin: 0;
    padding: 0;

    width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.top-card .game-details h3 {
    font-size: 1.2rem;
    font-weight: 700;
}

.top-card .game-details h4 {
    font-size: 1rem;
    font-weight: 400;
}

.category-sponsors {
    width: 100%;
    height: auto;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 0.5rem 2rem;
    justify-content: center;
    align-items: center;
    padding: 0;
    box-sizing: border-box;
}

.category-sponsors p {
    width: 100%;
    text-align: center;
    margin: 0;
}

.category-sponsors a {
    width: 320px;
    height: auto;
    aspect-ratio: 5 / 2;
}

.category-sponsors a img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.category-link {
    padding: 0.5rem 1rem;
    background-color: transparent;
    border: 1px solid #6600ec;
    border-radius: 8px;
    color: #6600ec;
    font-size: 1.15rem;
    margin-top: 1rem;
}

.category-link:hover {
    cursor: pointer;
    background-color: #6600ec;
    color: white;
}

@media (max-width: 1240px) {
    .top-list.top-5,
    .top-list.top-3,
    .top-list.top-1 {
        max-width: 1200px !important;
        margin: 0 auto  !important;
        grid-template-columns: repeat(2, minmax(420px, 1fr))  !important;
    }

    .top-card.winner {
        grid-column: span 2 !important;
        grid-row: span 1 !important;
        order: -1 !important;
    }

    .web3-top3 .title-2nd-place { order: 0; }
    .web3-top3 .title-3rd-place { order: 1; }
    .web3-top3 .card-2nd-place { order: 2; }
    .web3-top3 .card-3rd-place { order: 3; }
    .web3-top3 .title-finalists { order: 4; }
    .web3-top3 .finalist { order: 5; }

    .title.title-winner {
        order: -2 !important;
    }

    .top-list.top-3 .title.title-finalists {
        grid-column: span 2 !important;
    }

    .top-list.top-finalists.top-3 .top-card:first-of-type,
    .top-list.top-finalists.top-1 .top-card:first-of-type {
        grid-column-start: 1;
    }
}

@media (max-width: 900px) {
    .top-list.top-5,
    .top-list.top-3,
    .top-list.top-1 {
        max-width: 900px !important;
        margin: 0 auto;
        grid-template-columns: 1fr !important;
    }

    .top-card.winner {
        grid-column: span 1 !important;
        grid-row: span 1 !important;
    }

    .top-list.top-5.web3-top3 .title-winner { order: 0; }
    .top-list.top-5.web3-top3 .winner { order: 1; }
    .top-list.top-5.web3-top3 .title-2nd-place { order: 2; }
    .top-list.top-5.web3-top3 .top-card.card-2nd-place { order: 3; }
    .top-list.top-5.web3-top3 .title-3rd-place { order: 4; }
    .top-list.top-5.web3-top3 .top-card.card-3rd-place { order: 5; }
    .top-list.top-5.web3-top3 .title-finalists { order: 6; }
    .top-list.top-5.web3-top3 .finalist { order: 7; }

    .title {
        grid-column: span 1 !important;
    }

    .top-list.top-3 .title.title-finalists {
        grid-column: span 1 !important;
    }
}





/** PARTNER LOGOS **/
#partner-logos {
    width: 100%;
    height: auto;
    padding: 4rem 2rem;
    margin: 0;
    box-sizing: border-box;

    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

#partner-logos .logos-content {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 4rem 0;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    gap: 4rem;
}

#partner-logos .logos-content .logo-group {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
}

#partner-logos .logos-content .logo-group h3 {
    grid-column: 1 / -1;
    font-size: 2rem;
    margin:0;
}

#partner-logos .logos-content .logo-group.diamond {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
}

#partner-logos .logos-content .logo-group.gold {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}

#partner-logos .logos-content .logo-group.media {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
}

#partner-logos .logos-content .logo-group .logo {
    width: 100%;
    height: auto;
    aspect-ratio: 5 / 2.25;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 1rem 1.5rem;
    box-sizing: border-box;
    background-color: white;
    border-radius: 8px;
    transform: scale(1);
    transition: all 350ms ease-in-out;
}

#partner-logos .logos-content .logo-group .logo:hover {
    cursor: pointer;
    transform: scale(1.05);
}

#partner-logos .logos-content .logo-group .logo img {
    width: 100%;
    height: 100%;
    object-fit: contain
}

#partner-logos .past-partners {
    margin: 2rem auto 0 auto;
    padding: 1rem 2rem;
    font-size: 1.1rem;
    border-radius: 8px;
    border: 1px solid rgb(213, 213, 213);
    background-color: transparent;
}

#partner-logos .past-partners:hover {
    cursor: pointer;
    color: black;
    background-color: rgb(213, 213, 213);
}
/** PARTNER LOGOS **/