.hero {
    padding: var(--spacing-jumbo) 0;
    max-height: 900px;
    background-color: var(--color-primary-light);
    display: grid;
    grid-template-columns: 1fr;
    gap: 0 72px;
    align-items: center;
    grid-template-areas:
        "header"
        "images-1"
        "images-2";
}

.hero header {
    position: relative;
    z-index: 2;
    text-align: center;
    grid-area: header;
}

.hero-heading {
    color: var(--color-primary-dark);
}

.hero-subheading {
    color: var(--color-secondary-dark);
    margin: var(--spacing-tiny) 0 var(--spacing-md);
}

.hero-image {
    position: relative;
    width: 60%;
    height: 240px;
}

.hero-left {
    grid-area: images-1;
}

.hero-right {
    grid-area: images-2;
}

.hero-image>img {
    position: absolute;
    top: 80px;
    width: 45%;
    border: solid 4px var(--color-secondary-light);
    border-radius: var(--spacing-sm);
}

.before-image {
    left: 0;
    transform: rotate(-15deg);
}

.after-image {
    right: 0;
    transform: rotate(15deg);
}

.hero-social-proof-photos,
.hero-social-proof-stars {
    display: flex;

}

.hero-social-proof-photos {
    margin: 8px;
}

.hero-social-proof-photos img {
    width: 36px;
    height: 36px;
    object-fit: cover;
    margin-left: -8px;
    border-radius: 50%;
    border: solid 2px var(--color-secondary-dark);
}

.hero-social-proof-stars img {
    width: 24px;
    height: 24px;
    object-fit: cover;
}


.hero-cta {
    background-color: var(--color-highlight);
}

@media screen and (min-width: 680px) {

    .hero {
        gap: 0;
    }

    .hero-image {
        height: 400px;
    }

}

@media screen and (min-width: 680px) {

    .hero {
        grid-template-columns: 1fr 1fr;
        align-items: center;
        grid-template-areas:
            "header header"
            "images-1 images-2";
    }

    .hero-image {
        height: 400px;
        width: 80%;
    }

    .hero-image>img {
        width: 50%;
    }

}

@media screen and (min-width: 900px) {

    .hero {
        padding-top: var(--spacing-lg);
        grid-template-columns: 1fr 1fr 1fr;
        grid-template-areas:
            "images-1 header images-2";
    }

}

@media screen and (min-width: 1100px) {

    .hero-image {
        width: 100%;
    }

}