/**
 * News cards in the Latest posts carousel strip (fixed height).
 * Keeps meta + clamped title in the flexible region and the footer visible.
 */
article[data-ukpi-card-layout='carousel'] .ukpi-news-card-title-area {
    min-height: 0;
    padding-bottom: 6px;
}

article[data-ukpi-card-layout='carousel'] h2.ukpi-news-card-title {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    overflow: hidden;
    /* Match carousel `leading-[28px]`; line-clamp can still clip without padding. */
    line-height: 28px;
    padding-bottom: 0.25em;
}

article[data-ukpi-card-layout='carousel'] .ukpi-news-card-footer {
    flex-shrink: 0;
}

/*
 * Reinforce Tailwind `group-hover:` / `focus-within:` when another stylesheet
 * wins on specificity (e.g. editor `!important`, or future theme rules).
 */
article.group:hover,
article.group:focus-within {
    background-color: var(--color-ukpi-purple) !important;
}

article.group:hover p.text-xs.font-semibold,
article.group:focus-within p.text-xs.font-semibold {
    color: #fff !important;
}

article.group:hover p.text-xs span.text-\[\#99a1af\],
article.group:focus-within p.text-xs span.text-\[\#99a1af\] {
    color: rgb(255 255 255 / 0.45) !important;
}

article.group:hover .font-normal.text-\[\#6a7282\],
article.group:focus-within .font-normal.text-\[\#6a7282\] {
    color: rgb(255 255 255 / 0.7) !important;
}

article.group:hover h2.text-ukpi-900,
article.group:focus-within h2.text-ukpi-900 {
    color: #fff !important;
}

article.group:hover .ukpi-news-card-footer,
article.group:focus-within .ukpi-news-card-footer {
    border-top-color: rgb(255 255 255 / 0.25) !important;
}

article.group:hover .ukpi-news-card-footer span.text-sm.font-medium.text-ukpi-purple,
article.group:focus-within .ukpi-news-card-footer span.text-sm.font-medium.text-ukpi-purple {
    color: #fff !important;
}

article.group:hover .ukpi-news-card-footer span.inline-flex.size-10.rounded-full.bg-ukpi-tint,
article.group:focus-within .ukpi-news-card-footer span.inline-flex.size-10.rounded-full.bg-ukpi-tint {
    background-color: rgb(255 255 255 / 0.2) !important;
}

article.group:hover img.w-full.rounded-2xl,
article.group:focus-within img.w-full.rounded-2xl {
    filter: brightness(0.92) !important;
}

article.group:hover .ukpi-news-card-footer img,
article.group:focus-within .ukpi-news-card-footer img {
    filter: brightness(0) invert(1) !important;
}

article.group:hover[data-ukpi-card-layout='carousel'],
article.group:focus-within[data-ukpi-card-layout='carousel'] {
    box-shadow:
        0 2px 8px rgba(0, 0, 0, 0.04),
        0 10px 26px -8px rgba(99, 46, 98, 0.16) !important;
}
