/**
 * FWP Modal — popup genérico "amigable" reutilizable en todo el front.
 * Mismo lenguaje visual que el modal del Cotizador (#cotizador-app .cot-modal):
 * overlay oscuro + tarjeta blanca centrada, icono grande, título y mensaje.
 */
.fwp-modal-overlay {
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, .55);
	z-index: 100000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 16px;
	animation: fwpModalFadeIn .2s ease;
}
.fwp-modal-card {
	background: #fff;
	border-radius: 14px;
	padding: 36px 32px 28px;
	max-width: 380px;
	width: 100%;
	text-align: center;
	box-shadow: 0 8px 40px rgba(0, 0, 0, .18);
	animation: fwpModalPop .18s ease;
}
.fwp-modal-icon {
	font-size: 44px;
	line-height: 1;
	margin-bottom: 14px;
}
.fwp-modal-title {
	font-size: 18px;
	font-weight: 800;
	color: #111;
	margin: 0 0 10px;
}
.fwp-modal-msg {
	font-size: 14px;
	color: #555;
	margin: 0 0 24px;
	line-height: 1.5;
}
.fwp-modal-msg strong {
	color: #333;
}
.fwp-modal-actions {
	display: flex;
	gap: 10px;
}
.fwp-modal-btn {
	flex: 1 1 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 0;
	border-radius: 50px;
	padding: 12px 18px;
	font-size: 14px;
	font-weight: 700;
	cursor: pointer;
	transition: background .15s ease, transform .1s ease;
}
.fwp-modal-btn:active { transform: translateY(1px); }
.fwp-modal-btn--primary { background: #111; color: #fff; }
.fwp-modal-btn--primary:hover { background: #000; }
.fwp-modal-btn--secondary { background: #f1f1ef; color: #111; }
.fwp-modal-btn--secondary:hover { background: #e6e6e3; }

@keyframes fwpModalFadeIn { from { opacity: 0; } to { opacity: 1; } }
@keyframes fwpModalPop {
	from { opacity: 0; transform: scale(.94); }
	to   { opacity: 1; transform: scale(1); }
}
@media (prefers-reduced-motion: reduce) {
	.fwp-modal-overlay, .fwp-modal-card { animation: none; }
}
