.elementor-27419 .elementor-element.elementor-element-dd60794{--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-27419 .elementor-element.elementor-element-0a21865{width:100%;max-width:100%;}.elementor-27419 .elementor-element.elementor-element-0a21865 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:120px 0px 0px 0px;}.elementor-27419 .elementor-element.elementor-element-0a21865.xpro-widget-bg-overlay:before{transition:background 0.3s;}/* Start custom CSS for container, class: .elementor-element-dd60794 *//* Couleurs héritées de ta charte */
:root{
  --beige:#FFF5E6;
  --beige2:#FFF9E3;
  --white:#FFF;
  --text:#222;
  --muted:#444;
  --corail:#FF7F4F;
  --corail-weak:#FFCBA4;
  --border:#FFE2C9;
}

/* --------- helpers --------- */
.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; }
.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; }
.cta-row{ display:flex; gap:12px; justify-content:center; flex-wrap:wrap; margin-top:16px; }

/* --------- hero --------- */
.svc2-hero{ background:linear-gradient(to bottom, var(--beige2), #FFF); padding:110px 0 70px; text-align:center; }
.svc2-hero h1{ font:800 44px/1.2 "Montserrat",sans-serif; color:var(--text); margin:0 0 14px; }

/* --------- needs --------- */
.svc2-needs{ background:#FFF; padding:70px 0; }
.svc2-needs h2{ font:800 34px/1.25 "Montserrat",sans-serif; color:var(--text); text-align:center; margin:0 0 26px; }
.need-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:18px; padding:0; list-style:none; }
.need{ background:#FFF; border:1px solid var(--border); border-radius:16px; padding:18px; display:grid; grid-template-columns:48px 1fr; gap:12px; box-shadow:0 6px 20px rgba(0,0,0,.03); }
.need .ico{ width:48px;height:48px;border-radius:12px;display:grid;place-items:center;background:rgba(255,127,79,.08); font-size:22px; color:var(--corail); }
.need h3{ font:700 18px/1.35 "Montserrat",sans-serif; color:var(--text); margin:2px 0 6px; }
.need p{ font:400 15.5px/1.6 "Open Sans",sans-serif; color:var(--muted); margin:0 0 6px; }
.need .lnk{ font:700 14px/1 "Montserrat",sans-serif; color:var(--corail); text-decoration:none; }

/* --------- service blocks --------- */
.svc2-block{ background:#FFF; padding:80px 0; }
.svc2-block.alt{ background:var(--beige2); }
.svc2-block .grid{ display:grid; grid-template-columns:1.05fr .95fr; gap:56px; align-items:center; }
.svc2-block .intro{ font:400 17px/1.65 "Open Sans",sans-serif; color:var(--muted); margin:8px 0 18px; max-width:680px; }
.svc2-block h2{ font:800 36px/1.25 "Montserrat",sans-serif; color:var(--text); margin:0; }

.lists{ display:grid; grid-template-columns:1fr 1fr; gap:22px; margin:12px 0 14px; }
.lists h3{ font:700 16px/1.35 "Montserrat",sans-serif; margin:0 0 6px; color:var(--text); }
.lists h4.muted{ font:700 13px/1 "Montserrat",sans-serif; color:#777; margin:8px 0 4px; }
.lists ul{ margin:0; padding-left:18px; }
.lists li{ font:400 15px/1.6 "Open Sans",sans-serif; color:var(--muted); }

.meta{ display:flex; flex-wrap:wrap; gap:14px; margin:14px 0 18px; }
.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; }

.illus{ width:100%; max-width:520px; height:320px; margin:0 auto; border-radius:18px; display:grid;place-items:center; font-size:64px; color:#FF9B73;
  background: radial-gradient(140px 140px at 70% 30%, rgba(255,127,79,.18), transparent 60%), 
              radial-gradient(160px 160px at 20% 80%, rgba(255,203,164,.22), transparent 60%), 
              #FFF;
  border:1px solid var(--border);
  box-shadow:0 10px 30px rgba(255,127,79,.06);
}
.alt .illus{ background: radial-gradient(120px 120px at 30% 20%, rgba(255,127,79,.12), transparent 60%), #FFF; }

/* --------- transparence --------- */
.svc2-ethos{ background:#FFF; padding:80px 0; }
.svc2-ethos h2{ font:800 32px/1.25 "Montserrat",sans-serif; color:var(--text); text-align:center; margin:0 0 24px; }
.ethos-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.ethos{ background:#FFF; border:1px solid var(--border); border-radius:16px; padding:18px; box-shadow:0 6px 20px rgba(0,0,0,.03); }
.ethos h3{ font:700 16px/1.35 "Montserrat",sans-serif; margin:2px 0 8px; color:var(--text); }
.ethos ul{ margin:0; padding-left:18px; }
.ethos li{ font:400 15px/1.6 "Open Sans",sans-serif; color:var(--muted); }

/* --------- FAQ --------- */
.svc2-faq{ background:var(--beige2); padding:80px 0; }
.svc2-faq h2{ font:800 32px/1.25 "Montserrat",sans-serif; color:var(--text); 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; }
.faq p{ font:400 15px/1.6 "Open Sans",sans-serif; color:var(--muted); margin:8px 0 4px; }

/* --------- CTA final --------- */
.svc2-cta{ background:linear-gradient(135deg, var(--corail) 0%, var(--beige) 100%); padding:90px 0; text-align:center; color:#FFF; }
.svc2-cta h2{ font:800 36px/1.2 "Montserrat",sans-serif; margin:0 0 10px; color:#FFF; }
.svc2-cta .lead{ color:#FFF; opacity:.95; margin-bottom:18px; }

/* --------- Animations sobres --------- */
.svc2-hero h1, .svc2-hero .lead, .need, .svc2-needs h2,
.svc2-block h2, .svc2-block .intro, .lists, .meta, .illus,
.svc2-ethos h2, .ethos, .svc2-faq h2, .faq details, .svc2-cta h2, .svc2-cta .lead, .svc2-cta .btn{
  opacity:0; transform:translateY(12px); animation:fadeUp .55s ease-out forwards;
}
.svc2-hero h1{ animation-delay:.05s; } .svc2-hero .lead{ animation-delay:.12s; }
.need:nth-child(1){ animation-delay:.12s;} .need:nth-child(2){animation-delay:.18s;} .need:nth-child(3){animation-delay:.24s;} .need:nth-child(4){animation-delay:.30s;}
.svc2-block h2{ animation-delay:.05s;} .svc2-block .intro{animation-delay:.12s;} .lists{animation-delay:.20s;} .meta{animation-delay:.28s;} .illus{animation-delay:.24s;}
.svc2-ethos h2{ animation-delay:.05s;} .ethos:nth-child(1){animation-delay:.16s;} .ethos:nth-child(2){animation-delay:.24s;} .ethos:nth-child(3){animation-delay:.32s;}
.svc2-faq h2{ animation-delay:.05s;} .faq details:nth-child(1){animation-delay:.16s;} .faq details:nth-child(2){animation-delay:.22s;} .faq details:nth-child(3){animation-delay:.28s;} .faq details:nth-child(4){animation-delay:.34s;}
.svc2-cta h2{ animation-delay:.05s;} .svc2-cta .lead{animation-delay:.12s;} .svc2-cta .btn{animation-delay:.20s;}
@keyframes fadeUp{ from{opacity:0;transform:translateY(12px);} to{opacity:1;transform:translateY(0);} }
@media (prefers-reduced-motion:reduce){
  .svc2-hero h1, .svc2-hero .lead, .need, .svc2-needs h2, .svc2-block h2, .svc2-block .intro, .lists, .meta, .illus, .svc2-ethos h2, .ethos, .svc2-faq h2, .faq details, .svc2-cta h2, .svc2-cta .lead, .svc2-cta .btn{
    animation:none !important; opacity:1 !important; transform:none !important;
  }
}

/* --------- Responsive --------- */
@media (max-width:1024px){
  .need-grid{ grid-template-columns:1fr; }
  .svc2-block .grid{ grid-template-columns:1fr; gap:28px; }
  .lists{ grid-template-columns:1fr; }
}
@media (max-width:768px){
  .svc2-hero h1{ font-size:32px; }
  .lead{ font-size:16px; }
  .btn--primary, .btn--outline{ width:100%; }
  .ethos-grid{ grid-template-columns:1fr; }
}

	
	


@media (max-width: 768px) {
  /* 1 colonne, respiration */
  .svc2-block .grid{ grid-template-columns:1fr; gap:18px; }

  /* Le texte toujours avant l'image */
  .svc2-block .txt{ order:1; }
  .svc2-block .media{ order:2; }

  /* Visuels compacts */
  .svc2-block .media .illus{ 
    height:140px; max-width:360px; margin:6px auto 0;
    border-radius:14px; box-shadow:0 6px 14px rgba(0,0,0,.05);
  }
  .svc2-block .media img{
    width:auto; height:120px; object-fit:contain; display:block; margin:0 auto;
  }

  /* Espacement entre blocs pour éviter les “paquets” visuels */
  .svc2-block + .svc2-block{ padding-top:56px; }
}/* End custom CSS */