.flip-card-df246e3d {
	background-color: transparent;
	width: 100%;
	perspective: 1000px;
}

.flip-card-inner-df246e3d {
	position: relative;
	width: 100%;
	height: 100%;
	text-align: center;
	transition: transform 0.6s;
	transform-style: preserve-3d;
	border-radius: 8px; /* Default, overridden by control */
}

/* Added group focus for better accessibility and stability */
.flip-card-df246e3d:hover .flip-card-inner-df246e3d,
.flip-card-df246e3d:focus-within .flip-card-inner-df246e3d {
	transform: rotateY(180deg);
}

.flip-card-front-df246e3d, 
.flip-card-back-df246e3d {
	position: absolute;
	width: 100%;
	height: 100%;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	border-radius: inherit; /* Inherit border radius from inner container */
	overflow: hidden; /* Ensure before pseudo element respects border radius */
}

/* Front styling */
.flip-card-front-df246e3d {
	display: block; /* Removed flex */
	z-index: 2; /* Ensure front is above back initially */
}

.flip-card-content-wrapper-df246e3d {
	position: relative;
	width: 100%;
	height: 100%; /* Force height to allow vertical flex alignment */
	display: flex;
	flex-direction: column;
	/* justify-content is now set dynamically by the vertical alignment control */
}

/* New overlay element relative to the wrapper */
.flip-card-front-overlay-df246e3d {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	transition: background 0.3s ease;
}

/* Full cover vs Bottom banner */
.overlay-type-full .flip-card-content-wrapper-df246e3d {
	/* overlay covers whole wrapper */
}

.overlay-type-bottom .flip-card-front-overlay-df246e3d {
	height: 50%; /* Default fallback if bottom banner is needed, though better handled by gradient/content height */
	background: linear-gradient(to top, rgba(0,0,0,0.8), transparent);
}


.flip-card-content-df246e3d {
	position: relative;
	z-index: 2;
	padding: 20px;
	color: #fff;
	text-align: left; /* Default, overridden by control */
	width: 100%;
}

.flip-card-name-df246e3d {
	margin: 0 0 5px;
	font-size: 1.5rem;
	font-weight: bold;
	color: #fff; /* Default */
}

.flip-card-title-df246e3d,
.flip-card-cert-df246e3d {
	margin: 0 0 5px;
	font-size: 1rem;
	color: #fff; /* Default */
}

.flip-card-cert-df246e3d {
	margin-bottom: 0;
}

/* Back styling */
.flip-card-back-df246e3d {
	transform: rotateY(180deg);
	z-index: 1;
}
