/* Grid Layout */
.apc-grid-14b2e952 {
	display: grid;
	width: 100%;
}

/* Card Container */
.apc-card-14b2e952 {
	position: relative;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	cursor: pointer;
	transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.4s ease;
}

/* Base Default Overlay if none provided by controls */
.apc-card-14b2e952::before,
.apc-card-14b2e952::after {
	content: '';
	position: absolute;
	inset: 0;
	z-index: 1;
	transition: opacity 0.4s ease;
}

/* Default dark overlay */
.apc-card-14b2e952::before {
	background: linear-gradient(to top, rgba(0,0,0,0.9) 0%, rgba(0,0,0,0.2) 60%, transparent 100%);
	opacity: 1;
}

/* Hover overlay setup */
.apc-card-14b2e952::after {
	background: linear-gradient(to top, rgba(0,0,0,0.95) 0%, rgba(0,0,0,0.5) 100%);
	opacity: 0;
}

/* Card Hover Effects */
.apc-card-14b2e952:hover {
	transform: translateY(-8px);
	box-shadow: 0 20px 40px rgba(0,0,0,0.3);
}

.apc-card-14b2e952:hover::before {
	opacity: 0;
}

.apc-card-14b2e952:hover::after {
	opacity: 1;
}

.apc-card-14b2e952:hover .apc-image-14b2e952 {
	transform: scale(1.08);
}

/* Image Wrap & Image */
.apc-image-wrap-14b2e952 {
	position: absolute;
	inset: 0;
	z-index: 0;
}

.apc-image-14b2e952 {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}

/* Content Area */
.apc-card-content-14b2e952 {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	height: 100%;
	justify-content: flex-end;
}

/* Typography elements margin reset */
.apc-title-14b2e952,
.apc-subtitle-14b2e952 {
	margin-top: 0;
}

/* Button wrapper */
.apc-button-wrap-14b2e952 {
	margin-top: auto;
	opacity: 1; /* Changed to 1 to show by default */
	transform: translateY(0); /* Changed to 0 to show by default */
	transition: all 0.4s cubic-bezier(0.25, 1, 0.5, 1);
}

/* Button style */
.apc-button-14b2e952 {
	display: inline-block;
	text-decoration: none;
	text-align: center;
	transition: all 0.3s ease;
	cursor: pointer;
}
