:root {
    --primary-color: hsl(300, 43%, 22%);
    --secundary-color: hsl(333, 80%, 67%);

    --neutral-dark-magenta: hsl(303, 10%, 53%);
    --neutral-light-magenta: hsl(300, 24%, 96%);
    --neutral-white: hsl(0, 0%, 100%);
}

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

body {
    width: 100%;
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'League Spartan', sans-serif;
}

.container {
    width: 85%;
    height: 85%;
    display: flex;
    flex-direction: column;
    gap: 4rem;
}

.principal, .feedbacks {
    flex: 1;
}

.principal {
    display: flex;
}

.principal .text, .principal .rates {
    flex: 1;
}

.principal .text h1, .principal .text p {
    width: 80%;
}

.principal .text h1 {
    color: var(--primary-color);
    font-size: 3rem;
    margin-bottom: 1rem;
}

.principal .text p {
    color: var(--neutral-dark-magenta);
}

.rates {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    align-items: center;
}

.rate1, .rate2, .rate3 {
    width: 75%;
    height: 25%;
    padding: 1rem;
    background-color: var(--neutral-light-magenta);
    border-radius: 5px;
    display: flex;
    align-items: center;
    justify-content: space-around;
}

.stars {
    width: 30%;
}

.stars img {
    width: 15%;
}

.rates p {
    color: var(--primary-color);
    font-weight: 600;
}

.rate1 {
    position: relative;
    right: 10%;
}

.rate3 {
    position: relative;
    left: 10%;
}

.feedbacks {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    gap: 1rem;
}

.colton, .irene, .anne {
    display: flex;
    flex-direction: column;
    padding: 1.5rem;
    background-color: var(--primary-color);
    border-radius: 8px;
    gap: 1.5rem;
}

.perfil {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 1rem;
}

.perfil img {
    width: 10%;
    border-radius: 50%;
}

.perfil h1, .perfil p {
    font-size: 1rem;
}

.perfil h1 {
    color: var(--neutral-white);
    margin-bottom: 0.25rem;
}

.perfil p {
    color: var(--secundary-color);
}

.message {
    color: var(--neutral-white);
    font-size: 1.15rem;
}

.colton {
    position: relative;
    bottom: 10px;
}

.anne {
    position: relative;
    top: 10px;
}

@media (max-width: 768px) {
    .stars {
        width: 40%;
    }

    .stars img {
        width: 12.5%;
    }

    .rates p {
        font-size: 0.75rem;
    }
}

@media (max-width: 500px) {
    .container {
        margin-top: 2rem;
        margin-bottom: 2rem;
    }

    .principal, .feedbacks {
        flex-direction: column;
        justify-content: center;
    }

    .text {
        display: flex;
        align-items: center;
        flex-direction: column;
        width: 100%;
        margin-bottom: 1rem;
    }
    
    .principal .text h1 {
        width: 80%;
        text-align: center;
        font-size: 2.5rem;
    }

    .principal .text p {
        width: 110%;
        text-align: center;
    }

    .rates {
        gap: 10px;
    }

    .rate1, .rate2, .rate3 {
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }

    .stars {
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 0.5rem;
    }

    .rate1, .rate3 {
        position: unset;
    }
}

