/**
 * Pie de página público (shortcode [bpc_footer]) y botón de WhatsApp
 * independiente (shortcode [bpc_whatsapp_boton], pensado para insertarse
 * dentro del header que se maqueta a mano en Elementor). Variables
 * propias, separadas de panel.css: este archivo se carga en el sitio
 * público, no en el panel de administración.
 */

.bpc-pub-footer,
.bpc-pub-whatsapp-btn {
	--bpc-hf-accent: #4F46E5;
	--bpc-hf-texto: #1F2937;
	--bpc-hf-texto-suave: #6B7280;
	--bpc-hf-borde: rgba(15, 23, 42, 0.08);
	--bpc-hf-whatsapp: #25D366;
	font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
	box-sizing: border-box;
}

.bpc-pub-footer *,
.bpc-pub-footer *::before,
.bpc-pub-footer *::after {
	box-sizing: border-box;
}

/* Tamaño base de los íconos (bpc_icon()). Igual que en
   noticias-carrusel.css: panel.css (donde normalmente viven estas reglas)
   solo se carga en el panel de administración, nunca en el sitio público. */
.bpc-icon { width: 20px; height: 20px; flex-shrink: 0; }
.bpc-icon--sm { width: 16px; height: 16px; }
.bpc-icon--lg { width: 26px; height: 26px; }

/* ---------- Botón de WhatsApp independiente ---------- */
.bpc-pub-whatsapp-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 44px;
	height: 44px;
	border-radius: 999px;
	background: var(--bpc-hf-whatsapp);
	color: #fff;
	text-decoration: none;
	box-shadow: 0 6px 16px rgba(37, 211, 102, 0.35);
	transition: filter 0.15s ease, transform 0.15s ease;
}
.bpc-pub-whatsapp-btn:hover { filter: brightness(1.06); transform: translateY(-1px); }
.bpc-pub-whatsapp-btn .bpc-icon { width: 22px; height: 22px; }

/* Variante con texto (atributo texto="..." del shortcode): deja de ser un
   círculo y se convierte en una píldora con el ícono + la palabra. */
.bpc-pub-whatsapp-btn--con-texto {
	width: auto;
	height: auto;
	padding: 11px 20px 11px 16px;
	border-radius: 999px;
	font-weight: 600;
	font-size: 0.92rem;
}
.bpc-pub-whatsapp-btn--con-texto .bpc-icon { width: 19px; height: 19px; }

/* ---------- Pie de página ---------- */
.bpc-pub-footer {
	background: #0F172A;
	color: rgba(255, 255, 255, 0.82);
	padding: 44px 24px 26px;
}

.bpc-pub-footer__inner {
	max-width: 1180px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	gap: 32px;
	justify-content: space-between;
	padding-bottom: 26px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.bpc-pub-footer__col { min-width: 220px; }
.bpc-pub-footer__logo { max-height: 38px; margin-bottom: 14px; display: block; }
.bpc-pub-footer__brand { font-weight: 700; font-size: 1.05rem; color: #fff; margin-bottom: 14px; }

.bpc-pub-footer__linea {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 0.87rem;
	color: rgba(255, 255, 255, 0.68);
	margin: 0 0 10px;
	text-decoration: none;
}
a.bpc-pub-footer__whatsapp-link { color: rgba(255, 255, 255, 0.68); transition: color 0.15s ease; }
a.bpc-pub-footer__whatsapp-link:hover { color: var(--bpc-hf-whatsapp); }
.bpc-pub-footer__linea .bpc-icon { color: rgba(255, 255, 255, 0.45); flex-shrink: 0; }

.bpc-pub-footer__col-title {
	display: block;
	font-size: 0.75rem;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: rgba(255, 255, 255, 0.45);
	margin-bottom: 14px;
	font-weight: 600;
}
.bpc-pub-footer__iconos { display: flex; gap: 10px; flex-wrap: wrap; }
.bpc-pub-footer__iconos a {
	width: 38px;
	height: 38px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.08);
	display: flex;
	align-items: center;
	justify-content: center;
	color: rgba(255, 255, 255, 0.8);
	text-decoration: none;
	transition: background 0.2s ease, transform 0.2s ease, color 0.2s ease;
}
.bpc-pub-footer__iconos a:hover { background: var(--bpc-hf-accent); transform: translateY(-3px); color: #fff; }

.bpc-pub-footer__bottom {
	max-width: 1180px;
	margin: 18px auto 0;
	font-size: 0.82rem;
	color: rgba(255, 255, 255, 0.5);
}
.bpc-pub-footer__bottom p { margin: 0; }

.bpc-pub-footer__seo {
	max-width: 1180px;
	margin: 14px auto 0;
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
}
.bpc-pub-footer__seo-tag {
	font-size: 0.72rem;
	line-height: 1.5;
	color: rgba(255, 255, 255, 0.38);
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 999px;
	padding: 3px 11px;
}

@media (max-width: 560px) {
	.bpc-pub-footer__inner { flex-direction: column; gap: 26px; }
}
