/*
Theme Name: Divi Child
Author: 
Description: Divi Child Theme
Version: 1.0
Template: Divi

This is the child theme for Divi theme, generated with Generate Child Theme plugin by catchthemes.

(optional values you can add: Theme URI, Author URI, License, License URI, Tags, Text Domain)
*/
.wpcf7-text,
.wpcf7-textarea,
.wpcf7-select{
    font-family: 'Karla', Helvetica, Arial, Lucida, sans-serif;
    font-size: 16px;
    line-height: 1.8em;
	background-color: #ffffff !important;
	border-radius: 0px 0px 0px 0px;
	padding: 14px 4% !important;
	color: #000 !important;
	width: 100%;
    font-weight: 400;
	 border: 1px solid #bbb !important;
	margin-bottom:10px !important;
}
.wpcf7-text::placeholder,
.wpcf7-textarea::placeholder{
	color: #000 !important;
}
.wpcf7-submit{
	    color: #ffffff !important;
    border-width: 0px !important;
    border-radius: 0px;
    letter-spacing: 2px;
    font-size: 14px;
    font-family: 'Crimson Text', Georgia, "Times New Roman", serif !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    background-color: #C6A350;
    padding-top: 15px !important;
    padding-right: 40px !important;
    padding-bottom: 15px !important;
    padding-left: 40px !important;
	cursor:pointer;
	float:right;
	margin-top:10px;
}
.wpcf7-submit:hover{
	background-color: #2F4F41;
}
.wpcf7-list-item {
    margin: 0 !important;
}
.wpcf7-list-item-label{
	color:#fff !important;
}
.page-id-322 .wpcf7-list-item-label{
	color:#000 !important;
}
.btncall{
	display: inline-block;
    color: #ffffff !important;
    border-width: 0px !important;
    border-radius: 0px;
    letter-spacing: 2px;
    font-size: 14px;
    font-family: 'Crimson Text', Georgia, "Times New Roman", serif !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    background-color: #c6a350;
	    padding-top: 15px !important;
    padding-right: 40px !important;
    padding-bottom: 15px !important;
    padding-left: 40px !important;
	transition:all 300ms ease 0ms;
	    width: 100%;
    text-align: center;
}
.btncall:hover{
    background-image: initial;
    background-color: #2f4f41;
}
/* Mobile/tablette : empilé par défaut — rien à faire */
.planning .et_pb_row_3 .et_pb_column_7 > .et_pb_module {
  /* Optionnel : gardez une marge en mobile si besoin */
}
.planning .et_pb_row_3 .et_pb_column_7 {
  display: block;
}
/* Desktop (breakpoint Divi >= 981px) */
@media (min-width: 1400px) {
  /* Met la colonne 3/4 en grille 3 colonnes */
  .planning .et_pb_row_3 .et_pb_column_7 {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px; /* espace entre colonnes, ajuste si besoin */
    align-items: stretch;
  }

  /* Supprime les marges par défaut des modules Divi pour que la grille aligne proprement */
  .planning .et_pb_row_3 .et_pb_column_7 > .et_pb_module {
    margin: 0 !important;
  }

  /* (Optionnel) étirer le contenu pour des hauteurs égales visuelles */
  .planning .et_pb_row_3 .et_pb_column_7 > .et_pb_module.et_pb_blurb {
    display: flex;
    /*height: 100%;*/
  }
  .planning .et_pb_row_3 .et_pb_column_7 > .et_pb_module.et_pb_blurb .et_pb_blurb_content {
    flex: 1 1 auto;
  }

  /* (Optionnel) si tu ne veux PAS la colonne vide à droite, décommente pour la masquer
  .planning .et_pb_row_3 .et_pb_column_8 { display: none; }
  .planning .et_pb_row_3 { grid-template-columns: 1fr !important; }
  */
}
.planning .et_pb_blurb_description{
	margin-top:10px;
}
/* ===== Timeline verticale pour la blurb 0 ===== */
.planning .et_pb_blurb_0 .et_pb_blurb_description ul,
.planning .et_pb_blurb_1 .et_pb_blurb_description ul,
.planning .et_pb_blurb_2 .et_pb_blurb_description ul{
  /* reset liste */
  list-style: none;
  margin: 0;
  padding-left: 44px;  
	padding-bottom: 0;/* espace pour l'axe + l’icône */
  position: relative;
  --timeline-color: #000;   /* couleur du trait vertical */
  --dot-size: 12px;            /* taille de l’icône */
  --axis-x: 18px;              /* position de l’axe/bullet depuis le bord gauche du UL */
  --gap: 18px;                 /* espace vertical entre items */
  /* OPTION 1 : icône personnalisée via image */
  --bullet-url: url('/wp-content/uploads/2025/09/button-1.png');
  /* OPTION 2 (alternative, si tu veux une pastille simple) :
     commente la ligne --bullet-url et dé-commente la variable ci-dessous
     --bullet-bg: #4A7CF0; 
  */
}

/* Axe vertical continu (en arrière-plan du UL) */
.planning .et_pb_blurb_0 .et_pb_blurb_description ul::before,
.planning .et_pb_blurb_1 .et_pb_blurb_description ul::before,
.planning .et_pb_blurb_2 .et_pb_blurb_description ul::before{
  content: "";
  position: absolute;
  left: var(--axis-x);
  top: 8px;
  bottom: 8px;
  width: 2px;
  background: var(--timeline-color);
}

/* Chaque item */
.planning .et_pb_blurb_0 .et_pb_blurb_description ul > li,
.planning .et_pb_blurb_1 .et_pb_blurb_description ul > li,
.planning .et_pb_blurb_2 .et_pb_blurb_description ul > li{
  position: relative;
  margin: 0 0 var(--gap) 0;
  padding-left: 0; /* le padding est géré par le UL */
}

/* Icône personnalisée à la place du puce */
.planning .et_pb_blurb_0 .et_pb_blurb_description ul > li::before,
.planning .et_pb_blurb_1 .et_pb_blurb_description ul > li::before,
.planning .et_pb_blurb_2 .et_pb_blurb_description ul > li::before
{
  content: "";
  position: absolute;
  left: -31px;
    top: 0.5em;
  width: var(--dot-size);
  height: var(--dot-size);
  z-index: 1;
  /* ---- OPTION 1 : image personnalisée ---- */
  background-image: var(--bullet-url);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;

  /* ---- OPTION 2 : pastille simple (si tu utilises --bullet-bg) ----
  background: var(--bullet-bg);
  border-radius: 50%;
  box-shadow: 0 0 0 2px #fff; 
  */
}

/* Masquer l’axe sous le dernier item pour un joli arrêt net */
.planning .et_pb_blurb_0 .et_pb_blurb_description ul > li:last-child::after,
.planning .et_pb_blurb_1 .et_pb_blurb_description ul > li:last-child::after,
.planning .et_pb_blurb_2 .et_pb_blurb_description ul > li:last-child::after
{
  content: "";
  position: absolute;
  left: var(--axis-x);
  bottom: calc(-1 * var(--gap));
  width: 2px;
  height: var(--gap);
  background: #fff; /* couleur de fond de la section pour "effacer" l’axe */
}

/* (Optionnel) un peu d’air entre les lignes de la li si tu utilises <br> */
.planning .et_pb_blurb_0 .et_pb_blurb_description li br,
.planning .et_pb_blurb_1 .et_pb_blurb_description li br,
.planning .et_pb_blurb_2 .et_pb_blurb_description li br
{
  line-height: 1.8;
  content: "";
}
.planning .et_pb_blurb_container h4{
		padding-left:18px !important;
	}
@media (min-width: 981px) {
  /* Colonne contenant les 2 modules */
  .lpcontact .et_pb_column {
    display: flex;
    gap: 30px; /* espace horizontal */
    align-items: flex-start; /* aligne en haut */
  }

  /* Chaque module prend 50% */
  .lpcontact .et_pb_column .et_pb_module {
    flex: 1;
  }
}
@media (min-width: 981px) {
  .planning .et_pb_blurb_0,
	 .planning .et_pb_blurb_1,
	 .planning .et_pb_blurb_2
	{
    height: 550px;        /* hauteur fixe */
    overflow-y: auto !important;     /* scroll vertical si besoin */
    overflow-x: hidden  !important;   /* pas de scroll horizontal */
    padding-right: 10px;  /* espace pour scrollbar */
    box-sizing: border-box;
  }

  /* Optionnel : style scrollbar (Chrome/Edge/Safari) */
  .planning .et_pb_blurb_0::-webkit-scrollbar,
	.planning .et_pb_blurb_1::-webkit-scrollbar,
	.planning .et_pb_blurb_2::-webkit-scrollbar
	{
    width: 6px;
  }
  .planning .et_pb_blurb_0::-webkit-scrollbar-thumb,
	.planning .et_pb_blurb_1::-webkit-scrollbar-thumb,
	.planning .et_pb_blurb_2::-webkit-scrollbar-thumb
	{
    background: #000;
    border-radius: 3px;
  }
  .planning .et_pb_blurb_0::-webkit-scrollbar-track,
	.planning .et_pb_blurb_1::-webkit-scrollbar-track,
	.planning .et_pb_blurb_2::-webkit-scrollbar-track
	{
    background: transparent;
  }
	}

@media (min-width: 1485px) {
  .page-id-322 .et_section_specialty {
    width: 72% !important;
  }
}

/* 1280px à 1484px */
@media (min-width: 1280px) and (max-width: 1484px) {
  .page-id-322 .et_section_specialty {
    width: 63% !important;
  }
}
.lpcontacticones ul {
  display: flex;              /* mettre les <li> côte à côte */
  gap: 20px;                  /* espace entre les 2 blocs */
  padding: 0;
  margin: 0;
  list-style: none;           /* supprime les puces */
  justify-content: center;    /* centre les blocs horizontalement */
}

.lpcontacticones ul li {
  width: clamp(208px, calc(208px + 62 * ((100vw - 1280px) / 640)), 270px) !important;
  height: 150px;
  background: #f4f1e6;
  display: flex;
  flex-direction: column;     /* image au-dessus du texte */
  align-items: center;        /* centre horizontalement */
  justify-content: center;    /* centre verticalement le contenu */
  text-align: center;
  padding: 10px;
  border-radius: 8px;         /* optionnel : arrondi des coins */
}

.lpcontacticones ul li img {
  display: block;
  margin-bottom: 10px;        /* espace entre l’image et le texte */
  width: 40px;                /* tu peux ajuster */
  height: auto;
}


/* ----- Desktop (>=981px) : sidebar fixe à droite ----- */
@media (min-width: 981px) {
  #sidebarsticky {
    position: fixed !important;
    top: 300px !important;
    right: 50px !important;
    z-index: 9999 !important;
  }
  .cta-etre-appele { display: none !important; }
}

/* ----- Mobile (<981px) : bouton sticky + panneau coulissant ----- */
@media (max-width: 980px) {
  /* Bouton sticky bas de page */
  .cta-etre-appele {
    position: fixed;
    left: 16px;
    right: 16px;
    bottom: 12px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    height: 52px;
    padding: 0 16px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .5px;
    border-radius: 12px;
    background: #c6a350;
    color: #fff;
    z-index: 10000;
	 border:0px solid #c6a350 !important;
  }

  /* Espace pour éviter que le bouton masque le contenu */
  body.page-id-322 { padding-bottom: 76px; }

  /* Le panneau (ton #sidebarsticky) en bottom-sheet, caché par défaut */
  #sidebarsticky {
    position: fixed !important;
    left: 0;
    right: 0;
    bottom: 0;
    max-height: 80vh;         /* évite de dépasser l’écran */
    overflow: auto;           /* scroll interne si contenu long */
    transform: translateY(100%);
    transition: transform 300ms ease;
    z-index: 9999;
    /* Optionnel : fond et arrondi */
    background: #fff;
    border-top-left-radius: 16px;
    border-top-right-radius: 16px;
    box-shadow: 0 -8px 24px rgba(0,0,0,.12);
	  padding-bottom: 60px;
  }
  #sidebarsticky.is-open {
    transform: translateY(0);
	  background-color:#fff !important;
  }

  /* Petit “handler” visuel en haut du panneau (optionnel) */
  #sidebarsticky::before {
    content: "";
    display: block;
    width: 48px;
    height: 4px;
    border-radius: 2px;
    background: #ddd;
    margin: 10px auto 8px;
  }

  /* Bouton de fermeture dans le panneau (optionnel) */
  #sidebarsticky .close-panel {
    display: inline-block;
    position: absolute;
    right: 12px;
    top: 8px;
    padding: 8px 10px;
    font-size: 14px;
    border-radius: 8px;
    background: #FFF;
        border: 0px solid;
  }
	.btncall {
    font-size: 12px;
    padding-right: 10px !important;
    padding-left: 10px !important;
}
	.page-id-322 .et-l--footer .et_builder_inner_content,
	.page-id-322 .et-l--footer .et_builder_inner_content .et_pb_column,
	.page-id-322 .et-l--footer .et_builder_inner_content .et_pb_column .et_pb_social_media_follow li a.icon:before{
		position: initial !important;
}
	.page-id-322 img.alignleft{
	display:block !important;
	float: none !important;
    margin-bottom: 30px;
	    margin-right: 0px !important;
    width: 100%;

}
}
