.elementor-854 .elementor-element.elementor-element-ef0fa2f{--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-854 .elementor-element.elementor-element-d452dd1{width:var( --container-widget-width, 99.013% );max-width:99.013%;--container-widget-width:99.013%;--container-widget-flex-grow:0;}.elementor-854 .elementor-element.elementor-element-d452dd1.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-854 .elementor-element.elementor-element-4107d89{--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-854 .elementor-element.elementor-element-a8752ec{width:var( --container-widget-width, 98.931% );max-width:98.931%;--container-widget-width:98.931%;--container-widget-flex-grow:0;}.elementor-854 .elementor-element.elementor-element-a8752ec.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-854 .elementor-element.elementor-element-93c68ff{--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:-11px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-854 .elementor-element.elementor-element-93c68ff:not(.elementor-motion-effects-element-type-background), .elementor-854 .elementor-element.elementor-element-93c68ff > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F7F9FC;}.elementor-854 .elementor-element.elementor-element-895298e{--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-854 .elementor-element.elementor-element-effe994{--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:-97px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-854 .elementor-element.elementor-element-fd80f48{width:var( --container-widget-width, 98.988% );max-width:98.988%;--container-widget-width:98.988%;--container-widget-flex-grow:0;}.elementor-854 .elementor-element.elementor-element-fd80f48.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-854 .elementor-element.elementor-element-5b485ed{--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-854 .elementor-element.elementor-element-5b485ed:not(.elementor-motion-effects-element-type-background), .elementor-854 .elementor-element.elementor-element-5b485ed > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F7F9FC;}.elementor-854 .elementor-element.elementor-element-dd77a62{--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-854 .elementor-element.elementor-element-7d16b19{--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-854 .elementor-element.elementor-element-7d16b19:not(.elementor-motion-effects-element-type-background), .elementor-854 .elementor-element.elementor-element-7d16b19 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F7F9FC;}.elementor-854 .elementor-element.elementor-element-963353b{width:var( --container-widget-width, 98.931% );max-width:98.931%;--container-widget-width:98.931%;--container-widget-flex-grow:0;}.elementor-854 .elementor-element.elementor-element-963353b.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-854 .elementor-element.elementor-element-9f1355a{--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-854 .elementor-element.elementor-element-f3ca644{width:var( --container-widget-width, 102.664% );max-width:102.664%;--container-widget-width:102.664%;--container-widget-flex-grow:0;}.elementor-854 .elementor-element.elementor-element-f3ca644.elementor-element{--flex-grow:0;--flex-shrink:0;}@media(max-width:767px){.elementor-854 .elementor-element.elementor-element-effe994{--margin-top:-59px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-854 .elementor-element.elementor-element-9f1355a{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}}/* Start custom CSS for html, class: .elementor-element-d452dd1 *//* ───────────────── HERO SECTION CSS ───────────────── */

:root{
  --blue:#3BA8FF;
  --blue2:#2B8FE6;
  --deep:#1A3FB8;
  --deep2:#102B86;
  --soft:#F7F9FC;
  --line:#E8EDF5;
  --ink:#000;
  --muted:#5B6478;
}

*{
  margin:0;
  padding:0;
  box-sizing:border-box;
}

body{
  font-family:Inter,sans-serif;
  overflow-x:hidden;
}

.container{
  max-width:1240px;
  margin:auto;
  padding:0 28px;
}

/* HERO */

.hero{
  position:relative;
  overflow:hidden;
  padding:90px 0;
  background:
  radial-gradient(circle at 78% 18%,rgba(59,168,255,.16),transparent 35%),
  radial-gradient(circle at 12% 65%,rgba(26,63,184,.10),transparent 32%),
  #fff;
}

.hero-grid-bg{
  position:absolute;
  inset:0;

  background-image:
  linear-gradient(rgba(0,0,0,.025) 1px,transparent 1px),
  linear-gradient(90deg,rgba(0,0,0,.025) 1px,transparent 1px);

  background-size:64px 64px;
}

.hero-wrap{
  position:relative;
  z-index:2;

  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:70px;
  align-items:center;
}

/* LEFT */

.kicker{
  display:inline-flex;
  align-items:center;
  gap:8px;

  padding:8px 14px;

  border-radius:999px;

  font-size:13px;
  font-weight:700;

  color:var(--deep);

  background:#EAF5FF;
  border:1px solid rgba(59,168,255,.2);

  margin-bottom:24px;
}

.dot{
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--blue);
}

h1{
  font-size:clamp(52px,7vw,86px);
  line-height:.96;
  letter-spacing:-0.06em;
  font-weight:800;
  margin-bottom:28px;
  color:#000;
}

.accent{
  background:linear-gradient(135deg,var(--deep),var(--blue));
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}

.serif{
  font-family:"Instrument Serif",serif;
  font-style:italic;
  font-weight:400;
}

.lead{
  font-size:20px;
  line-height:1.7;
  color:var(--muted);
  max-width:720px;
}

.hero-ctas{
  display:flex;
  gap:14px;
  margin-top:34px;
  flex-wrap:wrap;
}

/* BUTTONS */

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  border-radius:16px;

  padding:16px 28px;

  font-size:15px;
  font-weight:700;

  text-decoration:none;
}

.btn-blue{
  color:#fff;

  background:
  linear-gradient(180deg,var(--blue),var(--blue2));

  box-shadow:
  0 10px 25px rgba(59,168,255,.35);
}

.btn-ghost{
  background:#fff;
  color:#000;
  border:1px solid var(--line);
}

/* RIGHT PANEL */

.setup-panel{
  border-radius:34px;
  padding:18px;

  background:
  linear-gradient(145deg,
  rgba(255,255,255,.9),
  rgba(247,249,252,.95));

  border:1px solid rgba(232,237,245,.9);

  box-shadow:
  0 35px 80px -28px rgba(26,63,184,.25);
}

.setup-visual{
  border-radius:28px;
  padding:30px;

  min-height:460px;

  background:
  linear-gradient(155deg,
  #071023,
  var(--deep2) 45%,
  var(--deep) 82%,
  var(--blue) 135%);

  color:#fff;
}

.visual-badge{
  display:inline-flex;

  padding:10px 16px;

  border-radius:999px;

  background:rgba(255,255,255,.12);

  border:1px solid rgba(255,255,255,.15);

  font-size:12px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;

  margin-bottom:60px;
}

.visual-title{
  font-size:54px;
  line-height:1;
  letter-spacing:-0.05em;
  font-weight:800;

  max-width:520px;
}

.setup-steps-mini{
  display:grid;
  gap:14px;
  margin-top:34px;
}

.mini-step{
  display:flex;
  gap:14px;

  padding:18px;

  border-radius:18px;

  background:rgba(255,255,255,.12);

  border:1px solid rgba(255,255,255,.12);
}

.mini-step span{
  width:34px;
  height:34px;

  border-radius:50%;

  background:rgba(255,255,255,.15);

  display:flex;
  align-items:center;
  justify-content:center;

  font-weight:800;

  flex:none;
}

.mini-step strong{
  display:block;
  font-size:15px;
  margin-bottom:4px;
}

.mini-step p{
  font-size:14px;
  color:rgba(255,255,255,.72);
  line-height:1.5;
}

/* ───────────────── RESPONSIVE ───────────────── */

/* TABLET */
@media (max-width: 1024px){

  .hero-wrap{
    grid-template-columns:1fr;
    gap:50px;
  }

  .setup-panel{
    max-width:760px;
    margin:auto;
    width:100%;
  }

  h1{
    font-size:clamp(48px,8vw,72px);
  }

  .visual-title{
    font-size:44px;
  }

}

/* MOBILE */
@media (max-width: 600px){

  .container{
    padding:0 18px;
  }

  .hero{
    padding:56px 0;
  }

  .hero-wrap{
    gap:36px;
  }

  .kicker{
    font-size:12px;
    padding:7px 12px;
  }

  h1{
    font-size:clamp(40px,13vw,54px);
    line-height:1;
    margin-bottom:22px;
  }

  .lead{
    font-size:17px;
    line-height:1.7;
  }

  .hero-ctas{
    flex-direction:column;
  }

  .hero-ctas .btn{
    width:100%;
  }

  .setup-panel{
    padding:12px;
    border-radius:24px;
  }

  .setup-visual{
    padding:22px 18px;
    border-radius:20px;
    min-height:auto;
  }

  .visual-badge{
    margin-bottom:34px;
    font-size:10px;
  }

  .visual-title{
    font-size:30px;
    line-height:1.05;
  }

  .setup-steps-mini{
    margin-top:24px;
    gap:10px;
  }

  .mini-step{
    padding:14px;
    gap:10px;
  }

  .mini-step strong{
    font-size:14px;
  }

  .mini-step p{
    font-size:12px;
  }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-f3ca644 *//* --- 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 */