/* ===== Archive Réalisations — grille + filtres (migration fidèle) ===== */
.archives-realisations { position: relative; background-color: var(--blanc-ivoire); padding: 9rem 6rem 6rem; overflow: hidden; }
.archives-realisations__inner { max-width: var(--max-width); margin: 0 auto; }
.archives-realisations__header { text-align: center; max-width: 820px; margin: 0 auto 3rem; }
.archives-realisations__title { font-family: var(--font-titre); color: var(--noir-onyx); font-size: clamp(2rem, 4vw, 3rem); line-height: 0.95; margin-bottom: 1rem; font-weight: 400; letter-spacing: 0.3px; }
.archives-realisations__intro { color: var(--noir-onyx); margin: 0; }

.archives-realisations__filters { display: flex; justify-content: center; gap: 1rem; margin-bottom: 3rem; flex-wrap: wrap; }
.archives-filter-btn { font-family: var(--font-corps); font-weight: 600; font-size: var(--btn-font-size); text-transform: uppercase; letter-spacing: var(--btn-letter-spacing); padding: var(--btn-padding-y) var(--btn-padding-x); line-height: var(--btn-line-height); border: 2px solid var(--bleu-cobalt); background-color: transparent; color: var(--bleu-cobalt); border-radius: var(--btn-radius); cursor: var(--cursor-link); transition: all 0.3s ease; }
.archives-filter-btn:hover, .archives-filter-btn--active { background-color: var(--bleu-cobalt); color: var(--blanc-ivoire); }

.archives-realisations__grid { display: grid; grid-template-columns: repeat(3, 1fr); grid-auto-rows: 260px; gap: 1.5rem; margin-bottom: 3rem; }
.archives-realisations__grid .realisation-card { animation: archFadeIn 0.3s ease; }
.realisation-card.is-hidden { display: none; }
@keyframes archFadeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

.archives-realisations__empty { text-align: center; }

/* Pagination WordPress */
.archives-realisations__pagination { display: flex; justify-content: center; align-items: center; gap: 0.5rem; }
.archives-realisations__pagination .page-numbers { font-family: var(--font-corps); font-weight: 600; font-size: 1rem; min-width: 40px; height: 40px; display: inline-flex; align-items: center; justify-content: center; padding: 0 0.5rem; border: 2px solid var(--bleu-cobalt); background-color: transparent; color: var(--bleu-cobalt); border-radius: 8px; transition: all 0.3s ease; }
.archives-realisations__pagination .page-numbers:hover, .archives-realisations__pagination .page-numbers.current { background-color: var(--bleu-cobalt); color: var(--blanc-ivoire); }
.archives-realisations__pagination .page-numbers.dots { border-color: transparent; }

@media (max-width: 1200px) { .archives-realisations__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 768px) {
    .archives-realisations { padding: 8rem 2rem 4rem; }
    .archives-realisations__grid { grid-template-columns: repeat(2, 1fr); grid-auto-rows: 220px; }
}
@media (max-width: 560px) {
    .archives-realisations { padding: 7rem 1.25rem 3rem; }
    .archives-realisations__grid { grid-template-columns: 1fr; }
    .archives-filter-btn { width: 100%; }
}
