@font-face {
  font-family: "Gotham";
  font-weight: 400;
  src: url("../assets/fonts/Gotham-Book.otf") format("truetype");
}
@font-face {
  font-family: "Gotham";
  font-weight: 600;
  src: url("../assets/fonts/Gotham-Bold.otf") format("truetype");
}
* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html, body {
  background: #fff;
}

body {
  font-family: "Gotham";
  font-size: 16px;
}

.ca-wrapper {
  max-width: 100%;
  margin: 0 auto;
  position: relative;
}

h2 {
  font-weight: 600;
  text-transform: uppercase;
        font-size: xxx-large;
}

.content h3 {
  font-weight: 600;
        font-size: xxx-large;
}

h4 {
  font-weight: 600;
  color: #6E202A;
  font-size: 1em;
  text-transform: uppercase;
}

h5 {
  font-weight: 400;
  letter-spacing: 3px;
  text-transform: uppercase;
}

strong {
  font-weight: 600;
}



@media screen and (max-width:800px) {
  .ca-overlay {
    width: 100%;
    margin-bottom: 20px;
    position: relative;
    top: auto;
  }
}


.ca-overlay-close {
  background: none;
  border: 0;
  position: absolute;
  top: 20px;
  left: 10px;
  width: 40px;
  padding: 10px;
}
.ca-overlay-close img {
  display: block;
  width: 100%;
}
.ca-overlay-arrow {
  width: 20px;
  height: 20px;
  -o-object-fit: contain;
     object-fit: contain;
}
.ca-overlay-content {
  padding: 20px 10px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #000;
}
.ca-overlay-user {
  width: 30px;
}

.ca-head {
  aspect-ratio: 3360/562;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  background: url("../assets/images/header.jpg");
  background-size: cover;
  background-position: center;
  color: #fff;
  text-align: center;
}
@media screen and (max-width:800px) {
  .ca-head {
    padding: 50px 20px;
    aspect-ratio: none;
  }
  .ca-head h2 {
    margin-bottom: 1em;
  }
}

.ca-intro {
  overflow: hidden;
  margin: 40px -7px;
  position: relative;
}
.ca-intro-modal {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1000;
  margin: 7px;
  background: #eef1f4;
  padding: 20px 30px;
  display: none;
  overflow: auto;
}
.ca-intro-modal.active {
  display: block;
}
.ca-intro-modal-body {
  max-width: 800px;
  margin: 0 auto;
  position: relative;
}
.ca-intro-modal-body p {
  margin-bottom: 20px;
}

.ca-intro-modal .clock-time {
  position: absolute;
  top: 0;
  right: 0;
}
@media screen and (max-width:800px) {
  .ca-intro-modal .clock-time {
    margin-top: 0;
    width: 100px;
  }
  .ca-intro-modal .clock-time img {
    height: 30px;
  }
}
.ca-intro-modal .ca-intro-title {
  text-align: center;
  margin: 2em 0;
}
.ca-intro-modal .ca-intro-title h3 {
  font-size: 2em;
  margin-bottom: 0.15em;
            font-size: xxx-large;

}
.ca-intro-modal .ca-intro-title h5 {
  color: #6E202A;
}
.ca-intro-container {
  display: flex;
  margin: 0;
}
@media screen and (max-width:800px) {
  .ca-intro-container {
    display: block;
  }
}
.ca-intro-col {
  display: flex;
  flex-direction: column;
}
.ca-intro-col:nth-child(1) {
  flex: 0 0 67%;
}
@media screen and (max-width:800px) {
  .ca-intro-col:nth-child(1) {
    flex: none;
  }
}
.ca-intro-col:nth-child(2) {
  flex: 0 0 33%;
}
@media screen and (max-width:800px) {
  .ca-intro-col:nth-child(2) {
    flex: none;
  }
}
.ca-intro-item {
  text-align: center;
  margin: 7px;
  padding: 2em 1.5em;
  background-size: cover;
  background-position: center;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-direction: column;
  position: relative;
}
.ca-intro-item::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.3);
  pointer-events: none;
  z-index: 2;
  opacity: 0;
}
.ca-intro-item:hover::before {
  opacity: 1;
}
.ca-intro-item > div {
  position: relative;
  z-index: 3;
}
.ca-intro-item.bg-item-01 {
  flex: 0 0 auto;
  background-image: url("../assets/images/bg01.jpg");
}
.ca-intro-item.bg-item-02 {
  flex: 1 0 auto;
  background-image: url("../assets/images/bg02.jpg");
}
.ca-intro-item.bg-item-03 {
  flex: 1 1 auto;
  background-image: url("../assets/images/bg03.jpg");
}
.ca-intro-item.bg-item-04 {
  flex: 0 0 auto;
  color: #000;
  border: 1px solid #6E202A;
}
.ca-intro-item.bg-item-04 .ca-intro-text {
  margin: 1em auto;
}
.ca-intro-item.bg-item-04:hover {
  background: #6E202A;
}
.ca-intro-item.bg-item-04:hover p {
  color: #fff;
}
.ca-intro-item.bg-item-04:hover .book-icon {
  background-image: url("../assets/images/book-hover.png");
}
.ca-intro-item.bg-item-04:hover .btn.btn-plus {
  border: 1px solid #fff;
}
.ca-intro-item h3 {
  font-size: 2em;
  margin-bottom: 0.35em;
}
.ca-intro-text {
  margin: 3em auto;
  max-width: 380px;
}

.color-green {
  color: #6E202A;
}

button {
  cursor: pointer;
}

button, input {
  font-family: "Gotham";
  font-size: 1em;
  border: 0;
  margin: 0;
}

.btn {
  text-transform: uppercase;
  padding: 12px 20px;
  color: #fff;
  text-decoration: none;
  display: inline-block;
  background: #6E202A;
  border-radius: 100px;
  font-size: 0.8em;
  border: 1px solid transparent;
}
.btn.btn-plus {
  font-size: 1.5em;
  padding: 0;
  padding-top: 2px;
  width: 30px;
  height: 30px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #6E202A;
}
.btn.btn-plus.btn-close {
  transform: rotate(45deg);
  margin-bottom: 1em;
}
.btn.btn-arrow {
  padding: 0;
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #6E202A;
}
.btn.btn-white {
  background: #fff;
  color: #6E202A;
}
.btn:hover {
  background: #fff;
  color: #6E202A !important;
border-color: #6E202A;
}
.ca-transition-green .btn:hover {color: white !important; background: none;}
.btn:hover .icon-arrow {
  background-image: url("../assets/images/arrow-cta-green.png");
}

.book-icon {
  display: block;
  background: url("../assets/images/book.png") no-repeat;
  background-size: cover;
  background-position: center;
  aspect-ratio: 109/97;
  width: 55px;
  margin: 1em auto 0;
}

.ca-download {
  text-align: center;
  margin: 3em 0;
  padding: 2em 1em;
  background: #eee;
}
.ca-download h3 {
  font-weight: 600;
  margin-bottom: 1em;
  text-transform: uppercase;
}
.ca-download .btn {
  text-transform: uppercase;
  font-size: 0.8em;
}
.ca-download .btn .icon-arrow {
  position: relative;
  top: 1px;
  margin-left: 10px;
}

.icon-arrow {
  width: 6px;
  background: url("../assets/images/arrow-cta.png");
  aspect-ratio: 15/27;
  background-size: cover;
  display: inline-block;
}

ul, ul li {
  margin: 0;
  padding: 0;
  list-style: none;
}

a {
  text-decoration: none;
}

.ca-container {
  overflow: hidden;
}

.clock-time {
  width: 125px;
  margin: 0 auto;
  margin-top: 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.clock-time button {
  background: none;
  margin: 0;
  border: 0;
}
.clock-time img {
  height: 35px;
}

.ca-transition {
  margin: 40px 0;
  border: 1px solid #a0a0a0;
    border-bottom: 0;
  padding: 20px;
}
.ca-transition-head {
  text-align: center;
  margin: 30px 0;
}
.ca-transition-head h2 {
  text-transform: unset;
}

.ca-transition-head p {font-size: 28px;}
.ca-transition .clock-time {
  width: 125px;
  margin-top: 20px;
}
.ca-transition-row {
  display: flex;
  margin: 0 -7px;
}
@media screen and (max-width:800px) {
  .ca-transition-row {
    display: block;
  }
}
.ca-transition-item {
  padding: 7px;
  flex: 0 0 50%;
}
.ca-transition-item p{
  font-size: 1.3em !important;
    text-align: center !important;
}

.ca-transition-item .text-xl {
    
    font-size: 3em !important;
}

.ca-transition-answer {
  display: none;
  background: #6E202A;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.ca-transition-answer h3 {
  font-size: 1.5em;
    color: white !important;
}
.ca-transition-answer p {
  margin: 1em 0;
  display: block;
    color: white !important;
}
.ca-transition-answer button {
  font-size: 0.75em;
  text-decoration: underline;
  background: none;
  color: #fff;
}
.ca-transition-answer button:hover {
  background: #6E202A;
}
.ca-transition-grey {
  height: 100%;
  text-align: center;
  aspect-ratio: 1600/1000;
  padding: 30px 20px;
  background: #6E202A;
  display: flex;
  flex-direction: column;
  justify-content: space-around;
  align-items: center;
}

.bloc-deux {justify-content: center;}
.ca-transition-grey p {
  max-width: 75%;
  margin-left: auto;
  margin-right: auto;
    font-size: 28px;
    color: white !important;
}
.ca-transition-green {
  position: relative;
  text-align: center;
  aspect-ratio: 1600/1000;
  padding: 30px 20px;
  color: #fff;
  background: #6E202A;
  display: flex;
  flex-direction: column;
  justify-content: space-around;
  align-items: center;
    
}
.ca-transition-green.correct .ca-transition-answer.answer-correct {
  display: flex;
}
.ca-transition-green.error .ca-transition-answer.answer-error {
  display: flex;
}
.ca-transition-green p {
  max-width: 75%;
  margin-left: auto;
  margin-right: auto;
    font-size: 26px;
}

.ca-transition-grey .text-xl {font-size: xxx-large;}
.ca-transition-btn {
}
.ca-transition-btn button {
  margin: 0 10px;
  font-weight: bold;
  font-size: 1.5em;
  padding: 10px 25px;
}
.ca-transition-btn button:hover {
  background: #6E202A;
  color: #fff;
  border: 1px solid #fff;
}
.ca-transition-invest {
  text-align: center;
}
.ca-transition-invest p {
  margin: 2em 0;
}

.ca-transition-invest a 
{
    
margin: auto;
}
.ca-transition-invest img {
  display: block;
  max-width: 100%;
  margin-bottom: 2em;
}

.ca-infos {
  margin: 3em -7px;
  display: flex;
  justify-content: space-between;
    border: 1px solid black;
    border-top: 0;
}

.ca-infos h3 {font-size: 28px;}
@media screen and (max-width:800px) {
  .ca-infos {
    display: block;
  }
}
.ca-infos .ca-infos-box {
  text-align: center;
  padding: 40px 20px;
  display: flex;
  align-items: center;
  justify-content: space-around;
  flex-direction: column;
}
.ca-infos .ca-infos-box h3 {
  text-transform: uppercase;
  margin-bottom: 1em;
  color: #000;
}
.ca-infos-item {
  padding: 0 7px;
}
.ca-infos-assurance {
  flex: 0 0 50%;
}
.ca-infos-assurance .ca-infos-box {
  aspect-ratio: 185/100;
  color: #fff;
  text-align: center;
  background: url("../assets/images/bg-assurance.jpg");
  background-size: cover;
  background-position: center;
}
.ca-infos-assurance .ca-infos-box h3 {
  color: #fff;
}
.ca-infos-assurance .ca-infos-box .icon-arrow {
  margin-left: 10px;
}
.ca-infos-gestion {
  flex: 0 0 50%;
}
@media screen and (max-width:800px) {
  .ca-infos-gestion {
    aspect-ratio: 16/6;
    margin-top: 20px;
  }
}
.ca-infos-gestion .ca-infos-box {
  height: 100%;
  padding: 20px;
    font-size: 1.3em;
}
.ca-infos-gestion .ca-infos-box h3 {
  margin-bottom: 0;
}

.ca-more {margin:40px 0; padding-bottom: 20px; border-bottom: 1px solid #BBB;}

.ca-more h4, .ca-more p {font-size: 28px;}

.ca-more ul li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 1em 0;
}
.ca-more .btn-arrow {
  flex: 0 0 30px;
  margin-left: 20px;
}

.text-xl {
  font-size: 2.5em;
  font-weight: bold;
}/*# sourceMappingURL=style.css.map */

/* Accordeon */

.container {
      display: flex;
      align-items: flex-start;
      width: 100%;
    }
    .content {
      flex: 1;
      padding: 20px;
      width: 30%;
    }
    .thumbnails {
      display: flex;
      width: 70%;
      height: 550px; /* Ajustez selon la hauteur souhaitée */
    }
    .thumbnail {
      flex: 1;
      transition: flex 0.5s ease;
      overflow: hidden;
      display: flex;
      justify-content: center;
      align-items: center;
        margin: 10px;
        
    }
    .thumbnail img {
      height: 100%;
      object-fit: cover; /* Cela recadre l'image sur son centre */
      transition: all 0.5s ease;
        filter: brightness(50%);
    }
    .thumbnail:hover img {
      object-fit: contain; /* Montre l'image entière au survol */
    }
    .thumbnail:hover {
      flex: 2;
    }
    .thumbnail:not(:hover) {
      flex: 1;
    }
    /* Cacher le contenu de départ */
    .content div {
      display: none;
    }

.ca-wrapper > div {width:1440px;margin:auto;padding: 40px;}
.ca-wrapper .large-duo {width:100%;padding: 0 0 10px 0;}

.ca-wrapper .ca-overlay {
    width: 300px;
    padding: 35px 20px 20px 50px;
    box-shadow: 0 20px 20px rgba(0, 0, 0, 0.1);
     position: absolute;
    top: 10%;
    right: 0;
    z-index: 9;
    background: #fff;
    display: none;
    margin: 0;
}

.ca-wrapper .ca-overlay.active {display: block;position: fixed;top: 75%;}

          /* Media queries pour un affichage mobile */
@media only screen and (max-device-width:640px) {
    
    .ca-wrapper > div {width:auto;}


  .container {
    flex-direction: column; /* Empile les éléments en colonne en mode mobile */
  }

  .content {
    width: 100%; /* Ajuster la largeur du contenu en mode mobile */
  }

  .thumbnails {
    width: 100%; /* Ajuster la largeur du conteneur des vignettes */
    flex-direction: column; /* Disposer les vignettes en colonne */
      height: 700px;
  }

  .thumbnail {
    height: auto; /* Ajuster la hauteur pour maintenir le ratio d'aspect */
    width: 100%; /* Les vignettes prennent toute la largeur */
    margin: 10px 0; /* Ajouter de la marge en haut et en bas */
  }

  .thumbnail img {
    width: 100%; /* L'image remplit la largeur de la vignette */
    height: auto; /* Ajuster la hauteur pour maintenir le ratio d'aspect */
    object-fit: cover; /* Recadrer l'image pour couvrir l'espace disponible */
  }
}

.thumbnail.highlight {
  flex: 2; /* Ou tout autre style que vous souhaitez pour la vignette en surbrillance */
}

.thumbnail.highlight img {
        filter: brightness(100%);
}



.thumbnail {
  /* Votre CSS existant pour .thumbnail... */
  position: relative; /* Ajouté pour positionner les éléments enfants */
}

.overlay {
  position: absolute;
  top: 70%; /* Centre verticalement */
  left: 50%; /* Centre horizontalement */
  transform: translate(-50%, -50%); /* Ajuste pour un centrage parfait */
  display: none; /* Cache le texte par défaut */
  color: white; /* Couleur du texte */
  /* Autres styles pour le texte (taille, police, etc.) */
    text-align: center;
}

.thumbnail:not(.highlight)::before,
.thumbnail:not(.highlight)::after {
    content: url('../assets/images/icon-off.png');
    position: absolute;
    top: 47%;
    left: 50%;
    /* Styles supplémentaires pour former la croix */
}

.close-icon {
  position: absolute;
  color: white; /* Couleur de la croix */
  cursor: pointer; /* Change le curseur en pointeur */
  /* Autres styles pour la croix (taille, police, etc.) */
    padding:0;
    display: none !important;
}

.thumbnail.highlight .overlay {
  display: block; /* Affiche le texte au survol */
}

.thumbnail.highlight .close-icon {
  color: white; /* Affiche le texte au survol */
    display: flex !important;
}

.thumbnail .374n {display: none;}

 .green-block {
    background-color: #6E202A; /* Changer le code de couleur pour correspondre à l'image */
    color: white;
    padding: 20px;
    font-family: Arial, sans-serif;
  }

  .green-block h3 {
    text-align: center;
      color: #184e44;
    font-size: 46px;
        font-family: "Gotham";
      color: white;

  }
  .green-block p { text-align: center;      color: #184e44;font-size: 28px;  font-family: "Gotham";padding-bottom: 50px;color: white;

}

.green-block .icon-text {font-size: 0.8em;}

.full-width-text {font-family: "Gotham";color: #1E403A;color: white;font-size: 0.9em;}

@media (min-width: 600px) {
  .icon-container {
    display: flex;flex-wrap: wrap; /* Permet le retour à la ligne des colonnes */
    justify-content: space-between; /* Assure que les colonnes sont bien réparties */
      max-width: 1200px;
      margin: auto;
}
  }
}
.icon-text {
  flex: 1; /* Chaque bloc prendra une part égale de l'espace disponible */
  display: flex;
  flex-direction: column; /* Organiser le contenu en colonne */
  align-items: center; /* Centrer les éléments horizontalement */
  align-content: flex-start; /* Aligner les enfants en haut */
  text-align: center;
  margin: 5px;
  box-sizing: border-box;
            font-family: "Gotham";
      padding: 10px 10px 30px 10px;

}
.icon-text {
    flex: 0 0 48%; /* Définit chaque élément à 48% de la largeur pour avoir 2 colonnes */
    box-sizing: border-box;
    margin-bottom: 20px; /* Espace entre les lignes */
    padding:2%;
}

  .icon {
    /* Insérer les icônes appropriées ici */
    margin-bottom: 10px; /* Espacement entre l'icône et le texte */
    /* Ajouter les styles pour les icônes si nécessaire */
  }

  .text {
    /* Styles supplémentaires pour le texte si nécessaire */
  }

.content div .clock-time {margin: inherit;}
.content div h3 {color: #6E202A}
.content div p {padding-top:20px;font-size: 28px;padding-bottom: 50px;}

.white-vie {min-height: 100px;float:left;width: 120px;}
.white-vie img {max-width:90px;}

h6 {font-size: 20px; font-family: 'Gotham';}

.large-duo {
  display: flex;
height: 150px;}

.half-width {
  width: 50%;
  box-sizing: border-box; /* pour inclure la padding et border dans la largeur de l'élément */
}

/* Ajoutez du style supplémentaire si nécessaire */
.image {
  width: 100%;
  height: auto;
}

.text-block {
  display: flex;
  align-items: center; /* Centre le contenu verticalement */
  justify-content: center; /* Centre le contenu horizontalement */
  text-align: center; /* Assure que le texte est centré s'il passe à la ligne suivante */
  padding: 10px; /* Espacement autour du texte */

}

.large-duo p {color: white;font-size: 28px;padding: 0 40px;}
.large-duo a {color: white;}

/* Optionnel: Ajoutez des media queries pour un design responsive */
@media (max-width: 600px) {
  .large-duo {
    flex-direction: column;
      height: auto;
  }

  .half-width {
    width: 100%;
      font-size: 28px;
      min-height: 200px;
      padding: 30px 0;
  }
    .ca-transition-green {background-size: cover !important;}
    .ca-transition-green p {padding: 30px 0;}
    .ca-transition-grey {display: block;aspect-ratio:auto;}
    
    .ca-more, .mentions-legales {margin: 40px 20px !important;}
    

}


.ca-intro {
    margin: 20px 0;  width: 100% !important; /* new */
        max-width: 1440px;

}

.ca-intro .container {
    display: flex;
    flex-wrap: wrap;
}

.ca-intro .row {
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px;
}

.ca-intro .col {
    flex-basis: 30%;
    text-align: center;
}

.ca-intro h3 {
    font-size: 1.5em;
    font-weight: bold;
    color: #830425;
    text-align: left;
}

.ca-intro p {
    font-size: 1em;
    color: #666;
    text-align: left;
    padding-top: 10px;
}

.ca-intro a {
    font-size: 1em;
    color: #830425;
    text-decoration: none;
    font-weight: lighter;
    text-align: left;
    float: left;
    padding-top: 10px;
}

.ca-intro a.btn {
    
    float: none;
    color: white;
    font-weight: bold;
}

.ca-infos-box .btn {font-weight: bold;font-size: 1em;}

.ca-intro img {
    width: 100%;
    height: auto;
    margin-bottom: 10px;
    border-radius: 5px;
}

.ca-intro-modal {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 9999; /* Augmenter le z-index */
    background: #eef1f4; /* Ajouter un fond semi-transparent si nécessaire */
    padding: 20px;
}

.ca-intro-modal.active {
    display: block;
}

.thumbnail {
  position: relative;
  width: 100%; /* Prend toute la largeur de son conteneur parent */
  padding-bottom: 66.67%; /* 2/3 de la largeur pour obtenir un format 3:2 */
  overflow: hidden;
}

.thumbnail img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover; /* S'assure que l'image couvre entièrement la vignette */
}

.large-btn {margin: auto;color: #6E202A;background: white;font-weight: bold;font-size: 1.1em;}

@media (max-width: 600px) {
  .large-duo {
    flex-direction: column;
      height: auto;
  }

  .half-width {
    width: 100%;
      font-size: 28px;
      min-height: 200px;
      padding: 30px;
  }
    .ca-transition-green {background-size: cover !important;}
    .ca-transition-green p {padding: 30px 0;}
    .ca-transition-grey {display: block;aspect-ratio:auto;}
    
    .ca-more, .mentions-legales {margin: 40px 20px !important;}
    
    .ca-intro .row {display: block; }  
    .ca-intro a {padding-bottom: 20px;}
    .ca-infos-gestion {aspect-ratio:auto;}
    .ca-infos-box .btn {margin: 20px 0;}

}

/* add 10/01/25 */

.ca-intro-modal-body a {float: none !important;} /* NEW */

.ca-intro-modal-body li {list-style: disc;}

.ca-message {
    display: flex;
    align-items: top;
    gap: 20px;
    margin-bottom: 40px;
    padding: 20px 0;
    border-bottom: 1px solid #ddd; /* Ligne de séparation, optionnelle */
}

.ca-message-image {
    flex: 0 0 20%; /* Réserve 30% de l'espace pour l'image */
    text-align: center;
}

.ca-message-image img {
    max-width: 100%;
    height: auto;
    border-radius: 0;

}

.ca-message-text {
    flex: 1;
    color: #333;
    line-height: 1.6;
}

.ca-message-text p {
    margin-bottom: 20px;
    padding-top:0;
}

.ca-message-text strong {
    font-weight: bold;
    color: #000;
}

.with-background {
    position: relative;
    background-color: #fff; /* Fond blanc */
    z-index: 1; /* Texte au-dessus */
}

.with-background::before {
    content: "“";
    position: absolute;
    font-family: Arial, sans-serif; /* Police stylisée */
    font-size: 20em; /* Ajustez selon vos besoins */
    color: rgba(200, 200, 200, 0.3); /* Couleur grise translucide */
    top: -40%; /* Positionnement */
    left: 0; /* Ajuste pour centrer à gauche */
    z-index: -1; /* Derrière le texte */
    white-space: nowrap;
}

.with-background::after {
    content: "”";
    position: absolute;
    font-family: Arial, sans-serif;
    font-size: 20em; /* Même taille que before */
    color: rgba(200, 200, 200, 0.3); /* Même couleur */
    bottom: -60%; /* Positionnement bas */
    right: 0; /* Ajuste pour centrer à droite */
    z-index: -1; /* Derrière le texte */
    white-space: nowrap;
}

/* Mise en page en colonne pour les mobiles */
@media (max-width: 600px) {
    .ca-message {
        flex-direction: column; /* Passe les éléments en colonne */
        align-items: center; /* Centre les éléments */
        text-align: center; /* Centre le texte */
    }

    .ca-message-image {
        flex: 0 0 auto;
        margin-bottom: 20px; /* Espacement entre l'image et le texte */
    }

    .ca-message-text {
        flex: 0 0 auto;
        padding: 0 20px; /* Ajoute un peu de marge autour du texte */
    }

    .with-background::before,
    .with-background::after {
        font-size: 80px; /* Réduit la taille des virgules sur mobile */
        opacity: 0.5; /* Ajuste l'opacité pour plus de lisibilité */
    }
}

