/* Share header and action rows while keeping each review's own content. */
@media (min-width: 651px) {
    @supports (grid-template-rows: subgrid) {
        body.trubo-shared-layout .review-grid .review-card {
            display: grid;
            grid-template-columns: minmax(0, 1fr);
            grid-template-rows: subgrid;
            grid-row: span 7;
            row-gap: 12px;
        }

        body.trubo-shared-layout .review-grid .review-card > .stars {
            grid-row: 1;
            align-self: start;
        }

        body.trubo-shared-layout .review-grid .review-card > .review-top {
            grid-row: 2;
            align-self: start;
        }

        body.trubo-shared-layout .review-grid .review-card > h3 {
            grid-row: 3;
            min-height: 0;
            align-self: start;
        }

        body.trubo-shared-layout .review-grid .review-card > .review-meta {
            grid-row: 4;
            align-self: start;
        }

        body.trubo-shared-layout .review-grid .review-card > .review-media {
            grid-row: 5;
            align-self: start;
            width: 100%;
        }

        body.trubo-shared-layout .review-grid .review-card > .review-card__summary {
            grid-row: 6;
            align-self: start;
        }

        body.trubo-shared-layout .review-grid .review-card:not(:has(> .review-media)) > .review-card__summary {
            grid-row: 5 / span 2;
        }

        body.trubo-shared-layout .review-grid .review-card > .review-card__more {
            grid-row: 7;
            align-self: end;
            margin-top: 0;
        }
    }
}

@media (min-width: 761px) {
    @supports (grid-template-rows: subgrid) {
        body.trubo-shared-layout .sl-reviews > figure {
            display: grid;
            grid-template-columns: minmax(0, 1fr);
            grid-template-rows: subgrid;
            grid-row: span 4;
            row-gap: 0;
        }

        body.trubo-shared-layout .sl-reviews > figure > blockquote {
            grid-row: 1;
            align-self: start;
        }

        body.trubo-shared-layout .sl-reviews > figure > figcaption {
            display: grid;
            grid-row: 2 / span 3;
            grid-template-rows: subgrid;
            row-gap: 0;
            margin-top: 0;
        }

        body.trubo-shared-layout .sl-reviews > figure > figcaption > strong {
            grid-row: 1;
        }

        body.trubo-shared-layout .sl-reviews > figure > figcaption > span {
            grid-row: 2;
        }

        body.trubo-shared-layout .sl-reviews > figure > figcaption > small {
            grid-row: 3;
        }
    }
}
