/* BLOC eb/option-cards — grille de cartes, une carte « active » (couleur d'accent + description) */
.eb-option-cards {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
}
.eb-ocard {
	position: relative;
	aspect-ratio: 1 / 1;
	display: flex; flex-direction: column; justify-content: space-between;
	padding: clamp(1.2rem, 1rem + 0.8vw, 1.6rem);
	background: var(--wp--preset--color--blanc);
	color: var(--wp--preset--color--anthracite);
	border-radius: var(--wp--custom--radius--medium);
	cursor: default;
	outline-offset: 4px;
	transition: background-color 0.35s var(--eb-ease), color 0.35s var(--eb-ease);
}
.eb-option-cards > * { margin: 0 !important; }
.eb-ocard .eb-icon {
	width: 34px; height: 34px; flex: none;
	fill: currentColor;
}
.eb-ocard__body { --wp--style--block-gap: 0; }
.eb-ocard__body > * { margin: 0; }
.eb-ocard .eb-ocard__photo { display: none; } /* déplacée dans la case photo par le script */
.eb-ocard h3 {
	font-family: var(--wp--preset--font-family--montserrat);
	font-weight: 600; letter-spacing: -0.01em;
	font-size: clamp(1.25rem, 1.05rem + 0.7vw, 1.6rem);
	line-height: 1.15;
}
.eb-ocard p {
	font-size: var(--wp--preset--font-size--small);
	font-weight: 500;
	line-height: 1.4;
	max-width: 32ch;
	/* description repliée tant que la carte n'est pas active */
	max-height: 0; opacity: 0; margin-top: 0; overflow: hidden;
	transition: max-height 0.45s var(--eb-ease), opacity 0.3s, margin-top 0.45s var(--eb-ease);
}
.eb-ocard.is-active {
	background: var(--eb-accent);
	color: var(--wp--preset--color--accent-contrast);
}
.eb-ocard.is-active p { max-height: 7em; opacity: 1; margin-top: 0.8rem; transition-delay: 0s, 0.12s, 0s; }
.eb-ocard--photo {
	position: relative; margin: 0; overflow: hidden;
	aspect-ratio: 1 / 1;
	border-radius: var(--wp--custom--radius--medium);
	background: var(--wp--preset--color--graphite);
}
/* Photos recadrées et centrées sans déformer le bloc, fondu enchaîné entre elles */
.eb-ocard--photo img {
	position: absolute; inset: 0;
	width: 100%; height: 100%;
	object-fit: cover; object-position: center;
	opacity: 0; transform: scale(1.04);
	transition: opacity 0.5s var(--eb-ease), transform 1.2s var(--eb-ease);
}
.eb-ocard--photo img.is-active { opacity: 1; transform: none; }

@media (max-width: 960px) {
	.eb-option-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
	.eb-option-cards { grid-template-columns: 1fr; }
	.eb-ocard, .eb-ocard--photo { aspect-ratio: auto; min-height: 0; }
	.eb-ocard { gap: 1.6rem; }
	.eb-ocard p { max-height: none; opacity: 1; margin-top: 0.5rem; } /* pas de survol sur mobile : tout est visible */
	.eb-ocard--photo { min-height: 220px; }
}
