.elementor-545 .elementor-element.elementor-element-17adee4{--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;--margin-top:-82px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-545 .elementor-element.elementor-element-c4973ed{width:var( --container-widget-width, 98.766% );max-width:98.766%;--container-widget-width:98.766%;--container-widget-flex-grow:0;}.elementor-545 .elementor-element.elementor-element-c4973ed.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-545 .elementor-element.elementor-element-daa34bb{--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;border-style:solid;--border-style:solid;border-width:1px 0px 1px 0px;--border-top-width:1px;--border-right-width:0px;--border-bottom-width:1px;--border-left-width:0px;border-color:#CDCDCD;--border-color:#CDCDCD;--border-radius:1px 0px 1px 0px;--margin-top:-64px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-545 .elementor-element.elementor-element-8e290f8{width:100%;max-width:100%;}.elementor-545 .elementor-element.elementor-element-8e290f8.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-545 .elementor-element.elementor-element-93c22ab{--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-545 .elementor-element.elementor-element-f683a22{--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-545 .elementor-element.elementor-element-f683a22:not(.elementor-motion-effects-element-type-background), .elementor-545 .elementor-element.elementor-element-f683a22 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F7F9FC;}.elementor-545 .elementor-element.elementor-element-2e5f511{width:var( --container-widget-width, 99.031% );max-width:99.031%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;--container-widget-width:99.031%;--container-widget-flex-grow:0;}.elementor-545 .elementor-element.elementor-element-2e5f511.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-545 .elementor-element.elementor-element-720f8ba{--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-545 .elementor-element.elementor-element-14eeb77{margin:-47px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-545 .elementor-element.elementor-element-e0e24bb{--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;--margin-top:-65px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-545 .elementor-element.elementor-element-e0e24bb:not(.elementor-motion-effects-element-type-background), .elementor-545 .elementor-element.elementor-element-e0e24bb > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F8FAFC;}.elementor-545 .elementor-element.elementor-element-db1c78f{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-545 .elementor-element.elementor-element-d2d30ef{width:var( --container-widget-width, 98.988% );max-width:98.988%;--container-widget-width:98.988%;--container-widget-flex-grow:0;}.elementor-545 .elementor-element.elementor-element-d2d30ef.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-545 .elementor-element.elementor-element-dad2ca2{--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-545 .elementor-element.elementor-element-9b1cf09{width:var( --container-widget-width, 99.095% );max-width:99.095%;--container-widget-width:99.095%;--container-widget-flex-grow:0;}.elementor-545 .elementor-element.elementor-element-9b1cf09.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-545 .elementor-element.elementor-element-5677389{--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;--margin-top:-86px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-545 .elementor-element.elementor-element-ef792ac{width:var( --container-widget-width, 102.664% );max-width:102.664%;--container-widget-width:102.664%;--container-widget-flex-grow:0;}.elementor-545 .elementor-element.elementor-element-ef792ac.elementor-element{--flex-grow:0;--flex-shrink:0;}@media(max-width:767px){.elementor-545 .elementor-element.elementor-element-17adee4{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-545 .elementor-element.elementor-element-daa34bb{--margin-top:-28px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-545 .elementor-element.elementor-element-8e290f8{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-545 .elementor-element.elementor-element-db1c78f{--margin-top:-59px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}}/* Start custom CSS for html, class: .elementor-element-8e290f8 */.trust-bar-section {
    width: 100%;
    max-width: 100%;
    background-color: #ffffff;
    padding: 30px 0;
    box-sizing: border-box;
    overflow: hidden;
}

.trust-bar-section * {
    box-sizing: border-box;
}

.trust-bar-container {
    max-width: 1240px;
    width: 100%;
    margin: 0 auto;
    padding: 0 20px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 12px;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
}

.trust-bar-container::-webkit-scrollbar {
    display: none;
}

.trust-badge-item {
    flex: 0 0 210px;
    max-width: 210px;
    background: #ffffff;
    border: 1px solid #E2E8F0;
    border-radius: 14px;
    padding: 10px 14px;
    display: flex;
    align-items: center;
    gap: 10px;
    box-shadow: 0 4px 10px rgba(15, 23, 42, 0.04);
}

.trust-badge-icon {
    width: 36px;
    height: 36px;
    border-radius: 9px;
    background-color: #EBF3FF;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.trust-badge-icon svg {
    width: 16px;
    height: 16px;
    color: #1A3FB8;
}

.font-bold-g span {
    font-size: 16px;
    font-weight: 800;
    color: #1A3FB8;
    font-family: sans-serif;
}

.trust-badge-text {
    display: flex;
    flex-direction: column;
    gap: 1px;
    min-width: 0;
}

.trust-badge-text h4 {
    font-size: 15px;
    font-weight: 700;
    color: #000000;
    margin: 0;
    letter-spacing: -0.3px;
    line-height: 1.2;
}

.trust-badge-text p {
    font-size: 10px;
    color: #718097;
    margin: 0;
    white-space: nowrap;
    line-height: 1.5;
}

/* Desktop only: center badges */
@media (min-width: 1151px) {
    .trust-bar-container {
        justify-content: center;
        overflow-x: hidden;
    }

    .trust-badge-item {
        flex: 1 1 0;
        max-width: 230px;
        min-width: 0;
    }
}

/* Mobile/tablet: horizontal scroll but no body overflow */
@media (max-width: 1150px) {
    .trust-bar-section {
        overflow: hidden;
    }

    .trust-bar-container {
        width: 100%;
        max-width: 100%;
        padding-left: 16px;
        padding-right: 16px;
    }

    .trust-badge-item {
        flex: 0 0 210px;
    }
}

html,
body {
    max-width: 100%;
    overflow-x: hidden;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-1837de2 *//* --- CONFIGURATION SECTION --- */
.steps-section {
    max-width: 1200px;
    margin: 0 auto;
    padding: 25px 20px;
    
    position: relative; /* Point d'ancrage de la ligne de fond */
}

/* En-tête */
.steps-header {
    text-align: center;
    max-width: 650px;
    margin: 0 auto 64px auto;
}

.steps-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #eff6ff;
    border: 1px solid #dbeafe;
    color: #1A3FB8; /* Harmonisé avec votre bleu */
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 6px 14px;
    border-radius: 20px;
    margin-bottom: 20px;
}

.steps-badge .badge-dot {
    width: 6px;
    height: 6px;
    background: #1A3FB8;
    border-radius: 50%;
}

.steps-header h2 {
    font-size: 50px;
    font-weight: 800;
    color: #0b0f19;
    letter-spacing: -2px;
    line-height: 1.1;
    margin-bottom: 20px;
    margin-top: 0;
}

.steps-header h2 .serif.blue-text {
    font-weight: 800;
    color: #1A3FB8;
    font-style: normal;
    font-family: inter;
    
}

.steps-lead {
    font-size: 17px;
    color: #6b7280;
    line-height: 1.6;
    margin: 0;
}

/* --- LIGNE HORIZONTALE EN ARRIÈRE-PLAN --- */
.steps-bg-line {
    position: absolute;
    top: 56%; /* Aligné horizontalement au niveau du milieu des cartes */
    left: 40px;
    right: 40px;
    height: 2px;
    background-color: #eaeaea;
    z-index: 1;
}

/* --- STRUCTURE DE LA GRILLE --- */
.steps-grid {
    display: flex;
    gap: 24px;
    justify-content: space-between;
    position: relative;
    z-index: 2; /* Passe au-dessus de la ligne grise */
}

/* Style fidèle des cartes blanches du mockup */
.step-card {
    flex: 1;
    background: #ffffff;
    border: 1px solid #f1f3f7; /* Bordure très fine et claire */
    border-radius: 24px;
    padding: 40px;
    display: flex;
    flex-direction: column;
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.02); /* Ombre ultra légère */
    position: relative;
    overflow: hidden; /* Important pour masquer ou retenir les grands chiffres */
}

/* --- BADGES ICÔNES (Haut gauche de la carte) --- */
.step-icon-wrapper {
    width: 56px;
    height: 56px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 24px;
}

.step-icon-wrapper svg {
    width: 24px;
    height: 24px;
    color: #ffffff; /* Icônes blanches */
}

/* Couleurs spécifiques identiques à l'image */
.step-icon-1 {
    background-color: #033123; /* Vert très foncé */
}
.step-icon-2 {
    background-color: #6346f6; /* Violet vibrant */
}
.step-icon-3 {
    background-color: #74cc00; /* Vert pomme / flashy */
}

/* --- GRANDS CHIFFRES TRANSPARENTS (Haut droite) --- */
.step-bg-number {
    position: absolute;
    top: 20px;
    right: 32px;
    font-size: 80px;
    font-weight: 800;
    color: #f1f4f9; /* Couleur gris-bleu très pâle et discrète */
    line-height: 1;
    letter-spacing: -2px;
    pointer-events: none;
    user-select: none;
    z-index: 1;
}

/* --- CONTENU DU TEXTE --- */
.step-content {
    position: relative;
    z-index: 2; /* Reste au-dessus du numéro géant */
}

.step-content h3 {
    font-size: 22px;
    font-weight: 700;
    color: #0b0f19;
    margin: 0 0 14px 0;
    letter-spacing: -0.5px;
}

.step-content p {
    font-size: 17px;
    color: #6b7280;
    line-height: 1.6;
    margin: 0;
}

/* --- RESPONSIVE DESIGN --- */
@media (max-width: 992px) {
    .steps-bg-line {
        display: none; /* Supprimé sur mobile */
    }
    
    .steps-grid {
        flex-direction: column;
        gap: 24px;
    }
    
    .step-card {
        padding: 32px;
    }

    .steps-header h2 {
        font-size: 36px;
    }
    
    .step-bg-number {
        font-size: 70px;
        top: 16px;
        right: 24px;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-2e5f511 *//* Test section */
.test-section{background:var(--soft)}
.test-wrap{display:grid;grid-template-columns:.95fr 1.05fr;gap:54px;align-items:center}
.test-visual{
  position:relative;border-radius:34px;padding:24px;background:white;border:1px solid var(--line);box-shadow:var(--shadow-strong)
}
.device{
  border-radius:26px;background:linear-gradient(155deg,#071023,var(--deep-2) 50%,var(--blue) 130%);
  min-height:430px;padding:26px;color:white;position:relative;overflow:hidden;
}
.device:before{
  content:"";position:absolute;inset:0;
  background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);
  background-size:48px 48px;mask-image:radial-gradient(circle at center,black,transparent 76%);
}
.device > *{position:relative}
.device-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:34px}
.header2{
    font-size: 50px;
    font-weight: 800;
    color: #0b0f19;
    letter-spacing: -1.2px;
    line-height: 1.15;
    margin: 0 0 16px 0;
}
 h2 {
    font-size: 50px;
    font-weight: 800;
    color: #0b0f19;
    letter-spacing: -1.2px;
    line-height: 1.15;
    margin: 0 0 16px 0;
}
.device-badge{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.15);padding:7px 11px;border-radius:999px}
.device-title{font-size:32px;line-height:1.05;letter-spacing:-.04em;font-weight:800;max-width:330px}
.channel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:34px}
.channel-card{height:78px;border-radius:14px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.14);padding:12px;backdrop-filter:blur(10px)}
.channel-card:nth-child(2),.channel-card:nth-child(5){background:rgba(59,168,255,.32)}
.channel-card strong{display:block;font-size:12px;margin-bottom:4px}
.channel-card span{font-size:10.5px;color:rgba(255,255,255,.65)}
.test-list{display:grid;gap:14px;margin-top:28px}
.test-item{
  display:flex;gap:13px;align-items:flex-start;background:white;border:1px solid var(--line);border-radius:20px;padding:18px;
}
.test-check{
  width:26px;height:26px;border-radius:50%;background:#EAF5FF;color:var(--deep);display:flex;align-items:center;justify-content:center;font-weight:900;flex:none
}
.test-item strong{display:block;font-size:15px;margin-bottom:2px}
.test-item span{color:var(--muted);font-size:13.5px}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-14eeb77 *//* Devices */
.devices-grid {
  width: 100%;
  max-width: 100%;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.device-card {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  background: white;
  border: 1px solid var(--line);
  border-radius: 22px;
  padding: 24px;
  box-shadow: 0 1px 2px rgba(0,0,0,.03);
  transition: .3s cubic-bezier(.2,.8,.2,1);
  overflow: hidden;
}

.device-card:hover {
  transform: translateY(-5px);
  box-shadow: var(--shadow);
  border-color: rgba(59,168,255,.44);
}

.device-icon {
  width: 42px;
  height: 42px;
  border-radius: 13px;
  background: #EAF5FF;
  color: var(--deep);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 900;
  margin-bottom: 16px;
  flex-shrink: 0;
}

.section-head1 {
  text-align: center;
  max-width: 780px;
  margin: 0 auto 64px;
  padding: 0 16px;
}

.device-card h3 {
  font-size: 17px;
  line-height: 1.2;
}

.device-card p {
  font-size: 13.5px !important;
  line-height: 1.5;
  overflow-wrap: break-word;
}

/* Tablet */
@media (max-width: 1024px) {
  .devices-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Phone */
@media (max-width: 600px) {
  .devices-grid {
    grid-template-columns: 1fr;
    gap: 14px;
    padding-left: 14px;
    padding-right: 14px;
  }

  .device-card {
    padding: 22px;
    border-radius: 22px;
  }

  .section-head1 {
    margin-bottom: 38px;
    padding-left: 16px;
    padding-right: 16px;
  }

  .header2 {
    font-size: 34px !important;
    line-height: 1.05 !important;
    letter-spacing: -1px !important;
    max-width: 100%;
    overflow-wrap: break-word;
  }

  .section-head1 p {
    font-size: 16px !important;
    line-height: 1.5;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-9b1cf09 *//* FAQ */
.faq-wrap{max-width:820px;margin:0 auto}
.section-head1{
  text-align: center !important;
}
details{background:#fff;border:1px solid var(--line);border-radius:18px;margin-bottom:12px;overflow:hidden;transition:.25s}
details[open]{border-color:var(--blue);box-shadow:0 18px 35px -22px rgba(59,168,255,.45)}
summary{list-style:none;cursor:pointer;padding:24px 26px;display:flex;align-items:center;justify-content:space-between;gap:22px;font-weight:750;letter-spacing:-.015em}
summary::-webkit-details-marker{display:none}
summary:after{content:"+";width:32px;height:32px;border-radius:50%;background:var(--soft);display:flex;align-items:center;justify-content:center;color:var(--deep);font-size:20px;transition:.2s;flex:none}
details[open] summary:after{content:"×";background:linear-gradient(180deg,var(--blue),var(--deep));color:white}
.faq-answer{padding:0 26px 26px;color:var(--muted);font-size:15px}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-ef792ac *//* --- SECTION WRAPPER --- */
.cta-banner-section {
    width: 100%;
    max-width: 1440px;
    margin: 0 auto;
    padding: 25px 20px;
   
    box-sizing: border-box;
}

/* --- LA COQUE PRINCIPALE (GRADIENT BLEU AVEC ARRONDI) --- */
.cta-card {
    width: 100%;
    max-width: 1120px; /* Aligné avec la largeur globale de la page */
    margin: 0 auto;
    background: radial-gradient(100% 100% at 50% 0%, #1e40af 0%, #1e3a8a 50%, #0f172a 100%); /* Gradient profond royal blue */
    border-radius: 32px;
    position: relative;
    overflow: hidden;
    padding: 80px 40px;
    box-shadow: 0 20px 50px rgba(15, 23, 42, 0.15);
    text-align: center;
}

/* Grille subtile d'arrière-plan (Grid Lines) */
.cta-grid-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: 
        linear-gradient(rgba(255, 255, 255, 0.03) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.03) 1px, transparent 1px);
    background-size: 40px 40px;
    background-position: center top;
    opacity: 0.8;
    pointer-events: none;
}

/* --- BLOC TEXTE --- */
.cta-content {
    position: relative;
    z-index: 2; /* Reste au-dessus de la grille */
    max-width: 680px;
    margin: 0 auto;
}

.cta-title {
    font-size: 50px;
    font-weight: 800;
    color: #ffffff;
    letter-spacing: -2px;
    line-height: 1.1;
    margin: 0 0 24px 0;
}



.cta-subtitle {
    font-size: 18px;
    color: #93c5fd; /* Bleu clair text discret */
    line-height: 1.5;
    margin: 0 0 40px 0;
    font-weight: 400;
}

/* --- LES BOUTONS ACTIFS --- */
.cta-buttons {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 16px;
    margin-bottom: 48px;
}

/* Start free trial */
.btn-primary {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background-color: #ffffff;
    color: #0f172a;
    text-decoration: none;
    padding: 16px 28px;
    border-radius: 14px;
    font-size: 15px;
    font-weight: 700;
    transition: transform 0.2s ease, background-color 0.2s ease;
    text-decoration: none !important;
}

.btn-primary:hover {
    background-color: #f8fafc;
    transform: translateY(-2px);
}

.btn-primary .arrow {
    transition: transform 0.2s ease;
}

.btn-primary:hover .arrow {
    transform: translateX(3px);

}

/* View pricing */
.btn-secondary {
    display: inline-block;
    background-color: rgba(255, 255, 255, 0.08);
    color: #ffffff;
    text-decoration: none;
    padding: 16px 28px;
    border-radius: 14px;
    font-size: 15px;
    font-weight: 700;
    border: 1px solid rgba(255, 255, 255, 0.15);
    transition: background-color 0.2s ease, transform 0.2s ease;
    box-sizing: border-box;
    
text-decoration: none !important;
}

.btn-secondary:hover {
   
    transform: translateY(-2px);
        color:white !important;
}

/* --- FOOTER DES FEATURES (CHECKMARKS) --- */
.cta-features {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 32px;
}

.feature-item {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #93c5fd;
    font-size: 14px;
    font-weight: 500;
}

.feature-item .check-icon {
    color: #60a5fa; /* Couleur bleue claire du symbole check */
    font-weight: 700;
}

/* --- RESPONSIVE MOBILE --- */
@media (max-width: 768px) {
    .cta-card {
        padding: 60px 24px;
        border-radius: 24px;
    }

    .cta-title {
        font-size: 38px;
        letter-spacing: -1px;
    }
    
    .mobile-break {
        display: block; /* Force le retour à la ligne sur mobile pour garder le design stable */
    }

    .cta-subtitle {
        font-size: 16px;
        margin-bottom: 32px;
    }

    .cta-buttons {
        flex-direction: column;
        width: 100%;
        gap: 12px;
    }

    .btn-primary, .btn-secondary {
        width: 100%;
        justify-content: center;
        padding: 14px 24px;
    }

    .cta-features {
        flex-direction: column;
        align-items: center;
        gap: 12px;
    }
}/* End custom CSS */