.game-grid {
    display: grid;
    gap: 1.25rem;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr));
    margin-top: 1.5rem;
}

.game-card {
    background: rgba(10, 16, 32, .55);
    border: 1px solid rgba(128, 188, 255, .26);
    border-radius: 8px;
    color: inherit;
    display: block;
    overflow: hidden;
    text-decoration: none;
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.game-card img {
    aspect-ratio: 460 / 215;
    display: block;
    object-fit: cover;
    transition: transform .25s ease;
    width: 100%;
}

.game-card span {
    display: block;
    font-weight: 600;
    padding: .85rem 1rem .95rem;
}

.game-card:focus-visible {
    outline: 3px solid #78caff;
    outline-offset: 3px;
}

@media (hover: hover) {
    .game-card:hover {
        border-color: rgba(125, 205, 255, .85);
        box-shadow: 0 12px 30px rgba(0, 0, 0, .28);
        transform: translateY(-3px);
    }

    .game-card:hover img {
        transform: scale(1.04);
    }
}
