/* ================================================================
   Text-Hover auf Bild
   Keine Breakpoints nötig – Effekt funktioniert auf allen
   Bildschirmgrößen gleich (Hover per Maus, .hover-Klasse als
   Touch-Fallback). Nur strukturell bereinigt und sortiert.
   ================================================================ */

.hovertext {
	position: relative;
	display: inline-block;
	width: 100%;
	overflow: hidden;
	background-color: #fafafa;
	color: #fff;
	font-size: 0.7rem;
}

.hovertext * {
	box-sizing: border-box;
	transition: all 0.45s ease;
}

.hovertext img {
	max-width: 110%;
	vertical-align: top;
	backface-visibility: hidden;
}

/* --- Dunkles Overlay beim Hover --- */

.hovertext:before,
.hovertext:after {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	background-color: rgba(107, 3, 3, 0.7);
	opacity: 0;
	transform: scaleY(2);
	transition: all 0.3s ease;
}

.hovertext:hover:before,
.hovertext.hover:before,
.hovertext:hover:after,
.hovertext.hover:after {
	opacity: 1;
	transform: scale(1);
}

.hovertext.hover > img {
	opacity: 0.7;
}

/* --- Text-Overlay (Caption) --- */

.hovertext figcaption {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 2;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-size: 1rem;
	font-weight: 900;
	line-height: 1.5rem;
	letter-spacing: 0.05rem;
	opacity: 0;
	transition-delay: 0s;
}

.hovertext:hover figcaption,
.hovertext.hover figcaption {
	opacity: 1;
	transition-delay: 0.1s;
}

.hovertext span {
	display: block;
	font-weight: 900;
}

.hovertext a {
	color: #fff;
}
