@font-face {
    font-family: BitcountSingle;
    src: url(/assets/fonts/Bitcount_Single/BitcountSingle-VariableFont_CRSV,ELSH,ELXP,slnt,wght.ttf);
}

@font-face {
    font-family: RedHatDisplay;
    src: url(/assets/fonts/Red_Hat_Display/RedHatDisplay-VariableFont_wght.ttf);
}

:root {
    --text: #eddede;
    --background: #020202;
    --primary: #e28a8a;
    --secondary: #911414;
    --accent: #f50d0d;
}

* {
    margin: 0;
    box-sizing: border-box;

    font-family: RedHatDisplay;
    font-optical-sizing: auto;
    font-style: normal;
    font-synthesis: none;
    text-rendering: optimizeLegibility;

    scroll-behavior: smooth;
}

body {
    overflow-x: hidden;

    width: 100vw;
    min-height: 100vh;

    display: grid;
    place-items: center;
    gap: 30px;

    background-color: var(--background);
    color: var(--text);
}

a, b {
    color: var(--accent);

    text-decoration: none;

    &:focus {
        outline: none;
    }
}

#header {
    width: 100%;
    padding: 100px 0;

    display: grid;
    place-items: center;
    grid-auto-flow: column;
    gap: 10px;

    font-family: BitcountSingle;

    & > * {
        font-family: inherit;
    }

    & > h1 {
        font-size: 48px;
        font-weight: 300;
    }

    & > a {
        font-size: 16px;
        font-weight: 400;
    }
}

@media screen and (max-width: 700px) {
    #header {
        display: flex;
        flex-direction: column;
    }
}

#description {
    width: 60%;
    min-width: 300px;

    & > p > em {
        font-weight: bold;

        background: linear-gradient(90deg, #00ff00, #ffffff, #ff0000);
        background-clip: text;
        -webkit-text-fill-color: transparent;
    }
}

#hallofflame {
    width: 80%;

    display: grid;
    place-items: center;
    gap: 50px;
}

.section {
    width: 100%;

    display: grid;
    place-items: center;

    & > * {
        width: 100%;
    }

    & > h2 {
        margin: 20px 0;

        font-family: BitcountSingle;
        font-size: 32px;
        font-weight: 300;
    }
}

.people {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 10px;

    & > div {
        max-width: 400px;
        min-width: 200px;
        padding: 20px;

        display: grid;
        place-items: center;
        gap: 10px;

        background-color: var(--card);

        & > h4 {
            width: 100%;
            font-size: 24px;
        }

        & > img {
            width: 90%;
            aspect-ratio: 1;
            border-radius: 5px;
        }
    }
}

@media screen and (max-width: 900px) {
    .people {
        grid-template-columns: 1fr 1fr;
    }
}

@media screen and (max-width: 600px) {
    .people {
        grid-template-columns: 1fr;
    }
}
