/*
 Theme Name:     Drakmaker Design System
 Theme URI:      https://drakmaker.fr/
 Description:    Child theme CSS — Design system simple pour Divi 5
 Author:         Drakmaker
 Template:       Divi
 Version:        1.1.0
*/


/* =========================================================
   1. ROOT
   Variables globales du projet
   À modifier à chaque nouveau client
========================================================= */

:root {

  /* =========================
     Couleurs
  ========================= */

  --brandDark: #0066cc;
  --brand: #0080ff;
  --brandLight: #3399ff;

  --darkDark: #0d2640;
  --dark: #0f2e4c;
  --darkLight: #123659;

  --greyDark: #e6ecf7;
  --grey: #edf2fa;
  --greyLight: #f5f7fc;

  --accentDark: #d99f00;
  --accent: #ffbf00;
  --accentLight: #ffd400;

  --white: #ffffff;
  --black: #111111;


  /* =========================
     Typographies
  ========================= */

  --fontBody: "Roboto", Arial, sans-serif;
  --fontTitle: "Roboto Condensed", Arial, sans-serif;

  --fontSizeBody: 1rem;
  --lineHeightBody: 1.6;

  --fontSizeH1: 3rem;
  --fontSizeH2: 2.25rem;
  --fontSizeH3: 1.333rem;

  --fontSizeH1Mobile: 2.2rem;
  --fontSizeH2Mobile: 1.75rem;
  --fontSizeH3Mobile: 1.333rem;

  --weightRegular: 400;
  --weightMedium: 500;
  --weightBold: 600;


  /* =========================
     Structure
  ========================= */

  --siteWidth: 90%;
  --siteMaxWidth: 1350px;

  --spaceXS: 0.5rem;
  --spaceS: 1rem;
  --spaceM: 1.5rem;
  --spaceL: 2rem;
  --spaceXL: 4rem;
  --spaceXXL: 6rem;

  --radiusSmall: 0.5rem;
  --radius: 0.75rem;
  --radiusLarge: 1.5rem;

  --border: 1px solid var(--grey);
  --shadow: 0 0 20px rgba(0, 0, 0, 0.05);
  --shadowStrong: 0 0 30px rgba(0, 0, 0, 0.10);

  --transition: all 0.25s ease;


  /* =========================
     Variables Divi
     Permet d’aligner Divi sur le design system
  ========================= */

  --gcid-primary-color: var(--brand);
  --gcid-secondary-color: var(--accentDark);
  --gcid-heading-color: var(--darkDark);
  --gcid-body-color: var(--darkDark);
  --gcid-link-color: var(--brand);

  --et_global_body_font: var(--fontBody);
  --et_global_heading_font: var(--fontTitle);

  --content-width: var(--siteWidth);
  --content-max-width: var(--siteMaxWidth);
}


/* =========================================================
   2. BASE
   Socle global commun au site
========================================================= */

/* =========================
   Reset léger
========================= */

html,
body {
  overflow-x: hidden;
}

* {
  box-sizing: border-box;
}

::selection,
::-moz-selection {
  background-color: var(--brand);
  color: var(--white);
}

hr {
  height: 0;
  margin: var(--spaceM) 0;
  border: 0;
  border-top: 1px solid var(--grey) !important;
  background: transparent !important;
}

.et_pb_divider:before {
  border-top-color: var(--greyLight) !important;
}


/* =========================
   Containers
========================= */

.et_pb_row,
.container,
#top-header .container,
#main-header .container,
#main-footer .container,
#et-footer-nav .container,
#footer-bottom .container {
  width: var(--siteWidth) !important;
  max-width: var(--siteMaxWidth) !important;
}

.et_pb_section {
  background-color: var(--white);
}

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


/* =========================
   Typographie
========================= */

body,
.et_pb_text_inner,
.et_pb_text_inner p,
.et_pb_module p,
.et_pb_module li {
  font-family: var(--fontBody);
  font-size: var(--fontSizeBody);
  font-weight: var(--weightRegular);
  line-height: var(--lineHeightBody);
  color: var(--darkDark);
}

strong,
b,
.et_pb_text_inner strong,
.et_pb_text_inner b,
.et_pb_module strong,
.et_pb_module b {
  font-family: var(--fontBody) !important;
  font-weight: var(--weightMedium) !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
.et_pb_module h1,
.et_pb_module h2,
.et_pb_module h3,
.et_pb_module h4,
.et_pb_module h5,
.et_pb_module h6 {
  font-family: var(--fontTitle);
  font-weight: var(--weightBold);
  line-height: 1.15 !important;
  color: var(--darkDark) !important;
}

.et_pb_module h1 {
  font-size: var(--fontSizeH1) !important;
}

.et_pb_module h2 {
  font-size: var(--fontSizeH2) !important;
}

.et_pb_module h3,
.et_pb_module h4,
.et_pb_module h5,
.et_pb_module h6 {
  font-size: var(--fontSizeH3) !important;
}

.et_pb_text_inner p,
.et_pb_text_inner ul,
.et_pb_text_inner ol {
  margin-bottom: var(--spaceS) !important;
}

.et_pb_text_inner p:last-child,
.et_pb_text_inner ul:last-child,
.et_pb_text_inner ol:last-child {
  margin-bottom: 0 !important;
}

.et_pb_text_inner strong {
  font-weight: var(--weightBold);
}

.et_pb_module a {
  
  text-decoration: none;
}

.et_pb_module a:hover {
  color: var(--brand);
  text-decoration: underline;
}

/* Jamais de soulignement sur les liens dans les titres */
.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,
.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(--brand);
  text-decoration: none !important;
}


/* Surtitre */
.surTitre,
.et_pb_module .surTitre,
.et_pb_module h1.surTitre,
.et_pb_module h2.surTitre,
.et_pb_module h3.surTitre,
.et_pb_module h4.surTitre,
.et_pb_module h5.surTitre,
.et_pb_module h6.surTitre {
  margin-bottom: 0px !important;
  font-family: var(--fontBody) !important;
  font-size: 1rem !important;
  font-weight: var(--weightMedium) !important;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  line-height: 1.4 !important;
}

/* Surtitre BEFORE*/
.surTitre:before,
.et_pb_module .surTitre:before,
.et_pb_module h1.surTitre:before,
.et_pb_module h2.surTitre:before,
.et_pb_module h3.surTitre:before,
.et_pb_module h4.surTitre:before,
.et_pb_module h5.surTitre:before,
.et_pb_module h6.surTitre:before {
  content : "•";
  color: var(--brand);
  font-weight: var(--weightBold);
  margin-right:0.5em;
}


/* Titre hero manuel */
.heroTitle,
.heroTitle p,
.heroTitle span {
  font-family: var(--fontTitle) !important;
  font-size: 4em !important;
  font-weight: var(--weightBold) !important;
  line-height: 1.2em !important;
  color: var(--darkDark) !important;
  padding-bottom: var(--spaceS) !important;
}

@media (max-width: 767px) {
  .et_pb_module h1,
  .heroTitle,
  .heroTitle p,
  .heroTitle span {
    font-size: var(--fontSizeH1Mobile) !important;
  }

  .et_pb_module h2 {
    font-size: var(--fontSizeH2Mobile) !important;
  }

  .et_pb_module h3,
  .et_pb_module h4,
  .et_pb_module h5,
  .et_pb_module h6 {
    font-size: var(--fontSizeH3Mobile) !important;
  }
}


/* =========================
   Images
========================= */

.et_pb_image img,
.et_pb_gallery_image img,
.et_portfolio_image img,
.dica_divi_carousel img,
.et_pb_video .et_pb_video_wrap {
  border-radius: var(--radius);
}

.noRadius img,
.noRadius .et_pb_video_wrap {
  border-radius: 0 !important;
}


/* =========================
   Boutons
========================= */

/* Réinitialisation padding boutons Divi */
html body #page-container .et_pb_section a.et_pb_button,
html body #page-container .et_pb_section a.et_pb_promo_button,
html body #page-container .et_pb_section .et_pb_promo a.et_pb_button,
html body #page-container .et_pb_section .et_pb_promo a.et_pb_promo_button,
html body #page-container .et_pb_section .et_pb_promo.et_pb_module a.et_pb_button,
html body #page-container .et_pb_section .et_pb_promo.et_pb_module a.et_pb_promo_button,
html body #page-container .et_pb_section .et_pb_promo[class*="et_pb_cta_"] .et_pb_promo_button.et_pb_button,
html body #page-container .et_pb_slider .et_pb_slide[class*="et_pb_slide_"] .et_pb_more_button.et_pb_button,
html body #page-container .et_pb_slider .et_pb_slide .et_pb_button_wrapper .et_pb_more_button.et_pb_button {
  padding: 0.5em 2.5em 0.5em 1.5em !important;
}

/* =========================
   Button Standard
========================= */
.et_pb_button {
  background-color: var(--brand);
  border: none !important;
  color: var(--white) !important;
  font-family: var(--fontBody) !important;
  font-size: var(--fontSizeBody) !important;
  font-weight: var(--weightMedium) !important;
  text-align: center;
  opacity: 1 !important;
  border-radius : var(--radiusSmall);
}

.et_pb_button:hover {
  background-color: var(--brandLight) !important;
  color: var(--white) !important;
  text-decoration: none !important;
  opacity: 1 !important;
  filter: none !important;
}

.et_pb_button:after {
  color: var(--accent);
}

/* =========================
   Button_two 
========================= */
.et_pb_button_two {
  background-color: transparent !important;
  border: 2px solid var(--brand) !important;
  color: var(--brand) !important;
}

.et_pb_button_two:hover {
  background-color: var(--brand) !important;
  border-color: var(--brand) !important;
  color: var(--white) !important;
  text-decoration: none !important;
}

.et_pb_button_two:after {
  color: var(--brand) !important;
}

.et_pb_button_two:hover:after {
  color: var(--accent) !important;
}

/* =========================
   ButtonLink 
========================= */
html body #page-container .et_pb_section a.et_pb_button.buttonLink {
  padding: 0 !important;
}

.buttonLink {
  background-color: transparent !important;
  color: var(--brand) !important;
  padding: 0 !important;
}

.buttonLink:hover,
.et_pb_button.buttonLink:hover,
html body #page-container .et_pb_section a.et_pb_button.buttonLink:hover {
  background-color: transparent !important;
  color: var(--brand) !important;
  text-decoration: underline !important;
  text-underline-offset: 0.25em !important;
}

.buttonLink:after,
.et_pb_button.buttonLink:after,
html body #page-container .et_pb_section a.et_pb_button.buttonLink:after {
  color: var(--brandLight) !important;
}

.buttonLink:hover:after,
.et_pb_button.buttonLink:hover:after,
html body #page-container .et_pb_section a.et_pb_button.buttonLink:hover:after {
  color: var(--brandLight) !important;
}

/* =========================
   ButtonLink appliqué sur un simple lien
   Classes sur le lien : et_pb_button buttonLink
========================= */

a.et_pb_button.buttonLink {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.35em !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  color: var(--brand) !important;
  line-height: 1.4 !important;
  text-decoration: none !important;
  margin-top:1em !important;
}

a.et_pb_button.buttonLink:hover {
  background: transparent !important;
  border: none !important;
  color: var(--brand) !important;
  text-decoration: underline !important;
  text-underline-offset: 0.25em !important;
}

/* Force l’icône après le lien */
a.et_pb_button.buttonLink:after {
  content: "5" !important;
  position: static !important;
  display: inline-block !important;

  margin-left: 0.15em !important;
  opacity: 1 !important;

  font-family: ETmodules !important;
  font-size: 1em !important;
  line-height: 3px !important;

  color: var(--brandLight) !important;
  transition: var(--transition) !important;
}

a.et_pb_button.buttonLink:hover:after {
  margin-left: 0.3em !important;
  opacity: 1 !important;
  color: var(--brandLight) !important;
  text-decoration : non !important;
}

/* =========================
   Formulaires
========================= */

.et_pb_contact_form input,
.et_pb_contact_form textarea,
.et_pb_contact_form select {
  font-family: var(--fontBody) !important;
  font-size: var(--fontSizeBody) !important;
  border-radius: var(--radius) !important;
  border: var(--border) !important;
  background-color: var(--greyLight) !important;
  color: var(--darkDark) !important;
  padding: 0.9rem 1rem !important;
  transition: var(--transition);
}

.et_pb_contact_form input,
.et_pb_contact_form select {
  min-height: 50px !important;
}

.et_pb_contact_form textarea {
  min-height: 140px !important;
}

.et_pb_contact_form input:focus,
.et_pb_contact_form textarea:focus,
.et_pb_contact_form select:focus {
  outline: none !important;
  border-color: var(--brand) !important;
  background-color: var(--white) !important;
}

.et_pb_contact_form input::placeholder,
.et_pb_contact_form textarea::placeholder {
  color: var(--darkDark) !important;
  opacity: 0.65 !important;
}

.et_pb_contact_form .et_pb_contact_field,
.et_pb_contact_form p.et_pb_contact_field,
.et_pb_contact_form .et_pb_contact_field_half,
.et_pb_contact_form .et_pb_contact_field_last {
  padding: 0 !important;
  margin-bottom: var(--spaceXS) !important;
}

.et_pb_contact_form .et_pb_contact_field:not(:last-child),
.et_pb_contact_form p.et_pb_contact_field:not(:last-child) {
  margin-bottom: var(--spaceXS) !important;
}

.et_contact_bottom_container {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: var(--spaceS) !important;
  width: 100% !important;
  margin-top: 0 !important;
}

.et_pb_contact_right {
  display: flex !important;
  align-items: center !important;
  gap: var(--spaceXS) !important;
  margin: 0 !important;
}

.et_pb_contact_captcha_question {
  color: var(--darkDark) !important;
  font-size: 1rem !important;
  line-height: 1 !important;
}

.et_pb_contact_captcha {
  width: 56px !important;
  height: 50px !important;
  min-height: 50px !important;
  margin: 0 !important;
  padding: 0.75rem !important;
  border-radius: var(--radius) !important;
  text-align: center !important;
}

html body #page-container .et_pb_contact_submit.et_pb_button {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  height: 50px !important;
  min-height: 50px !important;
  margin: 0 !important;
  padding: 0 1.5em 0 1.333em !important;
  border: none !important;
  border-radius: var(--radiusLarge) !important;
  background-color: var(--brand) !important;
  color: var(--white) !important;
  font-family: var(--fontBody) !important;
  font-size: var(--fontSizeBody) !important;
  font-weight: var(--weightMedium) !important;
  line-height: 1 !important;
  text-decoration: none !important;
}

html body #page-container .et_pb_contact_submit.et_pb_button:hover {
  background-color: var(--brandLight) !important;
  color: var(--white) !important;
  text-decoration: none !important;
}

html body #page-container .et_pb_contact_submit.et_pb_button:after {
  position: static !important;
  display: inline-block !important;
  margin-left: 0.2em !important;
  transform: none !important;
  color: var(--accent) !important;
  opacity: 1 !important;
  line-height: 1 !important;
}


/* =========================================================
   3. MODULES DIVI — LIGHT THEME
   Styles par défaut des modules Divi
========================================================= */

/* =========================
   Header / Menu — flèches sous-menu
========================= */

#top-menu .menu-item-has-children > a:first-child:after,
.et-menu .menu-item-has-children > a:first-child:after,
.et_pb_menu .menu-item-has-children > a:first-child:after {
  color: var(--brand) !important;
}

#top-header,
header {
  font-family: var(--fontBody) !important;
}

#et-info-phone {
  font-size: 1.1em !important;
  margin-top:10px;
  display: block;
}

#et-info-phone:before {
  font-size: 1em !important;
  color: var(--brand) !important;
}



/* =========================
  FOOTER
========================= */

Footer .et_pb_row_1_tb_footer a {
  
}

.et_pb_row_1_tb_footer {
 padding-top: var(--spaceM) !important;
 padding-bottom: var(--spaceM) !important;
 border-top: 1px solid var(--darkLight);
 border-bottom: 1px solid var(--darkLight);
}

/* =========================
   Base commune des cards Divi
========================= */

.et_pb_blurb.et_clickable,
.et_pb_post,
.et_pb_tabs,
.et_pb_audio_module,
.et_pb_team_member,
.et_pb_pricing_table {
  background-color: var(--white) !important;
  border: var(--border) !important;
  border-radius: var(--radius);
  overflow: hidden;
}

.et_pb_blurb.et_clickable,
.et_pb_post {
  transition: box-shadow 0.25s ease, border-color 0.25s ease;
}

.et_pb_blurb.et_clickable:hover,
.et_pb_post:hover {
  box-shadow: var(--shadow);
  border-color: var(--grey) !important;
}


/* =========================
   Pagination / dots
========================= */

.pagination {
  display: block !important;
}

.et_pb_blog_grid .pagination a,
.et_pb_blog_grid .wp-pagenavi a,
.et_pb_blog_grid .wp-pagenavi span,
.et_pb_portfolio .pagination a,
.et_pb_portfolio .wp-pagenavi a,
.et_pb_portfolio .wp-pagenavi span,
.et_pb_filterable_portfolio .pagination a,
.et_pb_filterable_portfolio .wp-pagenavi a,
.et_pb_filterable_portfolio .wp-pagenavi span,
html body #page-container [class*="et_pb_portfolio_"].et_pb_portfolio .pagination a,
html body #page-container [class*="et_pb_portfolio_"].et_pb_portfolio .wp-pagenavi a,
html body #page-container [class*="et_pb_portfolio_"].et_pb_portfolio .wp-pagenavi span,
html body #page-container [class*="et_pb_filterable_portfolio_"].et_pb_filterable_portfolio .pagination a,
html body #page-container [class*="et_pb_filterable_portfolio_"].et_pb_filterable_portfolio .wp-pagenavi a,
html body #page-container [class*="et_pb_filterable_portfolio_"].et_pb_filterable_portfolio .wp-pagenavi span,
html body #page-container [class*="et_pb_blog_"].et_pb_blog_grid .pagination a,
html body #page-container [class*="et_pb_blog_"].et_pb_blog_grid .wp-pagenavi a,
html body #page-container [class*="et_pb_blog_"].et_pb_blog_grid .wp-pagenavi span,
html body #page-container [class*="et_pb_blog_"].et_pb_blog .pagination a,
html body #page-container [class*="et_pb_blog_"].et_pb_blog .pagination a:hover,
html body #page-container [class*="et_pb_blog_"].et_pb_blog .wp-pagenavi a,
html body #page-container [class*="et_pb_blog_"].et_pb_blog .wp-pagenavi a:hover,
html body #page-container [class*="et_pb_blog_"].et_pb_blog .wp-pagenavi span {
  color: var(--greyDark) !important;
  text-decoration: none !important;
}


/* =========================
   Texte / Image
========================= */

.et_pb_text {
  color: var(--darkDark);
}

.et_pb_image {
  line-height: 0;
}


/* =========================
   Fullwidth Header
========================= */

.et_pb_fullwidth_header {
  background-color: var(--greyLight) !important;
  overflow: hidden;
  border-radius : var(--radius);
}

.et_pb_fullwidth_header .et_pb_fullwidth_header_container {
  width: var(--siteWidth) !important;
  max-width: var(--siteMaxWidth) !important;
}

.et_pb_fullwidth_header .header-logo {
  max-width: 250px !important;
  width: auto !important;
  height: auto !important;
  margin-bottom: var(--spaceM) !important;
}

.et_pb_fullwidth_header .header-image img {
  border-radius: var(--radius) !important;
  overflow: hidden;
}

.et_pb_fullwidth_header .et_pb_module_header {
  display: block;
  margin: 0 0 var(--spaceXS) 0 !important;
  padding: 0 !important;
  font-family: var(--fontBody) !important;
  font-size: 0.75rem !important;
  font-weight: var(--weightBold) !important;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  line-height: 1.4 !important;
  color: var(--brand) !important;
}

.et_pb_fullwidth_header .et_pb_fullwidth_header_subhead {
  display: block;
  margin: 0 0 var(--spaceS) 0 !important;
  padding: 0 !important;
  font-family: var(--fontTitle) !important;
  font-size: var(--fontSizeH1) !important;
  font-weight: var(--weightBold) !important;
  line-height: 1.1 !important;
  color: var(--darkDark) !important;
}

.et_pb_fullwidth_header .et_pb_header_content_wrapper {
  margin: 0 0 var(--spaceM) 0 !important;
  padding: 0 !important;
  color: var(--darkDark) !important;
}

.et_pb_fullwidth_header .et_pb_header_content_wrapper p {
  margin: 0 !important;
  color: var(--darkDark) !important;
}

.et_pb_fullwidth_header .et_pb_header_button_wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spaceS);
  margin-top: var(--spaceM) !important;
}


/* =========================
   Blurb / Résumé
========================= */

.et_pb_blurb .et-pb-icon {
  color: var(--brand) !important;
}

.et_pb_blurb .et_pb_module_header,
.et_pb_blurb .et_pb_module_header a {
  color: var(--dark) !important;
  text-decoration: none !important;
}

.et_pb_blurb .et_pb_module_header a:hover,
.et_pb_blurb.et_clickable:hover .et_pb_module_header,
.et_pb_blurb.et_clickable:hover .et_pb_module_header a {
  color: var(--brand) !important;
  text-decoration: none !important;
}

.et_pb_blurb .et_pb_blurb_content {
  width: 100%;
  max-width: 100%;
}

.et_pb_blurb .et_pb_blurb_description,
.et_pb_blurb .et_pb_blurb_description p {
  color: var(--darkDark) !important;
}

.et_pb_blurb.et_clickable {
  padding: var(--spaceM) !important;
}

.et_pb_blurb.et_clickable.et_pb_blurb_position_top .et_pb_only_image_mode_wrap {
  margin: calc(var(--spaceM) * -1);
  margin-bottom: 0.333rem;
}

.et_pb_blurb.et_clickable.et_pb_blurb_position_top .et_pb_only_image_mode_wrap img {
  width: 100% !important;
  display: block !important;
}

.et_pb_blurb.et_pb_blurb_position_left:not(.icon) .et_pb_only_image_mode_wrap {
  width: 150px !important;
  min-width: 150px !important;
  margin: 0 var(--spaceM) 0 0 !important;
}

.et_pb_blurb.et_pb_blurb_position_left:not(.icon) .et_pb_only_image_mode_wrap img {
  width: 150px !important;
  max-width: 150px !important;
  height: auto !important;
  border-radius: var(--radius) !important;
}

.et_pb_blurb.et_pb_blurb_position_left.icon .et_pb_only_image_mode_wrap {
  width: 70px !important;
  min-width: 70px !important;
  max-width: 70px !important;
  margin: 0 var(--spaceS) 0 0 !important;
}

.et_pb_blurb.et_pb_blurb_position_left.icon .et_pb_only_image_mode_wrap img,
.et_pb_blurb.et_pb_blurb_position_left.icon .et_pb_main_blurb_image img {
  width: 70px !important;
  min-width: 70px !important;
  max-width: 70px !important;
  height: auto !important;
  object-fit: contain !important;
  border-radius: 0 !important;
}

.et_pb_blurb.icon .et_pb_main_blurb_image img {
  max-width: 80px !important;
  width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
  border-radius: 0 !important;
}

.et_pb_blurb.et_clickable.icon .et_pb_only_image_mode_wrap {
  margin: 0 0 var(--spaceS) 0 !important;
}


/* =========================
   Call To Action / Promo
========================= */

.et_pb_promo {
  border-radius: var(--radiusLarge);
  background-color: var(--dark) !important;
  overflow: hidden;
  border: var(--border);
}

.et_pb_promo h1,
.et_pb_promo h2,
.et_pb_promo h3,
.et_pb_promo p {
  color: var(--white) !important;
}


/* =========================
   Tabs
========================= */

.et_pb_tabs {
  border: none !important;
  border-radius: var(--radius) !important;
  overflow: hidden !important;
  background-color: var(--greyLight) !important;
}

.et_pb_tabs_controls {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spaceXS);
  padding: var(--spaceXS) !important;
  background-color: var(--grey) !important;
  border-bottom: none !important;
}

.et_pb_tabs_controls li {
  border: none !important;
  background: transparent !important;
  border-radius: var(--radius) !important;
}

.et_pb_tabs_controls li a {
  color: var(--dark) !important;
  font-weight: var(--weightMedium) !important;
  border-radius: var(--radius) !important;
}

.et_pb_tabs_controls li.et_pb_tab_active a,
.et_pb_tabs_controls li.et_pb_tab_active a:hover {
  background-color: var(--white) !important;
  color: var(--brand) !important;
  text-decoration: none !important;
}

.et_pb_tab {
  background-color: var(--greyLight) !important;
  padding: var(--spaceM) !important;
}

.et_pb_tabs_controls .et_pb_tab_nav_item a:hover {
  background-color: var(--greyDark) !important;
  text-decoration: none !important;
}


/* =========================
   Toggle / Accordéon
========================= */

.et_pb_toggle,
.et_pb_toggle_open,
.et_pb_toggle_close {
  background-color: transparent !important;
}

.et_pb_toggle {
  border: none !important;
  border-bottom: 1px solid var(--grey) !important;
  padding: var(--spaceS) 0 !important;
}

.et_pb_toggle_title {
  color: var(--dark) !important;
}

.et_pb_toggle_title:before {
  color: var(--brand) !important;
}


/* =========================
   Blog / Articles
========================= */

.et_pb_post {
  padding: 0 !important;
}

.et_pb_post .et_pb_image_container {
  margin-bottom: 15px !important;
}

.et_pb_post .entry-featured-image-url {
  display: block;
  margin: 0 !important;
  line-height: 0 !important;
}

.et_pb_post .entry-featured-image-url img {
  aspect-ratio: 16 / 9;
  width: 100%;
  height: auto;
  object-fit: cover;
  display: block;
  border-radius: var(--radius) var(--radius) 0 0 !important;
}

.et_pb_post .entry-title,
.et_pb_post .post-meta,
.et_pb_post .post-content {
  padding-left: var(--spaceM) !important;
  padding-right: var(--spaceM) !important;
}

.et_pb_post .entry-title {
  padding-top: var(--spaceS) !important;
  margin-top: 0 !important;
  margin-bottom: var(--spaceXS) !important;
}

.et_pb_post .entry-title,
.et_pb_post .entry-title a {
  font-family: var(--fontTitle) !important;
  font-size: var(--fontSizeH3) !important;
  color: var(--darkDark) !important;
  text-decoration: none !important;
}

.et_pb_post .entry-title a:hover,
.et_pb_post:hover .entry-title,
.et_pb_post:hover .entry-title a {
  color: var(--brand) !important;
  text-decoration: none !important;
}

.et_pb_post .post-content,
.et_pb_post .post-content p {
  color: var(--darkDark) !important;
}

.et_pb_post .post-content {
  padding-bottom: var(--spaceM) !important;
}

.et_pb_post .post-meta {
  margin-bottom: var(--spaceXS) !important;
  font-size: 0 !important;
}

.et_pb_post .post-meta,
.et_pb_post .post-meta a {
  color: var(--brand) !important;
  text-decoration: none !important;
}

.et_pb_post .post-meta a,
.et_pb_post .post-meta .published {
  font-size: 0.8rem !important;
}

.et_pb_post .post-meta a {
  display: inline-block !important;
  padding: 0.333em 0.75em !important;
  margin-right: 0.333em;
  background-color: var(--greyLight) !important;
  border-radius: var(--radiusLarge) !important;
  color: var(--darkDark) !important;
  font-weight: var(--weightMedium) !important;
  line-height: 1 !important;
  transition: var(--transition) !important;
}

.et_pb_post .post-meta a:hover {
  background-color: var(--greyDark) !important;
  border-color: var(--greyDark) !important;
  color: var(--darkDark) !important;
  text-decoration: none !important;
}

/* ---- MENU CATEGORIES --- */

#menu-categories li a {
  background: var(--grey) !important;
  border-radius : 7px !important;
  padding : var(--spaceXS) var(--spaceS) !important;
  color: var(--dark);
}

#menu-categories li a:hover {
  text-decoration : none !important;
  color : var(--brand);
}


/* =========================
   Portfolio / Portfolio filtrable
========================= */

.et_pb_portfolio:not(.et_pb_fullwidth_portfolio) .et_pb_portfolio_item,
.et_pb_filterable_portfolio .et_pb_portfolio_item {
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}

.et_pb_portfolio:not(.et_pb_fullwidth_portfolio) .et_pb_portfolio_item:hover,
.et_pb_filterable_portfolio .et_pb_portfolio_item:hover {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

.et_pb_portfolio:not(.et_pb_fullwidth_portfolio) .et_pb_portfolio_item .et_portfolio_image,
.et_pb_filterable_portfolio .et_pb_portfolio_item .et_portfolio_image {
  display: block !important;
  position: relative !important;
  border-radius: var(--radius) !important;
  overflow: hidden !important;
  line-height: 0 !important;
}

.et_pb_portfolio:not(.et_pb_fullwidth_portfolio) .et_pb_portfolio_item .et_portfolio_image img,
.et_pb_filterable_portfolio .et_pb_portfolio_item .et_portfolio_image img {
  width: 100% !important;
  display: block !important;
  border-radius: var(--radius) !important;
}

.et_pb_portfolio:not(.et_pb_fullwidth_portfolio) .et_pb_portfolio_item .et_overlay,
.et_pb_filterable_portfolio .et_pb_portfolio_item .et_overlay {
  border: none !important;
  background-color: rgba(10, 31, 51, 0.72) !important;
  border-radius: var(--radius) !important;
}

.et_pb_portfolio:not(.et_pb_fullwidth_portfolio) .et_pb_portfolio_item .et_overlay:before,
.et_pb_filterable_portfolio .et_pb_portfolio_item .et_overlay:before {
  color: var(--brand) !important;
}

.et_pb_portfolio:not(.et_pb_fullwidth_portfolio) .et_pb_portfolio_item .et_pb_module_header,
.et_pb_filterable_portfolio .et_pb_portfolio_item .et_pb_module_header {
  margin-top: var(--spaceXS) !important;
  margin-bottom: 0 !important;
  padding: 0 !important;
}

.et_pb_portfolio:not(.et_pb_fullwidth_portfolio) .et_pb_portfolio_item .et_pb_module_header,
.et_pb_portfolio:not(.et_pb_fullwidth_portfolio) .et_pb_portfolio_item .et_pb_module_header a,
.et_pb_filterable_portfolio .et_pb_portfolio_item .et_pb_module_header,
.et_pb_filterable_portfolio .et_pb_portfolio_item .et_pb_module_header a {
  color: var(--darkDark) !important;
  text-decoration: none !important;
}

.et_pb_portfolio:not(.et_pb_fullwidth_portfolio) .et_pb_portfolio_item .et_pb_module_header a:hover,
.et_pb_portfolio:not(.et_pb_fullwidth_portfolio) .et_pb_portfolio_item:hover .et_pb_module_header,
.et_pb_portfolio:not(.et_pb_fullwidth_portfolio) .et_pb_portfolio_item:hover .et_pb_module_header a,
.et_pb_filterable_portfolio .et_pb_portfolio_item .et_pb_module_header a:hover,
.et_pb_filterable_portfolio .et_pb_portfolio_item:hover .et_pb_module_header,
.et_pb_filterable_portfolio .et_pb_portfolio_item:hover .et_pb_module_header a {
  color: var(--brand) !important;
  text-decoration: none !important;
}

.et_pb_portfolio:not(.et_pb_fullwidth_portfolio) .et_pb_portfolio_item .post-meta,
.et_pb_filterable_portfolio .et_pb_portfolio_item .post-meta {
  margin-top: 0.25rem !important;
  color: var(--darkDark) !important;
}

.et_pb_portfolio:not(.et_pb_fullwidth_portfolio) .et_pb_portfolio_item .post-meta a,
.et_pb_filterable_portfolio .et_pb_portfolio_item .post-meta a {
  display: inline-block !important;
  padding: 0.333em 0.75em !important;
  background-color: var(--greyLight) !important;
  border: var(--border) !important;
  border-radius: var(--radiusLarge) !important;
  color: var(--darkDark) !important;
  font-size: 0.8rem !important;
  font-weight: var(--weightMedium) !important;
  line-height: 1 !important;
  text-decoration: none !important;
  transition: var(--transition) !important;
}

.et_pb_portfolio:not(.et_pb_fullwidth_portfolio) .et_pb_portfolio_item .post-meta a:hover,
.et_pb_filterable_portfolio .et_pb_portfolio_item .post-meta a:hover {
  background-color: var(--greyDark) !important;
  border-color: var(--greyDark) !important;
  color: var(--darkDark) !important;
  text-decoration: none !important;
}


/* Portfolio filtrable — filtres catégories */
.et_pb_filterable_portfolio .et_pb_portfolio_filters {
  margin-bottom: var(--spaceM) !important;
}

.et_pb_filterable_portfolio .et_pb_portfolio_filters ul {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: var(--spaceXS) !important;
  margin: 0 !important;
  padding: 0 !important;
}

.et_pb_filterable_portfolio .et_pb_portfolio_filters ul li {
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
}

.et_pb_filterable_portfolio .et_pb_portfolio_filters ul li a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0.666em 1.5em !important;
  background-color: var(--greyLight) !important;
  border: var(--border) !important;
  border-radius: var(--radiusLarge) !important;
  color: var(--darkDark) !important;
  font-size: 0.85rem !important;
  font-weight: var(--weightMedium) !important;
  line-height: 1 !important;
  text-decoration: none !important;
  box-shadow: none !important;
  transition: var(--transition) !important;
}

.et_pb_filterable_portfolio .et_pb_portfolio_filters ul li a:hover {
  background-color: var(--greyDark) !important;
  border-color: var(--greyDark) !important;
  color: var(--darkDark) !important;
  text-decoration: none !important;
}

.et_pb_filterable_portfolio .et_pb_portfolio_filters ul li a.active,
.et_pb_filterable_portfolio .et_pb_portfolio_filters ul li a.active:hover {
  background-color: var(--brand) !important;
  border-color: var(--brand) !important;
  color: var(--white) !important;
  text-decoration: none !important;
}

.et_pb_filterable_portfolio .et_pb_portfolio_filters ul li a.active:hover {
  background-color: var(--brandLight) !important;
  border-color: var(--brandLight) !important;
}

.et_pb_filterable_portfolio .et_pb_portfolio_filters ul li:first-child a,
.et_pb_filterable_portfolio .et_pb_portfolio_filters ul li:last-child a {
  border-radius: var(--radiusLarge) !important;
}


/* ==============================================
   Fullwidth Portfolio Carousel POST / PAGE / PROJECT
================================================= */

.et_pb_fullwidth_portfolio_carousel .et_pb_portfolio_item {
  padding: 0.5rem;
}

.et_pb_fullwidth_portfolio_carousel .et_pb_portfolio_image {
  border-radius: var(--radius) !important;
}

.et_pb_fullwidth_portfolio_carousel .et_overlay {
  background-color: color-mix(in srgb, var(--darkDark) 78%, transparent) !important;
}

.et_pb_fullwidth_portfolio_carousel .et_pb_module_header,
.et_pb_fullwidth_portfolio_carousel .post-meta {
  color: var(--white) !important;
}


/* =========================
   Flèches Portfolio / Slider
========================= */

.et_pb_fullwidth_portfolio .et-pb-slider-arrows a.et-pb-arrow-prev,
.et_pb_fullwidth_portfolio .et-pb-slider-arrows a.et-pb-arrow-next,
.et_pb_slider .et-pb-arrow-prev,
.et_pb_slider .et-pb-arrow-next,
.et_pb_group_carousel .et_pb_group_carousel_arrow,
.dica_divi_carousel .swiper-button-prev,
.dica_divi_carousel .swiper-button-next {
  width: 2.75rem !important;
  height: 2.75rem !important;
  min-width: 2.75rem !important;
  min-height: 2.75rem !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background-color: var(--white) !important;
  border: var(--border) !important;
  border-radius: 999px !important;
  color: var(--brand) !important;
  text-decoration: none !important;
  box-shadow: none !important;
  opacity: 1 !important;
}

.et_pb_fullwidth_portfolio .et-pb-slider-arrows a.et-pb-arrow-prev:hover,
.et_pb_fullwidth_portfolio .et-pb-slider-arrows a.et-pb-arrow-next:hover,
.et_pb_slider .et-pb-arrow-prev:hover,
.et_pb_slider .et-pb-arrow-next:hover,
.et_pb_group_carousel .et_pb_group_carousel_arrow:hover,
.dica_divi_carousel .swiper-button-prev:hover,
.dica_divi_carousel .swiper-button-next:hover {
  background-color: var(--greyDark) !important;
  color: var(--brand) !important;
  text-decoration: none !important;
}

.et_pb_fullwidth_portfolio .et-pb-slider-arrows a.et-pb-arrow-prev span,
.et_pb_fullwidth_portfolio .et-pb-slider-arrows a.et-pb-arrow-next span,
.et_pb_slider .et-pb-arrow-prev span,
.et_pb_slider .et-pb-arrow-next span {
  display: none !important;
}

.et_pb_fullwidth_portfolio .et-pb-slider-arrows a.et-pb-arrow-prev:before,
.et_pb_fullwidth_portfolio .et-pb-slider-arrows a.et-pb-arrow-next:before,
.et_pb_slider .et-pb-arrow-prev:before,
.et_pb_slider .et-pb-arrow-next:before,
.et_pb_group_carousel .et_pb_group_carousel_arrow:before,
.et_pb_group_carousel .et_pb_group_carousel_arrow:after,
.dica_divi_carousel .swiper-button-prev::before,
.dica_divi_carousel .swiper-button-next::before,
.dica_divi_carousel .swiper-button-prev::after,
.dica_divi_carousel .swiper-button-next::after {
  color: var(--brand) !important;
  font-size: 1.75rem !important;
  line-height: 1 !important;
  text-decoration: none !important;
  position: static !important;
  margin: 0 !important;
  padding: 0 !important;
}


/* =========================
   Galerie
========================= */

.et_pb_gallery .et_pb_gallery_image {}
.et_pb_gallery .et_pb_gallery_item {}
.et_pb_gallery .et_pb_gallery_image a {}
.et_pb_gallery .et_pb_gallery_image img {}
.et_pb_gallery .et_overlay:before {}

.et_pb_gallery_caption,
.mfp-title,
.mfp-figure figcaption {
  display: none !important;
}


/* =========================
   Slider
========================= */

.et_pb_slider {
  border-radius: var(--radius);
  overflow: visible !important;
  background-color: var(--greyLight) !important;
}

.et_pb_slides,
.et_pb_slide {
  border-radius: var(--radius);
  overflow: hidden;
}

.et_pb_slider .et_pb_slide_title {
  margin-bottom: 0.5em;
}

.et_pb_slider .et-pb-slider-arrows {
  overflow: visible !important;
}

.et_pb_slide_overlay_container {
  background-color: rgba(10, 31, 51, 0.666) !important;
}

.et_pb_slider .et_pb_slide.et_pb_slider_with_overlay:not(.et_pb_slide_with_image) .et_pb_slide_description,
.et_pb_slider .et_pb_slide.et_pb_slider_with_overlay:not(.et_pb_slide_with_image) .et_pb_slide_title,
.et_pb_slider .et_pb_slide.et_pb_slider_with_overlay:not(.et_pb_slide_with_image) .et_pb_slide_content,
.et_pb_slider .et_pb_slide.et_pb_slider_with_overlay:not(.et_pb_slide_with_image) .et_pb_slide_content p {
  text-align: center !important;
}

.et_pb_slider .et_pb_slide.et_pb_slider_with_overlay:not(.et_pb_slide_with_image) .et_pb_slide_content {
  max-width: 600px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.et_pb_slider .et_pb_slide.et_pb_slider_with_overlay:not(.et_pb_slide_with_image) .et_pb_slide_title,
.et_pb_slider .et_pb_slide.et_pb_slider_with_overlay:not(.et_pb_slide_with_image) .et_pb_slide_title a,
.et_pb_slider .et_pb_slide.et_pb_slider_with_overlay:not(.et_pb_slide_with_image) .et_pb_slide_content,
.et_pb_slider .et_pb_slide.et_pb_slider_with_overlay:not(.et_pb_slide_with_image) .et_pb_slide_content p {
  color: var(--white) !important;
}

.et_pb_slider .et_pb_slide.et_pb_slider_with_overlay:not(.et_pb_slide_with_image) .et_pb_button_wrapper {
  display: flex !important;
  justify-content: center !important;
}

.et_pb_slide_description .et_pb_slide_content {
  margin-bottom: var(--spaceM) !important;
}

.et_pb_slider .et_pb_slide_title,
.et_pb_slider .et_pb_slide_title a,
.et_pb_slider .et_pb_slide_description h2,
.et_pb_slider .et_pb_slide_description h2 a {
  text-decoration: none !important;
}

.et_pb_slider .et-pb-controllers a,
.et_pb_group_carousel .et_pb_group_carousel_dot,
.dica_divi_carousel .swiper-pagination-bullet {
  background-color: var(--grey) !important;
  opacity: 1 !important;
}

.et_pb_slider .et-pb-controllers a.et-pb-active-control,
.et_pb_group_carousel .et_pb_group_carousel_dot.active,
.et_pb_group_carousel .et_pb_group_carousel_dot_active,
.dica_divi_carousel .swiper-pagination-bullet-active {
  background-color: var(--brand) !important;
}

.et_pb_slide_description,
.et_pb_slide_title,
.et_pb_slide_title a,
.et_pb_slide_description h1,
.et_pb_slide_description h2,
.et_pb_slide_description h3,
.et_pb_slide_description h4,
.et_pb_slide_description p,
.et_pb_slide_description .post-meta,
.et_pb_slide_description .post-meta a {
  text-shadow: none !important;
}

.et_pb_slide_with_image .et_pb_slide_image img {
  border-radius : var(--radius);
}


/* =========================
   Post Slider
========================= */

.et_pb_post_slider .et_pb_slide_title,
.et_pb_post_slider .et_pb_slide_title a,
.et_pb_post_slider .et_pb_slide_content,
.et_pb_post_slider .et_pb_slide_content p,
.et_pb_post_slider .et_pb_slide_description p {
  color: var(--white) !important;
}

.et_pb_post_slider .post-meta,
.et_pb_post_slider .post-meta a,
.et_pb_post_slider .post-meta span,
.et_pb_post_slider .published,
.et_pb_post_slider .author,
.et_pb_post_slider .comments-number {
  color: var(--brand) !important;
  text-decoration: none !important;
}


/* =========================
   Icônes
========================= */

.et_pb_icon .et-pb-icon,
.et_pb_icon_list .et-pb-icon,
.et_pb_icon_list .et_pb_icon_list_item .et-pb-icon {
  color: var(--brand);
}

.et_pb_icon.et_flex_module {
  align-self: unset;
}

.et_pb_icon a,
.et_pb_icon a:hover,
.et_pb_social_icon a,
.et_pb_social_icon a:hover {
  text-decoration: none !important;
}

.buttonIcon .et-pb-icon {
  width: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--brand);
  color: var(--white) !important;
  border-radius: 50%;
  font-size: 30px !important;
}


/* =========================
   Login
========================= */

.et_pb_login {
  background-color: var(--greyLight) !important;
  border: var(--border);
  border-radius: var(--radius);
  overflow: hidden;
  padding: var(--spaceM) !important;
}

.et_pb_login input {
  border-radius: var(--radius);
}

.et_pb_login_form .et_pb_newsletter_button {
  width: 160px;
}


/* =========================
   Search
========================= */

.et_pb_search {
  border-radius: var(--radius) !important;
  border: var(--border) !important;
}

.et_pb_search input.et_pb_searchsubmit {
  background-color: var(--brand) !important;
  color: var(--white);
  padding: 1em !important;
}

.et_pb_search input.et_pb_searchsubmit:hover {
  background-color: var(--brandLight) !important;
  color: var(--white);
}


/* =========================
   Pricing table
========================= */

.et_pb_pricing_tables {
  display: flex;
  gap: var(--spaceS);
}

.et_pb_pricing_table {
  border: var(--border);
  border-radius: var(--radius);
  background-color: var(--white) !important;
}

.et_pb_pricing_heading {
  background-color: var(--dark) !important;
  padding: 2em;
}

.et_pb_pricing_heading .et_pb_pricing_title,
.et_pb_pricing_heading .et_pb_pricing_title h1,
.et_pb_pricing_heading .et_pb_pricing_title h2,
.et_pb_pricing_heading .et_pb_pricing_title h3,
.et_pb_pricing_heading .et_pb_pricing_title h4,
.et_pb_pricing_heading .et_pb_pricing_title h5,
.et_pb_pricing_heading .et_pb_pricing_title h6,
.et_pb_pricing_heading .et_pb_best_value {
  color: var(--white) !important;
}

.et_pb_pricing_content_top {
  border-bottom: var(--border);
}

.et_pb_sum {
  color: var(--brand) !important;
  font-family: var(--fontTitle) !important;
  font-weight: var(--weightBold) !important;
}

.et_pb_dollar_sign {
  color: var(--brand);
}

.et_pb_pricing li {
  padding: 0 0 0.5em 14px;
}

.et_pb_pricing li > span:before {
  border-color: var(--brand) !important;
}

.et_pb_pricing li.et_pb_not_available > span:before {
  border-color: var(--accent) !important;
}


/* =========================
   Team Member
========================= */

.et_pb_team_member {
  text-align: left !important;
  padding: var(--spaceM) !important;
}

.et_pb_team_member .et_pb_team_member_image {
  margin-bottom: var(--spaceS) !important;
}

.et_pb_team_member .et_pb_team_member_image img {
  border-radius: 50% !important;
  width: 120px !important;
  height: 120px !important;
  object-fit: cover;
}

.et_pb_team_member h4 {
  margin-bottom: var(--spaceXS) !important;
  color: var(--darkDark) !important;
}

.et_pb_team_member .et_pb_member_position {
  margin-bottom: var(--spaceXS) !important;
  color: var(--brand) !important;
  font-size: 0.8rem;
  font-weight: var(--weightBold);
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.et_pb_team_member .et_pb_team_member_description,
.et_pb_team_member .et_pb_team_member_description p {
  color: var(--darkDark) !important;
}

.et_pb_team_member .et_pb_member_social_links {
  display: flex !important;
  justify-content: flex-start !important;
  gap: var(--spaceS) !important;
  margin-top: var(--spaceM) !important;
  padding-left: 0 !important;
}

.et_pb_team_member .et_pb_member_social_links li {
  margin: 0 !important;
}

.et_pb_team_member .et_pb_member_social_links a {
  color: var(--brand) !important;
  text-decoration: none !important;
}

.et_pb_team_member .et_pb_member_social_links a:hover {
  color: var(--brandLight) !important;
  text-decoration: none !important;
}


/* =========================
   Testimonial
========================= */

.et_pb_testimonial {
  border-radius: var(--radius) !important;
  background-color: var(--greyLight) !important;
}

.et_pb_testimonial:before {
  color: var(--brand);
}

.et_pb_testimonial .et_pb_testimonial_description {
  display: flex;
  flex-wrap: wrap;
  column-gap: var(--spaceS);
  row-gap: var(--spaceS);
}


/* =========================
   Audio
========================= */

.et_pb_audio_module .et_pb_audio_module_content {
  background-color: var(--white) !important;
}

.et_pb_audio_module h2,
.et_pb_audio_module .et_pb_module_header,
.et_pb_audio_module .et_pb_audio_module_content h2,
.et_pb_audio_module .et_audio_module_meta,
.et_pb_audio_module .et_audio_module_meta strong,
.et_pb_audio_module .et_audio_module_meta span {
  color: var(--dark) !important;
}

.et_pb_audio_module .mejs-container,
.et_pb_audio_module .mejs-inner,
.et_pb_audio_module .mejs-controls {
  background: transparent !important;
}

.et_pb_audio_module .mejs-time,
.et_pb_audio_module .mejs-currenttime,
.et_pb_audio_module .mejs-duration {
  color: var(--darkDark) !important;
}

.et_pb_audio_module .mejs-controls .mejs-button button {
  filter: invert(14%) sepia(32%) saturate(1230%) hue-rotate(174deg) brightness(92%) contrast(94%);
}

.et_pb_audio_module .mejs-time-total,
.et_pb_audio_module .mejs-horizontal-volume-total {
  background-color: var(--grey) !important;
}

.et_pb_audio_module .mejs-time-current,
.et_pb_audio_module .mejs-horizontal-volume-current,
.et_pb_audio_module .mejs-time-handle-content,
.et_pb_audio_module .mejs-horizontal-volume-handle {
  background-color: var(--brand) !important;
}


/* =========================
   Divi Group Carousel
========================= */

.et_pb_group_carousel {
  overflow: visible !important;
}

.et_pb_group_carousel .et_pb_group_carousel_items {
  margin-left: calc(var(--spaceS) / -2) !important;
  margin-right: calc(var(--spaceS) / -2) !important;
}

.et_pb_group_carousel .et_pb_group_carousel_item,
.et_pb_group_carousel .et_pb_group_carousel_slide,
.et_pb_group_carousel .et_pb_group_carousel_child {
  padding-left: calc(var(--spaceS) / 2) !important;
  padding-right: calc(var(--spaceS) / 2) !important;
}

.et_pb_group_carousel .et_pb_group {
  overflow: hidden !important;
  border-radius: var(--radius) !important;
}

.et_pb_group_carousel .et_pb_group_carousel_arrow {
  padding: 0 !important;
  line-height: 1 !important;
  font-size: 0 !important;
}

.et_pb_group_carousel .et_pb_group_carousel_arrow span,
.et_pb_group_carousel .et_pb_group_carousel_arrow .et-pb-icon {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
  color: var(--brand) !important;
  font-size: 1.75rem !important;
  line-height: 1 !important;
  margin: 0 !important;
  padding: 0 !important;
}


/* =========================
   Table des matières
========================= */

.et_pb_table_of_contents {
  border-radius: var(--radius);
  padding: var(--spaceM);
  background-color: var(--greyLight);
}

.et_pb_table_of_contents .et_pb_table_of_contents__list--level-2 {
  border-bottom: var(--border);
  border-color: var(--greyDark);
  padding-bottom: var(--spaceXS);
  margin-bottom: var(--spaceXS) !important;
}

ol.et_pb_table_of_contents__list--level-2 {
  border-bottom: none !important;
}

.et_pb_table_of_contents .et_pb_table_of_contents__marker {
  color: var(--brand);
}

.et_pb_table_of_contents .et_pb_table_of_contents__link-text {
  color: var(--dark);
}

.et_pb_table_of_contents a:hover {
  text-decoration: none !important;
}


/* =========================================================
   4. COMPOSANTS
   Classes réutilisables hors modules Divi
========================================================= */

/* =========================
   Backgrounds en dégradé
========================= */

.gradientLightToGrey {
  background: linear-gradient(
    to bottom,
    var(--white) 0%,
    var(--white) 50%,
    var(--greyLight) 50%,
    var(--greyLight) 100%
  ) !important;
}

.gradientGreyToLight {
  background: linear-gradient(
    to bottom,
    var(--greyLight) 0%,
    var(--greyLight) 50%,
    var(--white) 50%,
    var(--white) 100%
  ) !important;
}

.gradientGreyToDark {
  background: linear-gradient(
    to bottom,
    var(--greyLight) 0%,
    var(--greyLight) 50%,
    var(--darkDark) 50%,
    var(--darkDark) 100%
  ) !important;
}

.gradientLightToDark {
  background: linear-gradient(
    to bottom,
    var(--white) 0%,
    var(--white) 50%,
    var(--darkDark) 50%,
    var(--darkDark) 100%
  ) !important;
}


/* =========================
   Floating rows
========================= */

.floatingRow,
.floatingRowDark {
  position: relative;
  z-index: 2;
  border-radius: var(--radiusLarge);
  padding: var(--spaceL) !important;
}

.floatingRow {
  background-color: var(--white);
  border: var(--border);
  box-shadow: var(--shadow);
}

.floatingRowDark {
  background-color: var(--dark) !important;
  border: 1px solid var(--darkLight) !important;
}

.floatingRow,
.floatingRow .et_pb_module,
.floatingRow .et_pb_module p,
.floatingRow .et_pb_module li,
.floatingRow .et_pb_module h1,
.floatingRow .et_pb_module h2,
.floatingRow .et_pb_module h3,
.floatingRow .et_pb_module h4,
.floatingRow .et_pb_module h5,
.floatingRow .et_pb_module h6 {
  color: var(--darkDark) !important;
}

.floatingRowDark,
.floatingRowDark .et_pb_module,
.floatingRowDark .et_pb_module p,
.floatingRowDark .et_pb_module li,
.floatingRowDark .et_pb_module h1,
.floatingRowDark .et_pb_module h2,
.floatingRowDark .et_pb_module h3,
.floatingRowDark .et_pb_module h4,
.floatingRowDark .et_pb_module h5,
.floatingRowDark .et_pb_module h6 {
  color: var(--white) !important;
}

.floatingRow .surTitre,
.floatingRow .et_pb_module .surTitre,
.floatingRowDark .surTitre,
.floatingRowDark .et_pb_module .surTitre {
}


/* =========================
   Cards / boîtes
========================= */

.cardShadow,
.cardBox {
  padding: var(--spaceM);
  border-radius: var(--radius);
}

.cardShadow {
  background-color: var(--white);
  box-shadow: var(--shadow) !important;
}

.cardBox {
  background: var(--greyLight);
}

/* =========================
   Hero avec overlay
========================= */

.borderGrey {
  border: var(--border) !important;
  border-radius: var(--radius);
}


/* =========================
   Hero avec overlay
========================= */

.heroOverlay {
  position: relative;
  overflow: hidden;
}

.heroOverlay::before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: var(--darkDark);
  opacity: 0.6666;
  z-index: 1;
  pointer-events: none;
}

.heroOverlay > .et_pb_row {
  position: relative;
  z-index: 2;
}


/* =========================
   Divi Gear Carousel
========================= */

/* Base : aucun effet card par défaut */
.dica_divi_carousel .dica-item {
  background-color: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}

/* Image en haut */
.dica_divi_carousel .dica-image-container,
.dica_divi_carousel .dica-image-container .image {
  display: block !important;
  margin: 0 0 var(--spaceS) 0 !important;
  line-height: 0 !important;
}

.dica_divi_carousel .dica-image-container img,
.dica_divi_carousel .dica-image-container img.dica-item-image {
  display: block !important;
  width: 100% !important;
  border-radius: var(--radius) !important;
}

/* Contenu sous image */
.dica_divi_carousel .dica-item-content {
  padding: 0 !important;
}

.dica_divi_carousel .dica-item-content .item-title,
.dica_divi_carousel .dica-item-content .item-title a {
  color: var(--darkDark) !important;
  text-decoration: none !important;
}

.dica_divi_carousel .dica-item-content .item-title a:hover {
  color: var(--brand) !important;
  text-decoration: none !important;
}

/* Sous-titres Divi Gear */
.dica_divi_carousel .dica-item-content .item-subtitle {
  font-family: var(--fontBody) !important;
  font-size: var(--fontSizeBody) !important;
  font-weight: var(--weightRegular) !important;
  line-height: var(--lineHeightBody) !important;
  color: var(--darkDark) !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

.dica_divi_carousel .dica-item-content p {
  color: var(--darkDark) !important;
}

/* =========================
   Divi Gear Carousel — cliquable
========================= */

/* Card uniquement si l’item est cliquable */
.dica_divi_carousel .dica_divi_carouselitem.et_clickable .dica-item,
.dica_divi_carousel .dica_divi_carouselitem.et-clickable .dica-item,
.dica_divi_carousel .dica-item.et_clickable,
.dica_divi_carousel .dica-item.et-clickable {
  background-color: var(--white) !important;
  border: var(--border) !important;
  border-radius: var(--radius) !important;
  box-shadow: none !important;
  overflow: hidden !important;
  transition: box-shadow 0.25s ease, border-color 0.25s ease !important;
}

/* Hover card cliquable */
.dica_divi_carousel .dica_divi_carouselitem.et_clickable .dica-item:hover,
.dica_divi_carousel .dica_divi_carouselitem.et-clickable .dica-item:hover,
.dica_divi_carousel .dica-item.et_clickable:hover,
.dica_divi_carousel .dica-item.et-clickable:hover {
  box-shadow: var(--shadow) !important;
  border-color: var(--grey) !important;
}

/* Image dans card cliquable */
.dica_divi_carousel .dica_divi_carouselitem.et_clickable .dica-image-container,
.dica_divi_carousel .dica_divi_carouselitem.et-clickable .dica-image-container,
.dica_divi_carousel .dica-item.et_clickable .dica-image-container,
.dica_divi_carousel .dica-item.et-clickable .dica-image-container {
  margin: 0 !important;
}

.dica_divi_carousel .dica_divi_carouselitem.et_clickable .dica-image-container img,
.dica_divi_carousel .dica_divi_carouselitem.et-clickable .dica-image-container img,
.dica_divi_carousel .dica-item.et_clickable .dica-image-container img,
.dica_divi_carousel .dica-item.et-clickable .dica-image-container img {
  border-radius: var(--radius) var(--radius) 0 0 !important;
}

/* Contenu dans card cliquable */
.dica_divi_carousel .dica_divi_carouselitem.et_clickable .dica-item-content,
.dica_divi_carousel .dica_divi_carouselitem.et-clickable .dica-item-content,
.dica_divi_carousel .dica-item.et_clickable .dica-item-content,
.dica_divi_carousel .dica-item.et-clickable .dica-item-content {
  padding: var(--spaceM) !important;
}

/* =========================
   Divi Gear Icon
========================= */

/* Icône en haut */
.dica_divi_carousel .dica_divi_carouselitem:has(.et-pb-icon) .dica-image-container {
  width: auto !important;
  max-width: none !important;
  margin: 0 0 var(--spaceS) 0 !important;
  line-height: 0 !important;
}

/* Icône en brand */
.dica_divi_carousel .dica_divi_carouselitem:has(.et-pb-icon) .dica-image-container .et-pb-icon {
  color: var(--brand) !important;
  font-size: 70px !important;
  line-height: 1 !important;
}

/* Contenu icône non cliquable */
.dica_divi_carousel .dica_divi_carouselitem:has(.et-pb-icon) .dica-item-content {
  padding: 0 !important;
}

.dica_divi_carousel .dica_divi_carouselitem:has(.et-pb-icon) .dica-item-content .item-title,
.dica_divi_carousel .dica_divi_carouselitem:has(.et-pb-icon) .dica-item-content .item-title a {
  color: var(--darkDark) !important;
  text-decoration: none !important;
}

.dica_divi_carousel .dica_divi_carouselitem:has(.et-pb-icon) .dica-item-content p {
  color: var(--darkDark) !important;
}


/* =========================
   Divi Gear Icon — cliquable
========================= */

.dica_divi_carousel .dica_divi_carouselitem.et_clickable:has(.et-pb-icon),
.dica_divi_carousel .dica_divi_carouselitem.et-clickable:has(.et-pb-icon) {
  background-color: var(--white) !important;
  border: var(--border) !important;
  border-radius: var(--radius) !important;
  box-shadow: none !important;
  padding: var(--spaceL) var(--spaceM) var(--spaceM) var(--spaceM) !important;
  overflow: hidden !important;
  transition: box-shadow 0.25s ease, border-color 0.25s ease !important;
}

.dica_divi_carousel .dica_divi_carouselitem.et_clickable:has(.et-pb-icon):hover,
.dica_divi_carousel .dica_divi_carouselitem.et-clickable:has(.et-pb-icon):hover {
  box-shadow: var(--shadow) !important;
  border-color: var(--grey) !important;
}

.dica_divi_carousel .dica_divi_carouselitem.et_clickable:has(.et-pb-icon) .dica-item,
.dica_divi_carousel .dica_divi_carouselitem.et-clickable:has(.et-pb-icon) .dica-item {
  background-color: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  overflow: visible !important;
}

.dica_divi_carousel .dica_divi_carouselitem.et_clickable:has(.et-pb-icon) .dica-image-container,
.dica_divi_carousel .dica_divi_carouselitem.et-clickable:has(.et-pb-icon) .dica-image-container {
  margin: 0 auto var(--spaceS) auto !important;
  padding-top: var(--spaceS) !important;
}

/* =========================
   Divi Gear Carousel — variante pictos
   Classe à mettre sur le module : carouselPicto
========================= */

.dica_divi_carousel.carouselPicto .dica-image-container {
  padding-top: var(--spaceM) !important;
  margin-bottom: none !important;
  text-align: center !important;
}

.dica_divi_carousel.carouselPicto .dica-image-container img,
.dica_divi_carousel.carouselPicto .dica-image-container img.dica-item-image {
  width: auto !important;
  max-width: 100px !important;
  height: auto !important;
  max-height: 100px !important;
  object-fit: contain !important;
  margin-left: auto !important;
  margin-right: auto !important;
  border-radius: 0 !important;
}


/* =========================================================
   6. THEME GREY
   Background, variantes de modules et variantes de composants
========================================================= */

/* =========================
   Background et typographie globale
========================= */

.greyBackground {
  background-color: var(--greyLight) !important;
}

.greyBackground .et_pb_section {
  background-color: var(--greyLight);
}


/* =========================
   Modules Divi
========================= */

.greyBackground .et_pb_blurb.et_clickable,
.greyBackground .et_pb_post,
.greyBackground .et_pb_tabs,
.greyBackground .et_pb_audio_module,
.greyBackground .et_pb_team_member,
.greyBackground .et_pb_pricing_table,
.greyBackground .et_pb_login {
  background-color: var(--white) !important;
}

.greyBackground .et_pb_promo {
  background-color: var(--white) !important;
  border-color: var(--greyDark) !important;
}

.greyBackground .et_pb_promo h1,
.greyBackground .et_pb_promo h2,
.greyBackground .et_pb_promo h3,
.greyBackground .et_pb_promo p {
  color: var(--darkDark) !important;
}

.greyBackground .et_pb_tabs {
  background-color: var(--white) !important;
}

.greyBackground .et_pb_tabs_controls {
  background-color: var(--grey) !important;
}

.greyBackground .et_pb_tab {
  background-color: var(--white) !important;
}

.greyBackground .et_pb_toggle {
  border-bottom-color: var(--greyDark) !important;
}

.greyBackground .et_pb_fullwidth_header,
.greyBackground .et_pb_testimonial,
.greyBackground .et_pb_searchform input.et_pb_s,
.greyBackground .et_pb_gallery .et_pb_gallery_image,
.greyBackground .et_pb_slider,
.greyBackground .et_pb_table_of_contents {
  background-color: var(--white) !important;
}

.greyBackground .et_pb_contact_form input,
.greyBackground .et_pb_contact_form textarea,
.greyBackground .et_pb_contact_form select,
.greyBackground .et_pb_contact_captcha {
  background-color: var(--white) !important;
}

.greyBackground .et_pb_contact_form input:focus,
.greyBackground .et_pb_contact_form textarea:focus,
.greyBackground .et_pb_contact_form select:focus,
.greyBackground .et_pb_contact_captcha:focus {
  background-color: var(--white) !important;
}

.greyBackground .et_pb_login_form input {
  background-color: var(--greyLight) !important;
}

.greyBackground .et_pb_post .post-meta a {
  background-color: var(--greyLight) !important;
  border-color: var(--greyLight) !important;
}

.greyBackground .et_pb_portfolio:not(.et_pb_fullwidth_portfolio) .et_pb_portfolio_item .post-meta a,
.greyBackground .et_pb_filterable_portfolio .et_pb_portfolio_item .post-meta a,
.greyBackground .et_pb_filterable_portfolio .et_pb_portfolio_filters ul li a {
  background-color: var(--white) !important;
  border-color: var(--greyDark) !important;
}

.greyBackground .et_pb_post .post-meta a:hover {
  background-color: var(--greyDark) !important;
  border-color: var(--greyDark) !important;
}

.greyBackground .et_pb_portfolio:not(.et_pb_fullwidth_portfolio) .et_pb_portfolio_item .post-meta a:hover,
.greyBackground .et_pb_filterable_portfolio .et_pb_portfolio_item .post-meta a:hover,
.greyBackground .et_pb_filterable_portfolio .et_pb_portfolio_filters ul li a:hover {
  background-color: var(--greyDark) !important;
  border-color: var(--greyDark) !important;
}

.greyBackground .et_pb_filterable_portfolio .et_pb_portfolio_filters ul li a.active,
.greyBackground .et_pb_filterable_portfolio .et_pb_portfolio_filters ul li a.active:hover {
  background-color: var(--brand) !important;
  border-color: var(--brand) !important;
  color: var(--white) !important;
}

.greyBackground .et_pb_pricing_heading {
  background-color: var(--dark) !important;
}

.greyBackground .et_pb_audio_module .et_pb_audio_module_content {
  background-color: var(--white) !important;
}


/* =========================
   Composants
========================= */

.greyBackground .floatingRow,
.greyBackground .cardShadow,
.greyBackground .cardBox {
  background-color: var(--white) !important;
}

.greyBackground .floatingRow {
  border-color: var(--greyDark) !important;
}

.greyBackground .cardBox {
  border-color: var(--greyDark) !important;
}

/* =========================
   Divi Gear — Grey Theme
========================= */

/* Non cliquable : pas de card */
.greyBackground .dica_divi_carousel .dica-item {
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

/* Texte */
.greyBackground .dica_divi_carousel .dica-item-content .item-title,
.greyBackground .dica_divi_carousel .dica-item-content .item-title a,
.greyBackground .dica_divi_carousel .dica-item-content .item-subtitle,
.greyBackground .dica_divi_carousel .dica-item-content p {
  color: var(--darkDark) !important;
}

/* Icône */
.greyBackground .dica_divi_carousel .dica_divi_carouselitem:has(.et-pb-icon) .dica-image-container .et-pb-icon {
  color: var(--brand) !important;
}

/* Cliquable : card blanche */
.greyBackground .dica_divi_carousel .dica_divi_carouselitem.et_clickable .dica-item,
.greyBackground .dica_divi_carousel .dica_divi_carouselitem.et-clickable .dica-item,
.greyBackground .dica_divi_carousel .dica-item.et_clickable,
.greyBackground .dica_divi_carousel .dica-item.et-clickable {
  background-color: var(--white) !important;
  border: var(--border) !important;
  border-color: var(--greyDark) !important;
  box-shadow: none !important;
}

/* Hover cliquable */
.greyBackground .dica_divi_carousel .dica_divi_carouselitem.et_clickable .dica-item:hover,
.greyBackground .dica_divi_carousel .dica_divi_carouselitem.et-clickable .dica-item:hover,
.greyBackground .dica_divi_carousel .dica-item.et_clickable:hover,
.greyBackground .dica_divi_carousel .dica-item.et-clickable:hover {
  box-shadow: var(--shadow) !important;
  border-color: var(--greyDark) !important;
}

/* Icon cliquable : card sur le wrapper */
.greyBackground .dica_divi_carousel .dica_divi_carouselitem.et_clickable:has(.et-pb-icon),
.greyBackground .dica_divi_carousel .dica_divi_carouselitem.et-clickable:has(.et-pb-icon) {
  background-color: var(--white) !important;
  border-color: var(--greyDark) !important;
}

/* Icon cliquable : intérieur transparent */
.greyBackground .dica_divi_carousel .dica_divi_carouselitem.et_clickable:has(.et-pb-icon) .dica-item,
.greyBackground .dica_divi_carousel .dica_divi_carouselitem.et-clickable:has(.et-pb-icon) .dica-item {
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
}


/* =========================================================
   7. THEME DARK
   Background, variantes de modules et variantes de composants
========================================================= */

/* =========================
   Background et typographie globale
========================= */

.darkBackground {
  background-color: var(--darkDark) !important;
}

.darkBackground .et_pb_section {
  background-color: var(--darkDark);
}

.darkBackground,
.darkBackground .et_pb_module,
.darkBackground .et_pb_module p,
.darkBackground .et_pb_module li,
.darkBackground .et_pb_module h1,
.darkBackground .et_pb_module h2,
.darkBackground .et_pb_module h3,
.darkBackground .et_pb_module h4,
.darkBackground .et_pb_module h5,
.darkBackground .et_pb_module h6,
.darkBackground .heroTitle,
.darkBackground .heroTitle p,
.darkBackground .heroTitle span {
  color: var(--white) !important;
}

.darkBackground .surTitre,
.darkBackground .et_pb_module .surTitre,
.darkBackground .et_pb_module h1.surTitre,
.darkBackground .et_pb_module h2.surTitre,
.darkBackground .et_pb_module h3.surTitre,
.darkBackground .et_pb_module h4.surTitre,
.darkBackground .et_pb_module h5.surTitre,
.darkBackground .et_pb_module h6.surTitre {
  color: var(--white) !important;
}

.darkBackground .et_pb_text a,
.darkBackground .et_pb_blurb_description a,
.darkBackground .et_pb_toggle_content a,
.darkBackground .et_pb_tab a {
  color: var(--brand) !important;
}

.darkBackground hr,
.darkBackground .et_pb_divider:before {
  border-color: var(--darkLight) !important;
}


/* =========================
   Boutons
========================= */

.darkBackground .buttonLink {
  color: var(--brandLight) !important;
}

.darkBackground .buttonLink:after {
  color: var(--accent) !important;
}

.darkBackground .et_pb_button_two,
.darkBackground a.et_pb_button_two,
html body #page-container .darkBackground .et_pb_button_two,
html body #page-container .darkBackground a.et_pb_button_two {
  background-color: transparent !important;
  border: 2px solid var(--brand) !important;
  color: var(--white) !important;
}

.darkBackground .et_pb_button_two:hover,
.darkBackground a.et_pb_button_two:hover,
html body #page-container .darkBackground .et_pb_button_two:hover,
html body #page-container .darkBackground a.et_pb_button_two:hover {
  background-color: var(--brand) !important;
  border-color: var(--brand) !important;
  color: var(--white) !important;
  text-decoration: none !important;
}

.darkBackground .et_pb_button_two:after,
.darkBackground a.et_pb_button_two:after,
html body #page-container .darkBackground .et_pb_button_two:after,
html body #page-container .darkBackground a.et_pb_button_two:after {
  color: var(--brand) !important;
}

.darkBackground .et_pb_button_two:hover:after,
.darkBackground a.et_pb_button_two:hover:after,
html body #page-container .darkBackground .et_pb_button_two:hover:after,
html body #page-container .darkBackground a.et_pb_button_two:hover:after {
  color: var(--accent) !important;
}


/* =========================
   Formulaires
========================= */

.darkBackground .et_pb_contact_form input,
.darkBackground .et_pb_contact_form textarea,
.darkBackground .et_pb_contact_form select {
  background-color: var(--dark) !important;
  color: var(--white) !important;
  border-color: var(--darkLight) !important;
}

.darkBackground .et_pb_contact_form input:focus,
.darkBackground .et_pb_contact_form textarea:focus,
.darkBackground .et_pb_contact_form select:focus {
  background-color: var(--darkLight) !important;
  border-color: var(--brand) !important;
}

.darkBackground .et_pb_contact_form input::placeholder,
.darkBackground .et_pb_contact_form textarea::placeholder {
  color: var(--white) !important;
  opacity: 0.7 !important;
}

.darkBackground .et_pb_contact_captcha_question {
  color: var(--white) !important;
}


/* =========================
   Modules Divi — containers
========================= */

.darkBackground .et_pb_blurb.et_clickable,
.darkBackground .et_pb_post,
.darkBackground .et_pb_tabs,
.darkBackground .et_pb_audio_module,
.darkBackground .et_pb_team_member,
.darkBackground .et_pb_pricing_table,
.darkBackground .et_pb_login,
.darkBackground .et_pb_table_of_contents,
.darkBackground .et_pb_testimonial {
  background-color: var(--dark) !important;
  border-color: var(--darkLight) !important;
}

.darkBackground .et_pb_blurb.et_clickable:hover,
.darkBackground .et_pb_post:hover,
.darkBackground .dica_divi_carousel .dica-item:hover {
  box-shadow: var(--shadowStrong);
  border-color: var(--darkLight) !important;
}

.darkBackground .et_pb_testimonial {
  background-color: var(--dark) !important;
}


/* =========================
   Fullwidth Header
========================= */

.darkBackground .et_pb_fullwidth_header {
  background-color: var(--darkLight) !important;
}

.darkBackground .et_pb_fullwidth_header .et_pb_fullwidth_header_subhead,
.darkBackground .et_pb_fullwidth_header .et_pb_header_content_wrapper,
.darkBackground .et_pb_fullwidth_header .et_pb_header_content_wrapper p {
  color: var(--white) !important;
}


/* =========================
   Blurb
========================= */

.darkBackground .et_pb_blurb .et_pb_module_header,
.darkBackground .et_pb_blurb .et_pb_module_header a,
.darkBackground .et_pb_blurb .et_pb_blurb_description,
.darkBackground .et_pb_blurb .et_pb_blurb_description p {
  color: var(--white) !important;
}

.darkBackground .et_pb_blurb .et-pb-icon {
  color: var(--brand) !important;
}

.darkBackground .et_pb_blurb .et_pb_module_header a:hover,
.darkBackground .et_pb_blurb.et_clickable:hover .et_pb_module_header,
.darkBackground .et_pb_blurb.et_clickable:hover .et_pb_module_header a {
  color: var(--brand) !important;
  text-decoration: none !important;
}


/* =========================
   CTA
========================= */

.darkBackground .et_pb_promo {
  background-color: var(--dark) !important;
  border-color: var(--darkLight) !important;
}

.darkBackground .et_pb_promo h1,
.darkBackground .et_pb_promo h2,
.darkBackground .et_pb_promo h3,
.darkBackground .et_pb_promo p {
  color: var(--white) !important;
}


/* =========================
   Tabs
========================= */

.darkBackground .et_pb_tabs,
.darkBackground .et_pb_tab {
  background-color: var(--dark) !important;
}

.darkBackground .et_pb_tabs_controls {
  background-color: var(--darkLight) !important;
}

.darkBackground .et_pb_tabs_controls li a {
  color: var(--white) !important;
}

.darkBackground .et_pb_tabs_controls li a:hover {
  background-color: var(--darkLight) !important;
  color: var(--white) !important;
}

.darkBackground .et_pb_tabs_controls li.et_pb_tab_active a,
.darkBackground .et_pb_tabs_controls li.et_pb_tab_active a:hover {
  background-color: var(--dark) !important;
  color: var(--brand) !important;
}


/* =========================
   Toggle
========================= */

.darkBackground .et_pb_toggle {
  border-bottom-color: var(--darkLight) !important;
}

.darkBackground .et_pb_toggle_title,
.darkBackground .et_pb_toggle_content,
.darkBackground .et_pb_toggle_content p {
  color: var(--white) !important;
}


/* =========================
   Blog
========================= */

.darkBackground .et_pb_post .entry-title,
.darkBackground .et_pb_post .entry-title a,
.darkBackground .et_pb_post .post-content,
.darkBackground .et_pb_post .post-content p {
  color: var(--white) !important;
}

.darkBackground .et_pb_post .entry-title a:hover,
.darkBackground .et_pb_post:hover .entry-title,
.darkBackground .et_pb_post:hover .entry-title a {
  color: var(--brand) !important;
}

.darkBackground .et_pb_post .post-meta a,
.darkBackground .et_pb_portfolio:not(.et_pb_fullwidth_portfolio) .et_pb_portfolio_item .post-meta a,
.darkBackground .et_pb_filterable_portfolio .et_pb_portfolio_item .post-meta a {
  background-color: var(--darkLight) !important;
  border-color: var(--darkLight) !important;
  color: var(--white) !important;
}

.darkBackground .et_pb_post .post-meta a:hover,
.darkBackground .et_pb_portfolio:not(.et_pb_fullwidth_portfolio) .et_pb_portfolio_item .post-meta a:hover,
.darkBackground .et_pb_filterable_portfolio .et_pb_portfolio_item .post-meta a:hover {
  background-color: var(--brand) !important;
  border-color: var(--brand) !important;
  color: var(--white) !important;
}


/* =========================
   Portfolio
========================= */

.darkBackground .et_pb_portfolio:not(.et_pb_fullwidth_portfolio) .et_pb_portfolio_item .et_pb_module_header,
.darkBackground .et_pb_portfolio:not(.et_pb_fullwidth_portfolio) .et_pb_portfolio_item .et_pb_module_header a,
.darkBackground .et_pb_filterable_portfolio .et_pb_portfolio_item .et_pb_module_header,
.darkBackground .et_pb_filterable_portfolio .et_pb_portfolio_item .et_pb_module_header a,
.darkBackground .et_pb_portfolio:not(.et_pb_fullwidth_portfolio) .et_pb_portfolio_item .post-meta,
.darkBackground .et_pb_filterable_portfolio .et_pb_portfolio_item .post-meta {
  color: var(--white) !important;
}

.darkBackground .et_pb_portfolio:not(.et_pb_fullwidth_portfolio) .et_pb_portfolio_item:hover .et_pb_module_header,
.darkBackground .et_pb_portfolio:not(.et_pb_fullwidth_portfolio) .et_pb_portfolio_item:hover .et_pb_module_header a,
.darkBackground .et_pb_filterable_portfolio .et_pb_portfolio_item:hover .et_pb_module_header,
.darkBackground .et_pb_filterable_portfolio .et_pb_portfolio_item:hover .et_pb_module_header a {
  color: var(--brand) !important;
}

.darkBackground .et_pb_filterable_portfolio .et_pb_portfolio_filters ul li a {
  background-color: var(--dark) !important;
  border-color: var(--darkLight) !important;
  color: var(--white) !important;
}

.darkBackground .et_pb_filterable_portfolio .et_pb_portfolio_filters ul li a:hover {
  background-color: var(--darkLight) !important;
  border-color: var(--darkLight) !important;
  color: var(--white) !important;
}

.darkBackground .et_pb_filterable_portfolio .et_pb_portfolio_filters ul li a.active,
.darkBackground .et_pb_filterable_portfolio .et_pb_portfolio_filters ul li a.active:hover {
  background-color: var(--brand) !important;
  border-color: var(--brand) !important;
  color: var(--white) !important;
}

/* Portfolio filtrable — pagination */
.darkBackground .et_pb_filterable_portfolio .et_pb_portofolio_pagination,
.darkBackground .et_pb_filterable_portfolio .et_pb_portfolio_pagination,
.darkBackground .et_pb_filterable_portfolio .et_pb_portofolio_pagination.clearfix,
.darkBackground .et_pb_filterable_portfolio .et_pb_portfolio_pagination.clearfix {
  border-color: var(--darkLight) !important;
}

.darkBackground .et_pb_filterable_portfolio .et_pb_portofolio_pagination:after,
.darkBackground .et_pb_filterable_portfolio .et_pb_portfolio_pagination:after,
.darkBackground .et_pb_filterable_portfolio .et_pb_portofolio_pagination.clearfix:after,
.darkBackground .et_pb_filterable_portfolio .et_pb_portfolio_pagination.clearfix:after {
  background-color: var(--darkLight) !important;
  border-color: var(--darkLight) !important;
}


/* =========================
   Galerie / Slider / Flèches
========================= */

.darkBackground .et_pb_gallery .et_pb_gallery_image,
.darkBackground .et_pb_slider {
  background-color: var(--dark) !important;
}

/* Pastilles next / prev — Divi + Divi Gear */
.darkBackground .et_pb_fullwidth_portfolio .et-pb-slider-arrows a.et-pb-arrow-prev,
.darkBackground .et_pb_fullwidth_portfolio .et-pb-slider-arrows a.et-pb-arrow-next,
.darkBackground .et_pb_slider .et-pb-arrow-prev,
.darkBackground .et_pb_slider .et-pb-arrow-next,
.darkBackground .et_pb_group_carousel .et_pb_group_carousel_arrow,
.darkBackground .dica_divi_carousel .swiper-button-prev,
.darkBackground .dica_divi_carousel .swiper-button-next {
  background-color: var(--darkLight) !important;
  border-color: var(--darkLight) !important;
  color: var(--brand) !important;
}

/* Icônes des flèches — Divi natif */
.darkBackground .et_pb_fullwidth_portfolio .et-pb-slider-arrows a.et-pb-arrow-prev:before,
.darkBackground .et_pb_fullwidth_portfolio .et-pb-slider-arrows a.et-pb-arrow-next:before,
.darkBackground .et_pb_slider .et-pb-arrow-prev:before,
.darkBackground .et_pb_slider .et-pb-arrow-next:before,
.darkBackground .et_pb_group_carousel .et_pb_group_carousel_arrow:before,
.darkBackground .et_pb_group_carousel .et_pb_group_carousel_arrow:after,
.darkBackground .et_pb_group_carousel .et_pb_group_carousel_arrow span,
.darkBackground .et_pb_group_carousel .et_pb_group_carousel_arrow .et-pb-icon {
  color: var(--brand) !important;
}

/* Icônes des flèches — Divi Gear */
.darkBackground .dica_divi_carousel .swiper-button-prev:before,
.darkBackground .dica_divi_carousel .swiper-button-next:before,
.darkBackground .dica_divi_carousel .swiper-button-prev:after,
.darkBackground .dica_divi_carousel .swiper-button-next:after,
.darkBackground .dica_divi_carousel .swiper-button-prev::before,
.darkBackground .dica_divi_carousel .swiper-button-next::before,
.darkBackground .dica_divi_carousel .swiper-button-prev::after,
.darkBackground .dica_divi_carousel .swiper-button-next::after,
.darkBackground .dica_divi_carousel .swiper-button-prev i,
.darkBackground .dica_divi_carousel .swiper-button-next i,
.darkBackground .dica_divi_carousel .swiper-button-prev span,
.darkBackground .dica_divi_carousel .swiper-button-next span {
  color: var(--brand) !important;
}

/* Icônes SVG éventuelles — Divi Gear */
.darkBackground .dica_divi_carousel .swiper-button-prev svg,
.darkBackground .dica_divi_carousel .swiper-button-next svg,
.darkBackground .dica_divi_carousel .swiper-button-prev svg *,
.darkBackground .dica_divi_carousel .swiper-button-next svg * {
  fill: var(--brand) !important;
  stroke: var(--brand) !important;
}

/* Hover next / prev */
.darkBackground .et_pb_fullwidth_portfolio .et-pb-slider-arrows a.et-pb-arrow-prev:hover,
.darkBackground .et_pb_fullwidth_portfolio .et-pb-slider-arrows a.et-pb-arrow-next:hover,
.darkBackground .et_pb_slider .et-pb-arrow-prev:hover,
.darkBackground .et_pb_slider .et-pb-arrow-next:hover,
.darkBackground .et_pb_group_carousel .et_pb_group_carousel_arrow:hover,
.darkBackground .dica_divi_carousel .swiper-button-prev:hover,
.darkBackground .dica_divi_carousel .swiper-button-next:hover {
  background-color: var(--darkLight) !important;
  border-color: var(--darkLight) !important;
  color: var(--brand) !important;
  text-decoration: none !important;
}

/* Hover icônes Divi Gear */
.darkBackground .dica_divi_carousel .swiper-button-prev:hover:before,
.darkBackground .dica_divi_carousel .swiper-button-next:hover:before,
.darkBackground .dica_divi_carousel .swiper-button-prev:hover:after,
.darkBackground .dica_divi_carousel .swiper-button-next:hover:after,
.darkBackground .dica_divi_carousel .swiper-button-prev:hover::before,
.darkBackground .dica_divi_carousel .swiper-button-next:hover::before,
.darkBackground .dica_divi_carousel .swiper-button-prev:hover::after,
.darkBackground .dica_divi_carousel .swiper-button-next:hover::after,
.darkBackground .dica_divi_carousel .swiper-button-prev:hover i,
.darkBackground .dica_divi_carousel .swiper-button-next:hover i,
.darkBackground .dica_divi_carousel .swiper-button-prev:hover span,
.darkBackground .dica_divi_carousel .swiper-button-next:hover span {
  color: var(--brand) !important;
}

.darkBackground .dica_divi_carousel .swiper-button-prev:hover svg,
.darkBackground .dica_divi_carousel .swiper-button-next:hover svg,
.darkBackground .dica_divi_carousel .swiper-button-prev:hover svg *,
.darkBackground .dica_divi_carousel .swiper-button-next:hover svg * {
  fill: var(--brand) !important;
  stroke: var(--brand) !important;
}

/* Pagination / dots */
.darkBackground .et_pb_slider .et-pb-controllers a,
.darkBackground .et_pb_group_carousel .et_pb_group_carousel_dot,
.darkBackground .dica_divi_carousel .swiper-pagination-bullet {
  background-color: var(--darkLight) !important;
  opacity: 1 !important;
}

.darkBackground .et_pb_slider .et-pb-controllers a.et-pb-active-control,
.darkBackground .et_pb_group_carousel .et_pb_group_carousel_dot.active,
.darkBackground .et_pb_group_carousel .et_pb_group_carousel_dot_active,
.darkBackground .dica_divi_carousel .swiper-pagination-bullet-active {
  background-color: var(--brand) !important;
}

/* Fix Divi Gear Carousel — flèches dark */
html body #page-container .darkBackground .dica_divi_carousel .swiper-button-prev,
html body #page-container .darkBackground .dica_divi_carousel .swiper-button-next,
html body #page-container .darkBackground .dica_divi_carousel .dica-prev-btn,
html body #page-container .darkBackground .dica_divi_carousel .dica-next-btn,
html body #page-container .darkBackground .dica_divi_carousel .swiper-button-prev.dica-prev-btn,
html body #page-container .darkBackground .dica_divi_carousel .swiper-button-next.dica-next-btn {
  width: 2.75rem !important;
  height: 2.75rem !important;
  min-width: 2.75rem !important;
  min-height: 2.75rem !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: var(--darkLight) !important;
  background-color: var(--darkLight) !important;
  border: 1px solid var(--darkLight) !important;
  border-radius: 999px !important;
  color: var(--brand) !important;
  opacity: 1 !important;
  box-shadow: none !important;
  text-decoration: none !important;
}

/* Supprime les couleurs/images éventuelles imposées par Swiper ou Divi Gear */
html body #page-container .darkBackground .dica_divi_carousel .swiper-button-prev::after,
html body #page-container .darkBackground .dica_divi_carousel .swiper-button-next::after,
html body #page-container .darkBackground .dica_divi_carousel .dica-prev-btn::after,
html body #page-container .darkBackground .dica_divi_carousel .dica-next-btn::after {
  color: var(--brand) !important;
  background: none !important;
  background-image: none !important;
  font-size: 1.75rem !important;
}

/* Cas où Divi Gear utilise une icône interne */
html body #page-container .darkBackground .dica_divi_carousel .swiper-button-prev i,
html body #page-container .darkBackground .dica_divi_carousel .swiper-button-next i,
html body #page-container .darkBackground .dica_divi_carousel .dica-prev-btn i,
html body #page-container .darkBackground .dica_divi_carousel .dica-next-btn i,
html body #page-container .darkBackground .dica_divi_carousel .swiper-button-prev span,
html body #page-container .darkBackground .dica_divi_carousel .swiper-button-next span,
html body #page-container .darkBackground .dica_divi_carousel .dica-prev-btn span,
html body #page-container .darkBackground .dica_divi_carousel .dica-next-btn span {
  color: var(--brand) !important;
}

/* Cas SVG */
html body #page-container .darkBackground .dica_divi_carousel .swiper-button-prev svg,
html body #page-container .darkBackground .dica_divi_carousel .swiper-button-next svg,
html body #page-container .darkBackground .dica_divi_carousel .dica-prev-btn svg,
html body #page-container .darkBackground .dica_divi_carousel .dica-next-btn svg,
html body #page-container .darkBackground .dica_divi_carousel .swiper-button-prev svg *,
html body #page-container .darkBackground .dica_divi_carousel .swiper-button-next svg *,
html body #page-container .darkBackground .dica_divi_carousel .dica-prev-btn svg *,
html body #page-container .darkBackground .dica_divi_carousel .dica-next-btn svg * {
  fill: var(--brand) !important;
  stroke: var(--brand) !important;
}

/* Hover */
html body #page-container .darkBackground .dica_divi_carousel .swiper-button-prev:hover,
html body #page-container .darkBackground .dica_divi_carousel .swiper-button-next:hover,
html body #page-container .darkBackground .dica_divi_carousel .dica-prev-btn:hover,
html body #page-container .darkBackground .dica_divi_carousel .dica-next-btn:hover,
html body #page-container .darkBackground .dica_divi_carousel .swiper-button-prev.dica-prev-btn:hover,
html body #page-container .darkBackground .dica_divi_carousel .swiper-button-next.dica-next-btn:hover {
  background: var(--darkLight) !important;
  background-color: var(--darkLight) !important;
  border-color: var(--darkLight) !important;
  color: var(--brand) !important;
}


/* =========================
   Login / Search
========================= */

.darkBackground .et_pb_search {
  border-color: var(--darkLight) !important;
  background-color: var(--dark) !important;
}

.darkBackground .et_pb_search input.et_pb_s {
  background-color: var(--dark) !important;
  color: var(--white) !important;
}


/* =========================
   Pricing
========================= */

.darkBackground .et_pb_pricing_table,
.darkBackground .et_pb_pricing_content,
.darkBackground .et_pb_pricing_content_top {
  background-color: var(--dark) !important;
  border-color: var(--darkLight) !important;
}

.darkBackground .et_pb_pricing_heading {
  background-color: var(--darkLight) !important;
}

.darkBackground .et_pb_pricing_table li,
.darkBackground .et_pb_pricing_table span,
.darkBackground .et_pb_pricing_table p {
  color: var(--white) !important;
}

.darkBackground .et_pb_pricing_content_top {
  border-bottom-color: var(--darkLight) !important;
}


/* =========================
   Team
========================= */

.darkBackground .et_pb_team_member h4,
.darkBackground .et_pb_team_member p,
.darkBackground .et_pb_team_member .et_pb_team_member_description,
.darkBackground .et_pb_team_member .et_pb_team_member_description p {
  color: var(--white) !important;
}

.darkBackground .et_pb_team_member .et_pb_member_social_links a {
  color: var(--brand) !important;
}


/* =========================
   Audio
========================= */

.darkBackground .et_pb_audio_module .et_pb_audio_module_content {
  background-color: var(--dark) !important;
}

.darkBackground .et_pb_audio_module h2,
.darkBackground .et_pb_audio_module .et_pb_module_header,
.darkBackground .et_pb_audio_module .et_pb_audio_module_content h2,
.darkBackground .et_pb_audio_module .et_audio_module_meta,
.darkBackground .et_pb_audio_module .et_audio_module_meta strong,
.darkBackground .et_pb_audio_module .et_audio_module_meta span,
.darkBackground .et_pb_audio_module .mejs-time,
.darkBackground .et_pb_audio_module .mejs-currenttime,
.darkBackground .et_pb_audio_module .mejs-duration {
  color: var(--white) !important;
}

.darkBackground .et_pb_audio_module .mejs-controls .mejs-button button {
  filter: invert(100%);
}

.darkBackground .et_pb_audio_module .mejs-time-total,
.darkBackground .et_pb_audio_module .mejs-horizontal-volume-total {
  background-color: var(--darkLight) !important;
}

/* =========================
   Divi Gear — Dark Theme
========================= */

/* Non cliquable : pas de card */
.darkBackground .dica_divi_carousel .dica-item {
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

/* Texte */
.darkBackground .dica_divi_carousel .dica-item-content .item-title,
.darkBackground .dica_divi_carousel .dica-item-content .item-title a,
.darkBackground .dica_divi_carousel .dica-item-content .item-subtitle,
.darkBackground .dica_divi_carousel .dica-item-content p {
  color: var(--white) !important;
}

/* Hover titre */
.darkBackground .dica_divi_carousel .dica-item-content .item-title a:hover,
.darkBackground .dica_divi_carousel .dica-item:hover .dica-item-content .item-title,
.darkBackground .dica_divi_carousel .dica-item:hover .dica-item-content .item-title a {
  color: var(--brand) !important;
  text-decoration: none !important;
}

/* Icône */
.darkBackground .dica_divi_carousel .dica_divi_carouselitem:has(.et-pb-icon) .dica-image-container .et-pb-icon {
  color: var(--brand) !important;
}

/* Cliquable : card sombre */
.darkBackground .dica_divi_carousel .dica_divi_carouselitem.et_clickable .dica-item,
.darkBackground .dica_divi_carousel .dica_divi_carouselitem.et-clickable .dica-item,
.darkBackground .dica_divi_carousel .dica-item.et_clickable,
.darkBackground .dica_divi_carousel .dica-item.et-clickable {
  background-color: var(--dark) !important;
  border: 1px solid var(--darkLight) !important;
  box-shadow: none !important;
}

/* Hover cliquable */
.darkBackground .dica_divi_carousel .dica_divi_carouselitem.et_clickable .dica-item:hover,
.darkBackground .dica_divi_carousel .dica_divi_carouselitem.et-clickable .dica-item:hover,
.darkBackground .dica_divi_carousel .dica-item.et_clickable:hover,
.darkBackground .dica_divi_carousel .dica-item.et-clickable:hover {
  box-shadow: var(--shadowStrong) !important;
  border-color: var(--darkLight) !important;
}

/* Icon cliquable : card sur le wrapper */
.darkBackground .dica_divi_carousel .dica_divi_carouselitem.et_clickable:has(.et-pb-icon),
.darkBackground .dica_divi_carousel .dica_divi_carouselitem.et-clickable:has(.et-pb-icon) {
  background-color: var(--dark) !important;
  border-color: var(--darkLight) !important;
}

/* Icon cliquable : intérieur transparent */
.darkBackground .dica_divi_carousel .dica_divi_carouselitem.et_clickable:has(.et-pb-icon) .dica-item,
.darkBackground .dica_divi_carousel .dica_divi_carouselitem.et-clickable:has(.et-pb-icon) .dica-item {
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
}


/* =========================
   Table des matières
========================= */

.darkBackground .et_pb_table_of_contents .et_pb_table_of_contents__list--level-2 {
  border-color: var(--darkLight) !important;
}

.darkBackground .et_pb_table_of_contents .et_pb_table_of_contents__link-text {
  color: var(--white) !important;
}


/* =========================
   Composants
========================= */

.darkBackground .floatingRow,
.darkBackground .cardShadow,
.darkBackground .cardBox {
  background-color: var(--dark) !important;
  border-color: var(--darkLight) !important;
  color: var(--white) !important;
}

.darkBackground .floatingRow,
.darkBackground .floatingRow .et_pb_module,
.darkBackground .floatingRow .et_pb_module p,
.darkBackground .floatingRow .et_pb_module li,
.darkBackground .floatingRow .et_pb_module h1,
.darkBackground .floatingRow .et_pb_module h2,
.darkBackground .floatingRow .et_pb_module h3,
.darkBackground .floatingRow .et_pb_module h4,
.darkBackground .floatingRow .et_pb_module h5,
.darkBackground .floatingRow .et_pb_module h6,
.darkBackground .cardShadow,
.darkBackground .cardShadow .et_pb_module,
.darkBackground .cardShadow .et_pb_module p,
.darkBackground .cardShadow .et_pb_module li,
.darkBackground .cardShadow .et_pb_module h1,
.darkBackground .cardShadow .et_pb_module h2,
.darkBackground .cardShadow .et_pb_module h3,
.darkBackground .cardShadow .et_pb_module h4,
.darkBackground .cardShadow .et_pb_module h5,
.darkBackground .cardShadow .et_pb_module h6,
.darkBackground .cardBox,
.darkBackground .cardBox .et_pb_module,
.darkBackground .cardBox .et_pb_module p,
.darkBackground .cardBox .et_pb_module li,
.darkBackground .cardBox .et_pb_module h1,
.darkBackground .cardBox .et_pb_module h2,
.darkBackground .cardBox .et_pb_module h3,
.darkBackground .cardBox .et_pb_module h4,
.darkBackground .cardBox .et_pb_module h5,
.darkBackground .cardBox .et_pb_module h6 {
  color: var(--white) !important;
}




/* =========================================================
   8. SPÉCIFIQUE PROJET
   À modifier uniquement pour le projet en cours
========================================================= */

/* =========================
   Projet : Allan Lipsker / urologue.drakmaker.fr
========================= */

/* Header sombre */
#main-header,
#top-header {
  background-color: var(--darkDark) !important;
}

#main-header nav ul li a {
  color: var(--white) !important;
}

#main-header nav ul li a:hover {
  color: var(--brand) !important;
}

#main-header .et_mobile_menu {
  background-color: var(--darkDark) !important;
}

#main-header .et_mobile_menu li a,
.mobile_menu_bar:before {
  color: var(--white) !important;
}

/* =========================
   CTA MENU
========================= */

#top-menu .menu-item-39103 a{
  padding : var(--spaceXS) var(--spaceS) !important;
  border-radius : 10px !important;
  margin-bottom: var(--spaceS) !important;
  text-transform: uppercase ;
  background-color : var(--brand);
} 

#top-menu .menu-item-39103 a:hover{
  color:#FFF !important;
} 


/* =========================
   TOP MENU
========================= */

#et-secondary-nav li a {
  font-size: 13px !important;
}

#et-secondary-nav .menu-item-39100 a,
#et-secondary-nav .menu-item-39102 a{
  padding : 5px 8px;
  border-radius : 7px !important;
  margin-bottom: var(--spaceS) !important;
  text-transform: uppercase ;
}

#et-secondary-nav .menu-item-39100 a{
  color : #e54c2e;
  background-color : #FFF;
}

#et-secondary-nav .menu-item-39102 a{
  background-color : var(--darkLight);
}

/* =========================
   Section En bref
========================= */

.enBref {
  padding: var(--spaceL) 0 !important;
}

.enBref .et_pb_row {
  row-gap: var(--spaceXS) !important;
}

.enBref .et_pb_blurb .et-pb-icon {
  font-size: 20px !important;
}

.enBref .et_pb_blurb {
  padding : var(--spaceM) !important;
  border : var(--border) !important;
  border-radius: var(--radius) !important;
  background-color: rgba(0,0,100,0.02);
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  height: 100% !important;
}


/* =========================
   Bouton Urgence
========================= */

.et_pb_button.buttonUrgence,
.buttonUrgence.et_pb_button,
.greyBackground .et_pb_button.buttonUrgence,
.greyBackground .buttonUrgence.et_pb_button,
.darkBackground .et_pb_button.buttonUrgence,
.darkBackground .buttonUrgence.et_pb_button {
  background-color: #e54c2e !important;
  border-color: #e54c2e !important;
  color: var(--white) !important;
}

.et_pb_button.buttonUrgence:hover,
.buttonUrgence.et_pb_button:hover,
.greyBackground .et_pb_button.buttonUrgence:hover,
.greyBackground .buttonUrgence.et_pb_button:hover,
.darkBackground .et_pb_button.buttonUrgence:hover,
.darkBackground .buttonUrgence.et_pb_button:hover {
  background-color: #cc3e2b !important;
  border-color: #cc3e2b!important;
  color: var(--white) !important;
}

.et_pb_button.buttonUrgence:after,
.buttonUrgence.et_pb_button:after,
.greyBackground .et_pb_button.buttonUrgence:after,
.greyBackground .buttonUrgence.et_pb_button:after,
.darkBackground .et_pb_button.buttonUrgence:after,
.darkBackground .buttonUrgence.et_pb_button:after,
.et_pb_button.buttonUrgence:hover:after,
.buttonUrgence.et_pb_button:hover:after,
.greyBackground .et_pb_button.buttonUrgence:hover:after,
.greyBackground .buttonUrgence.et_pb_button:hover:after,
.darkBackground .et_pb_button.buttonUrgence:hover:after,
.darkBackground .buttonUrgence.et_pb_button:hover:after {
  color: var(--accent) !important;
}


/* =========================================================
   9. ANIMATIONS
========================================================= */

.drakRevealReady .et_pb_row {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.7s ease, transform 0.7s ease;
}

.drakRevealReady .et_pb_column {
  opacity: 0;
  transform: translateY(18px);
  transition: opacity 0.7s ease, transform 0.7s ease;
}

.drakRevealReady .et_pb_row.isVisible,
.drakRevealReady .et_pb_row.isVisible .et_pb_column {
  opacity: 1;
  transform: translateY(0);
}

.drakRevealReady .et_pb_row.isVisible .et_pb_column:nth-child(1) {
  transition-delay: 0.1s;
}

.drakRevealReady .et_pb_row.isVisible .et_pb_column:nth-child(2) {
  transition-delay: 0.2s;
}

.drakRevealReady .et_pb_row.isVisible .et_pb_column:nth-child(3) {
  transition-delay: 0.3s;
}

.drakRevealReady .et_pb_row.isVisible .et_pb_column:nth-child(4) {
  transition-delay: 0.4s;
}

.drakRevealReady .et_pb_row.isVisible .et_pb_column:nth-child(5) {
  transition-delay: 0.5s;
}

.drakRevealReady .et_pb_row.isVisible .et_pb_column:nth-child(6) {
  transition-delay: 0.6s;
}

@media (prefers-reduced-motion: reduce) {
  .drakRevealReady .et_pb_row,
  .drakRevealReady .et_pb_column {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

/* Désactivation manuelle des animations */
.noReveal,
.noReveal *,
.revealDisabled,
.revealDisabled .et_pb_column {
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
}


/* Désactivation sur mobile */
@media (max-width: 800px) {
  .drakRevealReady .et_pb_row,
  .drakRevealReady .et_pb_column,
  .drakRevealReady .et_pb_row.isVisible,
  .drakRevealReady .et_pb_row.isVisible .et_pb_column {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
}

/* =========================
   Sticky Divi — correction clone / placeholder
========================= */

.et_pb_sticky_placeholder {
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.et_pb_sticky,
.et_pb_sticky_module {
  z-index: 999 !important;
}

/* =========================
   Sticky Divi — FOOTER
========================= */
/* Footer Divi : forcer tous les liens en blanc */
footer.et-l--footer a,
footer.et-l--footer a:link,
footer.et-l--footer a:visited,
footer.et-l--footer .et_pb_text_inner a {
  color: #ffffff !important;
}

/* Survol */
footer.et-l--footer a:hover,
footer.et-l--footer .et_pb_text_inner a:hover {
  color: #ffffff !important;
  opacity: 0.7;
}

/* =========================
   Mega menu Divi
========================= */
.mega-menu .sub-menu {
  display: flex !important;
  flex-direction: column !important;
  flex-wrap: wrap !important;

  width: 100% !important;
  height: 280px !important;
  max-height: 280px !important;
  border-radius : var(--radius) !important;
  margin:auto;

  box-sizing: border-box !important;
  row-gap: 15px !important;
  column-gap: 15px !important;

  align-items: flex-start !important;
  align-content: flex-start !important;

  padding: var(--spaceL) !important;
  margin: 0 !important;
  overflow: hidden !important;
}

.mega-menu .sub-menu li {
  box-sizing: border-box !important;
  flex: 0 0 auto !important;

  width: calc((100% - 20px) / 3) !important;
  max-width: calc((100% - 20px) / 3) !important;

  margin: 0 !important;
  padding: 0 !important;

  float: none !important;
  clear: none !important;
}

.mega-menu .sub-menu li a {
  display: block !important;
  width: 100% !important;
  box-sizing: border-box !important;
  padding: 0.35rem 0.6rem !important;
  border-radius: var(--radiusSmall) !important;
  line-height: 1.25 !important;
  text-decoration: none !important;
}

.mega-menu .sub-menu li a:hover {
  background-color: var(--darkLight) !important;
  color: var(--brandLight) !important;
  text-decoration: none !important;
}

.mega-menu .sub-menu li a:before {
  content: "•";
  color: var(--brand);
  margin-right: var(--spaceXS) !important;
}

/* =========================
   Mega menu Divi - Mobile
========================= */

@media (max-width: 980px) {
  .mega-menu .sub-menu {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-height: none !important;

    padding: var(--spaceS) !important;
    margin: 0 !important;

    border-radius: 0 !important;
    overflow: visible !important;

    row-gap: 0 !important;
    column-gap: 0 !important;
  }

  .mega-menu .sub-menu li {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    float: none !important;
    clear: both !important;
  }

  .mega-menu .sub-menu li a {
    display: flex !important;
    align-items: flex-start !important;
    width: 100% !important;

    padding: 0.75rem 0.85rem !important;
    border-radius: var(--radiusSmall) !important;

    line-height: 1.35 !important;
    white-space: normal !important;
  }

  .mega-menu .sub-menu li a:before {
    content: "•";
    flex: 0 0 auto;
    margin-right: var(--spaceXS) !important;
    color: var(--brand);
  }

  .mega-menu .sub-menu li a:hover {
    background-color: var(--darkLight) !important;
    color: var(--brandLight) !important;
  }
}

@media (max-width: 980px) {
  .et_mobile_menu .mega-menu .sub-menu {
    display: block !important;
    height: auto !important;
    max-height: none !important;
    padding: 0.5rem 0 0.5rem 1rem !important;
    overflow: visible !important;
  }

  .et_mobile_menu .mega-menu .sub-menu li,
  .et_mobile_menu .mega-menu .sub-menu li a {
    width: 100% !important;
    max-width: 100% !important;
  }
}



/* ===============================
   BOUTONS AJOUTES
================================== */

/* ====WHATSAPP=== */

#whatsapp {
  position: fixed;
  right: 15px;
  bottom: 15px;
  z-index: 999999;
}

#whatsapp img {
  width: 55px;
  height: 55px;
}

/* ====CONTACT PAR MAIL=== */
#et-info {
  margin-top:0.5em;
} 
#et-info-phone {
  text-align: left ;
  display: inline !important;
} 

#et-info-email:before {
  color: var(--brand);
}

.contactMobile {
  display: none;
}

.contactMobile::before {
content: "\e076";
font-family: "ETmodules";
margin-right: 0.5em;
color: var(--brand);
}

@media (max-width: 800px) {  
  #et-info {
    display: inline !important;
  } 
  .contactMobile {
    display: inline !important;
    margin-top:0.5em;
  }
  
   
}

/* ====DOCTOLIB=== */
.btnDoctolib {
  display : none ;
}

@media (max-width: 800px) { 
  .btnDoctolib {
    display : block !important;
    position: fixed;
    top: 150px;
    right: 0px;
    z-index : 99999999999999999999999 !important;
  }
}


/* =========================
   btn Prostate score ipss
========================= */
a.btnIpss {
  display : flex !important;
  position: fixed !important;
  top: 200px!important;
  right: 0px !important;
  font-size: 13px !important;
  line-height: 14px !important;
  z-index: 9999999999999999999999999999999999 !important;
  background-color: var(--brand);
  padding : 10px;
  border-left: 2px solid var(--accent);
  color : var(--white);
  font-family: var(--fontBody) !important;
}



@media (max-width: 800px) { 
  .btnIpss {
  
  }
}



 

/* =========================================================
   Modal IPSS
========================================================= */

#ipss-modal[hidden],
#ipss-modal .dm-ipss-question[hidden],
#ipss-modal .dm-ipss-result[hidden],
#ipss-modal .dm-ipss-error[hidden],
#ipss-modal .dm-ipss-btn[hidden] {
  display: none !important;
}

#ipss-modal.dm-ipss-modal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 2147483647 !important;
  font-family: var(--fontBody);
}

#ipss-modal .dm-ipss-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: rgba(13, 38, 64, 0.82);
}

#ipss-modal .dm-ipss-dialog {
  position: relative;
  z-index: 2;
  width: min(92vw, 680px);
  max-height: 88vh;
  margin: 6vh auto;
  overflow-y: auto;
  background: var(--darkLight);
  border-radius: var(--radius);
  box-shadow: var(--shadowStrong);
}

#ipss-modal .dm-ipss-content {
  padding: var(--spaceL);
}

#ipss-modal .dm-ipss-close {
  position: absolute;
  top: 12px;
  right: 14px;
  width: 38px;
  height: 38px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--white);
  font-size: 34px;
  line-height: 1;
  cursor: pointer;
}

#ipss-modal .dm-ipss-title {
  margin: 0 0 var(--spaceS);
  padding: 0;
  font-family: var(--fontTitle);
  font-size: var(--fontSizeH2);
  font-weight: var(--weightBold);
  line-height: 1.15;
  color: var(--white) !important;
}

#ipss-modal .dm-ipss-progress {
  margin-bottom: var(--spaceS);
  color: var(--brandLight);
  font-size: 0.95rem;
  font-weight: var(--weightMedium);
}

#ipss-modal .dm-ipss-question h3 {
  margin: 0 0 var(--spaceXS);
  padding: 0;
  font-family: var(--fontTitle);
  font-size: var(--fontSizeH3);
  font-weight: var(--weightBold);
  line-height: 1.2;
  color: var(--white) !important;
}

#ipss-modal .dm-ipss-question p {
  margin: 0 0 var(--spaceM);
  padding: 0;
  font-family: var(--fontBody);
  font-size: var(--fontSizeBody);
  line-height: var(--lineHeightBody);
  color: var(--white) !important;
}

#ipss-modal .dm-ipss-answers {
  display: grid;
  gap: 0.65rem;
  margin: 0;
  padding: 0;
  border: 0;
}

#ipss-modal .dm-ipss-answers label {
  display: flex;
  align-items: flex-start;
  gap: 0.65rem;
  margin: 0;
  padding: 0.85rem 1rem;
  border: var(--border);
  border-radius: var(--radiusSmall);
  background: var(--greyLight);
  color: var(--darkDark) !important;
  cursor: pointer;
  transition: var(--transition);
}

#ipss-modal .dm-ipss-answers label:hover {
  border-color: var(--brand);
  background: var(--white);
}

#ipss-modal .dm-ipss-answers input[type="radio"] {
  width: auto;
  min-height: 0;
  margin: 0.3rem 0 0;
  padding: 0;
  accent-color: var(--brand);
}

#ipss-modal .dm-ipss-answers span {
  display: block;
  line-height: 1.4;
  color: var(--darkDark) !important;
}

#ipss-modal .dm-ipss-actions {
  display: flex;
  justify-content: space-between;
  gap: var(--spaceS);
  margin-top: var(--spaceM);
}

#ipss-modal .dm-ipss-btn {
  min-height: 46px;
  padding: 0.75rem 1.25rem;
  border: 0;
  border-radius: var(--radiusSmall);
  font-family: var(--fontBody);
  font-size: var(--fontSizeBody);
  font-weight: var(--weightMedium);
  line-height: 1;
  cursor: pointer;
  transition: var(--transition);
}

#ipss-modal .dm-ipss-btn-primary {
  margin-left: auto;
  background: var(--brand);
  color: var(--white) !important;
}

#ipss-modal .dm-ipss-btn-primary:hover {
  background: var(--brandLight);
  color: var(--white) !important;
}

#ipss-modal .dm-ipss-btn-secondary {
  background: var(--grey);
  color: var(--darkDark) !important;
}

#ipss-modal .dm-ipss-btn-secondary:hover {
  background: var(--greyDark);
  color: var(--darkDark) !important;
}

#ipss-modal .dm-ipss-btn:disabled {
  cursor: not-allowed;
  opacity: 0.65;
}

#ipss-modal .dm-ipss-error {
  margin: var(--spaceS) 0 0;
  color: #ffb4ab !important;
  font-size: 0.9rem;
  font-weight: var(--weightMedium);
}

#ipss-modal .dm-ipss-result {
  text-align: center;
}

#ipss-modal .dm-ipss-result h2 {
  margin: 0 0 var(--spaceS);
  padding: 0;
  font-family: var(--fontTitle);
  font-size: var(--fontSizeH3);
  font-weight: var(--weightBold);
  line-height: 1.2;
  color: var(--white) !important;
}

#ipss-modal .dm-ipss-score {
  margin-bottom: var(--spaceM);
  font-family: var(--fontTitle);
  font-size: 4rem;
  font-weight: var(--weightRegular);
  line-height: 1;
  color: var(--white) !important;
}

#ipss-modal .dm-ipss-result-message {
  margin-bottom: var(--spaceM);
  padding: var(--spaceS);
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: var(--radiusSmall);
  background: rgba(255, 255, 255, 0.08);
  color: var(--white) !important;
  font-weight: var(--weightMedium);
  line-height: var(--lineHeightBody);
}

#ipss-modal .dm-ipss-levels {
  display: grid;
  gap: var(--spaceS);
  margin-bottom: var(--spaceM);
  text-align: left;
}

#ipss-modal .dm-ipss-level {
  padding: var(--spaceS);
  border-radius: var(--radiusSmall);
  color: var(--darkDark) !important;
  line-height: var(--lineHeightBody);
}

#ipss-modal .dm-ipss-level strong {
  font-weight: var(--weightBold);
  color: inherit !important;
}

#ipss-modal .dm-ipss-level-light {
  background: #f1f8ef;
  border: 1px solid #d7ead1;
}

#ipss-modal .dm-ipss-level-moderate {
  background: #fff3e7;
  border: 1px solid #f3ddc5;
}

#ipss-modal .dm-ipss-level-severe {
  background: #fdecec;
  border: 1px solid #f2cece;
}

#ipss-modal .dm-ipss-btn-contact {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0.85rem 2rem;
  border: 2px solid var(--brand);
  border-radius: var(--radiusSmall);
  background: transparent;
  color: var(--white) !important;
  text-transform: uppercase;
  text-decoration: none !important;
}

#ipss-modal .dm-ipss-btn-contact:hover {
  background: var(--brand);
  color: var(--white) !important;
  text-decoration: none !important;
}

#ipss-modal .dm-ipss-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
}

#ipss-modal .dm-ipss-score span {
  font-size: 0.45em;
  opacity: 0.75;
}

body.dm-ipss-modal-open {
  overflow: hidden;
}

body.dm-ipss-modal-open #main-header,
body.dm-ipss-modal-open #top-header,
body.dm-ipss-modal-open header,
body.dm-ipss-modal-open .et-l--header {
  z-index: 1 !important;
}

@media (max-width: 767px) {
  #ipss-modal .dm-ipss-dialog {
    width: calc(100vw - 24px);
    max-height: calc(100vh - 48px);
    margin: 24px auto;
  }

  #ipss-modal .dm-ipss-content {
    padding: var(--spaceM);
  }

  #ipss-modal .dm-ipss-title {
    font-size: var(--fontSizeH2Mobile);
  }

  #ipss-modal .dm-ipss-score {
    font-size: 3.25rem;
  }

  #ipss-modal .dm-ipss-actions {
    flex-direction: column-reverse;
  }

  #ipss-modal .dm-ipss-btn,
  #ipss-modal .dm-ipss-btn-primary,
  #ipss-modal .dm-ipss-btn-contact {
    width: 100%;
    margin-left: 0;
  }
}

/* =========================================================
   CATALOGUE PROSTATE
========================================================= */
#catalogueProstate H2 {
  font-size: var(--fontSizeH3) !important;
}

#catalogueProstate .et_pb_blurb.icon .et-pb-icon {
  font-size: 50px !important;
  padding : 0.5em;
}


/* =========================================================
   DM COUNTER
========================================================= */
#enChiffres .cardBox {
  min-height: 200px;
}
#enChiffres .cardBox .dm-counter {
  font-size: 3em !important;
  font-weight: var(--weightBold) !important;
  color: var(--brand) !important;
}

#enChiffres .cardBox p:nth-child(1){
 padding-bottom: 0 !important;
}

#enChiffres .cardBox p:nth-child(2){
 border-top: var(--border) !important;
 padding-top: 20px;
 font-size: 1em !important;
}

.UrgenceTraitees .dm-counter {
  font-size: 5em !important;
  font-weight: var(--weightBold) !important;
  color: var(--brand) !important;
}

.UrgenceTraitees span:nth-child(2) {
  font-size: 2em !important;
  font-weight: bold !important;
}


