.course-preview {
    background-color: var(--color-light-background);
    margin-bottom: 2rem;
    margin-top: 2rem;
    padding: 1.25em;
}

.course-preview h2 {
    font-family: var(--font-primary);
    margin-top: 0;
}

.course-preview h2 a {
    text-decoration: none;
}

.course-preview h2 a:hover {
    text-decoration: underline;
}

.course-meta {
    color: var(--color-accent);
    display: flex;
    font-size: 1rem;
    gap: 0 1.5em;
    justify-content: space-between;
    margin-bottom: 1.5em;
    margin-top: 1.5em;
}

.course-meta .icon {
    display: inline-block;
    margin-right: 0.5em;
}

.course-preview figure {
    display: none;
}

.course-highlights {
    list-style: none;
    padding-left: 0;
}

.course-preview .course-highlights > li {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='%2331adb3' d='M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z'/%3E%3C/svg%3E");
    background-position: left top;
    background-repeat: no-repeat;
    background-size: 1.2em;
	margin-bottom: 0.3em;
    padding-left: 2rem;
}

.course-preview + *:not(.course-preview) {
    margin-top: 5rem;
}

.course-preview + h2 {
    border-bottom: unset;
    color: var(--color-accent);
}

@media (min-width: 768px) {
    .course-preview {
        display: grid;
        gap: 1.25rem 2rem;
        grid-template-columns: 1fr 2fr;
        grid-template-rows: repeat(4, auto);
        padding: 2rem;
    }
    
    .course-preview h2 {
        grid-column: 2 / 3;
        grid-row: 1 / 2;
        margin-bottom: 0;
    }

    .course-meta {
        grid-column: 1 / 2;
        grid-row: 1 / 2;
        margin-bottom: 0;
        margin-top: 0;
    }

    .course-preview figure {
        display: block;
        grid-column: 1 / 2;
        grid-row: 2 / 5;
        margin-bottom: 0;
        margin-top: 0;
    }

    .course-intro {
        grid-column: 2 / 3;
        grid-row: 2 / 3;
        margin-bottom: 0;
    }

    .course-highlights {
        grid-column: 2 / 3;
        grid-row: 3 / 4;
        margin-bottom: 0;
        margin-top: 0;
    }

    .course-cta {
        grid-column: 2 / 3;
        grid-row: 4 / 5;
        margin-bottom: 0;
    }

    .column .course-preview {
        margin-bottom: 0;
    }
}

@media (min-width: 780px) and (max-width: 1024px) {
    .course-meta {
        display: block;
    }
    .course-meta > span {
        display: block;
    }
}

@media (min-width: 1024px) {
    .course-preview {
        column-gap: 4rem;
    }
    .course-preview .course-highlights {
        display: grid;
        font-size: 1rem;
        grid-template-columns: 1fr 1fr;
        grid-template-rows: repeat(3, auto);
        grid-auto-flow: column;
        gap: 0 1rem;
    }
}

@media (min-width: 1200px) {
    .course-preview {
        column-gap: 6rem;
    }
    .course-preview .course-cta {
        font-size: 1em;
    }
}
