/* post-32 — CSS complémentaire (effets non disponibles nativement dans Elementor) */
.elementor-32 .elementor-widget-loop-grid .elementor-loop-container{gap:24px !important;}
.elementor-32 .elementor-widget-loop-grid .e-loop-item{position:relative !important;
  overflow:hidden !important;
  isolation:isolate !important;
  border-radius:18px !important;
  background:#fff !important;
  border:1px solid rgba(17,90,101,.08) !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,.95) inset,
    0 12px 30px rgba(11,60,69,.06),
    0 28px 70px rgba(11,60,69,.05) !important;
  transition:
    transform .45s cubic-bezier(.19,1,.22,1),
    box-shadow .45s cubic-bezier(.19,1,.22,1),
    border-color .35s ease !important;}
.elementor-32 .elementor-widget-loop-grid .e-loop-item::before{content:'' !important;
  position:absolute !important;
  width:170px !important;
  height:170px !important;
  border-radius:50% !important;
  top:-98px !important;
  right:-98px !important;
  border:1.5px solid rgba(168,205,211,.18) !important;
  background:radial-gradient(circle,rgba(168,205,211,.12),transparent 68%) !important;
  z-index:1 !important;
  pointer-events:none !important;
  transition:all .45s cubic-bezier(.19,1,.22,1) !important;left:auto!important;}
.elementor-32 .elementor-widget-loop-grid .e-loop-item:hover{transform:translateY(-7px) !important;
  border-color:rgba(17,90,101,.20) !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,1) inset,
    0 24px 52px rgba(11,60,69,.13),
    0 48px 100px rgba(11,60,69,.08) !important;}
.elementor-32 .elementor-widget-loop-grid .e-loop-item:hover::before{transform:scale(1.15) rotate(8deg) !important;
  border-color:rgba(17,90,101,.28) !important;}
.elementor-32 .elementor-widget-loop-grid .e-loop-item .e-con-inner{padding:0 !important;
  max-width:100% !important;}
.elementor-32 .elementor-widget-loop-grid .elementor-image-box-wrapper{position:relative !important;
  overflow:hidden !important;
  border-radius:18px !important;
  background:#fff !important;}
.elementor-32 .elementor-widget-loop-grid .elementor-image-box-img{margin:0 !important;
  width:100% !important;
  overflow:hidden !important;
  border-radius:18px 18px 0 0 !important;
  background:#EAF1F2 !important;}
.elementor-32 .elementor-widget-loop-grid .elementor-image-box-img img{width:100% !important;
  height:360px !important;
  object-fit:cover !important;
  object-position:center !important;
  transition:
    transform .8s cubic-bezier(.19,1,.22,1),
    filter .35s ease !important;
  filter:saturate(106%) contrast(103%) brightness(.96) !important;}
.elementor-32 .elementor-widget-loop-grid .e-loop-item:hover .elementor-image-box-img img{transform:scale(1.08) !important;
  filter:saturate(112%) contrast(105%) brightness(1) !important;}
.elementor-32 .elementor-widget-loop-grid .elementor-image-box-wrapper:not(:has(.elementor-image-box-img)){min-height:260px !important;
  display:flex !important;
  align-items:flex-end !important;
  background:
    radial-gradient(circle at 90% 0%,rgba(168,205,211,.22),transparent 34%),
    linear-gradient(135deg,#0B3C45,#072830) !important;}
.elementor-32 .elementor-widget-loop-grid .elementor-image-box-content{position:relative !important;
  z-index:2 !important;
  padding:26px 26px 28px !important;
  background:
    linear-gradient(180deg,#fff,#FAFAF8) !important;
  min-height:120px !important;}
.elementor-32 .elementor-widget-loop-grid .elementor-image-box-title{font-family:'Lexend',sans-serif !important;
  font-size:clamp(24px,2vw,32px) !important;
  font-weight:700 !important;
  line-height:1.08 !important;
  letter-spacing:-.3px !important;
  color:#0E1C1F !important;
  margin:0 0 10px !important;}
.elementor-32 .elementor-widget-loop-grid .elementor-image-box-description,.elementor-32 .elementor-widget-loop-grid .elementor-image-box-description span{font-family:'Jost',sans-serif !important;
  font-size:10px !important;
  font-weight:700 !important;
  letter-spacing:2px !important;
  text-transform:uppercase !important;
  color:#115A65 !important;}
.elementor-32 .elementor-widget-loop-grid .elementor-image-box-content::after{content:'' !important;
  display:block !important;
  width:52px !important;
  height:2px !important;
  margin-top:16px !important;
  background:linear-gradient(90deg,#115A65,#6AAAB4,rgba(106,170,180,0)) !important;}
.elementor-32 .elementor-widget-loop-grid .elementor-image-box-wrapper:not(:has(.elementor-image-box-img)) .elementor-image-box-content{background:transparent !important;}
.elementor-32 .elementor-widget-loop-grid .elementor-image-box-wrapper:not(:has(.elementor-image-box-img)) .elementor-image-box-title{color:#fff !important;}
.elementor-32 .elementor-widget-loop-grid .elementor-image-box-wrapper:not(:has(.elementor-image-box-img)) .elementor-image-box-content::after{background:linear-gradient(90deg,#A8CDD3,rgba(168,205,211,0)) !important;}
.elementor-32 .vm-hero-label .elementor-heading-title::before{content:'';display:block;width:28px;height:1px;background:#A8CDD3}
@media(max-width:1024px){.elementor-32 .elementor-widget-loop-grid .elementor-loop-container{gap:18px !important;}.elementor-32 .elementor-widget-loop-grid .elementor-image-box-img img{height:320px !important;}}
@media(max-width:767px){.elementor-32 .elementor-widget-loop-grid .elementor-loop-container{gap:20px !important;}.elementor-32 .elementor-widget-loop-grid .elementor-image-box-img img{height:300px !important;}.elementor-32 .elementor-widget-loop-grid .elementor-image-box-content{padding:22px 22px 24px !important;}.elementor-32 .elementor-widget-loop-grid .elementor-image-box-title{font-size:26px !important;}}
.elementor .elementor-element.elementor-element-4944051::before{background-image:linear-gradient(to top, rgba(7, 40, 48, 0.95) 0%, rgba(7, 40, 48, 0.45) 50%, rgba(0, 0, 0, 0) 100%)!important;background-color:transparent!important}
.elementor .elementor-element.elementor-element-7f2984f .elementor-heading-title{display:flex;align-items:center;gap:12px;position:relative}
