.elementor-27522 .elementor-element.elementor-element-9810caa{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-27522 .elementor-element.elementor-element-fa8e5b0 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-27522 .elementor-element.elementor-element-fa8e5b0.xpro-widget-bg-overlay:before{transition:background 0.3s;}/* Start custom CSS for container, class: .elementor-element-9810caa */:root{
  --beige:#FFF5E6; --beige2:#FFF9E3; --white:#FFF;
  --text:#222; --muted:#444; --corail:#FF7F4F; --border:#FFE2C9;
}
.wrap{ max-width:1200px; margin:0 auto; padding:0 24px; }
.lead{ font:400 18px/1.65 "Open Sans",sans-serif; color:var(--muted); max-width:820px; margin:0 auto; }
.cta-row{ display:flex; gap:12px; justify-content:center; flex-wrap:wrap; margin-top:16px; }
.btn{ display:inline-flex; align-items:center; justify-content:center; padding:14px 28px; border-radius:30px; font:700 15.5px/1 "Montserrat",sans-serif; text-decoration:none; transition:all .25s ease; }
.btn--primary{ background:var(--corail); color:#FFF !important; box-shadow:0 4px 12px rgba(255,127,79,.25); }
.btn--primary:hover{ background:#FF885C; transform:translateY(-2px); box-shadow:0 10px 24px rgba(255,127,79,.35); }
.btn--outline{ border:2px solid var(--corail); color:var(--corail); }
.btn--outline:hover{ background:var(--corail); color:#FFF; }

/* HERO */
.ia-hero{ background:linear-gradient(to bottom, var(--beige2), #FFF); padding:160px 0 80px; text-align:center; }
.ia-hero h1{ font:800 44px/1.2 "Montserrat",sans-serif; color:var(--text); margin:0 0 14px; }

/* CASES */
.ia-cases{ background:#FFF; padding:80px 0; }
.ia-cases h2{ font:800 34px/1.25 "Montserrat",sans-serif; text-align:center; margin:0 0 26px; }
.case-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:18px; list-style:none; padding:0; }
.case{ background:#FFF; border:1px solid var(--border); border-radius:16px; padding:18px; box-shadow:0 6px 20px rgba(0,0,0,.03); }
.case h3{ font:700 18px/1.35 "Montserrat",sans-serif; margin:0 0 6px; color:var(--text); }
.case p{ font:400 15.5px/1.6 "Open Sans",sans-serif; color:var(--muted); }

/* MÉTHODE */
.ia-method{ background:var(--beige2); padding:90px 0; text-align:center; }
.ia-method h2{ font:800 34px/1.25 "Montserrat",sans-serif; margin:0 0 24px; }
.steps{ display:grid; grid-template-columns:repeat(4,1fr); gap:24px; max-width:1100px; margin:0 auto; padding:0; }
.step{ list-style:none; background:#FFF; border:1px solid var(--border); border-radius:16px; padding:20px; text-align:left; box-shadow:0 6px 20px rgba(0,0,0,.03); }
.step .ico{ width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:rgba(255,127,79,.08); color:var(--corail); margin-bottom:8px; }
.step h3{ font:700 16.5px/1.35 "Montserrat",sans-serif; margin:0 0 6px; color:var(--text); }
.step p{ font:400 15px/1.6 "Open Sans",sans-serif; color:var(--muted); margin:0; }

/* BLOCS ALTERNÉS */
.ia-block{ background:#FFF; padding:80px 0; }
.ia-block.alt{ background:var(--beige2); }
.ia-block .grid{ display:grid; grid-template-columns:1.05fr .95fr; gap:56px; align-items:center; }
.ia-block h2{ font:800 32px/1.25 "Montserrat",sans-serif; margin:0 0 8px; color:var(--text); }
.ia-block .intro{ font:400 17px/1.65 "Open Sans",sans-serif; color:var(--muted); margin:0 0 12px; }
.check{ list-style:none; padding:0; margin:0 0 14px; }
.check li{ font:400 16px/1.6 "Open Sans",sans-serif; color:var(--muted); margin:0 0 6px; }
.illus{ height:280px; max-width:520px; margin:0 auto; border:1px solid var(--border); border-radius:16px; box-shadow:0 10px 30px rgba(0,0,0,.06); display:grid; place-items:center; background:#FFF; }
.illus img{ height:200px; width:auto; object-fit:contain; display:block; }

/* OFFRE */
.ia-offer{ background:#FFF; padding:80px 0; }
.ia-offer h2{ font:800 32px/1.25 "Montserrat",sans-serif; text-align:center; margin:0 0 24px; }
.offer-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.offer{ background:#FFF; border:1px solid var(--border); border-radius:16px; padding:20px; box-shadow:0 6px 20px rgba(0,0,0,.03); }
.offer h3{ font:700 18px/1.35 "Montserrat",sans-serif; margin:0 0 8px; }
.offer ul{ margin:0; padding-left:18px; }
.offer li{ font:400 15px/1.6 "Open Sans",sans-serif; color:var(--muted); }

/* META */
.meta{ display:flex; gap:12px; flex-wrap:wrap; justify-content:center; margin-top:16px; }
.meta > div{ background:var(--beige2); border:1px solid var(--border); border-radius:999px; padding:8px 12px; font:600 13px/1 "Montserrat",sans-serif; color:#333; }

/* TECH */
.ia-tech{ background:var(--beige2); padding:70px 0; text-align:center; }
.ia-tech h2{ font:800 28px/1.25 "Montserrat",sans-serif; margin:0 0 16px; }
.badges{ display:flex; flex-wrap:wrap; gap:10px; justify-content:center; list-style:none; padding:0; margin:0; }
.badges li{ font:600 13px/1 "Montserrat",sans-serif; color:#333; background:#FFF; border:1px solid var(--border); border-radius:999px; padding:8px 12px; }

/* FAQ & CTA */
.ia-faq{ background:#FFF; padding:80px 0; }
.ia-faq h2{ font:800 32px/1.25 "Montserrat",sans-serif; text-align:center; margin:0 0 18px; }
.faq{ max-width:900px; margin:0 auto; }
.faq details{ background:#FFF; border:1px solid var(--border); border-radius:14px; padding:14px 16px; margin:10px 0; box-shadow:0 6px 20px rgba(0,0,0,.02); }
.faq summary{ font:700 15.5px/1.4 "Montserrat",sans-serif; cursor:pointer; }
.ia-cta{ background:linear-gradient(135deg, var(--corail) 0%, var(--beige) 100%); padding:90px 0; text-align:center; color:#FFF; }
.ia-cta h2{ font:800 34px/1.2 "Montserrat",sans-serif; margin:0 0 10px; }

/* Animations sobres */
.ia-hero h1,.ia-hero .lead,.ia-hero .btn,
.ia-cases h2,.case,.ia-method h2,.steps,
.ia-block h2,.ia-block .intro,.illus,.ia-offer h2,.offer,.ia-tech h2,.badges li,.ia-faq h2,.faq details,.ia-cta h2,.ia-cta .lead,.ia-cta .btn{
  opacity:0; transform:translateY(12px); animation:fadeUp .55s ease-out forwards;
}
@keyframes fadeUp{ from{opacity:0;transform:translateY(12px)} to{opacity:1;transform:translateY(0)} }
@media (prefers-reduced-motion:reduce){
  .ia-hero h1,.ia-hero .lead,.ia-hero .btn,.ia-cases h2,.case,.ia-method h2,.steps,.ia-block h2,.ia-block .intro,.illus,.ia-offer h2,.offer,.ia-tech h2,.badges li,.ia-faq h2,.faq details,.ia-cta h2,.ia-cta .lead,.ia-cta .btn{
    animation:none!important; opacity:1!important; transform:none!important;
  }
}

/* Responsive + Option A (visuel compact mobile) */
@media (max-width:1024px){
  .case-grid{ grid-template-columns:1fr; }
  .steps{ grid-template-columns:1fr 1fr; }
  .offer-grid{ grid-template-columns:1fr 1fr; }
  .ia-block .grid{ grid-template-columns:1fr; gap:22px; }
}
@media (max-width:768px){
  .steps{ grid-template-columns:1fr; gap:16px; }
  .offer-grid{ grid-template-columns:1fr; }
  .ia-block .txt{ order:1; }
  .ia-block .media{ order:2; }
  .illus{ height:140px; max-width:360px; border-radius:14px; box-shadow:0 6px 14px rgba(0,0,0,.05); }
  .illus img{ height:120px; }
  .ia-block + .ia-block{ padding-top:56px; }
  .btn--primary,.btn--outline{ width:100%; }
}


/* === FIX mise en page cartes "Notre méthode" (IA & Automatisation) === */

/* Grille interne de chaque carte : icône à gauche, texte à droite */
.ia-method .steps .step{
  display: grid;
  grid-template-columns: 56px 1fr;   /* icône | texte */
  grid-auto-rows: min-content;
  align-items: start;
  column-gap: 14px;
}

/* Icône : colonne 1, bien alignée, sans marge superflue */
.ia-method .steps .step .ico{
  grid-column: 1;
  grid-row: 1 / span 2;              /* occupe le bloc titre + paragraphe */
  width: 44px; height: 44px;
  margin: 0;                          /* supprime marges qui rétrécissent le texte */
}

/* Titre + paragraphe : colonne 2 */
.ia-method .steps .step h3,
.ia-method .steps .step p{
  grid-column: 2;
}

/* Sécurité typographique : empêche les retours à la ligne “mot par mot” */
.ia-method .steps .step p{
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word;
  max-width: none;                    /* au cas où un style limite la largeur */
  margin-top: 4px;
}

/* Desktop : 4 colonnes pour les cartes (inchangé) */
.ia-method .steps{ grid-template-columns: repeat(4, 1fr); gap: 24px; }

/* Tablette : 2 colonnes */
@media (max-width: 1024px){
  .ia-method .steps{ grid-template-columns: 1fr 1fr; gap: 20px; }
}

/* Mobile : 1 colonne, cartes pleines largeur et lisibles */
@media (max-width: 768px){
  .ia-method{ padding: 72px 0; }
  .ia-method .steps{ grid-template-columns: 1fr; gap: 16px; }
  .ia-method .steps .step{ grid-template-columns: 48px 1fr; }
  .ia-method .steps .step .ico{ width: 40px; height: 40px; }
  .ia-method .steps .step h3{ font-size: 16.5px; }
  .ia-method .steps .step p{ font-size: 15px; line-height: 1.6; }
}/* End custom CSS */