/* ============================================================
   🎨 EduquIA – Styles publics unifiés (Astra + Eduquia)
   ============================================================ */

/* === WPForms === */
.wpforms-container input[type=date],
.wpforms-container input[type=datetime],
.wpforms-container input[type=datetime-local],
.wpforms-container input[type=email],
.wpforms-container input[type=month],
.wpforms-container input[type=number],
.wpforms-container input[type=password],
.wpforms-container input[type=range],
.wpforms-container input[type=search],
.wpforms-container input[type=tel],
.wpforms-container input[type=text],
.wpforms-container input[type=time],
.wpforms-container input[type=url],
.wpforms-container input[type=week],
.wpforms-container select,
.wpforms-container textarea {
  background: #fff;
  border-width: 0 0 1px 0;
  color: var(--ast-global-color-2);
  opacity: 0.5;
  transition: all 0.3s ease;
}

.wpforms-container input:focus,
.wpforms-container select:focus,
.wpforms-container textarea:focus {
  outline: none;
  opacity: 1;
  border-color: var(--ast-global-color-0);
}

.wpforms-container textarea {
  resize: none;
}

.wpforms-container .wpforms-field-textarea textarea.wpforms-field-medium {
  height: 136px;
}

.wpforms-container button {
  padding: 15px 34px;
  font-size: 15px;
}

/* === Mise en page du footer Astra === */
.ast-builder-grid-row-3-equal .ast-builder-grid-row {
  grid-template-columns: 3fr 1fr 3fr;
}

/* === Ajustements visuels de l’en-tête Astra === */
.site-header-section {
  z-index: 999;
  position: relative;
}

.elementor-widget-container {
  z-index: 1000;
  position: relative;
}



/* === Contact Form 7 & formulaires EduquIA === */
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 textarea {
  width: 100%;
  padding: 12px 15px;
  font-size: 16px;
  font-family: 'Comfortaa', cursive;
  border: 1px solid #ccc;
  border-radius: 10px;
  margin-bottom: 15px;
  background: #f9f9f9;
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05);
  transition: border 0.3s ease, background 0.3s ease;
}

.wpcf7 input[type="text"]:focus,
.wpcf7 input[type="email"]:focus,
.wpcf7 textarea:focus {
  border-color: #09a9f8;
  background: #fff;
  outline: none;
}

/* ✅ Case à cocher RGPD */
.eduquia-consent,
.wpcf7-acceptance {
  display: block;
  font-size: 14px;
  margin-top: 10px;
  color: #444;
  font-family: 'Comfortaa', cursive;
  line-height: 1.6;
}

.eduquia-consent input[type="checkbox"],
.wpcf7-acceptance input[type="checkbox"] {
  margin-right: 8px;
  transform: scale(1.2);
  vertical-align: middle;
}

/* 🔗 Liens RGPD */
.eduquia-consent a,
.wpcf7-acceptance a {
  color: #09a9f8;
  text-decoration: underline;
  font-weight: 500;
}

/* ✅ Bouton envoyer */
.eduquia-submit,
.wpcf7 input[type="submit"] {
  display: inline-block;
  margin-top: 20px;
  background: linear-gradient(45deg, #2831dc, #09a9f8);
  color: white;
  padding: 12px 25px;
  font-size: 16px;
  border: none;
  border-radius: 25px;
  cursor: pointer;
  font-family: 'Comfortaa', cursive;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.eduquia-submit:hover,
.wpcf7 input[type="submit"]:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 15px rgba(0, 0, 0, 0.3);
}


/* 🔧 Neutraliser les décalages globaux au-dessus du contenu (Astra + Elementor) */

/* 1) Conteneur principal Astra */
.site-content,
.site-content > .ast-container {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* 2) Variantes de mise en page Astra */
.ast-plain-container .site-content > .ast-container,
.ast-page-builder-template .site-content > .ast-container,
.ast-separate-container .site-content > .ast-container {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* 3) Header transparent/sticky d'Astra qui pousse le contenu */
body.ast-theme-transparent-header .site-content,
body.ast-transparent-header .site-content {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* 4) Première section Elementor qui ajoute souvent un margin-top */
.elementor-page .elementor-section:first-of-type,
.elementor-page .elementor-top-section:first-of-type {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* 5) Sécurité : wrapper générique #content */
#content {
  margin-top: 0 !important;
  padding-top: 0 !important;
}