/**
 * Consistent hover/focus behavior for clickable card regions.
 */

.lenspo-card-media-link,
.lenspo-card-title-link,
.lenspo-card-excerpt-link,
.lenspo-card-date-link,
.lenspo-card-meta-link,
.lenspo-card-term-badge,
.winner-card-link {
    cursor: pointer;
    transition: color 0.2s ease, opacity 0.2s ease, transform 0.2s ease;
}

/* Card metadata links: dark like card body text, not global green */
a.lenspo-card-excerpt-link,
a.lenspo-card-meta-link {
    color: var(--body-color, #858585);
    text-decoration: none;
}

a.lenspo-card-date-link:not(.badge):not(.post-date-badge):not(.event-date-badge):not(.award-card-date) {
    color: var(--body-color, #858585);
    text-decoration: none;
}

a.lenspo-card-term-badge {
    color: #222;
    text-decoration: none;
}

.lenspo-card-media-link {
    display: block;
    overflow: hidden;
}

.lenspo-card-media-link img {
    transition: transform 0.3s ease, opacity 0.3s ease;
}

.lenspo-card-media-link:hover img,
.lenspo-card-media-link:focus-visible img,
.winner-card-link:hover img,
.winner-card-link:focus-visible img {
    transform: scale(1.03);
    opacity: 0.92;
}

.lenspo-card-title-link:hover,
.lenspo-card-title-link:focus-visible,
.event-title a:hover,
.event-title a:focus-visible,
.article-title a:hover,
.article-title a:focus-visible,
.contest-card-title a:hover,
.contest-card-title a:focus-visible,
.award-card-title a:hover,
.award-card-title a:focus-visible,
.notice-card-title a:hover,
.notice-card-title a:focus-visible {
    color: var(--gbps-green, #2B8B47);
    text-decoration: underline;
}

.lenspo-card-excerpt-link:hover,
.lenspo-card-excerpt-link:focus-visible,
.lenspo-card-date-link:not(.badge):not(.post-date-badge):not(.event-date-badge):not(.award-card-date):hover,
.lenspo-card-date-link:not(.badge):not(.post-date-badge):not(.event-date-badge):not(.award-card-date):focus-visible,
.lenspo-card-meta-link:hover,
.lenspo-card-meta-link:focus-visible {
    color: var(--gbps-green, #2B8B47);
    opacity: 1;
    text-decoration: underline;
}

.lenspo-card-term-badge {
    text-decoration: none;
}

.lenspo-card-term-badge:hover,
.lenspo-card-term-badge:focus-visible {
    color: var(--gbps-green, #2B8B47);
    opacity: 1;
    text-decoration: underline;
}

.winner-card-link {
    display: block;
    color: inherit;
    text-decoration: none;
}

.winner-card-link:hover,
.winner-card-link:focus-visible {
    color: inherit;
    text-decoration: none;
}

.lenspo-card-link:focus-visible,
.lenspo-card-media-link:focus-visible,
.lenspo-card-title-link:focus-visible,
.lenspo-card-excerpt-link:focus-visible,
.lenspo-card-date-link:focus-visible,
.lenspo-card-term-badge:focus-visible,
.winner-card-link:focus-visible {
    outline: 2px solid var(--gbps-green, #2B8B47);
    outline-offset: 2px;
}
