/* Typo globale */
body, .elementor-widget-text-editor, .elementor-heading-title, .elementor-widget-progress, .elementor-accordion .elementor-accordion-title, .elementor-tab-title {
  font-family: "Roboto", sans-serif;
  color: #CBD5F5;
  font-size: 18px;
  line-height: 1.65;
}

/* Titres */
h1, h2, h3,
.elementor-heading-title.elementor-size-default,
.elementor-heading-title.elementor-size-large,
.elementor-heading-title.elementor-size-medium {
  font-family: "Chakra Petch", sans-serif;
  color: #FFA21A;
  font-weight: 700;
}

/* Citations / accroches */
.cj-quote, blockquote {
  text-align: center;
  font-style: italic;
  color: #CBD5F5;
}

/* Badge niveau */
.cj-level-badge {
  display: inline-block;
  padding: 8px 14px;
  background: #182238;
  border: 1px solid #FFA21A;
  border-radius: 12px;
  color: #FFA21A;
  font-family: "Chakra Petch", sans-serif;
  font-size: 14px;
  font-weight: 600;
}

/* Progress bars HUD */
.elementor-progress-wrapper {
  background: #101828;
  border-radius: 22px;
  box-shadow: inset 0 0 12px rgba(0, 255, 255, 0.25);
}
.elementor-progress-bar {
  border-radius: 22px;
  background-image: linear-gradient(90deg, #1E90FF, #00F5FF);
  box-shadow: 0 0 14px rgba(0, 245, 255, 0.45);
}

/* Listes */
ul { margin-left: 20px; margin-bottom: 14px; }
ul li { margin-bottom: 8px; }
ul li::marker { color: #FFA21A; }

/* Accordéon serré et encadré */
.elementor-accordion {
  border: 1px solid #C5B3F5;
  border-radius: 6px;
  overflow: hidden;
  background: #0B1326;
}
.elementor-accordion .elementor-accordion-item {
  border-bottom: 1px solid #C5B3F5;
  margin: 0;
}
.elementor-accordion .elementor-accordion-title {
  padding: 12px 14px;
  color: #FFA21A;
  font-family: "Chakra Petch", sans-serif;
  font-size: 18px;
  font-weight: 600;
  background: #0B1326;
}
.elementor-accordion .elementor-accordion-icon {
  color: #FFA21A;
}
.elementor-accordion .elementor-tab-content {
  padding: 12px 14px 14px;
  background: #0B1326;
  color: #CBD5F5;
}
.elementor-accordion .elementor-accordion-item:last-child { border-bottom: none; }

/* Paragraphes */
p { margin-bottom: 12px; }

/* Centrage titre principal si besoin */
.cj-center { text-align: center; }
