:root {
    --bright-orange: hsl(31, 77%, 52%);
    --dark-cyan: hsl(184, 100%, 22%);
    --very-dark-cyan: hsl(179, 100%, 13%);
    --transparent-white: hsla(0, 0%, 100%, 0.75);
    --very-light-gray: hsl(0, 0%, 95%);
    /* font styles */
    --font-lexend: 'Lexend Deca', sans-serif;
    --font-big-shoulders: 'Big Shoulders Display', cursive;
    --font-regular: 400;
    --font-bold: 700;
}
body {
    font-size: 0.9375rem;
    font-family: var(--font-lexend);
    /* color: var(--transparent-white); */
    display: flex;
    flex-direction: column;
    place-content: center;
    align-items: center;
    width: 1440px;
    
}
main {
    color: var(--transparent-white);
    width: 50%;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    border-radius: 0.3rem;
    overflow: hidden;
}
.card {
    padding: 2.6rem;
    display: grid;
    gap: 4rem;

}
.card h2 {
    color: var(--very-light-gray);
    font-family: var(--font-big-shoulders);
    text-transform: uppercase;
    font-size: 1.7rem;
    font-weight: var(--font-bold);
    margin: 1.5rem 0;
}
.card p {
    font-family: var(--font-lexend);
    font-weight: var(--font-regular);
    font-size: 0.7rem;
}
main .card:nth-child(1) {
    background-color: var(--bright-orange);
}
main .card:nth-child(1) button {
    color: var(--bright-orange);
}
main .card:nth-child(2) {
    background-color: var(--dark-cyan);
}
main .card:nth-child(2) button {
    color: var(--dark-cyan);
}
main .card:nth-child(3) {
    background-color: var(--very-dark-cyan);
}
main .card:nth-child(3) button {
    color: var(--very-dark-cyan);
}
.card__bottom button {
    border: none;
    border-radius: 2rem;
    padding: 0.4rem 1.2rem;
    font-size: 0.8rem;

}

/* Attribution styles */
.attribution {
    font-size: 11px; 
    text-align: center; 
}
.attribution a { 
    color: hsl(228, 45%, 44%); 
}

/* Responsive styles */
@media screen and (max-width:400px) {
    body {
        width: 375px;
        justify-content: flex-start;
        width: 100vw;
        justify-content: center;
    }
    main {
        grid-template-columns: repeat(1, 1fr);
        grid-auto-flow: row;
        overflow: scroll;
        /* width: 80vw; */
    }
    .card {
        padding: 1.5rem;
        gap: 1rem;
    }
    .card h2 {
        font-size: 1.3rem;
        margin: 1rem 0;
    }
    .card p {
        font-size: 0.5rem;
    }
    .card__bottom button {
        font-size: 0.6rem;
    }
}