#highlight-row {
    justify-content: center;
    flex-wrap: wrap;
    gap: 32px;
}

.highlight {
    width: 25%;

    border: 2px solid black;
    flex-wrap: wrap;
    position: relative;
    align-self: stretch;

    gap: 0px;
    align-items: start;
    justify-content: start;

    &:hover, :has(a:focus-visible) {
        box-shadow: 0px 0px 5px 2px grey;
    }

    & a {
        position: absolute;
        top: 0px; left: 0px;
        width: 100%; height: 100%;
        z-index: 2;

        &:focus-visible { outline: none; }
    }

    & img {
        width: 100%;
        aspect-ratio: 1;
        margin-bottom: 16px;
    }

    & p {
        white-space: normal;
        overflow-wrap: break-word;
        margin-bottom: 0px;
    }
}

@media only screen and (max-width: 1200px) and (min-width: 960px) {
    .highlight { width: 30%; }
}

@media only screen and (max-width: 960px) and (min-width: 768px) {
    .highlight {
        width: 100%;
        flex-direction: row;
        gap: 16px;

        & img { width: 35%; }
        & div { max-width: calc(50% - 48px); }
    }
}

@media only screen and (max-width: 768px) {
    .highlight {
        width: 100%;
        flex-direction: column;
    }
}