:root {
    box-sizing: border-box;
    font-size: 16px;
    --moderate-violet: hsl(263, 55%, 52%);
    --lighter-violet: hsl(264, 82%, 70%);
    --very-dark-grayish-blue: hsl(217, 19%, 35%);
    --very-dark-blackish-blue: hsl(219, 29%, 14%);
    --white: hsl(0, 0%, 100%);
    --light-gray: hsl(0, 0%, 81%);
    --light-grayish-blue: hsl(210, 46%, 95%);
    
    font-family: 'Barlow Semi Condensed';
    font-weight: 500;
    font-size: 13px;
    color: var(white);
}

*,
::before,
::after {
    box-sizing: inherit;
    margin: 0;
    padding: 0;
}
body {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    background-color: var(--light-grayish-blue);
    padding: 2rem;
}

main {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

.reviewer-name {
    font-size: 13px;
}
.graduate {
    font-size: 11px;
    opacity: 0.5;
}
h1 {
    font-size: 20px;
    font-weight: 600;
}
.quote {
    font-size: 11px;
    line-height: 20px;
    opacity: 0.7;
}

.testimony-card {
    display: flex;
    flex-direction: column;
    padding: 2em;
    width: 100%;
    border-radius: 0.6rem;
}
.testimony-card > * + * {
    margin-top: 1rem;
}
.testimony-card > .reviewer-card {
    display: flex;
    flex-direction: row;
    gap: 1rem;
}
.testimony-card > .reviewer-card > img {
    width: 28px;
    height: 28px;
    border-radius: 14px;
}
.daniel {
    background-color: var(--moderate-violet);
    color: var(--white);
    background-image: url(./images/bg-pattern-quotation.svg);
    background-repeat: no-repeat;
    background-position: top 0 right 15%;
}
.jonathan {
    background-color: var(--very-dark-grayish-blue);
    color: var(--white);
}
.jeanette {
    background-color: var(--white);
    color: var(--very-dark-blackish-blue);
}
.patrick {
    background-color: var(--very-dark-blackish-blue);
    color: var(--light-grayish-blue);
}
.daniel img,
.patrick img {
    border: solid 2pt var(--lighter-violet);
}
.kira {
    background-color: var(--white);
    color: var(--very-dark-blackish-blue);
}

@media only screen and (min-width: 750px) {
    body {
        justify-content: center;
    }
    main {
        max-width: 90rem;
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        grid-template-rows: repeat(2, 1fr);
        gap: 2rem;
    }
    .testimony-card {
        height: 100%;
    }
    .daniel {
        grid-row: 1/2;
        grid-column: 1/3;
    }
    .jonathan {
        grid-row: 1/2;
        grid-column: 3/4;
    }
    .jeanette {
        grid-row: 2/3;
        grid-column: 1/2;
    }
    .patrick {
        grid-row: 2/3;
        grid-column: 2/4;
    }
    .kira {
        grid-row: 1/3;
        grid-column: 4/5;
    }
}