/**
 * Demo 02 — Overlay Gradient
 * Image fills the card, content overlaid at bottom with gradient mask.
 */
.jespw-demo-02-overlay-gradient .jespw-card {
	position: relative;
	background: #111;
	border-radius: 12px;
	overflow: hidden;
	min-height: 360px;
}
.jespw-demo-02-overlay-gradient .jespw-image {
	position: absolute;
	inset: 0;
	aspect-ratio: auto;
	height: 100%;
}
.jespw-demo-02-overlay-gradient .jespw-image::after {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(0,0,0,0) 30%, rgba(0,0,0,0.85) 100%);
	transition: opacity 0.4s;
}
.jespw-demo-02-overlay-gradient .jespw-image-overlay { display: none; }
.jespw-demo-02-overlay-gradient .jespw-content {
	position: relative;
	z-index: 2;
	margin-top: auto;
	padding: 24px;
	color: #fff;
}
.jespw-demo-02-overlay-gradient .jespw-title,
.jespw-demo-02-overlay-gradient .jespw-title a { color: #fff; }
.jespw-demo-02-overlay-gradient .jespw-price { color: #ffce54; }
.jespw-demo-02-overlay-gradient .jespw-excerpt,
.jespw-demo-02-overlay-gradient .jespw-category,
.jespw-demo-02-overlay-gradient .jespw-meta { color: rgba(255,255,255,0.75); }
.jespw-demo-02-overlay-gradient .jespw-add-to-cart {
	background: rgba(255,255,255,0.18);
	backdrop-filter: blur(8px);
	color: #fff;
}
.jespw-demo-02-overlay-gradient .jespw-add-to-cart:hover { background: var(--jespw-accent); }
.jespw-demo-02-overlay-gradient .jespw-badges { z-index: 3; }
