/* =========================================================
   CTA FIXE MOBILE
   ========================================================= */

.mobile-cta {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: var(--z-mobile-cta);
  padding: var(--space-xs) var(--gutter);
  padding-bottom: max(var(--space-xs), env(safe-area-inset-bottom));
  background-color: color-mix(in srgb, var(--color-bg) 92%, transparent);
  backdrop-filter: blur(10px);
  border-top: 1px solid var(--color-border);
  transform: translateY(110%);
  transition: transform var(--duration-base) var(--ease-out);
}

.mobile-cta[hidden] { display: none; }
.mobile-cta.is-visible { transform: translateY(0); }

/* Empêche le CTA de masquer la fin de page */
body.has-mobile-cta { padding-bottom: 84px; }

@media (min-width: 900px) {
  .mobile-cta { display: none !important; }
  body.has-mobile-cta { padding-bottom: 0; }
}