/* ==============================
 * Block — Liste d'actualités (CPT)
 * Scope racine : .block-actualites-list
 * Grille 2 colonnes desktop + bouton « Voir plus » AJAX
 * ============================== */

.block-actualites-list {
    padding: var(--section-py) 0;
    background: var(--color-bg);
}

/* Header (titre + intro centrés) */
.block-actualites-list__header {
    text-align: center;
    margin-bottom: 85px;
}
@media (max-width: 1023px) {
    .block-actualites-list__header { text-align: left; }
}
.block-actualites-list__heading {
    font-family: var(--font-heading);
    font-weight: var(--weight-heading);
    font-size: var(--fs-h2);
    color: var(--color-primary);
    margin: 0 0 16px;
    line-height: 1.15;
}
.block-actualites-list__intro {
    font-family: var(--font-body);
    font-size: var(--fs-body);
    color: var(--color-text);
    line-height: 1.6;
    max-width: var(--container-narrow);
    margin: 0 auto;
}
.block-actualites-list__intro > * { margin: 0; }
.block-actualites-list__intro > * + * { margin-top: 12px; }

/* Grille de cartes */
.block-actualites-list__grid {
    display: flex;
    flex-wrap: wrap;
    gap: 85px 66px;
}
@media (max-width: 1023px) {
    .block-actualites-list__grid { gap: 45px 66px; }
}
.block-actualites-list__card {
    flex: 0 0 100%;
    display: flex;
    flex-direction: column;
    min-width: 0;
}

@media (min-width: 768px) {
    .block-actualites-list__card {
        /* 2 colonnes : 50% - moitié du column-gap (66px / 2 = 33px) */
        flex-basis: calc(50% - 33px);
    }
}

.block-actualites-list__media {
    margin: 0;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    border-radius: var(--radius-lg);
    background: var(--color-bg-dark);
}
.block-actualites-list__media--empty {
    background: linear-gradient(135deg, #2a2a2a, #1a1a1a);
}
.block-actualites-list__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}

.block-actualites-list__body {
    padding: 39px 0 0;
    display: flex;
    flex-direction: column;
}
.block-actualites-list__body > * + * { margin-top: 12px; }

/* Mobile : on inset le texte (titre + contenu) pour que l'image apparaisse
   un peu plus large, comme sur la liste des solutions. */
@media (max-width: 1023px) {
    .block-actualites-list__body { padding: 24px var(--gutter) 0; }
}

.block-actualites-list__title {
    font-family: var(--font-heading);
    font-weight: var(--weight-heading);
    font-size: clamp(20px, 2vw, 24px);
    color: var(--color-primary);
    margin: 0;
    line-height: 1.2;
}

.block-actualites-list__content {
    font-family: var(--font-body);
    font-size: var(--fs-body);
    color: var(--color-text);
    line-height: 1.6;
}
.block-actualites-list__content > * { margin: 0; }
.block-actualites-list__content > * + * { margin-top: 12px; }

/* Footer = bouton Voir plus */
.block-actualites-list__footer {
    margin-top: 85px;
    text-align: center;
}
@media (max-width: 1023px) {
    .block-actualites-list__footer { margin-top: 45px; }
}
.block-actualites-list__load-more[disabled],
.block-actualites-list__load-more.is-loading {
    opacity: .6;
    cursor: progress;
}
.block-actualites-list__load-more.is-hidden {
    display: none;
}

/* Empty state (édition Gutenberg) */
.block-actualites-list__empty {
    padding: 24px;
    background: var(--color-bg-alt);
    color: var(--color-muted);
    border-radius: var(--radius-md);
    text-align: center;
    border: 2px dashed var(--color-border);
}

/* Petit fade-in lors de l'ajout par AJAX */
@media (prefers-reduced-motion: no-preference) {
    .block-actualites-list__card.is-new {
        animation: actualites-fade-in .4s var(--ease) both;
    }
    @keyframes actualites-fade-in {
        from { opacity: 0; transform: translateY(8px); }
        to   { opacity: 1; transform: translateY(0); }
    }
}
