/* =========================================================
   FOOTER.CSS â€” CTA footer + footer principal
   ========================================================= */

/* FOOTER CTA */
.footer-cta { background: linear-gradient(135deg, #3b0764 0%, #6d28d9 100%); padding: 3rem 0; }
.footer-cta-inner { display: flex; align-items: center; justify-content: space-between; gap: 2rem; flex-wrap: wrap; }
.footer-cta-title { font-size: clamp(20px, 2.5vw, 28px); font-weight: 800; color: white; letter-spacing: -.5px; margin-bottom: .35rem; }
.footer-cta-sub { font-size: 14px; color: rgba(255,255,255,0.65); font-weight: 500; }

/* FOOTER */
footer { padding: 4rem 0 2rem; background: var(--gray-100); border-top: 1px solid var(--gray-200); }
.footer-top { display: flex; justify-content: space-between; align-items: flex-start; gap: 3rem; margin-bottom: 3rem; }
.footer-brand { display: flex; flex-direction: column; gap: .75rem; }
.footer-tagline { font-size: 14px; color: var(--gray-400); font-weight: 700; font-style: italic; }
.footer-nav { display: flex; gap: 4rem; }
.footer-col { display: flex; flex-direction: column; gap: .6rem; }
.footer-col-title { font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; color: var(--blue); margin-bottom: .25rem; }
.footer-col a { font-size: 14px; color: var(--gray-600); text-decoration: none; font-weight: 600; transition: color .2s; }
.footer-col a:hover { color: var(--blue); }
.footer-socials { display: flex; gap: .75rem; margin-top: .25rem; }
.footer-social-link { width: 34px; height: 34px; border-radius: 50%; background: var(--gray-200); color: var(--gray-600); display: flex; align-items: center; justify-content: center; text-decoration: none; transition: background .2s, color .2s; }
.footer-social-link:hover { background: var(--blue); color: white; }
.footer-bottom { display: flex; justify-content: space-between; align-items: center; padding-top: 1.5rem; border-top: 1px solid var(--gray-200); font-size: 13px; color: var(--gray-400); font-weight: 600; }

/* RESPONSIVE FOOTER */
@media (max-width: 768px) {
  .footer-cta-inner { flex-direction: column; text-align: center; }
  .footer-top { flex-direction: column; gap: 2rem; }
  .footer-nav { gap: 2rem; }
  .footer-bottom { flex-direction: column; gap: .5rem; text-align: center; }
}

/* Fix taille logo footer */
.footer-brand .logo img {
	height: 36px;
	width: auto;
	max-width: none;
}

/* Masque le hook footer Elementor vide (site-footer) hérité du thème parent */
#site-footer.site-footer { display: none; }
