/*
Theme Name: Hello Elementor Child
Template: hello-elementor
Version: 1.0.0
*/

/* =========================
   VARIABLES
   ========================= */

:root {
  --contraste-text: #0B0F13;
  --contraste-principal: #1F4D3A;
  --contraste-secondaire: #1B4F72;
  --contraste-accent: #4ADE80;
  --contraste-accent-hover: #216b4c;
}

/* =========================
   ACCORDÉON FAQ (fond sombre)
   ========================= */

.accordeon-faq p {
  color: #ffffff !important;
}

/* =========================
   HERO CONTRASTE
   ========================= */

.hero-contraste,
.fond-blanc .hero-contraste,
.hero-contraste p,
.hero-contraste li,
.hero-contraste span,
.hero-contraste div,
.hero-contraste label,
.hero-contraste .elementor-widget-text-editor,
.hero-contraste .elementor-widget-text-editor *,
.hero-contraste .elementor-heading-title,
.hero-contraste h1.elementor-heading-title,
.hero-contraste h2.elementor-heading-title,
.hero-contraste h3.elementor-heading-title,
.hero-contraste h4.elementor-heading-title,
.hero-contraste h5.elementor-heading-title,
.hero-contraste h6.elementor-heading-title,
.fond-blanc .hero-contraste p,
.fond-blanc .hero-contraste li,
.fond-blanc .hero-contraste span,
.fond-blanc .hero-contraste div,
.fond-blanc .hero-contraste label,
.fond-blanc .hero-contraste .elementor-widget-text-editor,
.fond-blanc .hero-contraste .elementor-widget-text-editor *,
.fond-blanc .hero-contraste .elementor-heading-title,
.fond-blanc .hero-contraste h1.elementor-heading-title,
.fond-blanc .hero-contraste h2.elementor-heading-title,
.fond-blanc .hero-contraste h3.elementor-heading-title,
.fond-blanc .hero-contraste h4.elementor-heading-title,
.fond-blanc .hero-contraste h5.elementor-heading-title,
.fond-blanc .hero-contraste h6.elementor-heading-title {
  color: #ffffff !important;
}
.hero-contraste {
  align-self: auto !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.hero-contraste > .e-con-inner {
  margin-left: auto !important;
  margin-right: auto !important;
}

/* =========================
   CONTEXTE CLAIR (fond blanc)
   ========================= */

.fond-blanc {
  color: var(--contraste-text);
  background-color: white !important;
}

/* Texte */

.fond-blanc p,
.fond-blanc li,
.fond-blanc span,
.fond-blanc div,
.fond-blanc label {
  color: var(--contraste-text)!important;
}

/* Elementor text editor */

.fond-blanc .elementor-widget-text-editor,
.fond-blanc .elementor-widget-text-editor * {
  color: var(--contraste-text);
}

/* Liens */

.fond-blanc a {
  color: var(--contraste-accent);
}

.fond-blanc a:hover {
  color: var(--contraste-accent-hover);
}

/* Titres */

.fond-blanc h1,
.fond-blanc h2,
.fond-blanc h1.elementor-heading-title,
.fond-blanc h2.elementor-heading-title,
.fond-blanc .elementor-widget-heading h1,
.fond-blanc .elementor-widget-heading h2,
.fond-blanc .elementor-widget-heading .elementor-heading-title {
  color: var(--contraste-principal) !important;
}

.fond-blanc h3,
.fond-blanc h3.elementor-heading-title,
.fond-blanc .elementor-widget-heading h3 {
  color: var(--contraste-secondaire) !important;
}

/* =========================
   BOUTONS (fond blanc)
   ========================= */

.fond-blanc .elementor-button,
.fond-blanc button,
.fond-blanc input[type="submit"] {
  background-color: var(--contraste-accent-hover);
  color: #ffffff !important;
  border: none;
}

/* 🔥 Forcer le texte interne Elementor */
.fond-blanc .elementor-button span,
.fond-blanc .elementor-button .elementor-button-text,
.fond-blanc .elementor-button .elementor-button-content-wrapper {
  color: #ffffff !important;
}

/* Hover = plus foncé */
.fond-blanc .elementor-button:hover,
.fond-blanc button:hover,
.fond-blanc input[type="submit"]:hover {
  background-color: var(--contraste-principal);
  color: #ffffff !important;
}

.fond-blanc .elementor-button:hover span,
.fond-blanc .elementor-button:hover .elementor-button-text,
.fond-blanc .elementor-button:hover .elementor-button-content-wrapper {
  color: #ffffff !important;
}

/* =========================
   BLOC CONTRASTÉ (AUTONOME)
   ========================= */

.demande-contraste {
  background-color: var(--contraste-accent);
  color: var(--contraste-text);
}

/* Texte */

.demande-contraste p,
.demande-contraste li,
.demande-contraste span,
.demande-contraste div,
.demande-contraste label {
  color: var(--contraste-text);
}

/* Titres */

.demande-contraste h1.elementor-heading-title,
.demande-contraste h2.elementor-heading-title,
.demande-contraste h3.elementor-heading-title,
.demande-contraste h4.elementor-heading-title,
.demande-contraste h5.elementor-heading-title,
.demande-contraste h6.elementor-heading-title {
  color: #ffffff;
}

/* Liens */

.demande-contraste a {
  color: #ffffff;
}

.demande-contraste a:hover {
  opacity: 0.85;
}

/* Boutons */

.demande-contraste .elementor-button,
.demande-contraste button,
.demande-contraste input[type="submit"] {
  background-color: var(--contraste-principal);
  color: #ffffff;
}

.demande-contraste .elementor-button:hover,
.demande-contraste button:hover,
.demande-contraste input[type="submit"]:hover {
  background-color: var(--contraste-accent-hover);
}

/* Sections sacrements et communautés */
.fond-blanc .communautes h4,
.fond-blanc .communautes h4.elementor-heading-title,
.fond-blanc .communautes .elementor-heading-title,
.fond-blanc.communautes h4,
.fond-blanc.communautes h4.elementor-heading-title,
.fond-blanc.communautes .elementor-heading-title,
.fond-blanc .sacrements h4,
.fond-blanc .sacrements h4.elementor-heading-title,
.fond-blanc .sacrements .elementor-heading-title,
.fond-blanc.sacrements h4,
.fond-blanc.sacrements h4.elementor-heading-title,
.fond-blanc.sacrements .elementor-heading-title {
  color: #1F4D3A !important;
}
