/* ── FOOTER global (usado por front-page.php y todas las pages via get_footer()) ── */
.mb-footer { background: #1a3d2a; color: rgba(255,255,255,.45); padding: 48px 64px 32px; }
.mb-footer__inner { max-width: 1060px; margin: 0 auto; }
.mb-footer__top { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 40px; gap: 48px; flex-wrap: wrap; }
.mb-footer__brand { max-width: 260px; }
.mb-footer__logo { font-size: 1.1rem; font-weight: 900; color: #fff; letter-spacing: -.5px; margin-bottom: 10px; }
.mb-footer__brand p { font-size: .82rem; line-height: 1.7; }
.mb-footer__col h4 { font-size: .72rem; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; color: rgba(255,255,255,.5); margin-bottom: 14px; }
.mb-footer__col ul { list-style: none; display: flex; flex-direction: column; gap: 8px; margin: 0; padding: 0; }
.mb-footer__col a { font-size: .84rem; color: rgba(255,255,255,.45); text-decoration: none; transition: color .2s; }
.mb-footer__col a:hover { color: rgba(255,255,255,.9); }
.mb-footer__bottom { border-top: 1px solid rgba(255,255,255,.08); padding-top: 24px; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 12px; }
.mb-footer__bottom p { font-size: .75rem; margin: 0; }
/* Ocultar el footer interno del SPA React en páginas interiores; el PHP footer es el canónico */
#root footer { display: none; }

/* ── WHATSAPP FLOTANTE ── */
.mb-wa-btn {
	position: fixed; bottom: 28px; right: 28px;
	width: 56px; height: 56px; border-radius: 50%;
	background: #25D366; color: #fff;
	display: flex; align-items: center; justify-content: center;
	text-decoration: none; z-index: 9997;
	box-shadow: 0 4px 20px rgba(37, 211, 102, .45);
	transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
	animation: mbWaPulse 2.8s ease-in-out 2s infinite;
}
.mb-wa-btn:hover {
	background: #1ebe5d;
	transform: scale(1.1);
	box-shadow: 0 6px 32px rgba(37, 211, 102, .6);
	animation: none;
}
.mb-wa-btn svg { width: 28px; height: 28px; fill: #fff; flex-shrink: 0; }
@keyframes mbWaPulse {
	0%, 90%, 100% { box-shadow: 0 4px 20px rgba(37, 211, 102, .45); }
	45% { box-shadow: 0 4px 36px rgba(37, 211, 102, .75), 0 0 0 10px rgba(37, 211, 102, .12); }
}
@media (max-width: 768px) {
	.mb-footer { padding: 40px 20px 28px; }
	.mb-footer__top { flex-direction: column; gap: 24px; }
	.mb-footer__bottom { flex-direction: column; align-items: flex-start; gap: 8px; }
}
@media (max-width: 480px) {
	.mb-footer { padding: 32px 16px 24px; }
	.mb-wa-btn { bottom: 20px; right: 20px; width: 50px; height: 50px; }
	.mb-wa-btn svg { width: 24px; height: 24px; }
}
