.elementor-1538 .elementor-element.elementor-element-9cd3362{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;border-style:solid;--border-style:solid;border-width:0px 0px 0px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:0px;--border-left-width:0px;border-color:var( --e-global-color-ea58053 );--border-color:var( --e-global-color-ea58053 );--border-radius:0px 0px 0px 0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:95px;--padding-bottom:20px;--padding-left:0px;--padding-right:0px;}.elementor-1538 .elementor-element.elementor-element-cc40d38{text-align:center;}.elementor-1538 .elementor-element.elementor-element-cc40d38 .elementor-heading-title{font-size:58px;text-transform:none;color:#000000;}.elementor-1538 .elementor-element.elementor-element-97abe67{--divider-border-style:solid;--divider-color:var( --e-global-color-1eddfe6 );--divider-border-width:2.5px;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-1538 .elementor-element.elementor-element-97abe67 .elementor-divider-separator{width:10%;margin:0 auto;margin-center:0;}.elementor-1538 .elementor-element.elementor-element-97abe67 .elementor-divider{text-align:center;padding-block-start:15px;padding-block-end:15px;}.elementor-1538 .elementor-element.elementor-element-fbaacde{margin:25px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:justify;color:#000000;}.elementor-1538 .elementor-element.elementor-element-fbaacde a{color:#192A3D;}.elementor-1538 .elementor-element.elementor-element-434cd86{--display:flex;}.elementor-1538 .elementor-element.elementor-element-eb037d6 .gallery-item .gallery-caption{text-align:center;}@media(max-width:1024px){.elementor-1538 .elementor-element.elementor-element-9cd3362{--padding-top:60px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1538 .elementor-element.elementor-element-cc40d38 .elementor-heading-title{font-size:48px;}.elementor-1538 .elementor-element.elementor-element-fbaacde{text-align:center;}}@media(max-width:767px){.elementor-1538 .elementor-element.elementor-element-cc40d38 .elementor-heading-title{font-size:38px;line-height:1.2em;}.elementor-1538 .elementor-element.elementor-element-97abe67{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 10px) 0px;}.elementor-1538 .elementor-element.elementor-element-97abe67 .elementor-divider-separator{width:30%;}.elementor-1538 .elementor-element.elementor-element-fbaacde{margin:-10px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:justify;}.elementor-1538 .elementor-element.elementor-element-eb037d6{margin:-20px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}}/* Start custom CSS for container, class: .elementor-element-434cd86 *//* 🌈 MASONRY AÉRÉ INTELLIGENT */
.elementor-image-gallery {
  column-count: 4;                /* nombre de colonnes */
  column-gap: 15px;               /* espace horizontal entre colonnes */
  padding: 30px 0;                /* espace global haut/bas autour de la galerie */
  margin-top: 30px;
  margin-bottom: 40px;
}

/* ✅ Espace vertical entre les images */
.elementor-image-gallery .gallery-item {
  margin-bottom: 15px !important;              /* espace vertical entre les lignes */
}

/* 🧱 chaque image garde son ratio naturel */
.elementor-image-gallery .gallery-item {
  display: inline-block;
  width: 100%;
  margin-bottom: 35px;            /* ✅ espace vertical plus généreux entre les images */
  break-inside: avoid;
  overflow: hidden;
  border-radius: 16px;
  box-shadow: 0 4px 18px rgba(42,75,124,0.15);
  transition: transform .35s ease, box-shadow .35s ease;
  background: #FED700;            /* ta couleur claire */
  padding: 6px;                   /* petit espace interne pour respirer */
}

/* 📸 image interne */
.elementor-image-gallery .gallery-item img {
  width: 100%;
  height: auto !important;
  display: block;
  border-radius: 12px;
  transition: transform .4s ease, filter .3s ease;
}

/* 🌀 effet au survol */
.elementor-image-gallery .gallery-item:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 24px rgba(42,75,124,0.25);
}
.elementor-image-gallery .gallery-item:hover img {
  transform: scale(1.04);
  filter: brightness(1.05);
}

/* 💎 effet d’apparition fluide */
.elementor-image-gallery .gallery-item {
  opacity: 0;
  transform: translateY(20px);
  animation: fadeInUp .8s ease forwards;
}
.elementor-image-gallery .gallery-item:nth-child(odd) { animation-delay: .1s; }
.elementor-image-gallery .gallery-item:nth-child(even) { animation-delay: .3s; }

@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(30px); }
  to { opacity: 1; transform: translateY(0); }
}

/* 📱 --- RESPONSIVE (tablette et mobile) --- */

/* TABLETTE : 3 colonnes fixes façon Pinterest */
@media (max-width: 1024px) {
  .elementor-image-gallery {
    column-count: 3;              /* ✅ 3 colonnes sur tablette */
    column-gap: 18px;             /* léger espace horizontal */
    padding: 35px 0;              /* respiration verticale */
  }

  .elementor-image-gallery .gallery-item {
    margin-bottom: 22px;          /* espace vertical fluide */
    border-radius: 12px;
    padding: 4px;
    box-shadow: 0 3px 12px rgba(42,75,124,0.15);
    background: #FED700 !important;
    transition: transform .35s ease, box-shadow .35s ease;
  }

  .elementor-image-gallery .gallery-item img {
    border-radius: 10px;
  }
}


/* MOBILE STANDARD (jusqu'à 768px) : 2 colonnes équilibrées */
@media (max-width: 768px) {
  .elementor-image-gallery {
    column-count: 2;              /* 2 colonnes fluides façon Pinterest */
    column-gap: 14px;
    padding: 25px 0;
  }

  .elementor-image-gallery .gallery-item {
    margin-bottom: 18px;
    border-radius: 10px;
    padding: 3px;
    box-shadow: 0 2px 8px rgba(42,75,124,0.15);
    background: #2A4B7C;
  }

  .elementor-image-gallery .gallery-item img {
    border-radius: 8px;
  }
}

/* PETIT MOBILE (jusqu'à 480px) : toujours Pinterest, 2 colonnes */
@media (max-width: 480px) {
  .elementor-image-gallery {
    column-count: 2;              /* ✅ on garde 2 colonnes même sur petit écran */
    column-gap: 10px;             /* léger espace horizontal */
    padding: 20px 0;
  }

  .elementor-image-gallery .gallery-item {
    margin-bottom: 15px;
    border-radius: 8px;
    padding: 3px;
    box-shadow: 0 2px 8px rgba(42,75,124,0.12);
    background: #2A4B7C;
  }

  .elementor-image-gallery .gallery-item img {
    border-radius: 6px;
  }
}/* End custom CSS */