/* Hémisphères — styles cartes de cours (loop-item) */

.hemi-course-card {
    transition: transform .35s ease, box-shadow .35s ease !important;
    will-change: transform;
}
.hemi-course-card:hover {
    transform: translateY(-6px);
}

/* Zoom doux de l'image au hover de la carte */
.hemi-course-card .elementor-widget-theme-post-featured-image img {
    transition: transform .6s ease, filter .35s ease !important;
    will-change: transform;
}
.hemi-course-card:hover .elementor-widget-theme-post-featured-image img {
    transform: scale(1.04);
}

/* Date du cours — ligne discrète au-dessus du titre */
.hemi-course-date-line .elementor-widget-container > p {
    font-family: 'Poppins', sans-serif;
    font-size: 23px;
    font-weight: 500;
    letter-spacing: .02em;
    color: #000000;
    margin: 0;
    display: inline-flex;
    align-items: center;
    gap: 28px;
}
.hemi-course-date-line .elementor-widget-container > p:empty {
    display: none;
}

/* Indicateur de statut : point coloré à côté de la date */
.hemi-status {
    display: inline-block;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    flex-shrink: 0;
    position: relative;
}

/* Cours à venir — vert qui pulse */
.hemi-status-upcoming {
    background: #22c55e;
    box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.55);
    animation: hemi-pulse 1.8s ease-out infinite;
}
@keyframes hemi-pulse {
    0%   { box-shadow: 0 0 0 0 rgba(34, 197, 94, 0.55); }
    70%  { box-shadow: 0 0 0 10px rgba(34, 197, 94, 0); }
    100% { box-shadow: 0 0 0 0 rgba(34, 197, 94, 0); }
}

/* Cours passé — orange statique */
.hemi-status-past {
    background: #f97316;
}
@media (prefers-reduced-motion: reduce) {
    .hemi-status-upcoming { animation: none; }
}

/* CTA "S'inscrire" — flèche qui glisse au hover */
.hemi-course-cta .elementor-heading-title {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: gap .25s ease, background-color .25s ease;
}
.hemi-course-cta .elementor-heading-title::after {
    content: "→";
    display: inline-block;
    transition: transform .3s ease;
    font-weight: 400;
}
.hemi-course-card:hover .hemi-course-cta .elementor-heading-title::after {
    transform: translateX(4px);
}
