* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

@font-face {
    font-family: "Inter";
    src: url("assets/fonts/Inter-VariableFont_opsz,wght.ttf");
}

@font-face {
    font-family: "Lexend Deca";
    src: url("assets/fonts/LexendDeca-VariableFont_wght.ttf");
}

:root {
    --Very-dark-blue-main-background: hsl(233, 47%, 7%);
    --Dark-desaturated-blue-card-background: hsl(244, 38%, 16%);
    --Soft-violet-accent: hsl(277, 64%, 61%);
    --White-main-heading-stats: hsl(0, 0%, 100%);
    --Slightly-transparent-white-main-paragraph: hsla(0, 0%, 100%, 0.75);
    --Slightly-transparent-white-stat-headings: hsla(0, 0%, 100%, 0.6);

    --ff-inter: "Inter";
    --ff-lexend: "Lexend Deca";

    --fw-regular: 400;
    --fw-bold: 700;
}

body {
    background-color: var(--Very-dark-blue-main-background);
    width: 100vw;
    display: flex;
    justify-content: center;
    padding-block: 5.5rem;
    font-family: var(--ff-inter);
}

.card {
    width: 87%;
    background-color: var(--Dark-desaturated-blue-card-background);
    border-radius: 0.5rem;
    overflow: hidden;
}

picture {
    position: relative;
    width: 100%;
    display: grid;
    
    img {
        width: 100%;
    }

    .overlay {
        width: 100%;
        height: 100%;
        position: absolute;
        background-color: rgb(101, 10, 158);
        opacity: 0.5;
        pointer-events: none;
    }
}

.description {
    padding-inline: 1.5rem;
    padding-block: 2.5rem;
    text-align: center;
    display: grid;
    gap: 1.15rem;

    h1 {
        color: var(--White-main-heading-stats);
        font-size: 1.8rem;
        line-height: 1.1;

        span {
            color: var(--Soft-violet-accent);
        }
    }

    p {
        color: var(--Slightly-transparent-white-main-paragraph);
        line-height: 1.5;
    }
}

.stats {
    padding-block-end: 2rem;
    text-align: center;
    list-style: none;
    font-size: 1.5rem;
    font-weight: var(--fw-bold);
    color: var(--White-main-heading-stats);
    display: grid;
    gap: 1.5rem;

    span {
        font-size: 0.8rem;
        text-transform: uppercase;
        font-weight: var(--fw-regular);
        font-family: var(--ff-lexend);
        color: var(--Slightly-transparent-white-stat-headings);
    }
}

@media screen and (min-width: 500px) {
    .card {
        width: 430px;
    }
}

@media screen and (min-width: 1285px) {
    body {
        height: 100vh;
        align-items: center;
    }

    .card {
        width: 1115px;
        height: 450px;
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }

    picture {
        grid-column: 2/-1;
        grid-row: 1;
    }

    section {
        grid-column: 1/2;
        grid-row: 1;
        height: 100%;
        padding-block: 2rem 3rem;
        padding-inline: 3rem 4rem;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
    }

    .description {
        text-align: left;

        h1 {
            font-size: 2.5rem;
        }
    }

    .stats {

        padding-inline: 1.5rem;
        display: flex;
        justify-content: space-between;
    }

}
