.elementor-18010 .elementor-element.elementor-element-ad5dbd3{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:-1px;--margin-left:0px;--margin-right:0px;--padding-top:200px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-18010 .elementor-element.elementor-element-ad5dbd3:not(.elementor-motion-effects-element-type-background), .elementor-18010 .elementor-element.elementor-element-ad5dbd3 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-18010 .elementor-element.elementor-element-3c30f4d{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;border-style:solid;--border-style:solid;border-width:0px 0px 1px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:1px;--border-left-width:0px;border-color:#FFFFFF1A;--border-color:#FFFFFF1A;}.elementor-18010 .elementor-element.elementor-element-daaaba3{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:90px 15px 25px 15px;text-align:center;}.elementor-18010 .elementor-element.elementor-element-daaaba3 .elementor-heading-title{font-family:"Thunder", Sans-serif;font-size:116px;text-transform:uppercase;line-height:100px;color:var( --e-global-color-text );}.elementor-18010 .elementor-element.elementor-element-f93a8a3{padding:0px 0px 25px 0px;}.elementor-18010 .elementor-element.elementor-element-f93a8a3.elementor-element{--align-self:center;}.elementor-18010 .elementor-element.elementor-element-1fdfc59{padding:15px 15px 15px 15px;}.elementor-18010 .elementor-element.elementor-element-3ddf5fe{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:-1px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:150px;--padding-left:15px;--padding-right:15px;}.elementor-18010 .elementor-element.elementor-element-3ddf5fe:not(.elementor-motion-effects-element-type-background), .elementor-18010 .elementor-element.elementor-element-3ddf5fe > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-18010 .elementor-element.elementor-element-851b3da{--grid-columns:2;--grid-row-gap:0px;--grid-column-gap:0px;}.elementor-18010 .elementor-element.elementor-element-851b3da .elementor-loop-container{grid-auto-rows:1fr;}.elementor-18010 .elementor-element.elementor-element-851b3da .e-loop-item > .elementor-section, .elementor-18010 .elementor-element.elementor-element-851b3da .e-loop-item > .elementor-section > .elementor-container, .elementor-18010 .elementor-element.elementor-element-851b3da .e-loop-item > .e-con, .elementor-18010 .elementor-element.elementor-element-851b3da .e-loop-item .elementor-section-wrap  > .e-con{height:100%;}@media(min-width:768px){.elementor-18010 .elementor-element.elementor-element-3ddf5fe{--content-width:1820px;}}@media(max-width:1366px){.elementor-18010 .elementor-element.elementor-element-3ddf5fe{--margin-top:0px;--margin-bottom:-1px;--margin-left:0px;--margin-right:0px;}}@media(max-width:1024px){.elementor-18010 .elementor-element.elementor-element-3ddf5fe{--margin-top:0px;--margin-bottom:-1px;--margin-left:0px;--margin-right:0px;}.elementor-18010 .elementor-element.elementor-element-851b3da{--grid-columns:2;}}@media(max-width:880px){.elementor-18010 .elementor-element.elementor-element-ad5dbd3{--margin-top:0px;--margin-bottom:-1px;--margin-left:0px;--margin-right:0px;}.elementor-18010 .elementor-element.elementor-element-daaaba3{padding:60px 0px 20px 0px;}.elementor-18010 .elementor-element.elementor-element-3ddf5fe{--margin-top:0px;--margin-bottom:-1px;--margin-left:0px;--margin-right:0px;}}@media(max-width:767px){.elementor-18010 .elementor-element.elementor-element-daaaba3{padding:50px 0px 25px 0px;}.elementor-18010 .elementor-element.elementor-element-daaaba3 .elementor-heading-title{font-size:52px;line-height:1em;}.elementor-18010 .elementor-element.elementor-element-3ddf5fe{--padding-top:0px;--padding-bottom:100px;--padding-left:15px;--padding-right:15px;}.elementor-18010 .elementor-element.elementor-element-851b3da{--grid-columns:1;}}@media (min-width: 1400px) and (max-width: 1919px) {
  .rd-inner-pg-title h1 {
        font-size: 385px !important;
    }
}
/* Start custom CSS for loop-grid, class: .elementor-element-851b3da *//* ===============================
   RÉALISATIONS — Grid & Pattern
   =============================== */

/* Grille 4 colonnes (25% chacune) */
#gridRea .elementor-loop-container{
  display:grid !important;
  grid-template-columns:repeat(4,1fr) !important;
  gap:clamp(12px,2vw,24px);
  grid-auto-flow:dense;
}
#gridRea .e-loop-item{ margin:0 !important; }

/* Pattern : 50/50 → 50/25/25 → 100% */
#gridRea .e-loop-item:nth-of-type(6n+1),
#gridRea .e-loop-item:nth-of-type(6n+2){ grid-column:span 2 !important; --ratio:16/10; }
#gridRea .e-loop-item:nth-of-type(6n+3){ grid-column:span 2 !important; --ratio:16/10; }
#gridRea .e-loop-item:nth-of-type(6n+4),
#gridRea .e-loop-item:nth-of-type(6n+5){ grid-column:span 1 !important; --ratio:1/1; }
#gridRea .e-loop-item:nth-of-type(6n)  { grid-column:span 4 !important; --ratio:21/9; }

/* ===============================
   Carte: image avec ratio + texte dessous (PAS d’overlay)
   =============================== */

/* Ton conteneur racine porte la classe .card (cf. screenshot) */
#gridRea .e-loop-item .card{
  width:100%;
}

/* Bloc image = widget Image directement dans .card */
#gridRea .e-loop-item .card > .elementor-widget-image .elementor-widget-container{
  width:100%;
  aspect-ratio:var(--ratio,16/10);   /* fixe la hauteur de la zone image */
  overflow:hidden;
  border-radius:16px;                 /* optionnel */
  display:block;
}
#gridRea .e-loop-item .card > .elementor-widget-image img{
  width:100% !important;
  height:100% !important;
  object-fit:cover;
  display:block;
}

/* Bloc texte = le conteneur qui suit l’image (dans ta structure) */
#gridRea .e-loop-item .card > .elementor-container{
  margin-top:12px;                    /* espace entre image et texte */
}

/* Nettoyer les marges internes pour éviter les gros blancs */
#gridRea .e-loop-item .card > .elementor-container .elementor-widget{ margin:0 !important; }
#gridRea .e-loop-item .card h1,
#gridRea .e-loop-item .card h2,
#gridRea .e-loop-item .card h3,
#gridRea .e-loop-item .card h4,
#gridRea .e-loop-item .card p{ margin:0 !important; }
#gridRea .e-loop-item .card p + p{ margin-top:4px !important; } /* petit rythme */

/* (Option) léger hover sur l’image */
#gridRea .e-loop-item .card > .elementor-widget-image img{
  transition:transform .45s ease;
}
#gridRea .e-loop-item .card:hover > .elementor-widget-image img{
  transform:scale(1.03);
}

/* ===============================
   Responsive
   =============================== */
@media (max-width:1024px){
  #gridRea .elementor-loop-container{ grid-template-columns:repeat(2,1fr) !important; }
  #gridRea .e-loop-item{ grid-column:span 1 !important; --ratio:16/10; }
  #gridRea .e-loop-item:nth-of-type(6n){ grid-column:span 2 !important; --ratio:21/9; }
}
@media (max-width:767px){
  #gridRea .elementor-loop-container{ grid-template-columns:1fr !important; }
  #gridRea .e-loop-item{ grid-column:1 / -1 !important; --ratio:16/10; }
}/* End custom CSS */
/* Start custom CSS *//* Bulle curseur */
.cursor-bubble{
  position: fixed; left:0; top:0; width:140px; height:140px;
  border-radius:50%;
  color:#000000;
  background:#fff; display:flex; align-items:center; justify-content:center;
  font-family: "BDO Grotesk Regular", Sans-serif;
 font-size: 14px;
  letter-spacing:.02em; text-transform:uppercase;
  pointer-events:none; transform:translate(-50%,-50%) scale(0); opacity:0;
  transition:transform .18s ease,opacity .18s ease; z-index:9999;
}
.cursor-bubble.is-active{ transform:translate(-50%,-50%) scale(1); opacity:1; }
/* Masque le curseur natif au survol des vignettes */
.fx-cursor:hover{ cursor:none; }
/* Mobile : pas de bulle */
@media (hover:none){ .cursor-bubble{ display:none; } }/* End custom CSS */