/* === BAR STICKY === */
.vc-nl {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9000; /* sous le bandeau cookies Complianz */
  transform: translateY(100%);
  transition: transform .35s ease;
  background: #fff;
  border-top-left-radius: 12px;
  border-top-right-radius: 12px;
  box-shadow: 0 -10px 30px rgba(0,0,0,.08);
  font: normal 16px/1.4 system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}
.vc-nl.is-visible { transform: translateY(0); }
.vc-nl.hidden { visibility: hidden; }

/* Conteneur interne */
.vc-nl__inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 12px 16px;

  display: flex;
  flex-direction: column;   /* texte au-dessus, formulaire en dessous */
  align-items: center;      /* tout centré */
  text-align: center;
  gap: 12px;
}

/* Texte */
.vc-nl__text {
  margin: 0;
  font-weight: 600;
  color: #3A4F66;
  text-align: center;
  width: 100%;
}

/* Formulaire */
.vc-nl__form form,
.vc-nl__form .ct-newsletter-subscribe-form-elements {
  display: flex !important;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin: 0;
  padding: 0;
  flex-wrap: nowrap;
}

/* Champ email */
.vc-nl__form input[type="email"] {
  flex: 1;
  min-width: 260px;
  max-width: 320px; /* évite que l’input s’étale trop */
  padding: 10px 12px;
  border: 1px solid #dde1e6;
  border-radius: 10px;
  font-size: 15px;
  color: #3A4F66;
  margin: 0;
  text-align: center;
}

/* Bouton */
.vc-nl__form button,
.vc-nl__form .ct-newsletter-btn {
  background: #009AD5;
  color: #fff;
  font-weight: 700;
  padding: 10px 16px;
  border-radius: 10px;
  border: none;
  cursor: pointer;
  box-shadow: 0 6px 14px rgba(0,154,213,.25);
  transition: background .2s ease, transform .15s ease;
}
.vc-nl__form button:hover,
.vc-nl__form .ct-newsletter-btn:hover {
  background: #007aa8;
  transform: translateY(-1px);
}

/* Fermeture (X) */
.vc-nl__close {
  position: absolute;
  top: 8px;
  right: 12px;
  background: transparent;
  border: 0;
  font-size: 18px;
  cursor: pointer;
  color: #65839D;
  font-weight: 700;
}
.vc-nl__close:hover { color: #009AD5; }

/* ✅ Responsive mobile */
@media (max-width:768px) {
  .vc-nl__inner {
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
    text-align: center;
  }
  .vc-nl__form form,
  .vc-nl__form .ct-newsletter-subscribe-form-elements {
    flex-direction: column;
    width: 100%;
    gap: 10px;
  }
  .vc-nl__form input[type="email"],
  .vc-nl__form button,
  .vc-nl__form .ct-newsletter-btn {
    width: 100%;
    max-width: 100%;
  }
}

/* ✅ Gestion z-index Complianz */
#cmplz-cookiebanner-container { 
  z-index: 12000 !important; 
  position: relative !important; 
}
#cmplz-manage-consent-container { 
  z-index: 8000 !important; 
  position: relative !important; 
}
