/* Encadré « en concession » des articles de modèle (inc/articles-modeles.php).
   Même famille que les cartes de la gamme (vn.css) : fond blanc, ombre douce,
   photo détourée sur un dégradé clair. Rayons concentriques : 24 px dehors,
   12 px de marge intérieure, donc 12 px pour la photo. */
.art-modele {
	display: grid;
	grid-template-columns: minmax(0, 260px) minmax(0, 1fr);
	align-items: center;
	gap: 8px 24px;
	margin: 40px 0;
	padding: 12px;
	background: var(--white);
	border-radius: var(--radius-lg);
	box-shadow: 0 1px 2px rgba(15,49,76,.06), 0 4px 16px rgba(15,49,76,.06);
}
.art-modele--sans-photo { grid-template-columns: minmax(0, 1fr); }

.art-modele__photo {
	display: block;
	aspect-ratio: 16 / 9;
	border-radius: 12px;
	overflow: hidden;
	background: linear-gradient(180deg, #fff 0%, var(--g50) 100%);
	outline: 1px solid rgba(0,0,0,.1);
	outline-offset: -1px;
}
.entry-content .art-modele__photo img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	border-radius: 0;
	box-shadow: none;
	transition: transform .5s cubic-bezier(.2,0,0,1);
}
.art-modele__photo:hover img { transform: scale(1.04); }

.art-modele__corps { padding: 8px 12px 8px 0; }
.art-modele--sans-photo .art-modele__corps { padding: 12px 16px; }

/* Textes d'interface : ni justification ni césure (règle des petits textes, main.css). */
.entry-content .art-modele p {
	margin: 0;
	text-align: left;
	-webkit-hyphens: manual;
	hyphens: manual;
}
.entry-content .art-modele .art-modele__kicker { margin-bottom: 8px; }
.entry-content .art-modele .art-modele__nom {
	font-size: 1.3rem;
	font-weight: 800;
	line-height: 1.25;
	color: var(--navy);
	text-wrap: balance;
}
.entry-content .art-modele .art-modele__prix { margin-top: 4px; font-size: .9rem; color: var(--g600); }
.art-modele__prix strong {
	font-size: 1.25rem;
	font-weight: 800;
	color: var(--navy);
	font-variant-numeric: tabular-nums;
}
.art-modele__etoile { color: var(--navy); font-weight: 800; }
.entry-content .art-modele .art-modele__texte { margin-top: 8px; font-size: 1rem; color: var(--g600); text-wrap: pretty; }
.art-modele__bouton { margin-top: 14px; white-space: normal; text-align: center; }
.entry-content .art-modele .art-modele__mention { margin-top: 12px; font-size: .75rem; line-height: 1.5; color: var(--g600); }

@media (max-width: 640px) {
	.art-modele { grid-template-columns: minmax(0, 1fr); gap: 12px; }
	.art-modele__corps { padding: 0 8px 8px; }
	.art-modele__bouton { width: 100%; }
}
