.o-vehicules { display: grid; gap: 16px; margin-block: 18px; }
.o-vehicules .ve-titre { font-size: 1.7rem; margin: 0 0 .3em; }
.o-vehicules .ve-titre--moyen { font-size: 1.45rem; }
.o-vehicules .ve-sous { font-size: 1.2rem; margin: 18px 0 6px; }
.o-vehicules .ve-niveaux > div { display: grid; gap: 2px; }
.o-vehicules .ve-niveaux dt { font-weight: 800; color: var(--peche); }
.o-vehicules .ve-niveaux dd { margin: 0; color: var(--gris); }
.o-vehicules .ve-chiffres { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 14px; }
.o-vehicules .ve-chiffre { display: grid; gap: 6px; margin: 0; }
.o-vehicules .ve-chiffre > span:last-child { color: var(--gris); font-size: .95rem; }
.o-vehicules .ve-ecran .ecran__note { margin-block-start: 12px; }
.o-vehicules .ve-liste { display: grid; gap: 4px; }
.o-vehicules .ve-liste .us-deux { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.o-vehicules .ve-plein { grid-column: 1 / -1; }
.o-vehicules .ve-classes { margin-block: 4px 14px; }
.o-vehicules .ve-classes .champ__titre { margin: 0 0 8px; }
.o-vehicules .ve-comparaison { margin: 0; }
.o-vehicules .ve-comparaison h2 { font-size: 1.5rem; }
.o-vehicules .us-liste { margin-block-start: 6px; }
.o-vehicules .us-test-form .us-deux { grid-template-columns: minmax(0, 1fr); }

/* Une colonne qui peut rétrécir : sans minmax(0, …), le contenu le plus large élargit tout l'écran à 320 px. */
.o-vehicules, .o-vehicules .ecran, .o-vehicules .ve-liste { grid-template-columns: minmax(0, 1fr); min-inline-size: 0; }
