.elementor-5021 .elementor-element.elementor-element-55439e8{--display:flex;--min-height:0px;--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;--padding-top:120px;--padding-bottom:60px;--padding-left:0px;--padding-right:0px;}.elementor-5021 .elementor-element.elementor-element-55439e8:not(.elementor-motion-effects-element-type-background), .elementor-5021 .elementor-element.elementor-element-55439e8 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F0F1F4;}.elementor-5021 .elementor-element.elementor-element-50f54c9 ul.hfe-breadcrumbs li{margin-right:10px;}.elementor-5021 .elementor-element.elementor-element-f7a9922{text-align:center;}.elementor-5021 .elementor-element.elementor-element-f7a9922 .elementor-heading-title{font-family:"Outfit", Sans-serif;font-size:64px;font-weight:700;color:#1665C0;}.elementor-5021 .elementor-element.elementor-element-5733627{text-align:center;}.elementor-5021 .elementor-element.elementor-element-4cadbd4{--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;--padding-top:80px;--padding-bottom:80px;--padding-left:0px;--padding-right:0px;}.elementor-5021 .elementor-element.elementor-element-4cadbd4:not(.elementor-motion-effects-element-type-background), .elementor-5021 .elementor-element.elementor-element-4cadbd4 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F8FAFC;}.elementor-5021 .elementor-element.elementor-element-70f6f86{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-5021 .elementor-element.elementor-element-a8fc16f{--display:flex;}.elementor-5021 .elementor-element.elementor-element-b908ad7{--display:flex;}.elementor-5021 .elementor-element.elementor-element-a190beb{--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;--padding-top:80px;--padding-bottom:80px;--padding-left:0px;--padding-right:0px;}.elementor-5021 .elementor-element.elementor-element-a190beb:not(.elementor-motion-effects-element-type-background), .elementor-5021 .elementor-element.elementor-element-a190beb > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F8FAFC;}.elementor-5021 .elementor-element.elementor-element-a12ff73{text-align:center;}.elementor-5021 .elementor-element.elementor-element-2617cc3{--display:flex;}.elementor-5021 .elementor-element.elementor-element-32cf543{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-5021 .elementor-element.elementor-element-a2b134a.elementor-position-right .elementor-image-box-img{margin-left:15px;}.elementor-5021 .elementor-element.elementor-element-a2b134a.elementor-position-left .elementor-image-box-img{margin-right:15px;}.elementor-5021 .elementor-element.elementor-element-a2b134a.elementor-position-top .elementor-image-box-img{margin-bottom:15px;}.elementor-5021 .elementor-element.elementor-element-a2b134a .elementor-image-box-wrapper .elementor-image-box-img{width:30%;}.elementor-5021 .elementor-element.elementor-element-a2b134a .elementor-image-box-img img{transition-duration:0.3s;}.elementor-5021 .elementor-element.elementor-element-a2b134a .elementor-image-box-title{font-family:"Outfit", Sans-serif;font-weight:700;text-decoration:none;}.elementor-5021 .elementor-element.elementor-element-7d93c1e.elementor-position-right .elementor-image-box-img{margin-left:15px;}.elementor-5021 .elementor-element.elementor-element-7d93c1e.elementor-position-left .elementor-image-box-img{margin-right:15px;}.elementor-5021 .elementor-element.elementor-element-7d93c1e.elementor-position-top .elementor-image-box-img{margin-bottom:15px;}.elementor-5021 .elementor-element.elementor-element-7d93c1e .elementor-image-box-wrapper .elementor-image-box-img{width:30%;}.elementor-5021 .elementor-element.elementor-element-7d93c1e .elementor-image-box-img img{transition-duration:0.3s;}.elementor-5021 .elementor-element.elementor-element-7d93c1e .elementor-image-box-title{font-family:"Outfit", Sans-serif;font-weight:700;text-decoration:none;}.elementor-5021 .elementor-element.elementor-element-4400362{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--padding-top:100px;--padding-bottom:100px;--padding-left:0px;--padding-right:0px;}.elementor-5021 .elementor-element.elementor-element-4400362:not(.elementor-motion-effects-element-type-background), .elementor-5021 .elementor-element.elementor-element-4400362 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F8FAFC;}.elementor-5021 .elementor-element.elementor-element-6acb372{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-5021 .elementor-element.elementor-element-278ca71 .elementor-button{text-decoration:none;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-5021 .elementor-element.elementor-element-70f6f86{--grid-auto-flow:row;}.elementor-5021 .elementor-element.elementor-element-32cf543{--grid-auto-flow:row;}}@media(min-width:768px){.elementor-5021 .elementor-element.elementor-element-4cadbd4{--content-width:1475px;}.elementor-5021 .elementor-element.elementor-element-a190beb{--content-width:1475px;}.elementor-5021 .elementor-element.elementor-element-4400362{--content-width:1475px;}}@media(max-width:767px){.elementor-5021 .elementor-element.elementor-element-70f6f86{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-5021 .elementor-element.elementor-element-32cf543{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-5021 .elementor-element.elementor-element-a2b134a .elementor-image-box-img{margin-bottom:15px;}.elementor-5021 .elementor-element.elementor-element-7d93c1e .elementor-image-box-img{margin-bottom:15px;}}/* Start custom CSS for heading, class: .elementor-element-f7a9922 */.texte-hero{
    color:#F27A24;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-55439e8 *//* 1. L'Espace et le fond pur */
.elementor-5021 .elementor-element.elementor-element-55439e8 {
  background-color: #F8FAFC !important; /* Gris bleuté ultra clair et pur */
  padding: 140px 20px 160px 20px !important; /* Beaucoup d'espace pour respirer */
  position: relative;
  overflow: hidden; /* Empêche les cercles de fond de dépasser */
}

/* 2. DÉCORS GÉOMÉTRIQUES : Cercles géants en arrière-plan (Aplats unis) */
.elementor-5021 .elementor-element.elementor-element-55439e8::before {
  content: '';
  position: absolute;
  top: -20%; left: -10%;
  width: 600px; height: 600px;
  background-color: #1665C0; /* Bleu Espoir uni */
  border-radius: 50%;
  opacity: 0.03; /* Presque invisible, crée une texture d'espace */
  z-index: 0;
  pointer-events: none;
}
.elementor-5021 .elementor-element.elementor-element-55439e8::after {
  content: '';
  position: absolute;
  bottom: -30%; right: -5%;
  width: 800px; height: 800px;
  background-color: #8A9A86; /* Vert Sauge uni */
  border-radius: 50%;
  opacity: 0.05;
  z-index: 0;
  pointer-events: none;
}

/* 3. Le Titre Principal (La première ligne) */
.elementor-5021 .elementor-element.elementor-element-55439e8 .elementor-heading-title {
  color: #1665C0 !important; /* Bleu Uni */
  font-family: 'Outfit', sans-serif;
  font-size: clamp(40px, 6vw, 76px) !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  position: relative;
  z-index: 1;
}

/* =========================================================================
   4. L'EFFET "WAOUH" ÉPURÉ : Texte Orange + Ombre Bleue Nette
========================================================================= */
.elementor-5021 .elementor-element.elementor-element-55439e8 .texte-hero {
  display: inline-block;
  background-color: transparent !important; 
  color: #F27A24 !important; /* Texte orange vif */
  padding: 0; 
  
  /* Marges pour écarter les mots à côté */
  margin: 10px 15px 0 15px; 
  font-size: 1.2em !important; 
  transform: rotate(0deg); 
  
  /* Le texte orange et JUSTE l'ombre bleue, parfaitement lisible */
  text-shadow: 4px 4px 0px #1665C0;
  
  animation: textPopPremium 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
  transition: all 0.4s ease-out;
  cursor: default;
}

/* L'ANIMATION DE SURVOL (Lévitation douce) */
.elementor-5021 .elementor-element.elementor-element-55439e8 .texte-hero:hover {
  transform: translateY(-6px) rotate(0deg) !important; 
  /* Quand le texte se soulève, l'ombre s'écarte un peu plus */
  text-shadow: 8px 8px 0px #1665C0 !important;
}

/* Le moteur de l'animation d'apparition (DROIT) */
@keyframes textPopPremium {
  0% { 
    transform: scale(0.9) translateY(10px) rotate(0deg); 
    opacity: 0; 
    text-shadow: 0px 0px 0px #1665C0; 
  }
  100% { 
    transform: scale(1) translateY(0) rotate(0deg); 
    opacity: 1; 
    text-shadow: 4px 4px 0px #1665C0; 
  }
}

/* 5. Le paragraphe descriptif (Mieux espacé) */
.elementor-5021 .elementor-element.elementor-element-55439e8 .elementor-widget-text-editor {
  position: relative;
  z-index: 1;
  max-width: 800px;
  margin: 48px auto 56px auto !important; /* Plus d'espace avant les boutons */
}
.elementor-5021 .elementor-element.elementor-element-55439e8 .elementor-widget-text-editor p {
  font-family: 'Inter', sans-serif;
  font-size: 22px !important; /* Texte plus grand car c'est l'introduction */
  color: #4B5563;
  line-height: 1.6;
  text-align: center;
}

/* 6. Assurer que les boutons (enfants) restent bien cliquables */
.elementor-5021 .elementor-element.elementor-element-55439e8 .e-child {
  position: relative;
  z-index: 2;
}

/* =========================================
   7. BREADCRUMB (Le fil d'Ariane)
========================================= */
.elementor-5021 .elementor-element.elementor-element-55439e8 .elementor-widget-hfe-breadcrumbs-widget {
  position: relative;
  z-index: 1;
  margin-bottom: 24px !important; /* Espace sous le fil d'ariane */
}

/* Centre le fil d'ariane proprement */
.elementor-5021 .elementor-element.elementor-element-55439e8 .hfe-breadcrumbs {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  flex-wrap: wrap;
  padding: 0;
  margin: 0;
  list-style: none;
}

/* Style premium des textes et liens (Ex: Accueil » Nos actions) */
.elementor-5021 .elementor-element.elementor-element-55439e8 .hfe-breadcrumbs a,
.elementor-5021 .elementor-element.elementor-element-55439e8 .hfe-breadcrumbs span {
  font-family: 'Outfit', sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 2px !important;
  color: #1665C0 !important; /* Bleu nuit Espoir 80 */
  text-decoration: none !important;
  opacity: 0.6; 
  transition: all 0.3s ease;
}

/* Effet Waouh au survol des liens cliquables (Ex: "Accueil") */
.elementor-5021 .elementor-element.elementor-element-55439e8 .hfe-breadcrumbs a:hover span {
  opacity: 1; 
  color: #F27A24 !important; /* Passe au orange ! */
}

/* Ajustement du séparateur (le petit "»") */
.elementor-5021 .elementor-element.elementor-element-55439e8 .hfe-breadcrumbs-separator {
  margin: 0 12px !important;
}
.elementor-5021 .elementor-element.elementor-element-55439e8 .hfe-breadcrumbs-separator span {
  opacity: 0.4 !important; /* Rend le petit chevron un peu plus discret */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4cadbd4 *//* =======================================================
   DESIGN GRILLE WAOUH - 2 CARTES CONTRASTÉES
======================================================= */

/* Espacement entre les deux cartes de la grille */
.elementor-5021 .elementor-element.elementor-element-4cadbd4 .e-grid {
  gap: 40px !important;
}

/* --- BASE COMMUNE DES 2 CARTES --- */
.elementor-5021 .elementor-element.elementor-element-4cadbd4 .e-grid > .e-child {
  border-radius: 32px !important;
  padding: 50px !important;
  transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275) !important;
  display: flex !important;
  flex-direction: column !important;
}
.elementor-5021 .elementor-element.elementor-element-4cadbd4 .e-grid > .e-child:hover {
  transform: translateY(-5px) !important;
}

/* 🔵 NOUVEAU : FORCER LE GRAS À LA LIGNE DANS LES LISTES */
.elementor-5021 .elementor-element.elementor-element-4cadbd4 .e-grid > .e-child ul li strong,
.elementor-5021 .elementor-element.elementor-element-4cadbd4 .e-grid > .e-child ul li b {
  display: block !important;
  font-family: 'Outfit', sans-serif !important;
  font-size: 20px !important;
  margin-bottom: 6px !important;
}

/* =========================================
   CARTE 1 (Gauche) : Blanc / Orange / Bleu
========================================= */
.elementor-5021 .elementor-element.elementor-element-4cadbd4 .e-grid > .e-child:nth-child(1) {
  background: #FFFFFF !important;
  border: 4px solid #F27A24 !important; /* Bordure Orange */
  box-shadow: 16px 16px 0px 0px #1665C0 !important; /* Ombre Bleue */
}
.elementor-5021 .elementor-element.elementor-element-4cadbd4 .e-grid > .e-child:nth-child(1):hover {
  box-shadow: 20px 20px 0px 0px #1665C0 !important;
}
/* Textes */
.elementor-5021 .elementor-element.elementor-element-4cadbd4 .e-grid > .e-child:nth-child(1) .elementor-heading-title {
  font-family: 'Outfit', sans-serif !important;
  font-size: 36px !important;
  font-weight: 800 !important;
  color: #F27A24 !important; /* Titre Orange */
  margin-bottom: 24px !important;
}
.elementor-5021 .elementor-element.elementor-element-4cadbd4 .e-grid > .e-child:nth-child(1) .elementor-widget-text-editor p {
  font-family: 'Inter', sans-serif !important;
  font-size: 18px !important;
  color: #4B5563 !important;
  line-height: 1.7 !important;
}
/* Liste à puces de la Carte 1 */
.elementor-5021 .elementor-element.elementor-element-4cadbd4 .e-grid > .e-child:nth-child(1) ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
.elementor-5021 .elementor-element.elementor-element-4cadbd4 .e-grid > .e-child:nth-child(1) ul li {
  font-family: 'Inter', sans-serif !important;
  font-size: 16px !important;
  color: #4B5563 !important;
  margin-bottom: 24px !important;
  position: relative !important;
  padding-left: 32px !important;
  font-weight: 500 !important;
}
/* Couleur du gras pour la carte 1 */
.elementor-5021 .elementor-element.elementor-element-4cadbd4 .e-grid > .e-child:nth-child(1) ul li strong,
.elementor-5021 .elementor-element.elementor-element-4cadbd4 .e-grid > .e-child:nth-child(1) ul li b {
  color: #1665C0 !important; /* Titre du bailleur/locataire en bleu */
}
.elementor-5021 .elementor-element.elementor-element-4cadbd4 .e-grid > .e-child:nth-child(1) ul li::before {
  content: '\2192' !important;
  position: absolute !important;
  left: 0 !important;
  top: 2px !important;
  color: #F27A24 !important; /* Flèche orange */
  font-weight: 900 !important;
  font-size: 20px !important;
}


/* =========================================
   CARTE 2 (Droite) : Bleu Nuit / Blanc / Orange
========================================= */
.elementor-5021 .elementor-element.elementor-element-4cadbd4 .e-grid > .e-child:nth-child(2) {
  background: #1665C0 !important; /* Fond Bleu */
  border: 4px solid #1665C0 !important; 
  box-shadow: 16px 16px 0px 0px #F27A24 !important; /* Ombre Orange */
}
.elementor-5021 .elementor-element.elementor-element-4cadbd4 .e-grid > .e-child:nth-child(2):hover {
  box-shadow: 20px 20px 0px 0px #F27A24 !important;
}
/* Textes */
.elementor-5021 .elementor-element.elementor-element-4cadbd4 .e-grid > .e-child:nth-child(2) .elementor-heading-title {
  font-family: 'Outfit', sans-serif !important;
  font-size: 36px !important;
  font-weight: 800 !important;
  color: #FFFFFF !important; /* Titre Blanc */
  margin-bottom: 24px !important;
}
.elementor-5021 .elementor-element.elementor-element-4cadbd4 .e-grid > .e-child:nth-child(2) .elementor-widget-text-editor p {
  font-family: 'Inter', sans-serif !important;
  font-size: 18px !important;
  color: #E2E8F0 !important; /* Texte gris très clair */
  line-height: 1.7 !important;
}
/* Liste à puces de la Carte 2 */
.elementor-5021 .elementor-element.elementor-element-4cadbd4 .e-grid > .e-child:nth-child(2) ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
.elementor-5021 .elementor-element.elementor-element-4cadbd4 .e-grid > .e-child:nth-child(2) ul li {
  font-family: 'Inter', sans-serif !important;
  font-size: 16px !important;
  color: #FFFFFF !important; /* Texte liste Blanc */
  margin-bottom: 16px !important;
  position: relative !important;
  padding-left: 32px !important;
  font-weight: 600 !important;
}
.elementor-5021 .elementor-element.elementor-element-4cadbd4 .e-grid > .e-child:nth-child(2) ul li strong,
.elementor-5021 .elementor-element.elementor-element-4cadbd4 .e-grid > .e-child:nth-child(2) ul li b {
  color: #FFFFFF !important; 
}
.elementor-5021 .elementor-element.elementor-element-4cadbd4 .e-grid > .e-child:nth-child(2) ul li::before {
  content: '\2192' !important;
  position: absolute !important;
  left: 0 !important;
  top: 2px !important;
  color: #F27A24 !important; /* Flèche Orange pour contraster sur fond bleu */
  font-weight: 900 !important;
  font-size: 20px !important;
}

/* 🔵 NOUVEAU : BADGE DDETS (Dans la carte bleue) */
.elementor-5021 .elementor-element.elementor-element-4cadbd4 .badge-ddets {
  background: #FFFFFF !important;
  color: #1665C0 !important;
  font-weight: 800 !important;
  font-family: 'Outfit', sans-serif !important;
  padding: 10px 16px !important;
  border-radius: 8px !important;
  font-size: 14px !important;
  display: inline-block !important;
  margin-top: 8px !important;
  box-shadow: 0 4px 10px rgba(0,0,0,0.1) !important;
}


/* =========================================
   ADAPTATION MOBILE
========================================= */
@media (max-width: 991px) {
  .elementor-5021 .elementor-element.elementor-element-4cadbd4 .e-grid > .e-child { padding: 32px !important; }
  .elementor-5021 .elementor-element.elementor-element-4cadbd4 .e-grid > .e-child:nth-child(1) { box-shadow: 8px 8px 0px 0px #1665C0 !important; }
  .elementor-5021 .elementor-element.elementor-element-4cadbd4 .e-grid > .e-child:nth-child(2) { box-shadow: 8px 8px 0px 0px #F27A24 !important; }
  .elementor-5021 .elementor-element.elementor-element-4cadbd4 .e-grid > .e-child .elementor-heading-title { font-size: 32px !important; }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a190beb *//* =======================================================
   DESIGN WAOUH TRAMPOLINE (Pour Grille Elementor)
======================================================= */

/* 1. ESPACEMENT DE LA GRILLE */
.elementor-5021 .elementor-element.elementor-element-a190beb .e-grid {
  gap: 40px !important;
}

/* =========================================
   2. BASE COMMUNE DES CARTES
========================================= */
.elementor-5021 .elementor-element.elementor-element-a190beb .elementor-widget-image-box {
  border-radius: 32px !important;
  transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275) !important;
  cursor: pointer !important;
  position: relative !important; /* Indispensable pour le badge */
  height: 100% !important;
}

.elementor-5021 .elementor-element.elementor-element-a190beb .elementor-widget-container {
  height: 100% !important;
  border-radius: 28px !important;
  overflow: hidden !important; 
}

.elementor-5021 .elementor-element.elementor-element-a190beb .elementor-image-box-wrapper {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}

/* L'IMAGE */
.elementor-5021 .elementor-element.elementor-element-a190beb .elementor-image-box-img {
  width: 100% !important;
  margin: 0 !important;
  border-bottom: 4px solid; /* La couleur de la ligne sera définie plus bas */
  overflow: hidden !important;
}
.elementor-5021 .elementor-element.elementor-element-a190beb .elementor-image-box-img img {
  width: 100% !important;
  height: 260px !important;
  object-fit: cover !important;
  transition: transform 0.5s ease !important;
  display: block !important;
}
.elementor-5021 .elementor-element.elementor-element-a190beb .elementor-widget-image-box:hover .elementor-image-box-img img {
  transform: scale(1.05) !important; /* Zoom au survol */
}

/* LE CONTENU (Textes) */
.elementor-5021 .elementor-element.elementor-element-a190beb .elementor-image-box-content {
  padding: 40px !important;
  text-align: left !important;
  display: flex !important;
  flex-direction: column !important;
  flex-grow: 1 !important;
}
.elementor-5021 .elementor-element.elementor-element-a190beb .elementor-image-box-title {
  font-family: 'Outfit', sans-serif !important;
  font-size: 32px !important;
  font-weight: 800 !important;
  margin-bottom: 16px !important;
}
.elementor-5021 .elementor-element.elementor-element-a190beb .elementor-image-box-description {
  font-family: 'Inter', sans-serif !important;
  font-size: 18px !important;
  line-height: 1.7 !important;
  margin-bottom: 40px !important;
  flex-grow: 1 !important;
}

/* =========================================
   3. STYLES CARTE GAUCHE (BLANCHE / ORANGE)
========================================= */
.elementor-5021 .elementor-element.elementor-element-a190beb .elementor-widget-image-box:nth-child(1) {
  background: #FFFFFF !important;
  border: 4px solid #F27A24 !important; /* Bordure Orange */
  box-shadow: 16px 16px 0px 0px #1665C0 !important; /* Ombre Bleue */
}
.elementor-5021 .elementor-element.elementor-element-a190beb .elementor-widget-image-box:nth-child(1):hover {
  transform: translateY(-10px) !important; /* La carte se soulève */
  box-shadow: 24px 24px 0px 0px #1665C0 !important;
}
.elementor-5021 .elementor-element.elementor-element-a190beb .elementor-widget-image-box:nth-child(1) .elementor-image-box-img {
  border-bottom-color: #F27A24 !important;
}
.elementor-5021 .elementor-element.elementor-element-a190beb .elementor-widget-image-box:nth-child(1) .elementor-image-box-title {
  color: #1665C0 !important; /* Titre bleu */
}
.elementor-5021 .elementor-element.elementor-element-a190beb .elementor-widget-image-box:nth-child(1) .elementor-image-box-description {
  color: #4B5563 !important;
}

/* =========================================
   4. STYLES CARTE DROITE (BLEUE NUIT)
========================================= */
.elementor-5021 .elementor-element.elementor-element-a190beb .elementor-widget-image-box:nth-child(2) {
  background: #1665C0 !important; /* Fond Bleu */
  border: 4px solid #1665C0 !important; 
  box-shadow: 16px 16px 0px 0px #F27A24 !important; /* Ombre Orange */
}
.elementor-5021 .elementor-element.elementor-element-a190beb .elementor-widget-image-box:nth-child(2):hover {
  transform: translateY(-10px) !important;
  box-shadow: 24px 24px 0px 0px #F27A24 !important;
}
.elementor-5021 .elementor-element.elementor-element-a190beb .elementor-widget-image-box:nth-child(2) .elementor-image-box-img {
  border-bottom-color: #1665C0 !important;
}
.elementor-5021 .elementor-element.elementor-element-a190beb .elementor-widget-image-box:nth-child(2) .elementor-image-box-title {
  color: #FFFFFF !important; /* Titre blanc */
}
.elementor-5021 .elementor-element.elementor-element-a190beb .elementor-widget-image-box:nth-child(2) .elementor-image-box-description {
  color: #E2E8F0 !important;
}

/* =========================================
   5. LE BADGE DE VILLE DYNAMIQUE 📍
========================================= */
.elementor-5021 .elementor-element.elementor-element-a190beb .ville-maison {
  position: absolute !important;
  top: 20px !important;
  right: 20px !important;
  background: #1665C0 !important; 
  color: #FFFFFF !important;
  padding: 10px 20px !important;
  border-radius: 100px !important;
  font-weight: 800 !important;
  font-family: 'Outfit', sans-serif !important;
  font-size: 14px !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  box-shadow: 0 4px 10px rgba(0,0,0,0.25) !important;
  z-index: 10 !important;
  line-height: 1 !important;
  transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275) !important;
}

.elementor-5021 .elementor-element.elementor-element-a190beb .ville-maison::before {
  content: '📍 ';
  margin-right: 2px;
}

/* Le badge de la carte bleue (droite) est orange par défaut */
.elementor-5021 .elementor-element.elementor-element-a190beb .elementor-widget-image-box:nth-child(2) .ville-maison {
  background: #F27A24 !important; 
}

/* 💥 Animation du badge au survol */
.elementor-5021 .elementor-element.elementor-element-a190beb .elementor-widget-image-box:hover .ville-maison {
  transform: translateY(-5px) scale(1.08) !important;
  background: #F27A24 !important;
  box-shadow: 0 10px 25px rgba(242, 122, 36, 0.5) !important;
  color: #FFFFFF !important;
}
/* Le badge de la carte bleue devient blanc au survol pour bien contraster */
.elementor-5021 .elementor-element.elementor-element-a190beb .elementor-widget-image-box:nth-child(2):hover .ville-maison {
  background: #FFFFFF !important;
  color: #F27A24 !important;
  box-shadow: 0 10px 25px rgba(255, 255, 255, 0.4) !important;
}

/* =========================================
   6. LE BOUTON DÉCOUVRIR MAGIQUE
========================================= */
.elementor-5021 .elementor-element.elementor-element-a190beb .elementor-image-box-content::after {
  content: 'DÉCOUVRIR \2192' !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #F27A24 !important;
  color: #FFFFFF !important;
  padding: 16px 36px !important;
  border-radius: 100px !important;
  font-family: 'Outfit', sans-serif !important;
  font-weight: 800 !important;
  font-size: 16px !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  transition: all 0.3s ease !important;
  align-self: flex-start !important; /* Le bouton s'adapte à son texte */
  margin-top: auto !important; /* Pousse toujours le bouton tout en bas */
}

/* Bouton pour la carte bleue (droite) */
.elementor-5021 .elementor-element.elementor-element-a190beb .elementor-widget-image-box:nth-child(2) .elementor-image-box-content::after {
  background: #FFFFFF !important;
  color: #1665C0 !important;
}

/* Animation du bouton au survol : la petite flèche qui avance ! */
.elementor-5021 .elementor-element.elementor-element-a190beb .elementor-widget-image-box:hover .elementor-image-box-content::after {
  transform: translateX(10px) !important; 
}

/* =========================================
   7. ADAPTATION MOBILE
========================================= */
@media (max-width: 991px) {
  .elementor-5021 .elementor-element.elementor-element-a190beb .elementor-image-box-content { padding: 32px !important; }
  .elementor-5021 .elementor-element.elementor-element-a190beb .elementor-widget-image-box:nth-child(1) { box-shadow: 8px 8px 0px 0px #1665C0 !important; }
  .elementor-5021 .elementor-element.elementor-element-a190beb .elementor-widget-image-box:nth-child(1):hover { box-shadow: 12px 12px 0px 0px #1665C0 !important; }
  .elementor-5021 .elementor-element.elementor-element-a190beb .elementor-widget-image-box:nth-child(2) { box-shadow: 8px 8px 0px 0px #F27A24 !important; }
  .elementor-5021 .elementor-element.elementor-element-a190beb .elementor-widget-image-box:nth-child(2):hover { box-shadow: 12px 12px 0px 0px #F27A24 !important; }
  .elementor-5021 .elementor-element.elementor-element-a190beb .elementor-image-box-title { font-size: 28px !important; }
}

/* =========================================
   8. STYLE DU TITRE "DÉCOUVREZ NOS RÉSIDENCES"
========================================= */
.elementor-5021 .elementor-element.elementor-element-a190beb .elementor-widget-heading .elementor-heading-title {
  text-align: center !important;
  font-family: 'Outfit', sans-serif !important;
  font-size: 40px !important;
  font-weight: 800 !important;
  color: #1665C0 !important; /* Bleu nuit Espoir 80 */
  margin-bottom: 40px !important; /* Espace entre le titre et les cartes */
}

/* Réduction de la taille du titre sur mobile */
@media (max-width: 768px) {
  .elementor-5021 .elementor-element.elementor-element-a190beb .elementor-widget-heading .elementor-heading-title {
    font-size: 32px !important;
    margin-bottom: 30px !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6acb372 *//* À COLLER DANS LE CUSTOM CSS DU CONTENEUR DU CTA */

/* 1. Le grand bandeau Bleu de base */
.elementor-5021 .elementor-element.elementor-element-6acb372 {
  background-color: #1665C0 !important; /* Fond Bleu Uni */
  border-radius: 24px;
  padding: 80px 40px !important;
  box-shadow: 16px 16px 0px 0px #F27A24; /* La double carte reste ! */
  
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  border: 1px solid #1665C0;
  
  /* CRUCIAL : Masque les cercles géants quand ils sont "hors" du bloc */
  overflow: hidden; 
  position: relative;
  z-index: 1;
  transition: all 0.4s ease;
}

/* --- L'EFFET "WAOUH" : Les cercles cachés à l'extérieur --- */
/* 1. Le Premier Cercle Orange caché en haut à gauche */
.elementor-5021 .elementor-element.elementor-element-6acb372::before {
  content: '';
  position: absolute;
  width: 550px; height: 550px;
  background-color: #F27A24; /* Aplat Orange Uni */
  border-radius: 50%;
  top: -600px; /* Totalement caché en haut */
  left: -200px;
  /* Animation élastique (effet de rebond) */
  transition: all 0.7s cubic-bezier(0.175, 0.885, 0.32, 1.275); 
  z-index: 0;
  pointer-events: none; /* Empêche de bloquer la souris */
}

/* 2. Le Deuxième Cercle Orange (Anciennement Vert) caché en bas à droite */
.elementor-5021 .elementor-element.elementor-element-6acb372::after {
  content: '';
  position: absolute;
  width: 650px; height: 650px;
  background-color: #F27A24; /* Aplat Orange Uni */
  border-radius: 50%;
  bottom: -700px; /* Totalement caché en bas */
  right: -250px;
  transition: all 0.7s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  transition-delay: 0.1s; /* Part une fraction de seconde plus tard ! */
  z-index: 0;
  pointer-events: none;
}

/* --- LE DÉCLENCHEUR DE L'ANIMATION AU SURVOL --- */
.elementor-5021 .elementor-element.elementor-element-6acb372:hover {
  transform: translate(-4px, -4px); /* Le bloc entier frémit */
  box-shadow: 20px 20px 0px 0px #F27A24; 
}

/* Les deux cercles orange JAILLISSENT vers l'intérieur ! */
.elementor-5021 .elementor-element.elementor-element-6acb372:hover::before {
  top: -150px; 
  left: -100px;
}
.elementor-5021 .elementor-element.elementor-element-6acb372:hover::after {
  bottom: -200px; 
  right: -150px;
}

/* 2. Style du grand Titre (Au-dessus de l'animation) */
.elementor-5021 .elementor-element.elementor-element-6acb372 .elementor-heading-title {
  color: #FFFFFF !important; 
  font-family: 'Outfit', sans-serif;
  font-size: clamp(36px, 5vw, 56px) !important;
  font-weight: 800 !important;
  margin-bottom: 24px !important;
  position: relative;
  z-index: 2; /* CRUCIAL : Garde le texte au-dessus des cercles */
}

/* 3. Style du Texte descriptif */
.elementor-5021 .elementor-element.elementor-element-6acb372 .elementor-widget-text-editor {
  color: #FFFFFF !important;
  font-family: 'Inter', sans-serif;
  font-size: 20px !important;
  line-height: 1.6;
  max-width: 650px;
  margin: 0 auto;
  opacity: 0.95;
  position: relative;
  z-index: 2; /* CRUCIAL : Garde le texte au-dessus des cercles */
}

.elementor-5021 .elementor-element.elementor-element-6acb372 .elementor-widget-text-editor p {
  margin-bottom: 40px !important; 
}

/* 4. Le Bouton "Faire un don" (Blanc par défaut pour mieux contraster) */
.elementor-5021 .elementor-element.elementor-element-6acb372 .elementor-button {
  background-color: #FFFFFF !important; /* Bouton Blanc */
  color: #1665C0 !important; /* Texte Bleu */
  font-family: 'Outfit', sans-serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  padding: 20px 40px !important;
  border-radius: 50px !important; 
  border: 2px solid #FFFFFF !important;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 2; /* Reste par dessus l'animation */
}

/* Le bouton s'inverse au survol de la souris */
.elementor-5021 .elementor-element.elementor-element-6acb372 .elementor-button:hover {
  background-color: #F27A24 !important; 
  color: #FFFFFF !important; 
  border-color: #F27A24 !important;
  transform: translateY(-5px) !important; 
}

/* --- ADAPTATION MOBILE --- */
@media (max-width: 767px) {
  .elementor-5021 .elementor-element.elementor-element-6acb372 {
    padding: 60px 20px !important;
    box-shadow: 8px 8px 0px 0px #F27A24; /* Ombre plus petite sur téléphone */
  }
}/* End custom CSS */