/* ===== Liste d'icônes — cards bordure colorée (migration fidèle) ===== */
.liste-icones { position: relative; background-color: var(--blanc-ivoire); padding: 6rem 6rem; overflow: hidden; }
.liste-icones__inner { max-width: var(--max-width); margin: 0 auto; }
.liste-icones__header { display: flex; justify-content: center; align-items: center; margin-bottom: 3.5rem; }
.liste-icones__title { font-family: var(--font-titre); color: var(--noir-onyx); font-size: clamp(1.75rem, 3vw, 2.5rem); line-height: 1.1; margin: 0; font-weight: 400; text-align: center; max-width: 760px; }
.liste-icones__title-mark { color: var(--bleu-cobalt); font-weight: 400; }

.liste-icones__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.25rem; }
.liste-icones__footer { display: flex; justify-content: center; margin-top: 3rem; }

.icone-card { position: relative; display: flex; flex-direction: column; justify-content: space-between; gap: 2rem; padding: 2rem; border-radius: 24px; transition: transform 0.4s cubic-bezier(0.22,1,0.36,1), box-shadow 0.4s ease; overflow: hidden; background-color: var(--blanc-ivoire); color: var(--noir-onyx); border: 1.5px solid; }
.icone-card:hover { transform: translateY(-6px); box-shadow: 0 16px 40px rgba(31,31,31,0.08); }
.icone-card__icon { transition: transform 0.4s cubic-bezier(0.22,1,0.36,1); }
.icone-card:hover .icone-card__icon { transform: scale(1.1) rotate(-4deg); }
.icone-card__icon svg { width: 40px; height: 40px; }

.icone-card--celeste { border-color: var(--bleu-celeste); }
.icone-card--celeste .icone-card__icon { color: var(--bleu-celeste); }
.icone-card--safran { border-color: var(--jaune-safran); }
.icone-card--safran .icone-card__icon { color: var(--jaune-safran); }
.icone-card--orange { border-color: var(--orange-sanguine); }
.icone-card--orange .icone-card__icon { color: var(--orange-sanguine); }
.icone-card--cobalt { border-color: var(--bleu-cobalt); }
.icone-card--cobalt .icone-card__icon { color: var(--bleu-cobalt); }

.icone-card__body { display: flex; flex-direction: column; gap: 0.25rem; }
.icone-card__title { font-family: var(--font-titre); font-size: 1.6rem; line-height: 1.05; margin: 0; font-weight: 400; color: inherit; letter-spacing: -0.3px; }
.icone-card__desc { color: inherit; }
.icone-card__desc p { margin: 0 0 0.5rem; }

@media (max-width: 1024px) {
    .liste-icones { padding: 5rem 2rem; }
    .liste-icones__grid { grid-template-columns: repeat(2, 1fr); }
    .icone-card { min-height: 320px; gap: 3rem; }
}
@media (max-width: 640px) {
    .liste-icones { padding: 4rem 1.25rem; }
    .liste-icones__grid { grid-template-columns: 1fr; }
    .icone-card { padding: 1.75rem; min-height: auto; gap: 2.5rem; }
}
