@import url('https://fonts.googleapis.com/css2?family=Lato:wght@400;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&display=swap');
body {
    height: 100vh;
    margin: 0;
    padding: 0;
    font-family: 'Lato', sans-serif;
    background-color: #111;
    color: #fefefe;

    /* Background pattern from Toptal Subtle Patterns */
    background: url("img/memphis-mini-dark.webp");
    font-size: 1.2rem;
}
main {
    margin: 0 auto;
    margin-top: 70px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}
article {
    margin-top: 25px;
    display: flex;
}
header {
    font-size: 3rem;
    letter-spacing: 30px;
    font-weight: 700;
    margin-top: 120px;
    margin-bottom: 70px;
    text-align: center;
}
.avatar {
    height: 300px;
    border-radius: 30%;
    box-shadow: 0px 0px 10px 5px rgba(255,255,255,0.5);
    margin-right: 50px;
}
h1 {
    font-weight: 900;
    font-style: italic;
    font-size: 2rem;
}
.games {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 70px;
}
.game {
    position: relative;
    transition: 0.25s;
    user-select: none;
}
.game-img {
    width: 500px;
    height: 350px;
    border-radius: 15px;
}
.game-title {
    position: absolute;
    left: 10px;
    bottom: 5px;
    color: black;
    font-family: 'Bebas Neue', 'Lato', sans-serif;
    font-size: 1.5em;
    margin: 0;
    opacity: 0.9;
    letter-spacing: 1px;
    text-shadow: 2px 0 #fff, -2px 0 #fff, 0 2px #fff, 0 -2px #fff,
             1px 1px #fff, -1px -1px #fff, 1px -1px #fff, -1px 1px #fff;
}
.game a {
    display: block;
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
.game::before {
    content: '';
    background-image: linear-gradient(to left top, #de4343, #d95c2c, #cf7315, #bf8800, #ab9b07, #9cab28, #8aba46, #77c764, #68d689, #5ae3ae, #55f0d1, #5ffbf1);
    position: absolute;
    left:-10px;
    top:-10px;
    width: 520px;
    height: 370px;
    z-index: -1;
    filter: brightness(70%);
    animation: rainbow 5s linear infinite;
    border-radius: 15px;
}
.game:hover {
    transform: scale(1.02);
}
.game:hover::before {
    animation-duration: 1s;
}
footer {
    background-color: black;
    text-align: center;
    padding: 15px 0;
    margin-top: 100px;
}

@keyframes rainbow {
    from {
        filter: hue-rotate(0deg);
    }
    to {
        filter: hue-rotate(360deg);
    }
}