/*
===========================================
 Divi Enfant - DiviKit
-------------------------------------------
 Author: DrakMaker
 Template: Divi
 Description: Thème principal
===========================================
*/

/* Couleur de sélection du texte */
::selection {
  background-color: #8000ff;
  color : #FFF;
}

/* Compatibilité Firefox */
::-moz-selection {
  background-color:  #8000ff;
  color : #FFF;
}

/* ==========================================
   Larken Medium — font-face optimisé
   ========================================== */

@font-face {
  font-family: 'Larken';
  src: url('/fonts/Larken_Regular.woff') format('woff'),
       url('/fonts/Larken_Regular.otf') format('opentype');
  font-weight: regular;
  font-style: normal;
  font-display: swap;
  letter-spacing: 1px;
}


/*-----------------------------------------------------------
==================== 1. ROOT VARIABLES =====================
-----------------------------------------------------------*/

:root {
  /* === Couleurs principales === */
  --anthracite: #161719;
  --anthraciteMoyen: #212226;
  --anthraciteClair: #2b2e33;
  --brandColor: #8000ff;
  --brandColorPale: #e5e5ff;
  --grisClair: #f9f9f9;
  --grisMoyen: #f3f3f3;

  /* === Couleurs d’accent === */
  --accent1: #ffea00;
  --accent1Pale: #ffffcc;
  --accent2: #0cf2a6;
  --accent2Pale: #d9ffec;

  /* === Typographies === */
  --fontMain: "Poppins", sans-serif;
  --fontHeading: "Poppins", serif;
  --accentFont : 'Larken';

  /* === Rayons, ombres, effets === */
  --borderRadius: 0.666em;
  --ombrePortee: 0 10px 40px rgba(0, 0, 0, 0.05);
  --ombrePorteeForte: 0 10px 40px rgba(0, 0, 0, 0.08);
  --transition: all 0.3s ease-in-out;
  --agrandissement: scale(1.01);

  /* === Échelles de tailles === */
  --sizeXS: 0.5em;
  --sizeS: 1em;
  --sizeM: 1.5em;
  --sizeL: 2em;
  --sizeXL: 3em;
}



/*-----------------------------------------------------------
==================== 2. STYLES DE BASE =====================
-----------------------------------------------------------*/

/* === Largeurs de conteneurs === */
#top-header .container,
header .container,
footer .container,
.et_pb_row,
.et_pb_post_title .et_pb_title_container,
.et_pb_fullwidth_header .et_pb_fullwidth_header_container {
  max-width: 1500px;
  width: 90%;
}

.fullWidth {
  width: 100% !important;
  max-width: 99%;
}

/* === Typographie globale === */
body,
.et_pb_module,
.et_pb_module p,
.et_pb_module span {
  font-family: var(--fontMain);
  font-size: 18px;
  line-height: 1.5;
  font-weight: 300;
}

/* === Titres === */
.et_pb_module h1,
.et_pb_module h2,
.et_pb_module h3,
.et_pb_module h4,
.et_pb_module h5,
.et_pb_module h6,
.et_pb_module h1 span,
.et_pb_module h2 span,
.et_pb_module h3 span,
.et_pb_module h4 span,
.et_pb_module h5 span,
.et_pb_module h6 span{
  font-family: var(--fontHeading);
  line-height: 1.3;
  font-weight: 500;
  padding-bottom: 0.5em;
}

.et_pb_module h1 { font-size: 3.5em;}
.et_pb_module h2 { font-size: 2.7em;}
.et_pb_module h3 { font-size: 1.5em;}
.et_pb_module h4 { font-size: 1.333em;}
.et_pb_module h5 { font-size: 1.15em;}
.et_pb_module h6 { font-size: 1em;}

.et_pb_module p {
  margin: 0 0 var(--sizeM);
}

.et_pb_module strong {
  font-weight: 500;
}

/* === Blockquote === */
blockquote {
  border-color: var(--brandColor);
}

/* === Séparateurs === */
hr {
  border: none;
  border-top: 1px solid var(--grisClair);
  margin: 1em 0 1.5em;
}

/* === Sur-titres === */
.surTitre {
  color: var(--brandColor) !important;
  margin-bottom: var(--sizeS) !important;
}

/* === gros texte === */
.big p{
  font-size:1.5em !important;
}

/* === Accent Font === */
.accentFont {
  font-family: var(--accentFont);
}

/* === Liens === */
.et_pb_module a {
  color: var(--anthracite);
  text-decoration: underline;
  text-decoration-color: var(--brandColor);
  text-decoration-thickness: 1px;
  text-underline-offset: 5px;
  transition: color 0.3s ease;
}

.et_pb_module h1 a,
.et_pb_module h2 a,
.et_pb_module h3 a,
.et_pb_module h4 a,
.et_pb_module h5 a,
.et_pb_module h6 a {
  text-decoration: none;
}

.et_pb_module h1 a:hover,
.et_pb_module h2 a:hover,
.et_pb_module h3 a:hover,
.et_pb_module h4 a:hover,
.et_pb_module h5 a:hover,
.et_pb_module h6 a:hover {
  color: var(--brandColor);
}

/* === Post meta === */
.post-meta,
.dsm-posted-category {
  color: #fff !important;
}

.post-meta a,
.dsm-posted-category a {
  background-color: var(--anthraciteMoyen);
  display: inline-block;
  padding: 1px 13px 1px 7px;
  border-radius: var(--borderRadius);
  color: #fff !important;
  text-decoration: none;
  font-size: 11px;
  margin: var(--sizeXS) 0;
}

.post-meta a:before,
.dsm-posted-category a:before {
  content: "•";
  color: var(--brandColor);
  font-weight: 600;
  font-size: 20px;
  margin-right: 0.25em;
  vertical-align: -3px;
}

.dsm-meta-seperator {
  display: none;
}

.sans-border-radius img{
  border-radius: 0px !important;
}


/*-----------------------------------------------------------
=========== 3. PERSONNALISATION DES MODULES DIVI ============
-----------------------------------------------------------*/

/* === Menu === */
ul.sub-menu  {}
ul.sub-menu li {}
ul.sub-menu li a{}

.menu-item-44156 a:before {
  content: "+";
  color : var(--brandColor);
  display: inline-block;
  margin-right: 3px;
  font-weight: bold;
  font-size: 16px;
}

/* === Images === */
.header-image img,
.et_pb_image img,
.et_portfolio_image img,
.dsm-entry-thumbnail img {
  border-radius: var(--borderRadius);
}

/* === EN-TËTE === */
.et_pb_fullwidth_header {
  
}
/* H1 */
.et_pb_fullwidth_header .et_pb_module_header{
  font-size: 1em;
  color : var(--brandColor) !important;
  font-weight: 500;
}

/* SLOGAN */
.et_pb_fullwidth_header .et_pb_fullwidth_header_subhead{
  font-size: 3em;
  font-weight: 600;
  margin-bottom: 0.5em;
}

/* P */
.et_pb_fullwidth_header .et_pb_header_content_wrapper p{
  
}

/* === Slider === */
.et-pb-slider-arrows .et-pb-arrow-prev,
.et-pb-slider-arrows .et-pb-arrow-next {
  background-color: var(--brandColor);
  border-radius: 8px;
}

.et-pb-slider-arrows .et-pb-arrow-prev:before,
.et-pb-slider-arrows .et-pb-arrow-next:before {
  color: #fff;
}

/* === Boutons === */
.et_pb_button {
  text-decoration: none !important;
  background: linear-gradient(45deg, #212226 50%, rgba(128, 0, 255, 0.8) 100%);
  padding: 0.5em 1em;
  border: 2px solid rgba(255,255,255,0.1);
  box-shadow: 0 0 30px 0 rgba(128, 0, 255, 0.2);
  color: #fff;
  transition: all 0.3s ease;
}

.et_pb_button:hover {
  padding: 0.5em 2em 0.5em 1em !important;
  background-color: var(--brandColor) !important;
  color: #fff !important;
}

.btnGris {
  background: var(--grisMoyen) !important;
  background-color: var(--grisMoyen) !important;
  color: var(--anthracite) !important;
  box-shadow: initial;
}

/* === Formulaires === */
input,
textarea {
  background-color: var(--grisClair) !important;
  border-radius: var(--borderRadius) !important;
  border: none !important;
  transition: 0.3s ease;
}

input:focus {
  background-color: var(--grisMoyen) !important;
}

.et_contact_bottom_container {
  margin-top: 1em;
}

.et_pb_contact_submit {
  max-height: 50px;
}

/* === Bascule & Accordéons === */
.et_pb_toggle {
  border : none;
  border-bottom: 1px solid var(--grisMoyen) !important;
  color: var(--anthracite) !important;
  margin-bottom: 0em !important;
  transition : var(--transition);
  background: none;
  padding : var(--sizeM) 0;
}

.et_pb_toggle_open {}
.et_pb_toggle_close {}
.et_pb_toggle.et_pb_toggle_open {}

.et_pb_toggle_title {
  color: var(--anthracite);
}

.et_pb_toggle_title:before {
  color: var(--brandColor);
}

/* === Portfolio filtrable === */
.et_pb_filterable_portfolio .et_pb_portfolio_item .et_overlay {
  background-color: var(--anthracite);
  opacity: 0.8;
  border-radius: var(--borderRadius);
  border: none;
  transition: var(--transition);
}

/* Effet de transition fluide sur le portfolio */
.et_pb_filterable_portfolio .et_pb_portfolio_item .et_overlay {
  opacity: 0;
  transition: opacity 0.4s ease-in-out, transform 0.4s ease-in-out;
}

/* Apparition au survol */
.et_pb_filterable_portfolio .et_pb_portfolio_item:hover .et_overlay {
  opacity: 0.9;
}

.et_pb_filterable_portfolio .et_pb_portfolio_item .et_overlay:before {
  color: var(--brandColor);
  opacity: 1;
}

.et_pb_filterable_portfolio .et_pb_portfolio_filters ul li {
  margin-right: 0.5em;
}

.et_pb_filterable_portfolio .et_pb_portfolio_filters ul li a {
  background-color: var(--grisClair);
  border-radius: var(--borderRadius) !important;
  text-decoration: none !important;
  border: none;
}

.et_pb_filterable_portfolio .et_pb_portfolio_filters ul li a.active {
  background-color: var(--anthracite);
  color: #fff;
}

/* === Pricing Tables === */
.et_pb_pricing > * {
  border : none !important;
}
/* Boîte principale */
.et_pb_pricing_table {
  border: 1px solid var(--grisMoyen);
  background-color: #fff;
  border-radius: var(--borderRadius);
  box-shadow: var(--ombrePortee);
}

/* En-tête */
.et_pb_pricing_heading {
  background-color: var(--anthraciteMoyen);
  border-radius: var(--borderRadius) var(--borderRadius) 0 0;
  padding: 2em 1em;
}

/* Mention "à la une" (table mise en avant) */
.et_pb_featured_table .et_pb_pricing_heading {
  background-color: var(--brandColor);
}

/* Valeur mise en avant */
span.et_pb_best_value {
  color: #fff;
}

/* Bloc supérieur (prix + fréquence) */
.et_pb_pricing_content_top {
  border-bottom: 1px solid var(--grisMoyen);
  padding: 1em;
  color: var(--anthracite);
}

/* Prix */
.et_pb_et_price,
.et_pb_sum {
  font-size: 1.5em !important;
  color: var(--anthracite) !important;
  font-weight: bold !important;
}

/* Symbole monétaire et fréquence */
.et_pb_dollar_sign,
.et_pb_frequency {
  font-size: 0.666em !important;
}

/* Liste des avantages */
ul.et_pb_pricing li {
  padding: var(--sizeXS) var(--sizeM) 0 var(--sizeM);
}

/* Check icon des avantages */
.et_pb_pricing li span:before {
  border-color: var(--brandColor);
}


/* === CTA === */

/* Bloc principal */
.et_pb_promo {
  box-shadow: var(--ombrePortee);
  border-radius: var(--borderRadius);
  max-width: 900px;
  margin : auto;
}

/* Conteneur du texte */
.et_pb_promo_description {}

/* Titre */
.et_pb_promo_description h2 {}

/* Paragraphe */
.et_pb_promo_description p {}

/* Bouton */
.et_pb_promo .et_pb_button_wrapper .et_pb_button {}

/* Bouton au survol */
.et_pb_promo .et_pb_button_wrapper .et_pb_button:hover {}


/* ===== BLURB =====*/

/* Boîte principale du blurb */
.et_pb_blurb {}

/* Blurb content */
.et_pb_blurb .et_pb_blurb_content {
  max-width: 100%;
  text-align: inherit;
}

/* Conteneur de l’image ou de l’icône */
.et_pb_main_blurb_image {}

/* Image */
.et_pb_main_blurb_image img {}

/* Icône SVG */
.et_pb_main_blurb_image .et-pb-icon {}

/* Conteneur du texte */
.et_pb_blurb_container {}

/* Titre */
.et_pb_blurb_container .et_pb_module_header span {
  font-weight: 500 !important;
  font-size: 1em;
}

/* Paragraphe / texte */
.et_pb_blurb_container .et_pb_blurb_description {}

/* Lien (si le blurb entier est cliquable) */
.et_pb_blurb a.et_pb_more_button {}

/* Effet de survol du lien ou de l’ensemble du blurb */
.et_pb_blurb:hover {}


/* ===== TEAM MEMBER =====*/

/* Boîte principale du membre de l’équipe */
.et_pb_team_member {}

/* Image (portrait) */
.et_pb_team_member_image {
  max-width: 100%;
}

/* Image */
.et_pb_team_member_image img {}

/* Description générale (texte + réseaux) */
.et_pb_team_member_description {}

/* Nom du membre */
.et_pb_team_member_description .et_pb_member_name {}

/* Poste ou fonction */
.et_pb_team_member_description .et_pb_member_position{
  margin-bottom: var(--sizeXS) !important;
  color : var(--brandColor) !important;
}

/* Texte de description */
.et_pb_team_member_description .et_pb_member_description {}

/* Réseaux sociaux (conteneur des icônes) */
.et_pb_team_member_description .et_pb_team_member_social_links {}

/* Icône de réseau social */
.et_pb_team_member_description .et_pb_team_member_social_links a {}

/* Icône au survol */
.et_pb_team_member_description .et_pb_team_member_social_links a:hover {}


/* === TESTIMONIAL === */

/* Boîte principale du témoignage */
.et_pb_testimonial {
  background: none !important;
  border : 1px solid var(--grisMoyen);
  border-radius: var(--borderRadius);
}

/* Image / portrait du témoin */
.et_pb_testimonial_portrait {}

/* Image <img> du portrait */
.et_pb_testimonial_portrait img {}

/* Conteneur texte (nom + rôle + contenu) */
.et_pb_testimonial_description {}

/* Contenu du témoignage (texte principal) */
.et_pb_testimonial_description .et_pb_testimonial_content p{
  margin-bottom : var(--sizeXS) !important;
}

/* Guillemets décoratifs éventuels */
.et_pb_testimonial:before {
  color: var(--brandColor) !important;
}

/* Nom de la personne */
.et_pb_testimonial_description .et_pb_testimonial_author {
  margin-top : 0;
  font-weight: 500;
}

/* Poste ou fonction */
.et_pb_testimonial_description .et_pb_testimonial_meta{
  margin-bottom:  0 !important;
}
.et_pb_testimonial_description .et_pb_testimonial_meta > * {
  font-size: 0.8em !important;
}

/* Entreprise (si utilisée) */
.et_pb_testimonial_description .et_pb_testimonial_company {}

/* Icônes ou décorations diverses */
.et_pb_testimonial_description .et_pb_testimonial_icon {}

/* Effet de survol global */
.et_pb_testimonial:hover {}


/*-----------------------------------------------------------
========= 4. PERSONNALISATION DIVI SUPREME (DSM) ============
-----------------------------------------------------------*/

/* === DSM Blog Carousel === */
.dsm_breadcrumbs a {
  text-decoration: none !important;
}

/* === DSM Blog Carousel === */
/* === DSM Post Carousel === */
/* === DSM Card Carousel === */

/* Boîte principale */
.dsm-blog-carousel-item,
.dsm-post-carousel-item,
.dsm_card_carousel_child {
  background-color: #FFF;
  border-radius: var(--borderRadius);
}

/* Conteneur principal : pas d'effet direct ici */
.dsm-blog-carousel-item,
.dsm-post-carousel-item,
.dsm_card_carousel_child {
  background-color: #FFF;
  border-radius: var(--borderRadius);
  overflow: hidden; /* important pour éviter que l'image déborde pendant le zoom */
}

/* Image : état normal */
.dsm-blog-carousel-item img,
.dsm-post-carousel-item img,
.dsm_card_carousel_child_image_background img {
  transition: transform 0.6s ease;
  transform: scale(1);
}

/* Image : effet de survol */
.dsm-blog-carousel-item:hover img,
.dsm-post-carousel-item:hover img,
.dsm_card_carousel_child:hover .dsm_card_carousel_child_image_background img {
  transform: scale(1.05); /* léger zoom */
}

/* Image */
.dsm-blog-carousel-item img,
.dsm-post-carousel-item img,
.dsm_card_carousel_child_image_background {
  border-radius : var(--borderRadius) var(--borderRadius) 0 0;
}

/* Wrapper de contenu */
.dsm-blog-carousel-item .dsm_card_wrapper,
.dsm-post-carousel-item .dsm_card_wrapper,
.dsm_card_wrapper {
  padding : 1em;
}

/* Titre */
.dsm-blog-carousel-item,
.dsm-post-carousel-item,
.dsm_card_title {}

.dsm-blog-carousel-item:hover .dsm-entry-title a,
.dsm-post-carousel-item:hover .dsm-entry-title a,
.dsm_card_carousel_child:hover .dsm_card_title {
  color: var(--brandColor);
}

/* Conteneur de la pagination */
.dsm_blog_carousel_wrapper .swiper-pagination,
.dsm_post_carousel_wrapper .swiper-pagination,
.dsm_card_carousel_wrapper .swiper-pagination {}

/* Bullet individuel */
.swiper-pagination-bullet {
  background: var(--brandColor) !important;
}

/* Bullet actif */
.swiper-pagination-bullet-active {
  background: var(--brandColor) !important;
}

/* === DSM Image Carousel === */
.dsm_image_carousel .dsm_image_carousel_item img{
  border-radius : var(--borderRadius);
}


/* === DSM Card Carousel === */
.dsm_card_carousel_child_badge_text {
  background: var(--brandColor);
  color: #FFF;
}


/* === DSM Advanced Tabs === */
.dsm_advanced_tabs {}

/* NAV */
.dsm_advanced_tabs .dsm-advanced-tabs-wrapper {
  margin:auto;
}

/* Onglet */
.dsm_advanced_tabs .dsm-advanced-tabs-wrapper .dsm-tab {
  margin-left: 10px;
  background: var(--grisClair) !important;
  border-radius: 10px 10px 0 0;
}

/* Onglet actif */
.dsm_advanced_tabs .dsm-advanced-tabs-wrapper .dsm-tab.dsm-active {
  border-bottom:1px solid var(--brandColor);
  background: var(--brandColorPale)!important;
}

/* Onglet focus */
.dsm_advanced_tabs .dsm-advanced-tabs-wrapper .dsm-tab:focus {
}


/* IMAGE ONGLET */
.dsm_advanced_tabs .dsm-advanced-tabs-wrapper .dsm-image img{
  margin-top: 15%;
}

/* Titre d’onglet*/
.dsm_advanced_tabs .dsm-advanced-tabs-wrapper .dsm-tab .dsm-title{
  font-weight: 500;
}

/* Titre onglet + texte onglet*/
.dsm_advanced_tabs .dsm-advanced-tabs-wrapper .dsm-tab .dsm-title,
.dsm_advanced_tabs .dsm-advanced-tabs-wrapper .dsm-tab .dsm-tab-subtitle{
  color: var(--anthraciteClair);
  font-weight: 400;
}

/* Titre onglet:hover + texte onglet:hover*/
.dsm_advanced_tabs .dsm-advanced-tabs-wrapper .dsm-tab:hover .dsm-title,
.dsm_advanced_tabs .dsm-advanced-tabs-wrapper .dsm-tab:hover .dsm-tab-subtitle{
  color: var(--anthracite);
}

/* Titre onglet:actif + texte onglet:actif*/
.dsm_advanced_tabs .dsm-advanced-tabs-wrapper .dsm-tab.dsm-active .dsm-title,
.dsm_advanced_tabs .dsm-advanced-tabs-wrapper .dsm-tab.dsm-active .dsm-tab-subtitle {
  color: var(--brandColor);
}

/* Wrapper des Panneaux */
.dsm-advanced-tabs-content-wrapper {
  border-top : 1px solid var(--grisMoyen);
}

/* Panneau */
.dsm_advanced_tabs  .dsm-content-wrapper {
  border : none !important;
  background: none !important;
}
/* Wrapper  */
.dsm-inner-content-wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
}

.dsm_advanced_tabs .dsm-inner-content-wrapper .dsm-inner-content .dsm-title {
  font-size:2em;
}

/* Élément à l’intérieur du wrapper (colonnes internes) */
 .dsm_advanced_tabs .dsm-inner-content-wrapper > * {
  flex: 1 1 calc(50% - 1rem);
  box-sizing: border-box;
}

/* Colonne image */
.dsm_advanced_tabs  .dsm-image {
}

/* Image */
.dsm_advanced_tabs  .dsm-image img {
  border-radius: var(--borderRadius);
}

/* Colonne texte */
.dsm_advanced_tabs .dsm-inner-content {
  padding: 2em;
}

/* Responsive : passage en une colonne sur mobile */
@media (max-width: 768px) {
 .dsm_advanced_tabs .dsm-inner-content-wrapper > * {
    flex: 1 1 100%;
  }
  .dsm_advanced_tabs .dsm-advanced-tabs-wrapper .dsm-tab {
      width: 100%
  }
  .dsm_advanced_tabs .dsm-content-wrapper {
    padding : 5px !important;
  }
  .dsm_advanced_tabs .dsm-inner-content {
    padding : 5px !important;
  }
  .dsm_advanced_tabs .dsm-image {
    padding-bottom: 10px;
  }
}


/* === DSM TOOGLE === */

.dsm_content_toggle .dsm-switch-inner {
  background-color: var(--grisClair)
}

.dsm-toggle-head-one,
.dsm-toggle-head-two {
  padding-bottom: 0px !important;
}

.dsm_content_toggle_0 .dsm-toggle-switch:checked + .dsm-switch-inner {
  background-color: var(--brandColor) !important;
}

.dsm_content_toggle {}
.dsm-content-toggle-front,
.dsm-content-toggle-back {
  background: none !important;
}




/*-----------------------------------------------------------
----------------- >> PORTFOLIO 3 COLS << --------------------
-------------------------------------------------------------*/
 
@media only screen and ( min-width: 768px ) {
.three-column-grid .et_pb_grid_item { width: 31% !important; margin: 0 3.5% 3.5% 0 !important; }
.three-column-grid .et_pb_grid_item:nth-child(3n) { margin-right: 0 !important; }
.three-column-grid .et_pb_grid_item:nth-child(3n+1) { clear: left; }
.three-column-grid .et_pb_grid_item:nth-child(4n+1) { clear: unset !important; }
.three-column-grid .et_pb_grid_item:nth-child(12n+1) { clear: both !important; }
}

/*-----------------------------------------------------------
====================== 5. DARK MODE =========================
-----------------------------------------------------------*/

/*-------------------------
  Style de base 
---------------------------*/

.dark,
.dark body {
  background-color: var(--anthracite);
  color: #fff;
}

/* === Textes et titres === */
.dark .et_pb_module,
.dark .et_pb_module p,
.dark .et_pb_module span,
.dark .et_pb_module h1,
.dark .et_pb_module h2,
.dark .et_pb_module h3,
.dark .et_pb_module h4,
.dark .et_pb_module h5,
.dark .et_pb_module h6 {
  color: #fff ;
}

/* === Liens === */
.dark .et_pb_module a {
  color: #FFF;
}

.dark .et_pb_module a:hover {
  color: var(--brandColor);
}

/* === Séparateurs & Blockquotes === */
.dark hr {
  border-top: 1px solid var(--anthraciteClair);
}

.dark blockquote {
  border-left-color: var(--brandColor);
  color: #fff;
}

/* === Formulaires === */
.dark input,
.dark textarea {
  background-color: var(--anthraciteClair) !important;
  color: #fff !important;
}

.dark input:focus,
.dark textarea:focus {
  background-color: var(--anthraciteMoyen) !important;
  border: 1px solid var(--brandColor);
}

/*-------------------------
  MODULES DIVI
---------------------------*/

/* === EN-TETE === */

.dark .et_pb_fullwidth_header .et_pb_fullwidth_header_subhead{
  color: #FFF !important;
}

/* === Accordéons / Toggles === */
.dark .et_pb_toggle {
  border-bottom: 1px solid var(--anthraciteClair) !important;
  background: none;
  color: #fff !important;
}

.dark .et_pb_toggle_title:before {
  color: var(--brandColor);
}

/* === Pricing Tables === */
.dark .et_pb_pricing_table {
  background-color: var(--anthraciteMoyen) !important;
  border: 1px solid var(--anthraciteClair) !important;
  box-shadow: none;
}

.dark .et_pb_pricing_content_top {
  border-color : var(--anthraciteClair);
}

.dark .et_pb_pricing_heading {
  background-color: var(--anthraciteClair);
}

.dark .et_pb_featured_table .et_pb_pricing_heading {
  background-color: var(--brandColor);
}

.dark .et_pb_et_price,
.dark .et_pb_sum {
  color: #fff !important;
}

.dark .et_pb_featured_table {
  background: var(--anthraciteClair) !important;
}

.dark .et_pb_featured_table .et_pb_pricing_content_top {
  border-color : rgba(255, 255, 255, 0.3);
}

/* === CTA === */
.dark .et_pb_promo {
  background-color: var(--anthraciteMoyen);
  box-shadow: none;
}

.dark .et_pb_promo h2,
.dark .et_pb_promo p {
  color: #fff;
}

/* === Blurb === */
.dark .et_pb_blurb {}

.dark .et_pb_blurb:hover {}

.dark .et_pb_blurb_container .et_pb_module_header span {
}

/* === Team Member === */
.dark .et_pb_team_member {
  color: #fff;
}

.dark .et_pb_team_member_description .et_pb_member_position {
  color: var(--brandColor) !important;
}

/* === Testimonial === */
.dark .et_pb_testimonial {
  background-color: var(--anthraciteMoyen) !important;
}

.dark .et_pb_testimonial_description .et_pb_testimonial_content p {
  color: #fff;
}

/*-------------------------
  MODULES DIVI SUPREM
---------------------------*/

/* === DSM Modules (Blog, Post, Card Carousel) === */
.dark .dsm-blog-carousel-item,
.dark .dsm-post-carousel-item,
.dark .dsm_card_carousel_child {
  background-color: var(--anthraciteMoyen) !important;
  color: #fff;
}

.dark .dsm-blog-carousel-item:hover,
.dark .dsm-post-carousel-item:hover,
.dark .dsm_card_carousel_child:hover {
}

.dark .dsm-blog-carousel-item .dsm-entry-title a,
.dark .dsm-post-carousel-item .dsm-entry-title a,
.dark .dsm_card_carousel_child .dsm_card_title a {
  color: #fff;
}

.dark .dsm-blog-carousel-item .dsm-entry-title a:hover,
.dark .dsm-post-carousel-item .dsm-entry-title a:hover,
.dark .dsm_card_carousel_child .dsm_card_title a:hover {
  color: var(--brandColor);
}

.dark .post-meta {
  color : var(--anthracite) !important;
}

/* === DSM Advanced Tabs === */
.dark .dsm_advanced_tabs .dsm-advanced-tabs-wrapper .dsm-tab {
  color: #fff;
}

.dark .dsm-advanced-tabs-content-wrapper {
    border-top: 1px solid var(--anthraciteClair);
}

.dark .dsm_advanced_tabs .dsm-advanced-tabs-wrapper .dsm-tab.dsm-active {
  border-bottom: 2px solid var(--brandColor);
}

.dark .dsm_advanced_tabs .dsm-advanced-tabs-wrapper .dsm-tab .dsm-title,
.dark .dsm_advanced_tabs .dsm-advanced-tabs-wrapper .dsm-tab .dsm-tab-subtitle {
  color: #fff;
}

.dark .dsm_advanced_tabs .dsm-advanced-tabs-wrapper .dsm-tab.dsm-active .dsm-title,
.dark .dsm_advanced_tabs .dsm-advanced-tabs-wrapper .dsm-tab.dsm-active .dsm-tab-subtitle {
  color: var(--brandColor);
}

.dark .dsm_advanced_tabs .dsm-image img {
  border-radius: var(--borderRadius);
}

/* === Portfolio === */
.dark .et_pb_filterable_portfolio .et_pb_portfolio_filters ul li a {
  background-color: var(--anthraciteMoyen);
  color: #fff;
}

.dark .et_pb_filterable_portfolio .et_pb_portfolio_filters ul li a.active {
  background-color: var(--brandColor);
}

.dark .et_pb_filterable_portfolio .et_pb_portofolio_pagination {
    border-top: 1px solid var(--anthraciteClair);
}

.dark .et_pb_filterable_portfolio .et_pb_portofolio_pagination ul li a {
  text-decoration: none;
}
.dark .et_pb_filterable_portfolio .et_pb_portofolio_pagination ul li a.active {
  color : var(--brandColor);
}

/* === DSM TOOGLE === */
.dark .dsm_content_toggle .dsm-switch-inner {
  background-color: var(--anthraciteClair);
}

.dark .dsm_content_toggle_0 .dsm-toggle-switch:checked + .dsm-switch-inner {
  background-color: var(--brandColor) !important;
}

/*-----------------------------------------------------------
====================== PAGES =========================
-----------------------------------------------------------*/

#offres .et_pb_blurb {
  background-color: #FFF;
  padding : 1em 2em;
  border-radius : var(--borderRadius);
}

#offres .et_pb_blurb ul li::marker {
  color: var(--brandColor) !important;
}

#expertises .et_pb_blurb .et-pb-icon {
  color: var(--accent2);
  font-size : 25px;
}

/* ===============================
   RANDOM BACKGROUND — crossfade
   =============================== */

.random-bg {
  position: relative;
  overflow: hidden;
  background-color: #161719 !important;
}

.random-bg::before,
.random-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  opacity: 0;
  transition: opacity 0.5s ease-in-out;
}

/* Image actuelle */
.random-bg::before {
  opacity: 1;
  background-image: var(--current-bg);
}

/* Image suivante */
.random-bg::after {
  background-image: var(--next-bg);
}

.random-bg.fade-start::after {
  opacity: 1;
}

.random-bg.fade-start::before {
  opacity: 0;
}

.random-bg > * {
  position: relative;
  z-index: 2;
}