/* ⚡ Andes Flip Card — estilos base (no tocar, editar colores/medidas desde Elementor) */

.afc-flip-card {
	background-color: transparent;
	width: 100%;
	height: var(--afc-height, 420px);
	perspective: 1200px;
	margin-bottom: 20px;

	/* valores por defecto (Elementor los sobreescribe por instancia) */
	--afc-radius: 16px;
	--afc-overlay-start: rgba(35,31,32,0.1);
	--afc-overlay-end: rgba(35,31,32,0.6);
	--afc-front-title: #F4F1EC;
	--afc-back-bg: #231F20;
	--afc-border-color: #3B6E4D;
	--afc-back-title: #3B6E4D;
	--afc-text-color: #F4F1EC;
	--afc-btn-bg: #F68712;
	--afc-btn-color: #231F20;
	--afc-btn-hover: #e0760d;
}

.afc-flip-card-inner {
	position: relative;
	width: 100%;
	height: 100%;
	text-align: center;
	transition: transform 0.7s cubic-bezier(0.4, 0, 0.2, 1);
	transform-style: preserve-3d;
}

.afc-flip-card:hover .afc-flip-card-inner,
.afc-flip-card:focus-within .afc-flip-card-inner {
	transform: rotateY(180deg);
}

.afc-flip-card-front,
.afc-flip-card-back {
	position: absolute;
	width: 100%;
	height: 100%;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	border-radius: var(--afc-radius);
	box-shadow: 0 8px 24px rgba(35,31,32,0.12);
}

.afc-flip-card-front {
	background-image: linear-gradient(var(--afc-overlay-start), var(--afc-overlay-end)), var(--afc-bg-image);
	background-size: cover;
	background-position: center;
	display: flex;
	align-items: flex-end;
	justify-content: center;
	padding-bottom: 35px;
}

.afc-flip-card-front h3 {
	color: var(--afc-front-title) !important;
	font-size: 26px;
	font-weight: 700;
	letter-spacing: 0.5px;
	text-shadow: 2px 2px 8px rgba(35,31,32,0.8);
	margin: 0;
}

.afc-flip-card-back {
	background-color: var(--afc-back-bg);
	transform: rotateY(180deg);
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 30px;
	box-sizing: border-box;
	border: 2px solid var(--afc-border-color);
}

.afc-back-content {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
}

.afc-flip-card-back h4 {
	color: var(--afc-back-title) !important;
	font-size: 22px;
	margin: 0 0 15px 0;
	font-weight: 700;
}

.afc-flip-card-back p {
	color: var(--afc-text-color) !important;
	font-size: 15px;
	line-height: 1.6;
	margin: 0 0 25px 0;
}

.afc-btn {
	background-color: var(--afc-btn-bg) !important;
	color: var(--afc-btn-color) !important;
	padding: 12px 24px;
	border-radius: 8px;
	text-decoration: none;
	font-weight: bold;
	font-size: 14px;
	letter-spacing: 0.5px;
	transition: background-color 0.3s ease, transform 0.2s ease;
	display: inline-block;
}

.afc-btn:hover {
	background-color: var(--afc-btn-hover) !important;
	transform: scale(1.05);
}

@media (max-width: 767px) {
	.afc-flip-card {
		height: auto;
		min-height: 380px;
	}
}
