/* ==========================================================================
   Grilles 2 colonnes (mobile) : une dernière carte seule reste CENTRÉE.
   Règle réutilisable : chaque grille pose --mgx / --mgy (écarts), les cartes
   gardent la même largeur (2 par ligne) et la dernière rangée, incomplète,
   se centre. Chargé en dernier ; le desktop (>= 768 px) n'est pas concerné.
   ========================================================================== */
@media (max-width: 767px) {
	body .product-grid,
	body .shape-cards,
	body .category-grid,
	body .shape-grid,
	body .feature-grid,
	body .detail-cards:not(.detail-cards--three),
	body .page-bijoux .jewel-products,
	body ul.products {
		--mgx: var(--space-sm);
		--mgy: var(--space-sm);
		display: flex !important;
		flex-wrap: wrap;
		justify-content: center;
		align-items: stretch;
		gap: var(--mgy) var(--mgx) !important;
	}

	body .product-grid,
	body .page-bijoux .jewel-products,
	body ul.products {
		--mgy: var(--space-md);
	}

	body .feature-grid {
		--mgx: var(--space-md);
		--mgy: var(--space-md);
	}

	body .shape-grid {
		--mgx: 0.75rem;
		--mgy: 0.75rem;
	}

	body .product-grid > *,
	body .shape-cards > *,
	body .category-grid > *,
	body .shape-grid > *,
	body .feature-grid > *,
	body .detail-cards:not(.detail-cards--three) > *,
	body .page-bijoux .jewel-products > *,
	body ul.products > li.product {
		flex: 0 0 calc((100% - var(--mgx)) / 2) !important;
		width: calc((100% - var(--mgx)) / 2) !important;
		max-width: calc((100% - var(--mgx)) / 2);
		min-width: 0;
		margin: 0 !important;
	}
}

/* "Les autres formes" : nom sur une ligne, moins de vide après la carte seule. */
@media (max-width: 767px) {
	body .shape-card__name {
		font-size: 1.2rem;
		white-space: nowrap;
	}

	body .band:has(> .container > .shape-cards) {
		padding-bottom: 1.75rem;
	}
}