/* Footer — placeholder con tono navy. Definitivo llega con el port V8. */

.ijsb-footer {
	background: var(--ijs-navy-900);
	color: var(--ijs-white);
	padding: clamp(40px, 6vw, 80px) clamp(16px, 4vw, 32px);
	font-size: 0.95rem;
}

.ijsb-footer a {
	color: var(--ijs-turquoise-400);
	text-decoration: none;
}
.ijsb-footer a:hover { color: var(--ijs-white); text-decoration: underline; }

/* ============================================================== */
/* FAB WhatsApp — universal, mobile + desktop, en toda la web      */
/* ============================================================== */
.wa-fab,
.wa-fab:visited {
	position: fixed;
	right: max(1rem, env(safe-area-inset-right, 1rem));
	bottom: max(1rem, env(safe-area-inset-bottom, 1rem));
	z-index: 95;
	width: 56px;
	height: 56px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: #25D366;  /* verde WhatsApp oficial */
	color: var(--ijs-white);
	border-radius: 9999px;
	box-shadow: 0 8px 20px -6px rgba(11, 37, 69, 0.4);
	text-decoration: none;
	transition: transform 220ms ease, box-shadow 220ms ease, background 220ms ease;
}

.wa-fab svg {
	width: 30px;
	height: 30px;
	fill: var(--ijs-white);  /* explícito para evitar herencia del :visited */
}

.wa-fab:hover,
.wa-fab:focus-visible {
	background: #1da851;
	color: var(--ijs-white);
	transform: translateY(-2px);
	box-shadow: 0 10px 24px -6px rgba(11, 37, 69, 0.5);
}

@media (prefers-reduced-motion: reduce) {
	.wa-fab,
	.wa-fab:hover,
	.wa-fab:focus-visible { transition: none; transform: none; }
}

/* Ocultar FABs cuando el footer está en viewport. JS añade `.fab-near-footer`
   al body al ver el footer (zona.js → initFabFooterHide). */
body.fab-near-footer .wa-fab,
body.fab-near-footer .tour-fab {
	opacity: 0;
	transform: translateY(20px);
	pointer-events: none;
}

.ijsb-footer__inner {
	max-width: 1200px;
	margin-inline: auto;
	display: grid;
	gap: 2rem;
	grid-template-columns: 1fr;
}

.ijsb-footer__bottom {
	margin-top: 2rem;
	padding-top: 1.5rem;
	border-top: 1px solid rgba(255, 255, 255, 0.12);
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 1rem;
	font-size: 0.85rem;
	color: rgba(255, 255, 255, 0.7);
}

@media (min-width: 720px) {
	.ijsb-footer__inner {
		grid-template-columns: 2fr 1fr 1fr 1fr;
	}
}
