:root {
    --clr-pink: #F283AF;
    --clr-blush: #FBD9EF;
    --clr-raspberry: #C43670;
    --clr-cream: #FBF4EB;
    --clr-dark-cream: hsl(33, 100%, 89%);
    --ff-header: "Playwrite GB S", sans-serif;
    --ff-body: Arial, Helvetica, sans-serif;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    /* border: 1px dashed grey; */
}

p {
    font-family: var(--ff-body);
}

button {
    padding: 5px 20px;
    border-radius: 100vw;
    max-width: fit-content;

    &.-primary {
        border: 1px solid var(--clr-raspberry);
        background-color: white;
        color: var(--clr-raspberry);

        &:hover {
            background-color: var(--clr-raspberry);
            cursor: pointer;
            color: white;
        }
    }
}

.hero {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    background-color: var(--clr-cream);

    .hero__heading {
        color: var(--clr-raspberry);
        line-height: 1.25em;
        font-family: var(--ff-header);
        font-size: 2rem;
    }

    .hero__image {
        width: 100%;
        height: 400px;
        background-image: url(../assets/cupcake1.jpg);
        background-size: cover;
    }

    .col:first-of-type {
        justify-self: center;
        display: flex;
        flex-direction: column;
        gap: 1.5rem;
        padding: 1rem;
        max-width: fit-content;
    }
}

.rating {
    padding: 6px 0;
    display: flex;
    align-items: center;
    gap: 0.2rem;

    .rating__star {
        width: 20px;
        height: 20px;
        background-color: white;
        background-color: var(--clr-blush);
        clip-path: polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%);

        &.-filled {
            background-color: var(--clr-raspberry);
        }
    }

    .rating__count {
        color: var(--clr-raspberry);
        font-family: var(--ff-header);
        font-weight: bold;
        font-size: 12px;
    }
}

.rating__text {
    color: var(--clr-raspberry);
}

@media screen and (max-width: 768px) {
    .hero {
        display: flex;
        flex-direction: column-reverse;
        text-align: center;

        .col {
            display: flex;
            justify-content: center;
            align-items: center;
            flex-direction: column;
        }

        .hero__image {
            width: 100vw;
        }
    }

    .rating {
        justify-content: center;
    }
    
}