.elementor-32448 .elementor-element.elementor-element-07d457c{--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;border-style:none;--border-style:none;--border-radius:26px 26px 26px 26px;box-shadow:-5px 0px 10px -6px rgba(0,0,0,0.5);--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;overflow:visible;border-color:var(--border-color,var(--color-border));}.elementor-32448 .elementor-element.elementor-element-7b6bffb{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) -20px;}@media(min-width:768px){.elementor-32448 .elementor-element.elementor-element-07d457c{--width:100%;}}/* Start custom CSS for html, class: .elementor-element-7b6bffb */.vf-mm {
    --vf-blue:#4a82ff; --vf-blue-dark:#2f66e0; --vf-sky:#e7eeff; --vf-sky-soft:#f3f7ff;
    --vf-ink:#172038; --vf-slate:#5b6b8c; --vf-muted:#9aa7c2; --vf-line:#e6ebf7; --vf-white:#fff;
    --vf-ease:cubic-bezier(.2,.8,.2,1);
    font-family:"Plus Jakarta Sans",system-ui,-apple-system,"Segoe UI",sans-serif; color:var(--vf-ink);
    display:grid; grid-template-columns:1.05fr 1.4fr 300px; gap:14px; padding:6px;
    -webkit-font-smoothing:antialiased;
  }
  .vf-mm *, .vf-mm *::before, .vf-mm *::after { box-sizing:border-box; }
  .vf-mm :where(p,h3,ul) { margin:0; padding:0; } .vf-mm :where(ul) { list-style:none; }
  .vf-mm :where(a) { text-decoration:none; color:inherit; }

  .vf-col { border-radius:18px; padding:20px 18px; }
  .vf-col--secteur { background:var(--vf-sky-soft); }
  .vf-col--socle { background:linear-gradient(180deg,#eef4ff,#f7faff); border:1px solid #dbe6ff; }
  .vf-eyebrow { display:flex; align-items:center; gap:8px; font-size:11px; font-weight:700; letter-spacing:.09em; text-transform:uppercase; color:var(--vf-slate); margin-bottom:14px; }
  .vf-eyebrow--socle { color:var(--vf-blue); }
  .vf-eyebrow__tag { margin-left:auto; font-size:9.5px; font-weight:700; letter-spacing:.04em; text-transform:none; padding:3px 8px; border-radius:999px; background:var(--vf-blue); color:#fff; }
  .vf-sub { font-size:11px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--vf-muted); margin:16px 0 8px; }
  .vf-sub:first-of-type { margin-top:0; }
  .vf-sub__tag { margin-left:8px; font-size:9.5px; font-weight:700; letter-spacing:.02em; text-transform:none; padding:3px 8px; border-radius:999px; background:var(--vf-sky); color:var(--vf-blue); }

  .vf-link { display:grid; grid-template-columns:44px 1fr; gap:13px; align-items:center; padding:9px 10px; border-radius:12px; transition:background-color .18s, transform .18s var(--vf-ease); }
  .vf-link:hover { background:var(--vf-white); transform:translateX(2px); box-shadow:0 8px 22px rgba(23,32,56,.06); }
  .vf-link__ic { width:44px; height:44px; border-radius:12px; background:var(--vf-white); border:1px solid var(--vf-line); display:flex; align-items:center; justify-content:center; }
  .vf-col--secteur .vf-link__ic { background:var(--vf-white); }
  .vf-link__ic svg { width:22px; height:22px; stroke:var(--vf-blue); fill:none; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; overflow:visible; }
  .vf-link__ic svg * { stroke-dasharray:100; stroke-dashoffset:0; }
  /* tracé au survol de la ligne, pur CSS */
  .vf-link:hover .vf-link__ic svg * { animation:vf-mm-draw .8s var(--vf-ease) both; }
  .vf-link:hover .vf-link__ic svg :nth-child(2){animation-delay:.1s} .vf-link:hover .vf-link__ic svg :nth-child(3){animation-delay:.2s} .vf-link:hover .vf-link__ic svg :nth-child(4){animation-delay:.3s}
  @keyframes vf-mm-draw { from { stroke-dashoffset:100; } to { stroke-dashoffset:0; } }
  .vf-link__t strong { display:block; font-size:15px; font-weight:700; line-height:1.25; }
  .vf-link__t span { display:block; font-size:12.5px; color:var(--vf-slate); line-height:1.4; margin-top:2px; }

  /* Colonne fonctionnalités : socle mis en avant, options en dessous */
  .vf-col--fonc { padding:20px 4px; }
  .vf-fonc__socle { background:linear-gradient(180deg,#eef4ff,#f8fbff); border:1px solid #dbe6ff; border-radius:16px; padding:14px 14px 8px; margin-bottom:6px; }
  .vf-fonc__more { padding:6px 14px 0; }

  /* Encart pilier à droite */
  .vf-promo { background:var(--vf-ink); border-radius:18px; padding:24px 22px; color:#fff; display:flex; flex-direction:column; }
  .vf-promo__ic { width:42px; height:42px; border-radius:12px; background:rgba(255,255,255,.1); display:flex; align-items:center; justify-content:center; margin-bottom:16px; }
  .vf-promo__ic svg { width:22px; height:22px; stroke:#9bbcff; fill:none; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
  .vf-promo h3 { font-size:17px; font-weight:700; line-height:1.3; letter-spacing:-.01em; }
  .vf-promo h3 span { color:#9bbcff; }
  .vf-promo p { font-size:13px; line-height:1.55; color:rgba(255,255,255,.72); margin-top:8px; }
  .vf-promo__list { margin-top:14px; display:grid; gap:8px; }
  .vf-promo__list li { display:flex; align-items:center; gap:9px; font-size:12.5px; font-weight:500; color:rgba(255,255,255,.9); }
  .vf-promo__list svg { width:16px; height:16px; flex:none; stroke:#4ade80; fill:none; stroke-width:2.4; stroke-linecap:round; stroke-linejoin:round; }
  .vf-promo__cta { margin-top:auto; padding-top:18px; }
  .vf-promo__cta a { display:inline-flex; align-items:center; gap:7px; height:42px; padding:0 18px; border-radius:10px; background:var(--vf-blue); color:#fff; font-size:14px; font-weight:600; transition:background-color .2s, transform .2s var(--vf-ease); }
  .vf-promo__cta a:hover { background:var(--vf-blue-dark); transform:translateY(-1px); }
  .vf-promo__cta svg { width:16px; height:16px; stroke:currentColor; fill:none; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }

  @media (max-width:1100px) {
    .vf-mm { grid-template-columns:1fr 1fr; }
    .vf-promo { grid-column:1 / -1; flex-direction:row; align-items:center; gap:20px; }
    .vf-promo__ic, .vf-promo__list { margin:0; } .vf-promo__list { flex:1; grid-template-columns:1fr 1fr; }
    .vf-promo__cta { padding-top:0; margin-left:auto; }
  }
  @media (max-width:720px) {
    .vf-mm { grid-template-columns:1fr; }
    .vf-promo { flex-direction:column; align-items:stretch; } .vf-promo__list { grid-template-columns:1fr; } .vf-promo__cta { margin-left:0; padding-top:16px; }
  }
  @media (prefers-reduced-motion:reduce) { .vf-mm *{animation:none!important} .vf-link__ic svg *{stroke-dashoffset:0} }/* End custom CSS */