.elementor-39 .elementor-element.elementor-element-06a247c{--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-39 .elementor-element.elementor-element-8deb31e{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:80px;--padding-bottom:40px;--padding-left:0px;--padding-right:0px;}.elementor-39 .elementor-element.elementor-element-909acd8{--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-39 .elementor-element.elementor-element-9554bdc.elementor-element{--align-self:center;}.elementor-39 .elementor-element.elementor-element-9554bdc{text-align:center;}.elementor-39 .elementor-element.elementor-element-e030be3{--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-39 .elementor-element.elementor-element-f16732c{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:80px;--padding-bottom:40px;--padding-left:0px;--padding-right:0px;}.elementor-39 .elementor-element.elementor-element-515e750{--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:40px;--padding-bottom:40px;--padding-left:0px;--padding-right:0px;}.elementor-widget-nested-tabs.elementor-widget-n-tabs > .e-n-tabs[data-touch-mode='false'] > .e-n-tabs-heading > .e-n-tab-title[aria-selected="false"]:hover{background:var( --e-global-color-accent );}.elementor-widget-nested-tabs.elementor-widget-n-tabs > .e-n-tabs > .e-n-tabs-heading > .e-n-tab-title[aria-selected="true"], .elementor-widget-nested-tabs.elementor-widget-n-tabs > .e-n-tabs[data-touch-mode='true'] > .e-n-tabs-heading > .e-n-tab-title[aria-selected="false"]:hover{background:var( --e-global-color-accent );}.elementor-widget-nested-tabs.elementor-widget-n-tabs > .e-n-tabs > .e-n-tabs-heading > :is( .e-n-tab-title > .e-n-tab-title-text, .e-n-tab-title ){font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-39 .elementor-element.elementor-element-038ef03{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-39 .elementor-element.elementor-element-891dca2{text-align:center;}.elementor-39 .elementor-element.elementor-element-891dca2 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:18px;font-weight:600;color:#E8063C;}.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-39 .elementor-element.elementor-element-5645c11{text-align:center;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-39 .elementor-element.elementor-element-eabcb98 .elementor-button{background-color:#FFA93A;border-radius:30px 30px 30px 30px;}.elementor-39 .elementor-element.elementor-element-eabcb98{border-radius:0px 0px 0px 0px;}.elementor-39 .elementor-element.elementor-element-29d207f{--display:flex;}.elementor-39 .elementor-element.elementor-element-10e4481{text-align:center;}.elementor-39 .elementor-element.elementor-element-10e4481 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:18px;font-weight:600;color:#E8063C;}.elementor-39 .elementor-element.elementor-element-92b98d8{text-align:center;}.elementor-39 .elementor-element.elementor-element-8cecd1e .elementor-button{background-color:#FFA93A;border-radius:30px 30px 30px 30px;}.elementor-39 .elementor-element.elementor-element-8cecd1e{border-radius:0px 0px 0px 0px;}.elementor-39 .elementor-element.elementor-element-4803683{--display:flex;}.elementor-39 .elementor-element.elementor-element-396fbcf{text-align:center;}.elementor-39 .elementor-element.elementor-element-396fbcf .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:18px;font-weight:600;color:#E8063C;}.elementor-39 .elementor-element.elementor-element-e4c484a{text-align:center;}.elementor-39 .elementor-element.elementor-element-f2e7457 .elementor-button{background-color:#FFA93A;border-radius:30px 30px 30px 30px;}.elementor-39 .elementor-element.elementor-element-f2e7457{border-radius:0px 0px 0px 0px;}.elementor-39 .elementor-element.elementor-element-d7ce8ab{--n-tabs-heading-wrap:wrap;--n-tabs-heading-overflow-x:initial;--n-tabs-title-white-space:initial;--n-tabs-title-gap:0px;--n-tabs-title-border-radius:20px 20px 20px 20px;--n-tabs-title-padding-top:5px;--n-tabs-title-padding-right:40px;--n-tabs-title-padding-bottom:5px;--n-tabs-title-padding-left:30px;--n-tabs-title-color:#000000;--n-tabs-title-color-active:#FFFFFF;}.elementor-39 .elementor-element.elementor-element-d7ce8ab.elementor-widget-n-tabs > .e-n-tabs[data-touch-mode='false'] > .e-n-tabs-heading > .e-n-tab-title[aria-selected="false"]:hover{background:#E8063C;}.elementor-39 .elementor-element.elementor-element-d7ce8ab.elementor-widget-n-tabs > .e-n-tabs > .e-n-tabs-heading > .e-n-tab-title[aria-selected="true"], .elementor-39 .elementor-element.elementor-element-d7ce8ab.elementor-widget-n-tabs > .e-n-tabs[data-touch-mode='true'] > .e-n-tabs-heading > .e-n-tab-title[aria-selected="false"]:hover{background:#E8063C;border-style:solid;}.elementor-39 .elementor-element.elementor-element-d7ce8ab.elementor-widget-n-tabs > .e-n-tabs > .e-n-tabs-heading > :is( .e-n-tab-title > .e-n-tab-title-text, .e-n-tab-title ){font-family:"Roboto", Sans-serif;font-weight:500;}.elementor-39 .elementor-element.elementor-element-b10f132{--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:40px;--padding-bottom:40px;--padding-left:0px;--padding-right:0px;}.elementor-39 .elementor-element.elementor-element-4ae140f{--display:flex;}.elementor-39 .elementor-element.elementor-element-441ef80{--display:flex;}.elementor-39 .elementor-element.elementor-element-d38b93e{--display:flex;}.elementor-39 .elementor-element.elementor-element-7e94904{--n-tabs-heading-wrap:wrap;--n-tabs-heading-overflow-x:initial;--n-tabs-title-white-space:initial;--n-tabs-title-gap:0px;--n-tabs-title-border-radius:20px 20px 20px 20px;--n-tabs-title-padding-top:5px;--n-tabs-title-padding-right:40px;--n-tabs-title-padding-bottom:5px;--n-tabs-title-padding-left:30px;--n-tabs-title-color:#000000;--n-tabs-title-color-active:#FFFFFF;}.elementor-39 .elementor-element.elementor-element-7e94904.elementor-widget-n-tabs > .e-n-tabs[data-touch-mode='false'] > .e-n-tabs-heading > .e-n-tab-title[aria-selected="false"]:hover{background:#E8063C;}.elementor-39 .elementor-element.elementor-element-7e94904.elementor-widget-n-tabs > .e-n-tabs > .e-n-tabs-heading > .e-n-tab-title[aria-selected="true"], .elementor-39 .elementor-element.elementor-element-7e94904.elementor-widget-n-tabs > .e-n-tabs[data-touch-mode='true'] > .e-n-tabs-heading > .e-n-tab-title[aria-selected="false"]:hover{background:#E8063C;border-style:solid;}.elementor-39 .elementor-element.elementor-element-7e94904.elementor-widget-n-tabs > .e-n-tabs > .e-n-tabs-heading > :is( .e-n-tab-title > .e-n-tab-title-text, .e-n-tab-title ){font-family:"Roboto", Sans-serif;font-weight:500;}.elementor-39 .elementor-element.elementor-element-0978aed{--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:40px;--padding-bottom:40px;--padding-left:0px;--padding-right:0px;}.elementor-39 .elementor-element.elementor-element-e6fde65{text-align:center;}.elementor-39 .elementor-element.elementor-element-e6fde65 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-weight:600;color:#6EC1E4;}.elementor-39 .elementor-element.elementor-element-7a93fbf{text-align:center;font-family:"Poppins", Sans-serif;font-size:12px;font-weight:400;color:#6EC1E4;}.elementor-widget-posts .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-posts .elementor-post__title, .elementor-widget-posts .elementor-post__title a{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-posts .elementor-post__meta-data{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-posts .elementor-post__excerpt p{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-posts .elementor-post__read-more{color:var( --e-global-color-accent );}.elementor-widget-posts a.elementor-post__read-more{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-posts .elementor-post__card .elementor-post__badge{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-posts .elementor-pagination{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-posts .e-load-more-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-39 .elementor-element.elementor-element-062accb{--grid-row-gap:35px;--grid-column-gap:30px;}.elementor-39 .elementor-element.elementor-element-062accb .elementor-posts-container .elementor-post__thumbnail{padding-bottom:calc( 0.66 * 100% );}.elementor-39 .elementor-element.elementor-element-062accb:after{content:"0.66";}.elementor-39 .elementor-element.elementor-element-062accb .elementor-post__thumbnail__link{width:100%;}.elementor-39 .elementor-element.elementor-element-062accb .elementor-post__meta-data span + span:before{content:"///";}.elementor-39 .elementor-element.elementor-element-062accb.elementor-posts--thumbnail-left .elementor-post__thumbnail__link{margin-right:20px;}.elementor-39 .elementor-element.elementor-element-062accb.elementor-posts--thumbnail-right .elementor-post__thumbnail__link{margin-left:20px;}.elementor-39 .elementor-element.elementor-element-062accb.elementor-posts--thumbnail-top .elementor-post__thumbnail__link{margin-bottom:20px;}.elementor-39 .elementor-element.elementor-element-062accb .elementor-post__title, .elementor-39 .elementor-element.elementor-element-062accb .elementor-post__title a{color:#000000;font-family:"Poppins", Sans-serif;font-size:14px;font-weight:600;}.elementor-39 .elementor-element.elementor-element-062accb .elementor-post__meta-data{color:#DC3E3F;font-family:"Poppins", Sans-serif;font-size:10px;font-weight:400;}.elementor-39 .elementor-element.elementor-element-062accb .elementor-post__excerpt p{color:#020101;font-family:"Poppins", Sans-serif;font-weight:400;}.elementor-39 .elementor-element.elementor-element-062accb .elementor-post__read-more{color:#3088CE;}.elementor-39 .elementor-element.elementor-element-062accb a.elementor-post__read-more{font-family:"Poppins", Sans-serif;font-weight:500;}.elementor-39 .elementor-element.elementor-element-7263be0{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:40px;--padding-bottom:40px;--padding-left:0px;--padding-right:0px;}.elementor-39 .elementor-element.elementor-element-a002e1c{--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-39 .elementor-element.elementor-element-a6d4e30{--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-39 .elementor-element.elementor-element-5a4908c{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;column-gap:0px;font-family:"Poppins", Sans-serif;font-size:12px;font-weight:700;letter-spacing:0px;color:#E8063C;}.elementor-39 .elementor-element.elementor-element-5a4908c p{margin-block-end:0px;}.elementor-39 .elementor-element.elementor-element-76f7a06{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-39 .elementor-element.elementor-element-76f7a06 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:18px;font-weight:600;color:#000000;}.elementor-39 .elementor-element.elementor-element-a802b47{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:40px;--padding-bottom:40px;--padding-left:0px;--padding-right:0px;}.elementor-39 .elementor-element.elementor-element-e45f255{--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-39 .elementor-element.elementor-element-f2fcc3c{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;column-gap:0px;font-family:"Poppins", Sans-serif;font-size:12px;font-weight:700;letter-spacing:0px;color:#E8063C;}.elementor-39 .elementor-element.elementor-element-f2fcc3c p{margin-block-end:0px;}.elementor-39 .elementor-element.elementor-element-4519129{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-39 .elementor-element.elementor-element-4519129 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:18px;font-weight:600;color:#000000;}.elementor-39 .elementor-element.elementor-element-35bc93f{--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-39 .elementor-element.elementor-element-7ec03ca{--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;}@media(max-width:767px){.elementor-39 .elementor-element.elementor-element-f16732c{--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:20px;--padding-bottom:40px;--padding-left:0px;--padding-right:0px;}.elementor-39 .elementor-element.elementor-element-f16732c.e-con{--flex-grow:0;--flex-shrink:1;}.elementor-39 .elementor-element.elementor-element-09047ed.elementor-element{--align-self:center;--flex-grow:0;--flex-shrink:1;}.elementor-39 .elementor-element.elementor-element-7e94904{--n-tabs-heading-wrap:nowrap;--n-tabs-heading-overflow-x:scroll;--n-tabs-title-white-space:nowrap;--n-tabs-gap:0px;}.elementor-39 .elementor-element.elementor-element-0978aed{--padding-top:40px;--padding-bottom:40px;--padding-left:10px;--padding-right:10px;}.elementor-39 .elementor-element.elementor-element-062accb .elementor-posts-container .elementor-post__thumbnail{padding-bottom:calc( 0.5 * 100% );}.elementor-39 .elementor-element.elementor-element-062accb:after{content:"0.5";}.elementor-39 .elementor-element.elementor-element-062accb .elementor-post__thumbnail__link{width:100%;}}@media(min-width:768px){.elementor-39 .elementor-element.elementor-element-909acd8{--width:40%;}.elementor-39 .elementor-element.elementor-element-e030be3{--width:60%;}.elementor-39 .elementor-element.elementor-element-a002e1c{--width:50%;}.elementor-39 .elementor-element.elementor-element-a6d4e30{--width:50%;}.elementor-39 .elementor-element.elementor-element-e45f255{--width:50%;}.elementor-39 .elementor-element.elementor-element-35bc93f{--width:50%;}}/* Start custom CSS for html, class: .elementor-element-a6caf15 */:root {
    --red: #e61b3a;
    --text: #111;
    --muted: #6f6f6f;
    --icon-bg: #edf1f5;
  }

  .about-wrap {
    max-width: 800px;
    padding: 40px 20px 30px;
    color: var(--text);
  }

  .about-topline {
    color: var(--red);
    font-weight: 800;
    letter-spacing: 4px;
    text-transform: uppercase;
    font-size: 12px;
  }

  .about-title {
    font-size: 34px;
    line-height: 1.08;
    margin: 0 0 18px;
    font-weight: 900;
  }

  .about-text {
    max-width: 860px;
    color: var(--muted);
    font-size: 13px;
    line-height: 1.8;
    margin: 0 0 34px;
  }

  .about-stats {
    display: flex;
    gap: 48px;
    align-items: center;
    flex-wrap: wrap;
  }

  .stat {
    display: flex;
    align-items: center;
    gap: 18px;
  }

  .stat-ico {
    width: 46px;
    height: 46px;
    border-radius: 999px;
    background: var(--icon-bg);
    display: grid;
    place-items: center;
    flex: 0 0 auto;
  }

  .stat-ico svg {
    width: 36px;
    height: 36px;
    color: #111;
  }

  .stat-number {
    font-weight: 900;
    font-size: 58px;
    line-height: 1;
    color: var(--red);
    letter-spacing: -1px;
    display: flex;
    align-items: baseline;
    gap: 10px;
    white-space: nowrap;
  }

  .stat-number .plus {
    font-size: 24px;
    line-height: 1;
    transform: translateY(2px);
    display: inline-block;
  }

  .stat-number .unit {
    font-size: 24px;
    font-weight: 900;
    color: var(--red);
  }

  .stat-sub {
    margin-top: 8px;
    font-size: 10px;
    font-weight: 800;
    color: #555;
  }

  /* Responsive */
  @media (max-width: 720px) {
    .about-title {
      font-size: 40px;
    }
    .about-text {
      font-size: 18px;
    }
    .stat-number {
      font-size: 46px;
    }
    .stat-number .unit {
      font-size: 28px;
    }
  }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-04e0269 */.features {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 25px;
}

/* CARD */
.card {
  display: flex;
  flex-direction: column;
  border-radius: 24px;
  overflow: hidden;
  background: #f3f3f3;
  height: 100%;
}

/* IMAGE */
.card-media {
  position: relative;
  height: 220px;
}

.card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ICON */
.card-icon {
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%);
  background: #eee;
  width: 60px;
  height: 60px;
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* BODY */
.card-body {
  flex: 1; /* 🔥 IMPORTANT */
  padding: 60px 25px 25px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  color: #fff;
}

/* TITRE */
.card-body h3 {
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 12px;
}

/* TEXTE */
.card-body p {
  font-size: 15px;
  line-height: 1.6;
}

/* COLORS */
.bg-green { background: #22a652; }
.bg-blue { background: #3b78c5; }
.bg-orange { background: #f4a63c; }
.bg-red { background: #e74c3c; }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-96b0035 */.features {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 25px;
}

/* CARD */
.card {
  display: flex;
  flex-direction: column;
  border-radius: 24px;
  overflow: hidden;
  background: #f3f3f3;
  height: 100%;
}

/* IMAGE */
.card-media {
  position: relative;
  height: 220px;
}

.card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ICON */
.card-icon {
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%);
  background: #eee;
  width: 60px;
  height: 60px;
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* BODY */
.card-body {
  flex: 1; /* 🔥 IMPORTANT */
  padding: 60px 25px 25px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  color: #fff;
}

/* TITRE */
.card-body h3 {
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 12px;
}

/* TEXTE */
.card-body p {
  font-size: 15px;
  line-height: 1.6;
}

/* COLORS */
.bg-green { background: #22a652; }
.bg-blue { background: #3b78c5; }
.bg-orange { background: #f4a63c; }
.bg-red { background: #e74c3c; }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-54b4fd2 */.features {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 25px;
}

/* CARD */
.card {
  display: flex;
  flex-direction: column;
  border-radius: 24px;
  overflow: hidden;
  background: #f3f3f3;
  height: 100%;
}

/* IMAGE */
.card-media {
  position: relative;
  height: 220px;
}

.card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ICON */
.card-icon {
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%);
  background: #eee;
  width: 60px;
  height: 60px;
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* BODY */
.card-body {
  flex: 1; /* 🔥 IMPORTANT */
  padding: 60px 25px 25px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  color: #fff;
}

/* TITRE */
.card-body h3 {
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 12px;
}

/* TEXTE */
.card-body p {
  font-size: 15px;
  line-height: 1.6;
}

/* COLORS */
.bg-green { background: #22a652; }
.bg-blue { background: #3b78c5; }
.bg-orange { background: #f4a63c; }
.bg-red { background: #e74c3c; }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-04e0269 */.features {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 25px;
}

/* CARD */
.card {
  display: flex;
  flex-direction: column;
  border-radius: 24px;
  overflow: hidden;
  background: #f3f3f3;
  height: 100%;
}

/* IMAGE */
.card-media {
  position: relative;
  height: 220px;
}

.card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ICON */
.card-icon {
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%);
  background: #eee;
  width: 60px;
  height: 60px;
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* BODY */
.card-body {
  flex: 1; /* 🔥 IMPORTANT */
  padding: 60px 25px 25px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  color: #fff;
}

/* TITRE */
.card-body h3 {
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 12px;
}

/* TEXTE */
.card-body p {
  font-size: 15px;
  line-height: 1.6;
}

/* COLORS */
.bg-green { background: #22a652; }
.bg-blue { background: #3b78c5; }
.bg-orange { background: #f4a63c; }
.bg-red { background: #e74c3c; }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-96b0035 */.features {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 25px;
}

/* CARD */
.card {
  display: flex;
  flex-direction: column;
  border-radius: 24px;
  overflow: hidden;
  background: #f3f3f3;
  height: 100%;
}

/* IMAGE */
.card-media {
  position: relative;
  height: 220px;
}

.card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ICON */
.card-icon {
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%);
  background: #eee;
  width: 60px;
  height: 60px;
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* BODY */
.card-body {
  flex: 1; /* 🔥 IMPORTANT */
  padding: 60px 25px 25px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  color: #fff;
}

/* TITRE */
.card-body h3 {
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 12px;
}

/* TEXTE */
.card-body p {
  font-size: 15px;
  line-height: 1.6;
}

/* COLORS */
.bg-green { background: #22a652; }
.bg-blue { background: #3b78c5; }
.bg-orange { background: #f4a63c; }
.bg-red { background: #e74c3c; }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-54b4fd2 */.features {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 25px;
}

/* CARD */
.card {
  display: flex;
  flex-direction: column;
  border-radius: 24px;
  overflow: hidden;
  background: #f3f3f3;
  height: 100%;
}

/* IMAGE */
.card-media {
  position: relative;
  height: 220px;
}

.card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ICON */
.card-icon {
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%);
  background: #eee;
  width: 60px;
  height: 60px;
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* BODY */
.card-body {
  flex: 1; /* 🔥 IMPORTANT */
  padding: 60px 25px 25px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  color: #fff;
}

/* TITRE */
.card-body h3 {
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 12px;
}

/* TEXTE */
.card-body p {
  font-size: 15px;
  line-height: 1.6;
}

/* COLORS */
.bg-green { background: #22a652; }
.bg-blue { background: #3b78c5; }
.bg-orange { background: #f4a63c; }
.bg-red { background: #e74c3c; }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-04e0269 */.features {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 25px;
}

/* CARD */
.card {
  display: flex;
  flex-direction: column;
  border-radius: 24px;
  overflow: hidden;
  background: #f3f3f3;
  height: 100%;
}

/* IMAGE */
.card-media {
  position: relative;
  height: 220px;
}

.card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ICON */
.card-icon {
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%);
  background: #eee;
  width: 60px;
  height: 60px;
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* BODY */
.card-body {
  flex: 1; /* 🔥 IMPORTANT */
  padding: 60px 25px 25px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  color: #fff;
}

/* TITRE */
.card-body h3 {
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 12px;
}

/* TEXTE */
.card-body p {
  font-size: 15px;
  line-height: 1.6;
}

/* COLORS */
.bg-green { background: #22a652; }
.bg-blue { background: #3b78c5; }
.bg-orange { background: #f4a63c; }
.bg-red { background: #e74c3c; }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-96b0035 */.features {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 25px;
}

/* CARD */
.card {
  display: flex;
  flex-direction: column;
  border-radius: 24px;
  overflow: hidden;
  background: #f3f3f3;
  height: 100%;
}

/* IMAGE */
.card-media {
  position: relative;
  height: 220px;
}

.card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ICON */
.card-icon {
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%);
  background: #eee;
  width: 60px;
  height: 60px;
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* BODY */
.card-body {
  flex: 1; /* 🔥 IMPORTANT */
  padding: 60px 25px 25px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  color: #fff;
}

/* TITRE */
.card-body h3 {
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 12px;
}

/* TEXTE */
.card-body p {
  font-size: 15px;
  line-height: 1.6;
}

/* COLORS */
.bg-green { background: #22a652; }
.bg-blue { background: #3b78c5; }
.bg-orange { background: #f4a63c; }
.bg-red { background: #e74c3c; }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-54b4fd2 */.features {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 25px;
}

/* CARD */
.card {
  display: flex;
  flex-direction: column;
  border-radius: 24px;
  overflow: hidden;
  background: #f3f3f3;
  height: 100%;
}

/* IMAGE */
.card-media {
  position: relative;
  height: 220px;
}

.card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ICON */
.card-icon {
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%);
  background: #eee;
  width: 60px;
  height: 60px;
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* BODY */
.card-body {
  flex: 1; /* 🔥 IMPORTANT */
  padding: 60px 25px 25px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  color: #fff;
}

/* TITRE */
.card-body h3 {
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 12px;
}

/* TEXTE */
.card-body p {
  font-size: 15px;
  line-height: 1.6;
}

/* COLORS */
.bg-green { background: #22a652; }
.bg-blue { background: #3b78c5; }
.bg-orange { background: #f4a63c; }
.bg-red { background: #e74c3c; }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-04e0269 */.features {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 25px;
}

/* CARD */
.card {
  display: flex;
  flex-direction: column;
  border-radius: 24px;
  overflow: hidden;
  background: #f3f3f3;
  height: 100%;
}

/* IMAGE */
.card-media {
  position: relative;
  height: 220px;
}

.card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ICON */
.card-icon {
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%);
  background: #eee;
  width: 60px;
  height: 60px;
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* BODY */
.card-body {
  flex: 1; /* 🔥 IMPORTANT */
  padding: 60px 25px 25px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  color: #fff;
}

/* TITRE */
.card-body h3 {
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 12px;
}

/* TEXTE */
.card-body p {
  font-size: 15px;
  line-height: 1.6;
}

/* COLORS */
.bg-green { background: #22a652; }
.bg-blue { background: #3b78c5; }
.bg-orange { background: #f4a63c; }
.bg-red { background: #e74c3c; }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-96b0035 */.features {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 25px;
}

/* CARD */
.card {
  display: flex;
  flex-direction: column;
  border-radius: 24px;
  overflow: hidden;
  background: #f3f3f3;
  height: 100%;
}

/* IMAGE */
.card-media {
  position: relative;
  height: 220px;
}

.card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ICON */
.card-icon {
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%);
  background: #eee;
  width: 60px;
  height: 60px;
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* BODY */
.card-body {
  flex: 1; /* 🔥 IMPORTANT */
  padding: 60px 25px 25px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  color: #fff;
}

/* TITRE */
.card-body h3 {
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 12px;
}

/* TEXTE */
.card-body p {
  font-size: 15px;
  line-height: 1.6;
}

/* COLORS */
.bg-green { background: #22a652; }
.bg-blue { background: #3b78c5; }
.bg-orange { background: #f4a63c; }
.bg-red { background: #e74c3c; }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-54b4fd2 */.features {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 25px;
}

/* CARD */
.card {
  display: flex;
  flex-direction: column;
  border-radius: 24px;
  overflow: hidden;
  background: #f3f3f3;
  height: 100%;
}

/* IMAGE */
.card-media {
  position: relative;
  height: 220px;
}

.card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ICON */
.card-icon {
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%);
  background: #eee;
  width: 60px;
  height: 60px;
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* BODY */
.card-body {
  flex: 1; /* 🔥 IMPORTANT */
  padding: 60px 25px 25px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  color: #fff;
}

/* TITRE */
.card-body h3 {
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 12px;
}

/* TEXTE */
.card-body p {
  font-size: 15px;
  line-height: 1.6;
}

/* COLORS */
.bg-green { background: #22a652; }
.bg-blue { background: #3b78c5; }
.bg-orange { background: #f4a63c; }
.bg-red { background: #e74c3c; }/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-515e750 */.elementor-element.elementor-element-515e750 {
    BACKGROUND: whitesmoke;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-85bd0fb */:root{
  --r: 22px;
  --shadow: 0 18px 40px rgba(0,0,0,.12);
  --white: #fff;
}

.features{
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 26px;
  padding: 18px;
  align-items: stretch;
}

/* CARD */
.card{
  border-radius: var(--r);
  overflow: hidden;
  box-shadow: var(--shadow);
  background: var(--white);
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
}

/* IMAGE */
.card-media{
  height: 270px;
  position: relative;
  flex-shrink: 0;
}

.card-img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* ICON */
.card-icon{
  width: 68px;
  height: 68px;
  border-radius: 14px;
  background: var(--white);
  position: absolute;
  left: 50%;
  bottom: -34px; /* chevauche réellement l'image et le body */
  transform: translateX(-50%);
  display: grid;
  place-items: center;
  box-shadow: 0 10px 24px rgba(0,0,0,.16);
  z-index: 3;
}

.card-icon svg{
  width: 34px;
  height: 34px;
  color: #111;
}

/* BODY */
.card-body{
  text-align: center;
  padding: 56px 22px 28px;
  color: #fff;
  position: relative;
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
}

/* FORME ARRONDIE */
.card-body::before{
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -78px;
  height: 110px;
  border-radius: 999px 999px 0 0;
  background: inherit;
  z-index: 1;
}

.card-body > *{
  position: relative;
  z-index: 2;
}

.card-body h3{
  margin: 0;
  font-size: 20px;
  font-weight: 800;
  letter-spacing: .2px;
  line-height: 1.2;
}

.card-body p{
  margin: 0;
  opacity: .96;
  font-size: 15px;
  line-height: 1.65;
  max-width: 26ch;
}

/* Couleurs */
.bg-green{ background: #1aa355; }
.bg-blue{ background: #2f7dd8; }
.bg-orange{ background: #f2a942; }
.bg-red{ background: #e54646; }

/* ===== RESPONSIVE ===== */

/* Grand tablette */
@media (max-width: 1200px){
  .features{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
  }

  .card-media{
    height: 250px;
  }
}

/* Tablette */
@media (max-width: 768px){
  .features{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    padding: 14px;
  }

  .card-media{
    height: 220px;
  }

  .card-icon{
    width: 62px;
    height: 62px;
    bottom: -31px;
  }

  .card-icon svg{
    width: 30px;
    height: 30px;
  }

  .card-body{
    padding: 50px 18px 24px;
  }

  .card-body::before{
    top: -70px;
    height: 98px;
  }

  .card-body h3{
    font-size: 18px;
  }

  .card-body p{
    font-size: 14px;
    max-width: 100%;
  }
}

/* Mobile */
@media (max-width: 520px){
  .features{
    grid-template-columns: 1fr;
    gap: 18px;
    padding: 12px;
  }

  .card{
    border-radius: 18px;
  }

  .card-media{
    height: 220px;
  }

  .card-icon{
    width: 58px;
    height: 58px;
    border-radius: 12px;
    bottom: -29px;
  }

  .card-icon svg{
    width: 28px;
    height: 28px;
  }

  .card-body{
    padding: 46px 18px 22px;
    min-height: auto;
  }

  .card-body::before{
    top: -64px;
    height: 90px;
    border-radius: 999px 999px 0 0;
  }

  .card-body h3{
    font-size: 17px;
  }

  .card-body p{
    font-size: 14px;
    line-height: 1.6;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a5f74c4 */.features {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 25px;
}

/* CARD */
.card {
  display: flex;
  flex-direction: column;
  border-radius: 24px;
  overflow: hidden;
  background: #f3f3f3;
  height: 100%;
}

/* IMAGE */
.card-media {
  position: relative;
  height: 220px;
}

.card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ICON */
.card-icon {
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%);
  background: #eee;
  width: 60px;
  height: 60px;
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* BODY */
.card-body {
  flex: 1; /* 🔥 IMPORTANT */
  padding: 60px 25px 25px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  color: #fff;
}

/* TITRE */
.card-body h3 {
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 12px;
}

/* TEXTE */
.card-body p {
  font-size: 15px;
  line-height: 1.6;
}

/* COLORS */
.bg-green { background: #22a652; }
.bg-blue { background: #3b78c5; }
.bg-orange { background: #f4a63c; }
.bg-red { background: #e74c3c; }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-1ba3480 */:root{
  --r: 22px;
  --shadow: 0 18px 40px rgba(0,0,0,.12);
  --white: #fff;
}

.features{
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 26px;
  padding: 18px;
  align-items: stretch;
}

/* CARD */
.card{
  border-radius: var(--r);
  overflow: hidden;
  box-shadow: var(--shadow);
  background: var(--white);
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
}

/* IMAGE */
.card-media{
  height: 270px;
  position: relative;
  flex-shrink: 0;
}

.card-img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* ICON */
.card-icon{
  width: 68px;
  height: 68px;
  border-radius: 14px;
  background: var(--white);
  position: absolute;
  left: 50%;
  bottom: -34px; /* chevauche réellement l'image et le body */
  transform: translateX(-50%);
  display: grid;
  place-items: center;
  box-shadow: 0 10px 24px rgba(0,0,0,.16);
  z-index: 3;
}

.card-icon svg{
  width: 34px;
  height: 34px;
  color: #111;
}

/* BODY */
.card-body{
  text-align: center;
  padding: 56px 22px 28px;
  color: #fff;
  position: relative;
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
}

/* FORME ARRONDIE */
.card-body::before{
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -78px;
  height: 110px;
  border-radius: 999px 999px 0 0;
  background: inherit;
  z-index: 1;
}

.card-body > *{
  position: relative;
  z-index: 2;
}

.card-body h3{
  margin: 0;
  font-size: 20px;
  font-weight: 800;
  letter-spacing: .2px;
  line-height: 1.2;
}

.card-body p{
  margin: 0;
  opacity: .96;
  font-size: 15px;
  line-height: 1.65;
  max-width: 26ch;
}

/* Couleurs */
.bg-green{ background: #1aa355; }
.bg-blue{ background: #2f7dd8; }
.bg-orange{ background: #f2a942; }
.bg-red{ background: #e54646; }

/* ===== RESPONSIVE ===== */

/* Grand tablette */
@media (max-width: 1200px){
  .features{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
  }

  .card-media{
    height: 250px;
  }
}

/* Tablette */
@media (max-width: 768px){
  .features{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    padding: 14px;
  }

  .card-media{
    height: 220px;
  }

  .card-icon{
    width: 62px;
    height: 62px;
    bottom: -31px;
  }

  .card-icon svg{
    width: 30px;
    height: 30px;
  }

  .card-body{
    padding: 50px 18px 24px;
  }

  .card-body::before{
    top: -70px;
    height: 98px;
  }

  .card-body h3{
    font-size: 18px;
  }

  .card-body p{
    font-size: 14px;
    max-width: 100%;
  }
}

/* Mobile */
@media (max-width: 520px){
  .features{
    grid-template-columns: 1fr;
    gap: 18px;
    padding: 12px;
  }

  .card{
    border-radius: 18px;
  }

  .card-media{
    height: 220px;
  }

  .card-icon{
    width: 58px;
    height: 58px;
    border-radius: 12px;
    bottom: -29px;
  }

  .card-icon svg{
    width: 28px;
    height: 28px;
  }

  .card-body{
    padding: 46px 18px 22px;
    min-height: auto;
  }

  .card-body::before{
    top: -64px;
    height: 90px;
    border-radius: 999px 999px 0 0;
  }

  .card-body h3{
    font-size: 17px;
  }

  .card-body p{
    font-size: 14px;
    line-height: 1.6;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-85bd0fb */:root{
  --r: 22px;
  --shadow: 0 18px 40px rgba(0,0,0,.12);
  --white: #fff;
}

.features{
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 26px;
  padding: 18px;
  align-items: stretch;
}

/* CARD */
.card{
  border-radius: var(--r);
  overflow: hidden;
  box-shadow: var(--shadow);
  background: var(--white);
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
}

/* IMAGE */
.card-media{
  height: 270px;
  position: relative;
  flex-shrink: 0;
}

.card-img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* ICON */
.card-icon{
  width: 68px;
  height: 68px;
  border-radius: 14px;
  background: var(--white);
  position: absolute;
  left: 50%;
  bottom: -34px; /* chevauche réellement l'image et le body */
  transform: translateX(-50%);
  display: grid;
  place-items: center;
  box-shadow: 0 10px 24px rgba(0,0,0,.16);
  z-index: 3;
}

.card-icon svg{
  width: 34px;
  height: 34px;
  color: #111;
}

/* BODY */
.card-body{
  text-align: center;
  padding: 56px 22px 28px;
  color: #fff;
  position: relative;
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
}

/* FORME ARRONDIE */
.card-body::before{
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -78px;
  height: 110px;
  border-radius: 999px 999px 0 0;
  background: inherit;
  z-index: 1;
}

.card-body > *{
  position: relative;
  z-index: 2;
}

.card-body h3{
  margin: 0;
  font-size: 20px;
  font-weight: 800;
  letter-spacing: .2px;
  line-height: 1.2;
}

.card-body p{
  margin: 0;
  opacity: .96;
  font-size: 15px;
  line-height: 1.65;
  max-width: 26ch;
}

/* Couleurs */
.bg-green{ background: #1aa355; }
.bg-blue{ background: #2f7dd8; }
.bg-orange{ background: #f2a942; }
.bg-red{ background: #e54646; }

/* ===== RESPONSIVE ===== */

/* Grand tablette */
@media (max-width: 1200px){
  .features{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
  }

  .card-media{
    height: 250px;
  }
}

/* Tablette */
@media (max-width: 768px){
  .features{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    padding: 14px;
  }

  .card-media{
    height: 220px;
  }

  .card-icon{
    width: 62px;
    height: 62px;
    bottom: -31px;
  }

  .card-icon svg{
    width: 30px;
    height: 30px;
  }

  .card-body{
    padding: 50px 18px 24px;
  }

  .card-body::before{
    top: -70px;
    height: 98px;
  }

  .card-body h3{
    font-size: 18px;
  }

  .card-body p{
    font-size: 14px;
    max-width: 100%;
  }
}

/* Mobile */
@media (max-width: 520px){
  .features{
    grid-template-columns: 1fr;
    gap: 18px;
    padding: 12px;
  }

  .card{
    border-radius: 18px;
  }

  .card-media{
    height: 220px;
  }

  .card-icon{
    width: 58px;
    height: 58px;
    border-radius: 12px;
    bottom: -29px;
  }

  .card-icon svg{
    width: 28px;
    height: 28px;
  }

  .card-body{
    padding: 46px 18px 22px;
    min-height: auto;
  }

  .card-body::before{
    top: -64px;
    height: 90px;
    border-radius: 999px 999px 0 0;
  }

  .card-body h3{
    font-size: 17px;
  }

  .card-body p{
    font-size: 14px;
    line-height: 1.6;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a5f74c4 */.features {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 25px;
}

/* CARD */
.card {
  display: flex;
  flex-direction: column;
  border-radius: 24px;
  overflow: hidden;
  background: #f3f3f3;
  height: 100%;
}

/* IMAGE */
.card-media {
  position: relative;
  height: 220px;
}

.card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ICON */
.card-icon {
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%);
  background: #eee;
  width: 60px;
  height: 60px;
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* BODY */
.card-body {
  flex: 1; /* 🔥 IMPORTANT */
  padding: 60px 25px 25px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  color: #fff;
}

/* TITRE */
.card-body h3 {
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 12px;
}

/* TEXTE */
.card-body p {
  font-size: 15px;
  line-height: 1.6;
}

/* COLORS */
.bg-green { background: #22a652; }
.bg-blue { background: #3b78c5; }
.bg-orange { background: #f4a63c; }
.bg-red { background: #e74c3c; }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-1ba3480 */:root{
  --r: 22px;
  --shadow: 0 18px 40px rgba(0,0,0,.12);
  --white: #fff;
}

.features{
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 26px;
  padding: 18px;
  align-items: stretch;
}

/* CARD */
.card{
  border-radius: var(--r);
  overflow: hidden;
  box-shadow: var(--shadow);
  background: var(--white);
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
}

/* IMAGE */
.card-media{
  height: 270px;
  position: relative;
  flex-shrink: 0;
}

.card-img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* ICON */
.card-icon{
  width: 68px;
  height: 68px;
  border-radius: 14px;
  background: var(--white);
  position: absolute;
  left: 50%;
  bottom: -34px; /* chevauche réellement l'image et le body */
  transform: translateX(-50%);
  display: grid;
  place-items: center;
  box-shadow: 0 10px 24px rgba(0,0,0,.16);
  z-index: 3;
}

.card-icon svg{
  width: 34px;
  height: 34px;
  color: #111;
}

/* BODY */
.card-body{
  text-align: center;
  padding: 56px 22px 28px;
  color: #fff;
  position: relative;
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
}

/* FORME ARRONDIE */
.card-body::before{
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -78px;
  height: 110px;
  border-radius: 999px 999px 0 0;
  background: inherit;
  z-index: 1;
}

.card-body > *{
  position: relative;
  z-index: 2;
}

.card-body h3{
  margin: 0;
  font-size: 20px;
  font-weight: 800;
  letter-spacing: .2px;
  line-height: 1.2;
}

.card-body p{
  margin: 0;
  opacity: .96;
  font-size: 15px;
  line-height: 1.65;
  max-width: 26ch;
}

/* Couleurs */
.bg-green{ background: #1aa355; }
.bg-blue{ background: #2f7dd8; }
.bg-orange{ background: #f2a942; }
.bg-red{ background: #e54646; }

/* ===== RESPONSIVE ===== */

/* Grand tablette */
@media (max-width: 1200px){
  .features{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
  }

  .card-media{
    height: 250px;
  }
}

/* Tablette */
@media (max-width: 768px){
  .features{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    padding: 14px;
  }

  .card-media{
    height: 220px;
  }

  .card-icon{
    width: 62px;
    height: 62px;
    bottom: -31px;
  }

  .card-icon svg{
    width: 30px;
    height: 30px;
  }

  .card-body{
    padding: 50px 18px 24px;
  }

  .card-body::before{
    top: -70px;
    height: 98px;
  }

  .card-body h3{
    font-size: 18px;
  }

  .card-body p{
    font-size: 14px;
    max-width: 100%;
  }
}

/* Mobile */
@media (max-width: 520px){
  .features{
    grid-template-columns: 1fr;
    gap: 18px;
    padding: 12px;
  }

  .card{
    border-radius: 18px;
  }

  .card-media{
    height: 220px;
  }

  .card-icon{
    width: 58px;
    height: 58px;
    border-radius: 12px;
    bottom: -29px;
  }

  .card-icon svg{
    width: 28px;
    height: 28px;
  }

  .card-body{
    padding: 46px 18px 22px;
    min-height: auto;
  }

  .card-body::before{
    top: -64px;
    height: 90px;
    border-radius: 999px 999px 0 0;
  }

  .card-body h3{
    font-size: 17px;
  }

  .card-body p{
    font-size: 14px;
    line-height: 1.6;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-85bd0fb */:root{
  --r: 22px;
  --shadow: 0 18px 40px rgba(0,0,0,.12);
  --white: #fff;
}

.features{
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 26px;
  padding: 18px;
  align-items: stretch;
}

/* CARD */
.card{
  border-radius: var(--r);
  overflow: hidden;
  box-shadow: var(--shadow);
  background: var(--white);
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
}

/* IMAGE */
.card-media{
  height: 270px;
  position: relative;
  flex-shrink: 0;
}

.card-img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* ICON */
.card-icon{
  width: 68px;
  height: 68px;
  border-radius: 14px;
  background: var(--white);
  position: absolute;
  left: 50%;
  bottom: -34px; /* chevauche réellement l'image et le body */
  transform: translateX(-50%);
  display: grid;
  place-items: center;
  box-shadow: 0 10px 24px rgba(0,0,0,.16);
  z-index: 3;
}

.card-icon svg{
  width: 34px;
  height: 34px;
  color: #111;
}

/* BODY */
.card-body{
  text-align: center;
  padding: 56px 22px 28px;
  color: #fff;
  position: relative;
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
}

/* FORME ARRONDIE */
.card-body::before{
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -78px;
  height: 110px;
  border-radius: 999px 999px 0 0;
  background: inherit;
  z-index: 1;
}

.card-body > *{
  position: relative;
  z-index: 2;
}

.card-body h3{
  margin: 0;
  font-size: 20px;
  font-weight: 800;
  letter-spacing: .2px;
  line-height: 1.2;
}

.card-body p{
  margin: 0;
  opacity: .96;
  font-size: 15px;
  line-height: 1.65;
  max-width: 26ch;
}

/* Couleurs */
.bg-green{ background: #1aa355; }
.bg-blue{ background: #2f7dd8; }
.bg-orange{ background: #f2a942; }
.bg-red{ background: #e54646; }

/* ===== RESPONSIVE ===== */

/* Grand tablette */
@media (max-width: 1200px){
  .features{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
  }

  .card-media{
    height: 250px;
  }
}

/* Tablette */
@media (max-width: 768px){
  .features{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    padding: 14px;
  }

  .card-media{
    height: 220px;
  }

  .card-icon{
    width: 62px;
    height: 62px;
    bottom: -31px;
  }

  .card-icon svg{
    width: 30px;
    height: 30px;
  }

  .card-body{
    padding: 50px 18px 24px;
  }

  .card-body::before{
    top: -70px;
    height: 98px;
  }

  .card-body h3{
    font-size: 18px;
  }

  .card-body p{
    font-size: 14px;
    max-width: 100%;
  }
}

/* Mobile */
@media (max-width: 520px){
  .features{
    grid-template-columns: 1fr;
    gap: 18px;
    padding: 12px;
  }

  .card{
    border-radius: 18px;
  }

  .card-media{
    height: 220px;
  }

  .card-icon{
    width: 58px;
    height: 58px;
    border-radius: 12px;
    bottom: -29px;
  }

  .card-icon svg{
    width: 28px;
    height: 28px;
  }

  .card-body{
    padding: 46px 18px 22px;
    min-height: auto;
  }

  .card-body::before{
    top: -64px;
    height: 90px;
    border-radius: 999px 999px 0 0;
  }

  .card-body h3{
    font-size: 17px;
  }

  .card-body p{
    font-size: 14px;
    line-height: 1.6;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a5f74c4 */.features {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 25px;
}

/* CARD */
.card {
  display: flex;
  flex-direction: column;
  border-radius: 24px;
  overflow: hidden;
  background: #f3f3f3;
  height: 100%;
}

/* IMAGE */
.card-media {
  position: relative;
  height: 220px;
}

.card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ICON */
.card-icon {
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%);
  background: #eee;
  width: 60px;
  height: 60px;
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* BODY */
.card-body {
  flex: 1; /* 🔥 IMPORTANT */
  padding: 60px 25px 25px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  color: #fff;
}

/* TITRE */
.card-body h3 {
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 12px;
}

/* TEXTE */
.card-body p {
  font-size: 15px;
  line-height: 1.6;
}

/* COLORS */
.bg-green { background: #22a652; }
.bg-blue { background: #3b78c5; }
.bg-orange { background: #f4a63c; }
.bg-red { background: #e74c3c; }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-1ba3480 */:root{
  --r: 22px;
  --shadow: 0 18px 40px rgba(0,0,0,.12);
  --white: #fff;
}

.features{
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 26px;
  padding: 18px;
  align-items: stretch;
}

/* CARD */
.card{
  border-radius: var(--r);
  overflow: hidden;
  box-shadow: var(--shadow);
  background: var(--white);
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
}

/* IMAGE */
.card-media{
  height: 270px;
  position: relative;
  flex-shrink: 0;
}

.card-img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* ICON */
.card-icon{
  width: 68px;
  height: 68px;
  border-radius: 14px;
  background: var(--white);
  position: absolute;
  left: 50%;
  bottom: -34px; /* chevauche réellement l'image et le body */
  transform: translateX(-50%);
  display: grid;
  place-items: center;
  box-shadow: 0 10px 24px rgba(0,0,0,.16);
  z-index: 3;
}

.card-icon svg{
  width: 34px;
  height: 34px;
  color: #111;
}

/* BODY */
.card-body{
  text-align: center;
  padding: 56px 22px 28px;
  color: #fff;
  position: relative;
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
}

/* FORME ARRONDIE */
.card-body::before{
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -78px;
  height: 110px;
  border-radius: 999px 999px 0 0;
  background: inherit;
  z-index: 1;
}

.card-body > *{
  position: relative;
  z-index: 2;
}

.card-body h3{
  margin: 0;
  font-size: 20px;
  font-weight: 800;
  letter-spacing: .2px;
  line-height: 1.2;
}

.card-body p{
  margin: 0;
  opacity: .96;
  font-size: 15px;
  line-height: 1.65;
  max-width: 26ch;
}

/* Couleurs */
.bg-green{ background: #1aa355; }
.bg-blue{ background: #2f7dd8; }
.bg-orange{ background: #f2a942; }
.bg-red{ background: #e54646; }

/* ===== RESPONSIVE ===== */

/* Grand tablette */
@media (max-width: 1200px){
  .features{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
  }

  .card-media{
    height: 250px;
  }
}

/* Tablette */
@media (max-width: 768px){
  .features{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    padding: 14px;
  }

  .card-media{
    height: 220px;
  }

  .card-icon{
    width: 62px;
    height: 62px;
    bottom: -31px;
  }

  .card-icon svg{
    width: 30px;
    height: 30px;
  }

  .card-body{
    padding: 50px 18px 24px;
  }

  .card-body::before{
    top: -70px;
    height: 98px;
  }

  .card-body h3{
    font-size: 18px;
  }

  .card-body p{
    font-size: 14px;
    max-width: 100%;
  }
}

/* Mobile */
@media (max-width: 520px){
  .features{
    grid-template-columns: 1fr;
    gap: 18px;
    padding: 12px;
  }

  .card{
    border-radius: 18px;
  }

  .card-media{
    height: 220px;
  }

  .card-icon{
    width: 58px;
    height: 58px;
    border-radius: 12px;
    bottom: -29px;
  }

  .card-icon svg{
    width: 28px;
    height: 28px;
  }

  .card-body{
    padding: 46px 18px 22px;
    min-height: auto;
  }

  .card-body::before{
    top: -64px;
    height: 90px;
    border-radius: 999px 999px 0 0;
  }

  .card-body h3{
    font-size: 17px;
  }

  .card-body p{
    font-size: 14px;
    line-height: 1.6;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-85bd0fb */:root{
  --r: 22px;
  --shadow: 0 18px 40px rgba(0,0,0,.12);
  --white: #fff;
}

.features{
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 26px;
  padding: 18px;
  align-items: stretch;
}

/* CARD */
.card{
  border-radius: var(--r);
  overflow: hidden;
  box-shadow: var(--shadow);
  background: var(--white);
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
}

/* IMAGE */
.card-media{
  height: 270px;
  position: relative;
  flex-shrink: 0;
}

.card-img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* ICON */
.card-icon{
  width: 68px;
  height: 68px;
  border-radius: 14px;
  background: var(--white);
  position: absolute;
  left: 50%;
  bottom: -34px; /* chevauche réellement l'image et le body */
  transform: translateX(-50%);
  display: grid;
  place-items: center;
  box-shadow: 0 10px 24px rgba(0,0,0,.16);
  z-index: 3;
}

.card-icon svg{
  width: 34px;
  height: 34px;
  color: #111;
}

/* BODY */
.card-body{
  text-align: center;
  padding: 56px 22px 28px;
  color: #fff;
  position: relative;
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
}

/* FORME ARRONDIE */
.card-body::before{
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -78px;
  height: 110px;
  border-radius: 999px 999px 0 0;
  background: inherit;
  z-index: 1;
}

.card-body > *{
  position: relative;
  z-index: 2;
}

.card-body h3{
  margin: 0;
  font-size: 20px;
  font-weight: 800;
  letter-spacing: .2px;
  line-height: 1.2;
}

.card-body p{
  margin: 0;
  opacity: .96;
  font-size: 15px;
  line-height: 1.65;
  max-width: 26ch;
}

/* Couleurs */
.bg-green{ background: #1aa355; }
.bg-blue{ background: #2f7dd8; }
.bg-orange{ background: #f2a942; }
.bg-red{ background: #e54646; }

/* ===== RESPONSIVE ===== */

/* Grand tablette */
@media (max-width: 1200px){
  .features{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
  }

  .card-media{
    height: 250px;
  }
}

/* Tablette */
@media (max-width: 768px){
  .features{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    padding: 14px;
  }

  .card-media{
    height: 220px;
  }

  .card-icon{
    width: 62px;
    height: 62px;
    bottom: -31px;
  }

  .card-icon svg{
    width: 30px;
    height: 30px;
  }

  .card-body{
    padding: 50px 18px 24px;
  }

  .card-body::before{
    top: -70px;
    height: 98px;
  }

  .card-body h3{
    font-size: 18px;
  }

  .card-body p{
    font-size: 14px;
    max-width: 100%;
  }
}

/* Mobile */
@media (max-width: 520px){
  .features{
    grid-template-columns: 1fr;
    gap: 18px;
    padding: 12px;
  }

  .card{
    border-radius: 18px;
  }

  .card-media{
    height: 220px;
  }

  .card-icon{
    width: 58px;
    height: 58px;
    border-radius: 12px;
    bottom: -29px;
  }

  .card-icon svg{
    width: 28px;
    height: 28px;
  }

  .card-body{
    padding: 46px 18px 22px;
    min-height: auto;
  }

  .card-body::before{
    top: -64px;
    height: 90px;
    border-radius: 999px 999px 0 0;
  }

  .card-body h3{
    font-size: 17px;
  }

  .card-body p{
    font-size: 14px;
    line-height: 1.6;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a5f74c4 */.features {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 25px;
}

/* CARD */
.card {
  display: flex;
  flex-direction: column;
  border-radius: 24px;
  overflow: hidden;
  background: #f3f3f3;
  height: 100%;
}

/* IMAGE */
.card-media {
  position: relative;
  height: 220px;
}

.card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ICON */
.card-icon {
  position: absolute;
  bottom: -30px;
  left: 50%;
  transform: translateX(-50%);
  background: #eee;
  width: 60px;
  height: 60px;
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* BODY */
.card-body {
  flex: 1; /* 🔥 IMPORTANT */
  padding: 60px 25px 25px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  color: #fff;
}

/* TITRE */
.card-body h3 {
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 12px;
}

/* TEXTE */
.card-body p {
  font-size: 15px;
  line-height: 1.6;
}

/* COLORS */
.bg-green { background: #22a652; }
.bg-blue { background: #3b78c5; }
.bg-orange { background: #f4a63c; }
.bg-red { background: #e74c3c; }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-1ba3480 */:root{
  --r: 22px;
  --shadow: 0 18px 40px rgba(0,0,0,.12);
  --white: #fff;
}

.features{
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 26px;
  padding: 18px;
  align-items: stretch;
}

/* CARD */
.card{
  border-radius: var(--r);
  overflow: hidden;
  box-shadow: var(--shadow);
  background: var(--white);
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
}

/* IMAGE */
.card-media{
  height: 270px;
  position: relative;
  flex-shrink: 0;
}

.card-img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* ICON */
.card-icon{
  width: 68px;
  height: 68px;
  border-radius: 14px;
  background: var(--white);
  position: absolute;
  left: 50%;
  bottom: -34px; /* chevauche réellement l'image et le body */
  transform: translateX(-50%);
  display: grid;
  place-items: center;
  box-shadow: 0 10px 24px rgba(0,0,0,.16);
  z-index: 3;
}

.card-icon svg{
  width: 34px;
  height: 34px;
  color: #111;
}

/* BODY */
.card-body{
  text-align: center;
  padding: 56px 22px 28px;
  color: #fff;
  position: relative;
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
}

/* FORME ARRONDIE */
.card-body::before{
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -78px;
  height: 110px;
  border-radius: 999px 999px 0 0;
  background: inherit;
  z-index: 1;
}

.card-body > *{
  position: relative;
  z-index: 2;
}

.card-body h3{
  margin: 0;
  font-size: 20px;
  font-weight: 800;
  letter-spacing: .2px;
  line-height: 1.2;
}

.card-body p{
  margin: 0;
  opacity: .96;
  font-size: 15px;
  line-height: 1.65;
  max-width: 26ch;
}

/* Couleurs */
.bg-green{ background: #1aa355; }
.bg-blue{ background: #2f7dd8; }
.bg-orange{ background: #f2a942; }
.bg-red{ background: #e54646; }

/* ===== RESPONSIVE ===== */

/* Grand tablette */
@media (max-width: 1200px){
  .features{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
  }

  .card-media{
    height: 250px;
  }
}

/* Tablette */
@media (max-width: 768px){
  .features{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    padding: 14px;
  }

  .card-media{
    height: 220px;
  }

  .card-icon{
    width: 62px;
    height: 62px;
    bottom: -31px;
  }

  .card-icon svg{
    width: 30px;
    height: 30px;
  }

  .card-body{
    padding: 50px 18px 24px;
  }

  .card-body::before{
    top: -70px;
    height: 98px;
  }

  .card-body h3{
    font-size: 18px;
  }

  .card-body p{
    font-size: 14px;
    max-width: 100%;
  }
}

/* Mobile */
@media (max-width: 520px){
  .features{
    grid-template-columns: 1fr;
    gap: 18px;
    padding: 12px;
  }

  .card{
    border-radius: 18px;
  }

  .card-media{
    height: 220px;
  }

  .card-icon{
    width: 58px;
    height: 58px;
    border-radius: 12px;
    bottom: -29px;
  }

  .card-icon svg{
    width: 28px;
    height: 28px;
  }

  .card-body{
    padding: 46px 18px 22px;
    min-height: auto;
  }

  .card-body::before{
    top: -64px;
    height: 90px;
    border-radius: 999px 999px 0 0;
  }

  .card-body h3{
    font-size: 17px;
  }

  .card-body p{
    font-size: 14px;
    line-height: 1.6;
  }
}/* End custom CSS */
/* Start custom CSS for nested-tabs, class: .elementor-element-7e94904 */:root{
  --r: 22px;
  --shadow: 0 18px 40px rgba(0,0,0,.12);
  --white: #fff;
}

.features{
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 26px;
  padding: 18px;
  align-items: stretch;
}

/* CARD */
.card{
  border-radius: var(--r);
  overflow: hidden;
  box-shadow: var(--shadow);
  background: var(--white);
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
}

/* IMAGE */
.card-media{
  height: 270px;
  position: relative;
  flex-shrink: 0;
}

.card-img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* ICON */
.card-icon{
  width: 68px;
  height: 68px;
  border-radius: 14px;
  background: var(--white);
  position: absolute;
  left: 50%;
  bottom: -34px; /* chevauche réellement l'image et le body */
  transform: translateX(-50%);
  display: grid;
  place-items: center;
  box-shadow: 0 10px 24px rgba(0,0,0,.16);
  z-index: 3;
}

.card-icon svg{
  width: 34px;
  height: 34px;
  color: #111;
}

/* BODY */
.card-body{
  text-align: center;
  padding: 56px 22px 28px;
  color: #fff;
  position: relative;
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 12px;
}

/* FORME ARRONDIE */
.card-body::before{
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -78px;
  height: 110px;
  border-radius: 999px 999px 0 0;
  background: inherit;
  z-index: 1;
}

.card-body > *{
  position: relative;
  z-index: 2;
}

.card-body h3{
  margin: 0;
  font-size: 20px;
  font-weight: 800;
  letter-spacing: .2px;
  line-height: 1.2;
}

.card-body p{
  margin: 0;
  opacity: .96;
  font-size: 15px;
  line-height: 1.65;
  max-width: 26ch;
}

/* Couleurs */
.bg-green{ background: #1aa355; }
.bg-blue{ background: #2f7dd8; }
.bg-orange{ background: #f2a942; }
.bg-red{ background: #e54646; }

/* ===== RESPONSIVE ===== */

/* Grand tablette */
@media (max-width: 1200px){
  .features{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
  }

  .card-media{
    height: 250px;
  }
}

/* Tablette */
@media (max-width: 768px){
  .features{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    padding: 14px;
  }

  .card-media{
    height: 220px;
  }

  .card-icon{
    width: 62px;
    height: 62px;
    bottom: -31px;
  }

  .card-icon svg{
    width: 30px;
    height: 30px;
  }

  .card-body{
    padding: 50px 18px 24px;
  }

  .card-body::before{
    top: -70px;
    height: 98px;
  }

  .card-body h3{
    font-size: 18px;
  }

  .card-body p{
    font-size: 14px;
    max-width: 100%;
  }
}

/* Mobile */
@media (max-width: 520px){
  .features{
    grid-template-columns: 1fr;
    gap: 18px;
    padding: 12px;
  }

  .card{
    border-radius: 18px;
  }

  .card-media{
    height: 220px;
  }

  .card-icon{
    width: 58px;
    height: 58px;
    border-radius: 12px;
    bottom: -29px;
  }

  .card-icon svg{
    width: 28px;
    height: 28px;
  }

  .card-body{
    padding: 46px 18px 22px;
    min-height: auto;
  }

  .card-body::before{
    top: -64px;
    height: 90px;
    border-radius: 999px 999px 0 0;
  }

  .card-body h3{
    font-size: 17px;
  }

  .card-body p{
    font-size: 14px;
    line-height: 1.6;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-b10f132 *//* Tabs en ligne */
.e-n-tabs-heading{
  display:flex !important;
  flex-wrap:nowrap !important;
  gap:10px;
  overflow-x:auto !important;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
}

.e-n-tabs-heading::-webkit-scrollbar{
  display:none;
}

/* Empêche les boutons de se casser sur 2 lignes */
.e-n-tabs-heading button{
  flex:0 0 auto !important;
  white-space:nowrap;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-fe57344 */<style>
.faq-wrap{
  max-width:420px;
  margin:20px auto;
}

/* ====== ITEM ====== */
.faq-item{
  border-radius:26px;
  overflow:hidden;
  margin:14px 0;
  background:#f6f1e8;
  transition:.3s ease;
}

/* remove default marker */
.faq-item > summary{ list-style:none; }
.faq-item > summary::-webkit-details-marker{ display:none; }

/* ====== SUMMARY ====== */
.faq-item > summary{
  cursor:pointer;
  padding:12px 22px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  font-weight:700;
  color:#2f2f2f;
  border-radius:26px;
  transition:.3s ease;
}

/* TITLE */
.faq-title{
  font-size:14px;
  line-height:1.3;
}

/* ====== RIGHT BUTTON ====== */
.faq-btn{
  flex:0 0 auto;
  width:38px;
  height:38px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:#e9e1d5;
  border:1px solid rgba(0,0,0,.05);
  transition:.3s ease;
}

/* ====== CHEVRON ====== */
.faq-chevron{
  width:8px;
  height:8px;
  border-right:3px solid #444;
  border-bottom:3px solid #444;
  transform:rotate(45deg);
  transition:.25s ease;
}

/* ====== OPEN STATE ====== */
details[open]{
  background:#ffffff;
  border:1px solid #e6e6e6;
  box-shadow:0 8px 22px rgba(0,0,0,.06);
}

/* blue header when open */
details[open] > summary{
  background:#2e86c8;
  color:#fff;
}

/* red circle when open */
details[open] .faq-btn{
  background:#e80b3c;
  border:none;
}

/* white chevron when open */
details[open] .faq-chevron{
  border-color:#fff;
  transform:rotate(-135deg);
}

/* ====== CONTENT ====== */
.faq-content{
  padding:18px 22px 22px;
  color:#666;
  font-size:12px;
  line-height:1.6;
  background:#fff;
  border:1px solid #e6e6e6;
  border-top:none;
  border-radius:0 0 26px 26px;
}

/* hide content when closed */
details:not([open]) .faq-content{
  display:none;
}

@media (max-width:560px){
  .faq-title{ font-size:14px; }
  .faq-btn{ width:42px; height:42px; }
}
</style>/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-da5bf1d */<style>
.faq-wrap{
  max-width:420px;
  margin:20px auto;
}

/* ====== ITEM ====== */
.faq-item{
  border-radius:26px;
  overflow:hidden;
  margin:14px 0;
  background:#f6f1e8;
  transition:.3s ease;
}

/* remove default marker */
.faq-item > summary{ list-style:none; }
.faq-item > summary::-webkit-details-marker{ display:none; }

/* ====== SUMMARY ====== */
.faq-item > summary{
  cursor:pointer;
  padding:12px 22px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  font-weight:700;
  color:#2f2f2f;
  border-radius:26px;
  transition:.3s ease;
}

/* TITLE */
.faq-title{
  font-size:14px;
  line-height:1.3;
}

/* ====== RIGHT BUTTON ====== */
.faq-btn{
  flex:0 0 auto;
  width:38px;
  height:38px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:#e9e1d5;
  border:1px solid rgba(0,0,0,.05);
  transition:.3s ease;
}

/* ====== CHEVRON ====== */
.faq-chevron{
  width:8px;
  height:8px;
  border-right:3px solid #444;
  border-bottom:3px solid #444;
  transform:rotate(45deg);
  transition:.25s ease;
}

/* ====== OPEN STATE ====== */
details[open]{
  background:#ffffff;
  border:1px solid #e6e6e6;
  box-shadow:0 8px 22px rgba(0,0,0,.06);
}

/* blue header when open */
details[open] > summary{
  background:#2e86c8;
  color:#fff;
}

/* red circle when open */
details[open] .faq-btn{
  background:#e80b3c;
  border:none;
}

/* white chevron when open */
details[open] .faq-chevron{
  border-color:#fff;
  transform:rotate(-135deg);
}

/* ====== CONTENT ====== */
.faq-content{
  padding:18px 22px 22px;
  color:#666;
  font-size:12px;
  line-height:1.6;
  background:#fff;
  border:1px solid #e6e6e6;
  border-top:none;
  border-radius:0 0 26px 26px;
}

/* hide content when closed */
details:not([open]) .faq-content{
  display:none;
}

@media (max-width:560px){
  .faq-title{ font-size:14px; }
  .faq-btn{ width:42px; height:42px; }
}
</style>/* End custom CSS */
/* Start custom CSS */div#n2-ss-1 .n2-bar-justify-content-center{
    background: #ffffff;
}
div#n2-ss-1 .n2-bar-justify-content-center {
    justify-content: center;
    border-radius: 20px;
    padding: 0px 10px;
}
div#n2-ss-1 .nextend-bullet-bar .n2-bullet.n2-active {
    background: #dc3e3f;
}
div#n2-ss-1 .nextend-bullet-bar .n2-bullet {
    background: #b5b5b5;
}

.e-n-tabs-heading {
    margin-left: 10px;
}/* End custom CSS */