.elementor-4675 .elementor-element.elementor-element-e575b0f{--display:flex;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-4675 .elementor-element.elementor-element-443ffe6{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;z-index:0;columns:1;text-align:center;font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-4675 .elementor-element.elementor-element-2a31642{--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;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-4675 .elementor-element.elementor-element-ae33318{--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;}.elementor-4675 .elementor-element.elementor-element-b2643f2.elementor-element{--align-self:center;}.elementor-4675 .elementor-element.elementor-element-884a232{--display:grid;--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(2, 1fr);--grid-auto-flow:row;}@media(max-width:1024px){.elementor-4675 .elementor-element.elementor-element-884a232{--grid-auto-flow:row;}}@media(max-width:767px){.elementor-4675 .elementor-element.elementor-element-884a232{--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(2, 1fr);--grid-auto-flow:row;}}/* Start custom CSS for html, class: .elementor-element-b2643f2 *//* Polices de caractères - Vous pouvez les ajuster dans Elementor ou ici */
body {
  font-family: 'Montserrat', sans-serif; /* Suggestion de police moderne et professionnelle */
}

.professional-pricing-section {
  background-color: #FFFFFF; /* Beige Rosé Doux - Fond de section */
  padding: 60px 20px;
  display: flex;
  justify-content: center;
  align-items: flex-start; /* Aligne les cartes en haut si elles ont des hauteurs différentes */
}

.professional-pricing-container {
  display: flex;
  flex-wrap: wrap; /* Permet aux cartes de passer à la ligne sur petits écrans */
  gap: 30px; /* Espace entre les cartes */
  justify-content: center;
  max-width: 900px; /* Limite la largeur maximale du conteneur */
  width: 100%;
}

.professional-pricing-card {
  background-color: #FAF6ED; /* Beige Clair/Crème - Fond des cartes */
  border: 1px solid #E5B840; /* Bordure Or Principal subtile */
  border-radius: 12px;
  padding: 30px;
  text-align: center;
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);
  width: calc(50% - 15px); /* Deux cartes par ligne, avec l'espace du gap */
  min-width: 300px; /* Largeur minimale pour une carte */
  display: flex;
  flex-direction: column;
  justify-content: space-between; /* Assure que le bouton est en bas si les listes de features varient */
  position: relative; /* Pour le positionnement du badge */
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.professional-pricing-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.12);
}

/* Style spécifique pour la carte Premium */
.professional-pricing-card.premium-plan {
  border-width: 2px; /* Bordure plus épaisse pour la carte premium */
  border-color: #E5B840; /* Or Principal */
}

.recommended-badge {
  background-color: #E5B840; /* Or Principal */
  color: #4A4A4A; /* Gris Foncé pour le texte du badge */
  font-size: 12px;
  font-weight: bold;
  padding: 6px 12px;
  border-radius: 15px 0 15px 0; /* Forme de coin stylée */
  position: absolute;
  top: -1px; /* Ajustez pour un positionnement parfait sur la bordure */
  right: -1px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.professional-pricing-card-header {
  margin-bottom: 25px;
}

.plan-name {
  font-size: 26px;
  font-weight: 700;
  color: #4A4A4A; /* Gris Foncé */
  margin-bottom: 10px;
}

/* Modification ici pour la couleur du texte de la commission */
.plan-price.commission-details {
  font-size: 18px; /* Ajustez la taille si nécessaire */
  font-weight: 600; /* Ajustez le poids si nécessaire */
  color: #bfa046; /* Nouvelle couleur demandée */
  display: block;
  line-height: 1.4; /* Améliore la lisibilité si le texte est sur plusieurs lignes */
}

.features-list {
  list-style: none;
  padding: 0;
  margin: 0 0 30px 0;
  text-align: left;
  flex-grow: 1; /* Permet à la liste de prendre l'espace disponible */
}

.features-list li {
  font-size: 15px;
  color: #4A4A4A; /* Gris Foncé */
  margin-bottom: 12px;
  display: flex;
  align-items: center;
}

.features-list.checkmark { /* Correction: ajout du point pour la classe checkmark */
  color: #E5B840; /* Or Principal pour la coche */
  margin-right: 10px;
  font-weight: bold; /* Rend la coche plus visible */
}

.professional-contact-btn {
  background-color: #E5B840; /* Or Principal */
  color: #4A4A4A; /* Gris Foncé pour le texte du bouton */
  padding: 14px 28px;
  border-radius: 8px;
  text-decoration: none;
  font-size: 16px;
  font-weight: 600;
  display: inline-block;
  transition: background-color 0.3s ease, color 0.3s ease;
  border: 1px solid transparent;
}

.professional-contact-btn:hover {
  background-color: #d4a737; /* Or Principal légèrement plus foncé */
  color: #FFFFFF; /* Texte blanc au survol pour contraste */
  border-color: #d4a737;
}

/* Media Query pour la responsivité sur les petits écrans */
@media (max-width: 768px) {
.professional-pricing-container {
    flex-direction: column; /* Les cartes s'empilent verticalement */
    align-items: center; /* Centre les cartes empilées */
  }
.professional-pricing-card {
    width: 100%; /* Les cartes prennent toute la largeur disponible */
    max-width: 450px; /* Limite la largeur sur mobile pour une meilleure lisibilité */
    margin-bottom: 30px; /* Espace entre les cartes empilées */
  }
.professional-pricing-card:last-child {
    margin-bottom: 0;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-93eb7ea *//* Polices (Assurez-vous que Montserrat est chargée sur votre site) */
body {
  font-family: 'Montserrat', sans-serif;
}

.custom-services-section {
  background-color: #F8F0E9; /* Beige Rosé Doux - Fond de section */
  padding: 50px 20px;
  color: #f; /* Gris Foncé pour le texte par défaut */
}

.custom-services-container {
  max-width: 1100px;
  margin: 0 auto;
}

.section-main-title {
  text-align: center;
  font-size: 28px;
  font-weight: 700;
  margin-bottom: 40px;
  /* Couleur définie inline dans le HTML ou ici si vous préférez */
}

.section-subtitle {
  text-align: center;
  font-size: 20px;
  font-weight: 500;
  color: #4A4A4A; /* Gris Foncé */
  margin-top: -20px;
  margin-bottom: 30px;
}

.services-a-la-carte-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 30px;
  margin-bottom: 30px;
}

.service-card {
  background-color: #FAF6ED; /* Beige Clair/Crème */
  padding: 25px;
  border-radius: 10px;
  border: 1px solid #E5B840; /* Or Principal subtil */
  box-shadow: 0 5px 15px rgba(0,0,0,0.07);
  display: flex;
  flex-direction: column;
}

.service-title {
  font-size: 20px;
  font-weight: 600;
  margin-top: 0;
  margin-bottom: 15px;
  /* Couleur définie inline dans le HTML */
}

.service-features {
  list-style: none;
  padding-left: 0;
  margin-bottom: 20px;
  flex-grow: 1; /* Pour que le prix soit en bas */
}

.service-features li {
  margin-bottom: 10px;
  padding-left: 25px;
  position: relative;
  font-size: 15px;
  line-height: 1.5;
}

.service-features li::before {
  content: '✔'; /* Ou une icône Font Awesome si configurée */
  color: #E5B840; /* Or Principal */
  position: absolute;
  left: 0;
  top: 0;
  font-weight: bold;
}

.service-price {
  font-size: 18px;
  font-weight: 700;
  margin-top: auto; /* Pousse le prix en bas */
  margin-bottom: 0;
  text-align: right;
  /* Couleur définie inline dans le HTML */
}

.price-clarification {
  font-size: 13px;
  font-weight: 400;
  color: #4A4A4A; /* Gris Foncé */
}

.service-footnotes {
  font-size: 13px;
  color: #555;
  margin-bottom: 30px;
  padding: 15px;
  background-color: #FAF6ED;
  border-radius: 5px;
  border-left: 3px solid #E5B840;
}

.service-footnotes p {
  margin: 5px 0;
}

.section-divider {
  border: 0;
  height: 1px;
  background-color: #E5B840; /* Or Principal */
  margin: 50px auto;
  width: 60%;
}

.detailed-services-content.intro-paragraph {
  font-size: 16px;
  line-height: 1.6;
  margin-bottom: 30px;
  text-align: center;
}

.detail-block {
  background-color: #FFFFFF; /* Blanc pour contraster avec le fond de section */
  padding: 25px;
  border-radius: 8px;
  margin-bottom: 25px;
  box-shadow: 0 3px 10px rgba(0,0,0,0.05);
}

.detail-title {
  font-size: 18px;
  font-weight: 600;
  margin-top: 0;
  margin-bottom: 15px;
  /* Couleur définie inline dans le HTML */
  border-bottom: 1px solid #f0f0f0;
  padding-bottom: 10px;
}

.detail-list {
  list-style: none;
  padding-left: 0;
}

.detail-list li {
  margin-bottom: 10px;
  padding-left: 25px;
  position: relative;
  font-size: 15px;
  line-height: 1.6;
}

.detail-list li::before {
  content: '›'; /* Puce simple et élégante */
  color: #E5B840; /* Or Principal */
  position: absolute;
  left: 0;
  top: 0px;
  font-weight: bold;
  font-size: 20px;
}

/* Responsivité */
@media (max-width: 768px) {
 .services-a-la-carte-grid {
    grid-template-columns: 1fr; /* Une colonne sur mobile */
  }

 .section-main-title {
    font-size: 24px;
  }

 .section-subtitle {
    font-size: 18px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-1924c48 *//* Styles pour la Section Forfaits Ménage + Linge */

.cleaning-packages-section {
  background-color: #F8F0E9; /* Beige Rosé Doux - Fond de section */
  padding: 50px 20px;
  color: #4A4A4A; /* Gris Foncé pour le texte par défaut */
}

.cleaning-packages-container {
  max-width: 1100px;
  margin: 0 auto;
}

/* Réutilisation du style.section-main-title déjà défini */
/*.section-main-title {
  text-align: center;
  font-size: 28px;
  font-weight: 700;
  margin-bottom: 40px;
} */

.packages-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 30px;
  margin-top: 30px;
}

.package-card {
  background-color: #FAF6ED; /* Beige Clair/Crème */
  padding: 30px;
  border-radius: 10px;
  border: 1px solid #E5B840; /* Or Principal subtil */
  box-shadow: 0 5px 15px rgba(0,0,0,0.07);
  display: flex;
  flex-direction: column;
}

.package-header {
  display: flex;
  align-items: center;
  margin-bottom: 15px;
}

.package-icon {
  font-size: 28px; /* Taille de l'emoji maison */
  margin-right: 15px;
}

.package-name {
  font-size: 22px;
  font-weight: 600;
  margin: 0;
  /* Couleur définie inline dans le HTML */
}

.package-price {
  font-size: 20px;
  font-weight: 700;
  margin-top: 0;
  margin-bottom: 15px;
  /* Couleur définie inline dans le HTML */
}

.package-includes-intro {
  font-size: 16px;
  font-weight: 500;
  color: #4A4A4A;
  margin-bottom: 20px;
}

.sub-package-section {
  margin-bottom: 20px;
}

.sub-package-section:last-child {
  margin-bottom: 0;
}

.sub-package-title {
  font-size: 17px;
  font-weight: 600;
  color: #4A4A4A; /* Gris Foncé */
  margin-top: 0;
  margin-bottom: 10px;
  display: flex;
  align-items: center;
}

.checkmark-icon {
  color: #E5B840; /* Or Principal pour la coche emoji, si on veut la styler différemment de l'emoji lui-même */
  margin-right: 8px;
  font-size: 18px; /* Ajuster si l'emoji ✅ a une taille différente souhaitée */
}

.sub-package-features {
  list-style: none;
  padding-left: 5px; /* Léger retrait si la coche est gérée par l'emoji */
  margin: 0;
}

.sub-package-features li {
  font-size: 15px;
  line-height: 1.6;
  color: #4A4A4A;
  margin-bottom: 8px;
  /* Si vous n'utilisez pas l'emoji ✅ directement dans le HTML mais un ::before : */
  /* padding-left: 25px; */
  /* position: relative; */
}

/* Si vous préférez utiliser un ::before pour la coche au lieu de l'emoji dans le HTML : */
/*
.sub-package-features li::before {
  content: '✅';
  color: #E5B840;
  position: absolute;
  left: 0;
  top: 1px;
}
*/

/* Responsivité pour les cartes de forfait */
@media (max-width: 768px) {
 .packages-grid {
    grid-template-columns: 1fr; /* Une colonne sur mobile */
  }
}/* End custom CSS */