.elementor-1809 .elementor-element.elementor-element-66753be{--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;--align-items:flex-start;--overlay-opacity:0.5;--border-radius:16px 16px 16px 16px;}.elementor-1809 .elementor-element.elementor-element-66753be::before, .elementor-1809 .elementor-element.elementor-element-66753be > .elementor-background-video-container::before, .elementor-1809 .elementor-element.elementor-element-66753be > .e-con-inner > .elementor-background-video-container::before, .elementor-1809 .elementor-element.elementor-element-66753be > .elementor-background-slideshow::before, .elementor-1809 .elementor-element.elementor-element-66753be > .e-con-inner > .elementor-background-slideshow::before, .elementor-1809 .elementor-element.elementor-element-66753be > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:transparent;--background-overlay:'';background-image:linear-gradient(180deg, #0000001A 0%, #212121A8 100%);}.elementor-1809 .elementor-element.elementor-element-66753be:not(.elementor-motion-effects-element-type-background), .elementor-1809 .elementor-element.elementor-element-66753be > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-1809 .elementor-element.elementor-element-b911d25{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-1809 .elementor-element.elementor-element-036e3eb .elementor-icon-wrapper{text-align:center;}.elementor-1809 .elementor-element.elementor-element-036e3eb.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-23949ab );}.elementor-1809 .elementor-element.elementor-element-036e3eb.elementor-view-framed .elementor-icon, .elementor-1809 .elementor-element.elementor-element-036e3eb.elementor-view-default .elementor-icon{color:var( --e-global-color-23949ab );border-color:var( --e-global-color-23949ab );}.elementor-1809 .elementor-element.elementor-element-036e3eb.elementor-view-framed .elementor-icon, .elementor-1809 .elementor-element.elementor-element-036e3eb.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-23949ab );}.elementor-1809 .elementor-element.elementor-element-036e3eb .elementor-icon{font-size:14px;}.elementor-1809 .elementor-element.elementor-element-036e3eb .elementor-icon svg{height:14px;}.elementor-1809 .elementor-element.elementor-element-f4dcffa{font-weight:600;color:var( --e-global-color-23949ab );}.elementor-1809 .elementor-element.elementor-element-f4dcffa p{margin-block-end:0px;}.elementor-1809 .elementor-element.elementor-element-c5028d4 .elementor-heading-title{color:var( --e-global-color-b297084 );}.elementor-1809 .elementor-element.elementor-element-ca5e2a9.elementor-element{--align-self:flex-start;}.elementor-1809 .elementor-element.elementor-element-ca5e2a9 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-bottom:calc(0px/2);}.elementor-1809 .elementor-element.elementor-element-ca5e2a9 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-top:calc(0px/2);}.elementor-1809 .elementor-element.elementor-element-ca5e2a9 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-right:calc(0px/2);margin-left:calc(0px/2);}.elementor-1809 .elementor-element.elementor-element-ca5e2a9 .elementor-icon-list-items.elementor-inline-items{margin-right:calc(-0px/2);margin-left:calc(-0px/2);}body.rtl .elementor-1809 .elementor-element.elementor-element-ca5e2a9 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{left:calc(-0px/2);}body:not(.rtl) .elementor-1809 .elementor-element.elementor-element-ca5e2a9 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{right:calc(-0px/2);}.elementor-1809 .elementor-element.elementor-element-ca5e2a9 .elementor-icon-list-icon{width:14px;}.elementor-1809 .elementor-element.elementor-element-ca5e2a9 .elementor-icon-list-icon i{font-size:14px;}.elementor-1809 .elementor-element.elementor-element-ca5e2a9 .elementor-icon-list-icon svg{--e-icon-list-icon-size:14px;}.elementor-1809 .elementor-element.elementor-element-6b07e0a{color:var( --e-global-color-b297084 );}.elementor-1809 .elementor-element.elementor-element-a8c8599{--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;--align-items:flex-start;}.elementor-1809 .elementor-element.elementor-element-5e21f59 .elementor-button{background-color:var( --e-global-color-secondary );fill:var( --e-global-color-b297084 );color:var( --e-global-color-b297084 );}.elementor-1809 .elementor-element.elementor-element-5e21f59 .elementor-button:hover, .elementor-1809 .elementor-element.elementor-element-5e21f59 .elementor-button:focus{background-color:#17212F;color:var( --e-global-color-b297084 );}.elementor-1809 .elementor-element.elementor-element-5e21f59 .elementor-button:hover svg, .elementor-1809 .elementor-element.elementor-element-5e21f59 .elementor-button:focus svg{fill:var( --e-global-color-b297084 );}.elementor-1809 .elementor-element.elementor-element-30451dd{--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-1809 .elementor-element.elementor-element-30451dd:not(.elementor-motion-effects-element-type-background), .elementor-1809 .elementor-element.elementor-element-30451dd > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-b829b67 );}.elementor-1809 .elementor-element.elementor-element-a7bb7e6{--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;--align-items:center;}.elementor-1809 .elementor-element.elementor-element-cbcdab6{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-1809 .elementor-element.elementor-element-0e22433{--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-1809 .elementor-element.elementor-element-6378b06 p{margin-block-end:0px;}.elementor-1809 .elementor-element.elementor-element-cec7069{--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-1809 .elementor-element.elementor-element-3a37e62 p{margin-block-end:0px;}.elementor-1809 .elementor-element.elementor-element-9cea91c{--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-1809 .elementor-element.elementor-element-2ac799f p{margin-block-end:0px;}.elementor-1809 .elementor-element.elementor-element-a45a45e{--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-1809 .elementor-element.elementor-element-3e07ecb p{margin-block-end:0px;}.elementor-1809 .elementor-element.elementor-element-6ede38b{--display:flex;}.elementor-1809 .elementor-element.elementor-element-7fc370e{text-align:center;}.elementor-1809 .elementor-element.elementor-element-27aea08{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-1809 .elementor-element.elementor-element-8764a82{--display:flex;}.elementor-1809 .elementor-element.elementor-element-d027f5e p{margin-block-end:0px;}.elementor-1809 .elementor-element.elementor-element-e319bda{--display:flex;}.elementor-1809 .elementor-element.elementor-element-a7ce90c p{margin-block-end:0px;}.elementor-1809 .elementor-element.elementor-element-9465179{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-1809 .elementor-element.elementor-element-e5fbd69{--display:flex;}.elementor-1809 .elementor-element.elementor-element-da7de75 .elementor-heading-title{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-1809 .elementor-element.elementor-element-fbbcc9c p{margin-block-end:0px;}.elementor-1809 .elementor-element.elementor-element-6d009b1{--display:flex;}.elementor-1809 .elementor-element.elementor-element-5072d5a p{margin-block-end:0px;}.elementor-1809 .elementor-element.elementor-element-59222e3{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-1809 .elementor-element.elementor-element-2a197cc img{border-radius:16px 16px 16px 16px;}.elementor-1809 .elementor-element.elementor-element-5a8b97d img{border-radius:16px 16px 16px 16px;}.elementor-1809 .elementor-element.elementor-element-72b68da img{border-radius:16px 16px 16px 16px;}.elementor-1809 .elementor-element.elementor-element-441934c{--display:flex;}.elementor-1809 .elementor-element.elementor-element-178cfa7 .elementor-heading-title{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-1809 .elementor-element.elementor-element-39a7c65{--display:flex;}.elementor-1809 .elementor-element.elementor-element-e24fb7c{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-1809 .elementor-element.elementor-element-c49697b .elementor-icon-wrapper{text-align:center;}.elementor-1809 .elementor-element.elementor-element-d17fc68{--display:flex;}.elementor-1809 .elementor-element.elementor-element-82661c4.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-1809 .elementor-element.elementor-element-82661c4 p{margin-block-end:0px;}.elementor-1809 .elementor-element.elementor-element-38b7dc3.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-1809 .elementor-element.elementor-element-38b7dc3 p{margin-block-end:0px;}.elementor-1809 .elementor-element.elementor-element-6bed1367{--display:flex;}.elementor-1809 .elementor-element.elementor-element-6bed1367:not(.elementor-motion-effects-element-type-background), .elementor-1809 .elementor-element.elementor-element-6bed1367 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-b829b67 );}.elementor-1809 .elementor-element.elementor-element-6dcc5027{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-evenly;--align-items:center;--border-radius:20px 20px 20px 20px;}.elementor-1809 .elementor-element.elementor-element-6dcc5027:not(.elementor-motion-effects-element-type-background), .elementor-1809 .elementor-element.elementor-element-6dcc5027 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(135deg, var( --e-global-color-23949ab ) 0%, var( --e-global-color-secondary ) 100%);}.elementor-1809 .elementor-element.elementor-element-6dcc5027.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-1809 .elementor-element.elementor-element-6a425099{--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;--align-items:flex-start;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-1809 .elementor-element.elementor-element-6a425099.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-1809 .elementor-element.elementor-element-159178ec .elementor-heading-title{color:var( --e-global-color-b297084 );}.elementor-1809 .elementor-element.elementor-element-38f3f7dd{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );line-height:var( --e-global-typography-accent-line-height );color:var( --e-global-color-b297084 );}@media(min-width:768px){.elementor-1809 .elementor-element.elementor-element-6a425099{--width:68.304%;}}@media(max-width:1024px){.elementor-1809 .elementor-element.elementor-element-da7de75 .elementor-heading-title{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-1809 .elementor-element.elementor-element-178cfa7 .elementor-heading-title{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-1809 .elementor-element.elementor-element-38f3f7dd{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}}@media(max-width:767px){.elementor-1809 .elementor-element.elementor-element-da7de75 .elementor-heading-title{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-1809 .elementor-element.elementor-element-178cfa7 .elementor-heading-title{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-1809 .elementor-element.elementor-element-38f3f7dd{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}}@media(max-width:1024px) and (min-width:768px){.elementor-1809 .elementor-element.elementor-element-6dcc5027{--width:93.586%;}}/* Start custom CSS for post-info, class: .elementor-element-ca5e2a9 *//* =========================
   Tags du Héro (cl-hero-tags)
   Style "pilule" identique à la date, sans séparateur
   ========================= */

/* Ligne de tags */
.cl-hero-tags{
  display:flex; flex-wrap:wrap; gap:10px;
  align-items:center;
}

/* Harmonise les listes selon le widget utilisé (Terms OU Post Info) */
.cl-hero-tags .elementor-widget-post-terms ul,
.cl-hero-tags .elementor-post-info__terms-list{
  display:flex; flex-wrap:wrap; gap:10px;
  margin:0; padding:0; list-style:none;
}

/* La pilule (anchor des termes) : même look que la date */
.cl-hero-tags a{
  display:inline-flex; align-items:center; gap:8px;
  padding:10px 16px;
  border-radius:999px;
  border:1.5px solid rgba(255,255,255,.32);
  background:rgba(0,0,0,.22);              /* même ressenti que la date */
  color:#fff; line-height:1; font-weight:600;
  text-decoration:none;
  transition: border-color .2s ease, box-shadow .2s ease, background .2s ease, transform .2s ease;
  backdrop-filter: saturate(120%) blur(2px);
}



/* Tags du hero – retirer les virgules + espacement en chips */
.cl-hero-tags .elementor-post-info__terms-list{
  display:flex;               /* on aligne en ligne */
  flex-wrap:wrap;
  gap:8px;                    /* espace entre tags, comme la date */
  font-size:0;                /* masque les virgules (text nodes) */
}

.cl-hero-tags .elementor-post-info__terms-list a{
  font-size:16px;             /* on rétablit la taille du texte */
  line-height:1;
}


/* Petits écrans : resserre un peu la dosette */
@media (max-width: 480px){
  .cl-hero-tags{ gap:8px; }
  .cl-hero-tags a{ padding:8px 12px; font-weight:600; }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-66753be *//* === HERO : overlay plus léger + titres plus lisibles === */
.cl-hero::after{
  background: linear-gradient(180deg,
    rgba(0,0,0,.26) 0%,
    rgba(0,0,0,.18) 28%,
    rgba(0,0,0,.10) 60%,
    rgba(0,0,0,0) 100%);
}
.cl-hero h1{
  color:#fff;
  text-shadow: 0 2px 8px rgba(0,0,0,.18); /* net mais soft */
}
.cl-hero .cl-subtitle{ color: rgba(255,255,255,.96); }

/* Si image = <img> (widget) : moins sombre */
.cl-hero .elementor-image img{
  filter: brightness(.90) contrast(1.02);
}



/* TAGS du HERO — HOVER BLEU (bat toutes les règles rouges) */
.cl-hero .cl-hero-tags a:hover,
.cl-hero .cl-hero-tags a:focus-visible {
  background: #64B5F6 !important;
  border-color: #64B5F6 !important;
  color: #fff !important;
  box-shadow: 0 8px 22px rgba(100,181,246,.32) !important;
  transform: translateY(-1px);
}


/* === Petits ajustements d’espacements (hero compact) === */
.cl-hero{ padding: clamp(24px, 6.5vw, 84px) 0; }
.cl-hero-tags .post-terms, .cl-hero-tags .cl-work-tags{ margin-top:.5rem; }/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a7bb7e6 *//* ---------- Extrait flottant sous le hero ---------- */
.cl-excerpt{
  margin-top:-28px;
  background:#fff; color:var(--cl-navy);
  border:1px solid var(--cl-border);
  border-radius:16px;
  padding:20px;
  box-shadow:0 10px 24px rgba(33,33,33,.06);
}

/* ===============================
   Carte résumé flottante (single)
   =============================== */

/* 1) Carte qui flotte sous le hero */
.cl-excerpt{
  position: relative;
  margin-top: -56px;              /* remonte sous le hero */
  z-index: 3;
  background:#fff;
  border:1px solid #E6EAF0;
  border-radius:16px;
  padding: clamp(20px, 3vw, 28px);
  box-shadow:
    0 10px 24px rgba(33,33,33,.06),
    0 2px  6px rgba(33,33,33,.04);
}
@media (max-width:1024px){ .cl-excerpt{ margin-top:-40px; } }
@media (max-width:767px){  .cl-excerpt{ margin-top:-28px; } }

/* --------- Carte résumé flottante (cl-excerpt) — version douce --------- */
:root{
  /* Tu peux ajuster ces 2 variables pour la vitesse et la sensation */
  --cl-float-dur: .55s;                 /* ex. .45s / .55s / .70s */
  --cl-float-ease: cubic-bezier(.22,1,.36,1); /* ease-out “cubic” très douce */
}

/* par défaut */
.cl-excerpt{
  transform: translateY(0) scale(1);
  transition:
    transform var(--cl-float-dur) var(--cl-float-ease),
    box-shadow var(--cl-float-dur) var(--cl-float-ease),
    outline-color var(--cl-float-dur) var(--cl-float-ease);
  will-change: transform, box-shadow;
}

/* hover/focus : mouvement plus court + easing plus doux */
@media (hover:hover) and (pointer:fine){
  .cl-excerpt:hover,
  .cl-excerpt:focus-within{
    transform: translateY(-3px) scale(1.004); /* -3px (au lieu de -4/-6) */
    box-shadow:
      0 12px 28px rgba(33,33,33,.10),
      0 2px 0 rgba(33,33,33,.04);
    outline-color: rgba(100,181,246,.25);
  }
}

/* Accessibilité : pas d’anim si l’utilisateur préfère réduire les mouvements */
@media (prefers-reduced-motion: reduce){
  .cl-excerpt{
    transition: none !important;
  }
}



/* ==== Carte méta (client/secteur/année/durée) ==== */

/* La carte flottante */
.cl-meta{
  position: relative;
  display: grid;
  gap: 12px 18px;
  grid-template-columns: repeat(4, minmax(0,1fr));
  padding: 18px;
  margin: clamp(16px, 3.5vw, 28px) 0;
  background: #fff;
  border: 1px solid #E6EAF0;
  border-radius: 18px;
  box-shadow: 0 14px 34px rgba(17,24,39,.08);
}

/* Responsive */
@media (max-width: 1024px){
  .cl-meta{ grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 560px){
  .cl-meta{ grid-template-columns: 1fr; }
}

/* Chaque item */
.cl-meta__item{
  background: #F7F7F7;
  border-radius: 14px;
  padding: 10px 12px;
  min-height: 64px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 4px;
}

/* Libellé et valeur */
.cl-meta__label{
  font-size: .78rem;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: #6b7280;                /* slate-500 */
  margin: 0;
  line-height: 1.1;
}

.cl-meta__value{
  font-weight: 700;
  color: #1f2937;                /* slate-800 */
  font-size: clamp(15px, 1.6vw, 18px);
  line-height: 1.2;
  margin: 0;
}

/* Si tu utilises un seul widget texte par item, garde juste cl-meta__value */
.cl-meta__item .elementor-widget-text-editor p{ margin:0; }

/* Option : icône à gauche (si tu ajoutes une icône emoji ou SVG en premier) */
.cl-meta__item--withicon{
  padding-left: 44px; position: relative;
}
.cl-meta__item--withicon::before{
  content: attr(data-ico);       /* ex: data-ico="👤" sur l’item Client */
  position:absolute; left:12px; top:50%; transform:translateY(-50%);
  font-size: 20px; opacity:.9;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-27aea08 *//* === Cartes (slabs) — style Contact === */
.cl-slab{
  background:#fff;
  border:1px solid var(--cl-border, #E6EAF0);
  border-radius:16px;
  box-shadow:0 10px 24px rgba(33,33,33,.06);
  padding:24px;
  transition:transform .28s cubic-bezier(.2,.7,.2,1), box-shadow .28s, border-color .28s;
}
.cl-slab:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 40px rgba(33,33,33,.08);
  border-color:#DDE5EE;
}
.cl-slab:focus-within{
  outline:0;
  box-shadow:0 0 0 4px rgba(100,181,246,.28), 0 10px 24px rgba(33,33,33,.06);
}

/* Grille 2 colonnes prête-à-l’emploi */
.cl-slab-grid{ display:grid; gap:20px; }
@media (min-width: 768px){ .cl-slab-grid{ grid-template-columns:repeat(2,1fr); } }

/* Titres & textes dans les slabs */
.cl-slab .cl-h2{ 
  margin:0 0 10px; 
  color:#2C3E50; 
  font-weight:600; 
  font-size:clamp(18px,1.2vw + 16px,22px);
}
.cl-slab p{ color:#2C3E50; }
.cl-muted{ color:#6D6D6D; }

/* Listes à puces avec icône (pour "Objectifs", "Ce que vous pouvez attendre") */
.elementor-icon-list.cl-list .elementor-icon-list-item{ align-items:flex-start; }
.elementor-icon-list.cl-list .elementor-icon-list-icon{
  width:28px; height:28px; flex:0 0 28px; 
  border-radius:999px; margin-right:10px;
  background:#EAF6FF; color:#2C3E50; 
  display:inline-flex; align-items:center; justify-content:center;
}
.elementor-icon-list.cl-list .elementor-icon-list-text{ color:#2C3E50; }

/* Liste numérotée élégante (pour "Solutions") */
.cl-slab ol{ counter-reset:item; list-style:none; padding-left:0; margin:0; }
.cl-slab ol li{
  counter-increment:item; position:relative; padding-left:36px;
  margin:10px 0; color:#2C3E50;
}
.cl-slab ol li::before{
  content:counter(item);
  position:absolute; left:0; top:.15em;
  width:24px; height:24px; border-radius:999px;
  background:#EAF6FF; color:#2C3E50; font-weight:600; font-size:12px;
  border:1px solid var(--cl-border, #E6EAF0);
  display:inline-flex; align-items:center; justify-content:center;
}

/* === Étapes du process (4 cartes) === */
.cl-steps__grid{ display:grid; gap:14px; }
@media (min-width:768px){ .cl-steps__grid{ grid-template-columns:repeat(4,1fr); } }

.cl-step{
  background:#fff; border:1px solid var(--cl-border, #E6EAF0);
  border-radius:16px; padding:18px;
  box-shadow:0 10px 22px rgba(33,33,33,.05);
  transition:transform .28s cubic-bezier(.2,.7,.2,1), box-shadow .28s, border-color .28s;
}
.cl-step:hover{
  transform:translateY(-6px);
  box-shadow:0 18px 40px rgba(33,33,33,.08);
  border-color:#DDE5EE;
}
.cl-step__icon{
  width:40px; height:40px; border-radius:12px; margin-bottom:10px;
  display:flex; align-items:center; justify-content:center;
  background:linear-gradient(135deg, rgba(100,181,246,.15), rgba(44,62,80,.08));
  color:#2C3E50;
}
.cl-step h4{ margin:0 0 8px; color:#2C3E50; font-weight:600; }
.cl-step p{ margin:0; color:#6D6D6D; }

/* Focus acces : liens/boutons à l’intérieur des cartes */
.cl-slab a:focus-visible, .cl-step a:focus-visible{
  outline:0; box-shadow:0 0 0 4px rgba(100,181,246,.28);
  border-radius:12px;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-59222e3 *//* ===== Galerie (cadre + hover), sans modifier la taille des images ===== */

.cl-gallery{
  --cl-border:#E6EAF0;
  --cl-shadow:0 10px 24px rgba(33,33,33,.06);
  --cl-shadow-hover:0 18px 36px rgba(33,33,33,.12);
  --cl-ring:rgba(100,181,246,.28);

  border:1px solid var(--cl-border);
  border-radius:16px;
  background:#fff;
  padding:12px;                 /* cadre interne */
  box-shadow:var(--cl-shadow);
}

/* Ne pas casser la grille de WordPress */
.cl-gallery .gallery{ margin:0; }

/* Carte par vignette (sans changer la taille de l'image) */
.cl-gallery .gallery-icon a{
  position:relative;
  display:block;
  border-radius:14px;
  overflow:hidden;              /* pour que le voile suive les coins arrondis */
  box-shadow:0 6px 16px rgba(33,33,33,.08);
  transition:transform .35s ease, box-shadow .35s ease;
}

/* Voile colour blend (aucun redimensionnement d'image) */
.cl-gallery .gallery-icon a::after{
  content:"";
  position:absolute; inset:0;
  background:
    radial-gradient(120% 70% at 0% 100%, rgba(237,89,59,.18), transparent 60%),
    radial-gradient(120% 70% at 100% 0%, rgba(100,181,246,.20), transparent 60%),
    linear-gradient(180deg, rgba(0,0,0,0) 55%, rgba(44,62,80,.35) 100%);
  opacity:0;
  transition:opacity .35s ease;
  pointer-events:none;
}

/* Effet flottant uniquement sur le conteneur (pas sur l'image) */
.cl-gallery .gallery-icon a:hover{
  transform:translateY(-3px);
  box-shadow:var(--cl-shadow-hover);
}
.cl-gallery .gallery-icon a:hover::after{ opacity:1; }

/* Focus accessible */
.cl-gallery .gallery-icon a:focus-visible{
  outline:none;
  box-shadow:0 0 0 4px var(--cl-ring), var(--cl-shadow-hover);
  transform:translateY(-2px);
}

/* On ne touche PAS à la taille de l’image */
.cl-gallery .gallery-icon img{
  max-width:100%;               /* comportement WP par défaut, juste au cas où */
  height:auto;
  border-radius:inherit;        /* suit les coins */
  display:block;                /* évite le petit espace sous l’image */
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-441934c *//* =========================
   Cartes KPI (A11y / Poids / <1,5s)
   ========================= */

/* Grille des cartes (au cas où) */
.cl-kpis{
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 16px;
}
@media (max-width: 900px){
  .cl-kpis{ grid-template-columns: 1fr; }
}

/* Carte KPI */
.cl-kpi{
  border: 1px solid #E6EAF0;
  border-radius: 16px;
  background: #fff;
  padding: 22px;
  text-align: center;
  box-shadow: 0 10px 24px rgba(33,33,33,.06);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.cl-kpi:hover{
  transform: translateY(-2px);
  border-color: #DDE5EE;
  box-shadow: 0 16px 36px rgba(33,33,33,.08);
}

/* Conteneur de l’icône (Widget Icon / Icon Box) centré + fond adouci */
.cl-kpi .elementor-widget-icon,
.cl-kpi .elementor-icon-box-icon,
.cl-kpi .elementor-icon{
  margin: 0 auto 12px !important;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  border-radius: 14px;
  border: 1px solid #E6EAF0;
  /* Fond neutre très léger (plus doux que le gris foncé) */
  background: linear-gradient(180deg, rgba(100,181,246,.08), rgba(100,181,246,.03));
  box-shadow: inset 0 3px 10px rgba(100,181,246,.10);
}

/* Taille & couleur du pictogramme (i ou svg) */
.cl-kpi .elementor-icon i{ font-size: 26px; line-height: 1; color:#2C3E50; }
.cl-kpi .elementor-icon svg{ width:26px; height:26px; fill:#2C3E50; }

/* Titres / textes bien centrés */
.cl-kpi .elementor-heading-title,
.cl-kpi .elementor-widget-heading,
.cl-kpi .elementor-widget-text-editor{ text-align:center; }


/* =========================
   Bloc "Stack & focus"
   ========================= */

.cl-stack{
  border: 1px solid #E6EAF0;
  background: #fff;
  border-radius: 16px;
  padding: 22px;
  box-shadow: 0 10px 24px rgba(33,33,33,.06);
}

/* La liste devient une série de pills */
.cl-stack .elementor-icon-list-items{
  display: flex;
  flex-wrap: wrap;
  gap: 10px 12px;
}

/* Chaque item = pill cliquable, avec hover accent bleu */
.cl-stack .elementor-icon-list-item{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid #E6EAF0;
  background: #fff;
  border-radius: 999px;
  padding: 8px 12px;
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.cl-stack .elementor-icon-list-item:hover{
  border-color: #64B5F6;
  box-shadow: 0 0 0 4px rgba(100,181,246,.20);
  transform: translateY(-1px);
}

/* Icônes un peu plus grandes */
.cl-stack .elementor-icon-list-icon i{
  font-size: 18px;
  line-height: 1;
  color:#2C3E50;
}
.cl-stack .elementor-icon-list-icon svg{
  width: 18px;
  height: 18px;
  fill:#2C3E50;
}

/* Texte lisible */
.cl-stack .elementor-icon-list-text{
  color:#2C3E50;
  font-weight: 600;
}/* End custom CSS */
/* Start custom CSS *//* — Carte RDV (dégradé bleuL -> bleuN) — */
.cl-card--rdv{ color:#fff; background:linear-gradient(135deg, var(--cl-bleuL) 0%, var(--cl-bleuN) 100%); border:0; }
.cl-card--rdv a.elementor-button{ background:rgba(255,255,255,.12); border-radius:12px; }
.cl-card--rdv a.elementor-button:hover{ background:rgba(255,255,255,.22); }


/* 1) H1 un peu plus fin sur desktop */
@media (min-width:1024px){
  .cl-hero h1{ font-size: clamp(30px, 4.2vw, 56px); }
}

/* 2) Overlay -10% */
.cl-hero::after{
  background: linear-gradient(180deg,
    rgba(0,0,0,.22) 0%,
    rgba(0,0,0,.16) 28%,
    rgba(0,0,0,.08) 60%,
    rgba(0,0,0,0) 100%);
}

/* 4) Chips: wrap + spacing vertical doux */
.cl-hero .cl-hero-tags{ display:flex; flex-wrap:wrap; gap:.35rem .36rem; }

/* 5) Carte méta: hauteurs homogènes en 2 colonnes */
@media (max-width:1024px){
  .cl-meta__item{ min-height:72px; }
}

/* 6) Rythme titres de sections */
.cl-section .cl-section__title{ margin-top: .4rem; margin-bottom: .7rem; }

/* 3) & 7) CTA : note de confiance + focus visible */
.cl-hero .cl-btn small{
  display:block; font-weight:500; opacity:.8; margin-top:.2rem;
}
.cl-hero .cl-btn:focus-visible{ outline:2px solid #fff; outline-offset:3px; }/* End custom CSS */