/* Cam3D — Étapes (cartes) */

.wcam-steps__list {
	display: grid;
	grid-auto-columns: minmax(0, 1fr);
	grid-auto-flow: column;
	gap: 32px;
}

.wcam-steps__card {
	display: flex;
	flex-direction: column;
	gap: 14px;
	padding: 28px;
	border-radius: var(--wcam-radius);
	background: var(--wcam-white);
}

.wcam-steps__top {
	display: flex;
	flex-direction: column;
	gap: inherit;
}

.wcam-steps__label {
	color: var(--wcam-red);
	font-family: var(--wcam-font-mono);
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.03em;
	text-transform: uppercase;
}

.wcam-steps__title {
	font-family: var(--wcam-font-title);
	font-size: 26px;
	font-weight: 500;
	line-height: 1.02;
	letter-spacing: -0.03em;
}

.wcam-steps__text {
	color: var(--wcam-muted);
	font-size: 15px;
	line-height: 1.5;
}

/* Variante grille 3 colonnes (page Matériaux). */
.wcam-steps--grid .wcam-steps__list {
	grid-auto-flow: row;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
}

.wcam-steps--grid .wcam-steps__card {
	gap: 12px;
}

.wcam-steps--grid .wcam-steps__title {
	font-size: 28px;
}

/* Variante grandes cartes (valeurs) : titre en haut, texte en bas, une carte sombre possible. */
.wcam-steps--values .wcam-steps__list {
	gap: 16px;
}

.wcam-steps--values .wcam-steps__card {
	gap: 24px;
	padding: 36px;
}

.wcam-steps--values .wcam-steps__top {
	gap: 16px;
}

.wcam-steps--values .wcam-steps__label {
	font-size: 13px;
}

.wcam-steps--values .wcam-steps__title {
	font-size: clamp(34px, 3.34vw, 48px);
}

.wcam-steps--values .wcam-steps__text {
	font-size: 16px;
	line-height: 1.55;
}

.wcam-steps__card--dark {
	background: var(--wcam-navy);
}

.wcam-steps__card--dark .wcam-steps__title {
	color: var(--wcam-white);
}

.wcam-steps__card--dark .wcam-steps__text {
	color: var(--wcam-navy-text);
}

@media (max-width: 1023px) {
	.wcam-steps--values .wcam-steps__list {
		grid-template-columns: 1fr;
	}

	.wcam-steps--values .wcam-steps__card {
		min-height: 0;
	}
}

@media (max-width: 1023px) {
	.wcam-steps__list {
		grid-auto-flow: row;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 20px;
	}
}

@media (max-width: 1023px) {
	.wcam-steps--grid .wcam-steps__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.wcam-steps__list,
	.wcam-steps--grid .wcam-steps__list {
		grid-template-columns: 1fr;
		gap: 12px;
	}

	.wcam-steps__card {
		padding: 24px;
	}

	.wcam-steps__title {
		font-size: 24px;
	}
}

/* Tablette : les trois valeurs côte à côte. */
@media (min-width: 768px) and (max-width: 1023px) {
	.wcam-steps--values .wcam-steps__list {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}
