/* MJF - Statut des terrains : rubans « Réservé / Sous compromis / Vendu »
   + bandeaux d'information de la fiche. Chargé sur le front uniquement. */

.mjf-terrain-card .mjf-tc-img,
.mjf-gallery__main { position: relative; overflow: hidden; }

/* Ruban en diagonale, coin supérieur droit (le coin gauche porte le badge
   « Exclusivité » du plugin mjf-terrains). */
.mjf-st-ribbon {
	position: absolute; z-index: 4;
	top: 40px; right: -50px; width: 240px;
	padding: 7px 0;
	transform: rotate(45deg);
	text-align: center; white-space: nowrap;
	font: 700 13px/1.1 'Oswald', 'Roboto', Arial, sans-serif;
	letter-spacing: .06em; text-transform: uppercase;
	color: #fff;
	border-top: 1px solid rgba(255,255,255,.35);
	border-bottom: 1px solid rgba(255,255,255,.35);
	box-shadow: 0 3px 10px rgba(0,0,0,.3);
	pointer-events: none;
}
.mjf-st-ribbon--reserve   { background: #c47d14; }
.mjf-st-ribbon--compromis { background: #1e3a5f; }
.mjf-st-ribbon--vendu     { background: #b42318; }

.mjf-st-ribbon--lg {
	top: 56px; right: -66px; width: 320px;
	padding: 10px 0; font-size: 17px;
}

/* Carte vendue : photo légèrement éteinte */
.mjf-st--vendu .mjf-tc-img img { filter: grayscale(.45) brightness(.94); }

/* Bandeau d'information en tête de fiche */
.mjf-st-notice {
	display: flex; gap: 14px; align-items: flex-start;
	margin: 0 0 24px; padding: 16px 20px;
	background: #fff; border: 1px solid #e5e7eb;
	border-left: 5px solid var(--mjf-st-color, #1e3a5f);
	border-radius: 8px;
	font-size: .95rem; line-height: 1.55; color: #374151;
}
.mjf-st-notice--reserve   { --mjf-st-color: #c47d14; }
.mjf-st-notice--compromis { --mjf-st-color: #1e3a5f; }
.mjf-st-notice--vendu     { --mjf-st-color: #b42318; }
.mjf-st-notice__tag {
	flex-shrink: 0; padding: 4px 12px; border-radius: 20px;
	background: var(--mjf-st-color); color: #fff;
	font: 700 .72rem/1.4 'Oswald', 'Roboto', Arial, sans-serif;
	letter-spacing: .08em; text-transform: uppercase;
}
.mjf-st-notice strong { color: #111827; }
.mjf-st-notice a { color: var(--mjf-st-color); font-weight: 600; text-decoration: underline; }
.mjf-st-notice p { margin: 0; }

/* Bandeau « archivé » visible des seuls administrateurs connectés */
.mjf-st-admin {
	margin: 0 0 18px; padding: 12px 18px;
	background: #fef3c7; border: 1px dashed #b45309; border-radius: 8px;
	font-size: .9rem; color: #78350f;
}
.mjf-st-admin a { color: #78350f; font-weight: 700; margin-left: 10px; }

@media (max-width: 640px) {
	.mjf-st-ribbon     { top: 36px; right: -54px; width: 230px; font-size: 12px; }
	.mjf-st-ribbon--lg { top: 44px; right: -60px; width: 260px; font-size: 14px; }
	.mjf-st-notice     { flex-direction: column; gap: 8px; }
}
