/* Section — Gamme (V3) + Carte gamme (V3). Desktop : p80, en-tête gap 16, grille 3 col gap 20, gap 48 ; carte p12 (visuel p12), contenu p20/12/8/12. Mobile : p32/16/56, gap 24, cartes gap 12, carte p12 g12 (visuel p16). */
.gamme { padding-top: var(--section-padding-under-title); }
.gamme__inner { display: flex; flex-direction: column; gap: var(--space-24); }
.gamme__head { display: flex; flex-direction: column; align-items: center; gap: var(--space-12); text-align: center; }
.gamme__intro { max-width: var(--size-text-max); }
.gamme__grid { gap: var(--space-12); }
.gamme__grid > li { display: flex; } /* cartes d'une rangée égalisées, actions calées en bas */
.gamme .pagination { margin-top: 0; }
.gamme__grid:focus { outline: none; } /* reçoit le focus au changement de page (gamme.js), conteneur non interactif */
.gamme__empty { text-align: center; }

.range-card { flex: 1 1 auto; padding: var(--space-12); gap: var(--space-12); }
.range-card__media { display: block; aspect-ratio: 1; padding: var(--space-16); border-radius: var(--radius-20); background: var(--brandt-white); }
.range-card__media img { width: 100%; height: 100%; object-fit: contain; }
.range-card__body { flex: 1 1 auto; display: flex; flex-direction: column; gap: var(--space-12); }
.range-card__head { display: flex; flex-direction: column; gap: var(--space-8); padding: var(--space-4) var(--space-4) 0; }
.range-card__link { border-radius: var(--radius-12); transition: color var(--transition); }
.range-card__link:hover { color: var(--brandt-red); }
.range-card__link:focus-visible { box-shadow: var(--focus-ring); }
.range-card__actions { margin-top: auto; display: flex; flex-direction: column; align-items: center; gap: var(--space-8); }
.range-card__actions .text-button { font-size: var(--text-cta-size); line-height: var(--text-cta-lh); font-weight: var(--text-cta-weight); text-decoration: underline; text-underline-offset: var(--space-4); } /* « Voir la fiche » : style CTA souligné (maquette) */
@media (min-width: 1024px) {
  .gamme__inner { gap: var(--space-48); }
  .gamme__head { gap: var(--space-16); }
  .gamme__grid { gap: var(--space-20); }
  .range-card { gap: 0; }
  .range-card__media { padding: var(--space-12); }
  .range-card__body { gap: var(--space-16); padding: var(--space-20) var(--space-12) var(--space-8); }
  .range-card__head { padding: 0; }
  .range-card__actions { gap: var(--space-16); }
}
