/* ══════════ RESET + TOKENS (charte Stripe validée) ══════════ */
  *{box-sizing:border-box;margin:0;padding:0}
  :root{
    --ink:#0a2540; --ink-soft:#425466; --muted:#6b7c93;
    --bg:#f6f9fc; --white:#fff; --border:#dbe4ef; --border-soft:#e4eaf1;
    --violet:#635bff; --violet-dark:#5348e0; --green:#00b67a; --cyan:#00d4ff; --orange:#ff7a59;
    --radius:16px;
    font-family:"Inter","Suisse Int'l","Aptos","Helvetica Neue",Arial,sans-serif;
  }
  html{scroll-behavior:smooth;overscroll-behavior-y:none}
  body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5;min-width:320px;overscroll-behavior-y:none}
  /* Logos de marque IA (data-ai-logo / GLL.aiLogo) : glyphe monochrome plein cadre */
  [data-ai-logo] svg,.ai-card .ic svg,.mk-ia .ic svg,.a-chip-lg svg{width:100%;height:100%;display:block}
  .ai-card .ic svg,.mk-ia .ic svg{width:60%;height:60%}
  a{color:inherit;text-decoration:none}
  img{max-width:100%;display:block}
  ::selection{color:#fff;background:var(--violet)}
  .wrap{max-width:1180px;margin:0 auto;padding:0 20px}
  @media(min-width:1024px){.wrap{padding:0 24px}}

  /* boutons */
  .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:600;border-radius:999px;transition:all .18s ease;cursor:pointer;border:0;white-space:nowrap;font-family:inherit}
  .btn-dark{background:var(--ink);color:#fff;height:44px;padding:0 24px;font-size:15px;box-shadow:0 8px 16px rgba(10,37,64,.14)}
  .btn-dark:hover{background:#1c3553;box-shadow:0 8px 20px rgba(10,37,64,.22)}
  .btn-dark.sm{height:36px;padding:0 16px;font-size:14px}
  .btn-link{color:var(--violet);font-size:15px;font-weight:600;display:inline-flex;align-items:center;gap:8px}
  .btn-link:hover{color:var(--ink)}
  .arr{width:16px;height:16px;transition:transform .18s}
  .btn:hover .arr{transform:translateX(2px)}

  /*KPI cliquables*/
  .comp-badge{
      text-decoration: none;
      color: inherit;
      cursor: pointer;
      transition: transform .2s ease, box-shadow .2s ease;
  }

  .comp-badge:hover{
      text-decoration: none;
  }

  /* charte titres */
  .kicker{color:var(--violet);font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
  .h2{color:var(--ink);font-size:clamp(36px,5vw,56px);font-weight:520;letter-spacing:-.05em;line-height:1.05}

  /* ══════════ HEADER ══════════ */
  header.nav{position:fixed;inset:0 0 auto 0;z-index:70;transition:background .3s,box-shadow .3s}
  header.nav.scrolled{background:rgba(255,255,255,.9);backdrop-filter:blur(20px);box-shadow:0 1px 0 rgba(10,37,64,.06)}
  body.mm-open header.nav{background:#fff;box-shadow:0 1px 0 rgba(10,37,64,.06)}
  .nav-inner{display:flex;height:60px;align-items:center;justify-content:space-between}
  .nav-brand{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:600;letter-spacing:-.02em}
  .nav-brand img{width:24px;height:24px;object-fit:contain}
  .nav-links{display:none;align-items:center;gap:32px}
  @media(min-width:900px){.nav-links{display:flex}}
  .nav-links a{position:relative;font-size:14px;font-weight:500;color:var(--ink-soft);transition:color .18s}
  .nav-links a:hover{color:var(--ink)}
  .nav-links a::after{content:"";position:absolute;left:0;bottom:-4px;height:2px;width:0;background:var(--violet);transition:width .2s}
  .nav-links a:hover::after{width:100%}
  .nav-right{display:flex;align-items:center;gap:12px}
  .nav-login{font-size:14px;font-weight:500;color:var(--ink-soft)}
  .nav-login:hover{color:var(--ink)}
  @media(max-width:899px){.nav-inner .nav-right>a{display:none}} /* mobile : header = logo + hamburger uniquement */
  .lang{display:flex;gap:2px;align-items:center;font-size:12.5px;font-weight:600;color:var(--muted)}
  .lang button{background:none;border:0;cursor:pointer;color:var(--muted);font:inherit;font-size:12.5px;font-weight:600;padding:3px 5px;border-radius:6px}
  .lang button.on{color:var(--ink);background:rgba(10,37,64,.06)}
  /* hamburger animé ↔ croix (même bouton, reste dans le header fixe) */
  .burger{display:flex;align-items:center;justify-content:center;width:42px;height:42px;margin-right:-9px;background:none;border:0;cursor:pointer;padding:0;color:var(--ink)}
  @media(min-width:900px){.burger{display:none}}
  .burger-box{position:relative;width:22px;height:16px}
  .burger-bar{position:absolute;left:0;width:22px;height:2px;border-radius:2px;background:currentColor;transition:transform .32s cubic-bezier(.4,0,.2,1),opacity .18s ease}
  .burger-bar:nth-child(1){top:0}
  .burger-bar:nth-child(2){top:7px}
  .burger-bar:nth-child(3){top:14px}
  body.mm-open .burger-bar:nth-child(1){transform:translateY(7px) rotate(45deg)}
  body.mm-open .burger-bar:nth-child(2){opacity:0;transform:scaleX(.3)}
  body.mm-open .burger-bar:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  /* menu plein écran : header fixe (60px) reste au-dessus, pas de scroll */
  .mobmenu{display:none;position:fixed;inset:0;z-index:60;background:#fff;flex-direction:column;padding-top:60px}
  .mobmenu.open{display:flex}
  body.mm-open{overflow:hidden}
  .mobmenu-list{flex:1;min-height:0;display:flex;flex-direction:column;justify-content:center;padding:4px 20px}
  .mobmenu-list a{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:min(3.1vh,22px) 2px;font-size:min(6.6vw,26px);font-weight:600;letter-spacing:-.02em;color:var(--ink);border-bottom:1px solid var(--border)}
  .mobmenu-list a:first-child{border-top:1px solid var(--border)}
  .mobmenu-list a .chev{width:24px;height:24px;color:var(--muted);flex-shrink:0}
  .mobmenu-list a:active{color:var(--violet)}
  .mobmenu-foot{flex-shrink:0;padding:20px 20px calc(20px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:10px;border-top:1px solid var(--border);background:var(--bg)}
  .mobmenu-foot .btn-dark{height:50px;font-size:16px;width:100%}
  .mobmenu-foot .mm-link{text-align:center;font-size:15.5px;font-weight:600;color:var(--ink);padding:8px}
  .mobmenu-foot .mm-contact{color:var(--violet)}

  /* ══════════ Sélecteur de langue (drapeaux SVG + modale façon Booking) ══════════ */
  .flag{display:inline-block;width:22px;height:22px;border-radius:50%;overflow:hidden;flex-shrink:0;box-shadow:inset 0 0 0 1px rgba(10,37,64,.14)}
  .flag svg{display:block;width:100%;height:100%}
  .lang-btn{display:inline-flex;align-items:center;gap:9px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);color:#fff;border-radius:999px;padding:7px 14px;font:inherit;font-size:13.5px;font-weight:600;cursor:pointer;transition:background .15s}
  .lang-btn:hover{background:rgba(255,255,255,.12)}
  .lang-btn .chev{width:14px;height:14px;opacity:.7;flex-shrink:0}
  .lang-modal{position:fixed;inset:0;z-index:200;display:none}
  .lang-modal.open{display:block}
  .lang-modal-bg{position:absolute;inset:0;background:rgba(10,37,64,.5);backdrop-filter:blur(2px)}
  .lang-modal-panel{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(920px,92vw);max-height:86vh;overflow-y:auto;background:#fff;border-radius:18px;box-shadow:0 40px 90px -20px rgba(10,37,64,.45);padding:26px 26px 30px}
  .lang-modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}
  .lang-modal-head h3{font-size:22px;font-weight:600;letter-spacing:-.02em;color:var(--ink)}
  .lang-modal-close{width:36px;height:36px;border-radius:10px;border:1px solid var(--border);background:#fff;cursor:pointer;font-size:22px;color:var(--ink-soft);display:flex;align-items:center;justify-content:center;line-height:1}
  .lang-modal-close:hover{background:var(--bg)}
  .lang-grid{display:grid;grid-template-columns:1fr;gap:6px}
  @media(min-width:560px){.lang-grid{grid-template-columns:1fr 1fr}}
  @media(min-width:820px){.lang-grid{grid-template-columns:1fr 1fr 1fr}}
  .lang-opt{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:12px;border:1px solid transparent;background:none;cursor:pointer;font:inherit;text-align:left;color:var(--ink);transition:background .15s,border-color .15s}
  .lang-opt:hover{background:var(--bg)}
  .lang-opt.on{background:rgba(99,91,255,.06);border-color:rgba(99,91,255,.32)}
  .lang-opt .nm{flex:1;display:flex;flex-direction:column;line-height:1.25}
  .lang-opt .nm b{font-size:15px;font-weight:600}
  .lang-opt .nm span{font-size:12px;color:var(--muted)}
  .lang-opt .ck{width:18px;height:18px;color:var(--violet);opacity:0;flex-shrink:0}
  .lang-opt.on .ck{opacity:1}

  /* ══════════ HERO ══════════ */
  .hero{position:relative;overflow:hidden;background:var(--bg);padding-top:80px}
  .stripe-mesh{position:absolute;inset:-160px -120px auto -120px;height:720px;
    background:
      radial-gradient(circle at 18% 24%, rgba(255,196,87,.92) 0 11%, transparent 27%),
      radial-gradient(circle at 42% 18%, rgba(255,122,89,.9) 0 12%, transparent 30%),
      radial-gradient(circle at 68% 14%, rgba(99,91,255,.88) 0 13%, transparent 31%),
      radial-gradient(circle at 88% 26%, rgba(0,212,255,.75) 0 11%, transparent 30%),
      linear-gradient(110deg,#fff7db 0%,#ffe2df 22%,#e6e2ff 46%,#cdefff 72%,#f6f9fc 100%);
    filter:saturate(1.05);transform:skewY(-10deg);transform-origin:top left;animation:mesh-drift 18s ease-in-out infinite alternate}
  .stripe-mesh::after{content:"";position:absolute;inset:0;
    background-image:linear-gradient(90deg,rgba(255,255,255,.18) 1px,transparent 1px),linear-gradient(0deg,rgba(255,255,255,.18) 1px,transparent 1px);
    background-size:80px 80px;mix-blend-mode:overlay;opacity:.45}
  @keyframes mesh-drift{0%{background-position:0 0,0 0,0 0,0 0,0 0}100%{background-position:70px -30px,-40px 50px,50px 70px,-60px -40px,0 0}}
  .ribbons{position:absolute;inset:64px 0 auto 0;height:680px;overflow:hidden}
  .ribbons-inner{position:absolute;inset:0;transform:skewY(-10deg);transform-origin:top left}
  .ribbon{position:absolute;height:88px;width:520px;border-radius:999px;opacity:.48;animation:ribbon-float 12s ease-in-out infinite}
  .ribbon.a{left:48%;top:138px;background:linear-gradient(90deg,rgba(255,255,255,.55),rgba(99,91,255,.7))}
  .ribbon.b{left:62%;top:248px;width:360px;background:linear-gradient(90deg,rgba(0,212,255,.52),rgba(255,255,255,.2));animation-delay:-3s}
  .ribbon.c{left:4%;top:424px;width:420px;background:linear-gradient(90deg,rgba(255,122,89,.5),rgba(255,196,87,.4));animation-delay:-6s}
  .ribbon.d{right:4%;top:498px;width:300px;background:linear-gradient(90deg,rgba(99,91,255,.35),rgba(0,182,122,.35));animation-delay:-9s}
  @keyframes ribbon-float{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(28px,-18px,0)}}
  .hero-cut{position:absolute;inset:640px 0 auto 0;height:320px;transform:skewY(-4deg);background:#fff;box-shadow:0 -1px 0 rgba(10,37,64,.06)}
  .hero-grid{position:relative;z-index:10;display:grid;gap:64px;align-items:start;padding:56px 0 112px}
  @media(min-width:1024px){.hero-grid{grid-template-columns:1fr 1fr;gap:32px;padding:80px 0 144px}}
  .hero h1{font-size:46px;font-weight:600;line-height:.98;letter-spacing:-.055em;max-width:560px}
  @media(min-width:640px){.hero h1{font-size:60px}}
  @media(min-width:1024px){.hero h1{font-size:70px}}
  .hero h1 .accent{color:var(--violet)}
  .hero .lead{margin-top:28px;max-width:520px;font-size:17px;line-height:1.65;color:var(--ink-soft)}
  .hero-cta{margin-top:32px;display:flex;flex-direction:column;gap:12px}
  @media(min-width:640px){.hero-cta{flex-direction:row}}
  .hero-trust{margin-top:32px;display:flex;flex-wrap:wrap;gap:8px 24px;font-size:13px;font-weight:500;color:var(--ink-soft)}
  .hero-trust span{display:flex;align-items:center;gap:6px}
  .chk{width:16px;height:16px;color:var(--green);flex-shrink:0}

  /* Hero showcase (aperçu facture) */
  .showcase{position:relative;max-width:560px;margin:0 auto}
  .sc-card{overflow:hidden;border-radius:16px;border:1px solid #d6deea;background:#fff;box-shadow:0 24px 64px -20px rgba(10,37,64,.35)}
  .sc-chrome{display:flex;height:40px;align-items:center;gap:12px;border-bottom:1px solid var(--border);background:var(--bg);padding:0 12px}
  .sc-dots{display:flex;gap:6px}
  .sc-dots i{width:10px;height:10px;border-radius:50%;display:block}
  .sc-url{display:flex;align-items:center;gap:8px;flex:1;font-size:11px;font-family:ui-monospace,monospace;color:var(--muted)}
  .sc-live{display:none;align-items:center;gap:4px;font-size:10px;font-weight:500;color:var(--green)}
  @media(min-width:640px){.sc-live{display:flex}}
  .sc-body{padding:20px}
  .sc-head{display:flex;align-items:center;gap:10px;margin-bottom:16px}
  .sc-ico{width:36px;height:36px;border-radius:9px;background:rgba(99,91,255,.12);color:var(--violet);display:flex;align-items:center;justify-content:center}
  .sc-head p.t{font-size:15px;font-weight:600}
  .sc-head p.s{font-size:12px;color:var(--muted)}
  .sc-lbl{display:block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:6px}
  .sc-field{height:40px;width:100%;border-radius:8px;border:1px solid var(--border);background:#fff;padding:0 12px;font-size:13.5px;color:var(--ink);display:flex;align-items:center;margin-bottom:16px}
  .sc-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}
  .sc-row .l{flex:1;height:36px;border:1px solid var(--border);border-radius:7px;display:flex;align-items:center;padding:0 10px;font-size:12.5px}
  .sc-row .q{width:44px;height:36px;border:1px solid var(--border);border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:12.5px}
  .sc-row .p{width:88px;height:36px;border:1px solid var(--border);border-radius:7px;display:flex;align-items:center;justify-content:flex-end;padding:0 10px;font-size:12.5px;font-variant-numeric:tabular-nums}
  .sc-tot{margin-top:16px;border-top:1px solid var(--border);padding-top:12px;font-size:12.5px}
  .sc-tot div{display:flex;justify-content:space-between;padding:2px 0}
  .sc-tot .grand{font-size:14px;font-weight:700;padding-top:4px}
  .sc-tot .num{font-variant-numeric:tabular-nums;font-family:ui-monospace,monospace}
  .sc-qrbill{margin-top:16px;display:grid;grid-template-columns:1fr 1.4fr;border-top:1px dashed var(--ink)}
  .sc-qrbill>div{padding:12px}
  .sc-qrbill .rec{border-right:1px dashed var(--ink)}
  .sc-qrbill p.b{font-size:8px;font-weight:700;margin-top:6px}
  .sc-qrbill p.v{font-size:7.5px;line-height:1.35;color:#1a1a1a}
  .sc-qr{position:relative;width:92px;height:92px;flex-shrink:0}
  .sc-qr svg{width:100%;height:100%}
  /* Croix suisse norme SIX : croix blanche sur carré noir (contour noir), cadre blanc. */
  .sc-qr .cross{position:absolute;left:50%;top:50%;width:17px;height:17px;transform:translate(-50%,-50%)}
  .sc-qr .cross svg{width:100%;height:100%;display:block}
  .sc-note{margin-top:12px;text-align:center;font-size:12px;color:var(--muted)}
  /* ── Aperçu facture interactif (édition + génération) ── */
  .sc-stage{min-height:420px}
  .sc-input{height:40px;width:100%;box-sizing:border-box;border-radius:8px;border:1px solid var(--border);background:#fff;padding:0 12px;font:500 13.5px/1 Inter,sans-serif;color:var(--ink);outline:none;margin-bottom:16px;transition:border-color .15s,box-shadow .15s}
  .sc-input:focus{border-color:var(--violet);box-shadow:0 0 0 3px rgba(99,91,255,.12)}
  .sc-irow{display:flex;align-items:center;gap:8px;margin-bottom:8px}
  .sc-irow input{height:36px;box-sizing:border-box;border:1px solid var(--border);border-radius:7px;font:500 12.5px/1 Inter,sans-serif;color:var(--ink);outline:none;background:#fff;transition:border-color .15s}
  .sc-irow input:focus{border-color:var(--violet)}
  .sc-irow .l{flex:1;min-width:0;padding:0 10px}
  .sc-irow .q{width:44px;text-align:center}
  .sc-irow .pw{position:relative;width:88px;flex:none}
  .sc-irow .pw input{width:100%;padding:0 32px 0 10px;text-align:right;font-variant-numeric:tabular-nums}
  .sc-irow .pw span{position:absolute;right:9px;top:50%;transform:translateY(-50%);font-size:10px;color:#94a3b8;pointer-events:none}
  .sc-irow .rm{width:28px;height:36px;flex:none;border:0;background:none;color:#cbd6e4;cursor:pointer;border-radius:7px;display:flex;align-items:center;justify-content:center;transition:all .15s}
  .sc-irow .rm:hover{background:#fdf2f0;color:#d9603f}
  .sc-irow .rm svg{width:14px;height:14px}
  .sc-add{margin-top:8px;display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:500;color:var(--violet);background:none;border:0;cursor:pointer;padding:0;font-family:inherit;transition:color .15s}
  .sc-add:hover{color:var(--ink)}
  .sc-add svg{width:14px;height:14px}
  .sc-demo{margin-top:14px;font-size:10.5px;line-height:1.5;color:#94a3b8}
  .sc-generate{margin-top:12px;width:100%;height:44px;border:0;border-radius:9px;background:var(--ink);color:#fff;font:600 14px/1 Inter,sans-serif;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:background .15s}
  .sc-generate:hover{background:#1c3553}
  .sc-generate .arr{width:16px;height:16px}
  /* Bill view */
  .sc-billbar{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);padding:12px 20px}
  .sc-modify{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:500;color:var(--violet);background:none;border:0;cursor:pointer;padding:0;font-family:inherit;transition:color .15s}
  .sc-modify:hover{color:var(--ink)}
  .sc-modify svg{width:14px;height:14px}
  .sc-created{display:inline-flex;align-items:center;gap:6px;border-radius:999px;background:#d7f7ea;color:#00875a;font-size:11px;font-weight:600;padding:4px 10px}
  .sc-created svg{width:12px;height:12px}
  .sc-paperwrap{background:#e8edf3;padding:16px}
  .sc-paper{position:relative;max-width:440px;margin:0 auto;background:#fff;border-radius:4px;box-shadow:0 10px 30px -8px rgba(10,37,64,.28);padding:22px 24px 0;color:#1a1a1a}
  /* Filigrane SPECIMEN : la facture de démonstration n'a aucune valeur légale. */
  .sc-specimen{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;pointer-events:none;overflow:hidden}
  .sc-specimen span{font-family:'Outfit',Inter,sans-serif;font-weight:800;font-size:58px;line-height:1;letter-spacing:.14em;text-transform:uppercase;color:rgba(213,43,30,.14);transform:rotate(-30deg);white-space:nowrap}
  .sc-paper .sc-sender{font-size:9px;line-height:1.4;color:#5b6675}
  .sc-recip{margin-top:22px;text-align:right;font-size:11px;line-height:1.55}
  .sc-recip .nm{font-weight:600}
  .sc-invhead{margin-top:26px;display:flex;align-items:baseline;justify-content:space-between}
  .sc-invhead h3{font-size:19px;font-weight:700;letter-spacing:-.01em}
  .sc-invhead p{font-size:10px;color:#5b6675}
  .sc-invtable{margin-top:18px;width:100%;border-collapse:collapse;font-size:10.5px}
  .sc-invtable th{border-bottom:1px solid #1a1a1a;padding-bottom:6px;font-size:9px;text-transform:uppercase;letter-spacing:.04em;color:#5b6675;font-weight:600;text-align:left}
  .sc-invtable th.n,.sc-invtable td.n{text-align:right;font-variant-numeric:tabular-nums}
  .sc-invtable td{border-bottom:1px solid #ededed;padding:6px 0}
  .sc-invtable td:not(.n){padding-right:8px}
  .sc-invtot{margin:12px 0 0 auto;width:58%;font-size:10.5px}
  .sc-invtot div{display:flex;justify-content:space-between;padding:1px 0}
  .sc-invtot div span:first-child{color:#5b6675}
  .sc-invtot div span:last-child{font-variant-numeric:tabular-nums}
  .sc-invtot .g{border-top:2px solid #1a1a1a;padding-top:4px;margin-top:2px;font-weight:700}
  .sc-invtot .g span{color:#1a1a1a}
  .sc-invnote{margin-top:20px;font-size:9px;line-height:1.5;color:#5b6675}
  /* Animation de génération (avant l'aperçu) */
  .sc-loading{min-height:420px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:40px 24px;text-align:center}
  .sc-load-ic{width:56px;height:56px;border-radius:16px;background:rgba(99,91,255,.1);color:var(--violet);display:flex;align-items:center;justify-content:center;position:relative}
  .sc-load-ic svg{width:26px;height:26px}
  .sc-load-ic::after{content:"";position:absolute;inset:-5px;border-radius:20px;border:2px solid transparent;border-top-color:var(--violet);border-right-color:var(--violet);animation:scSpin .8s linear infinite}
  @keyframes scSpin{to{transform:rotate(360deg)}}
  .sc-load-t{font-size:15px;font-weight:600;color:var(--ink)}
  .sc-load-bar{width:220px;max-width:80%;height:6px;border-radius:999px;background:var(--border);overflow:hidden}
  .sc-load-bar span{display:block;height:100%;width:6%;border-radius:999px;background:var(--ink);animation:scFill 1.35s cubic-bezier(.4,0,.2,1) forwards}
  @keyframes scFill{0%{width:6%}30%{width:44%}70%{width:78%}100%{width:100%}}
  .sc-load-step{font-size:12.5px;color:var(--muted);min-height:16px;transition:opacity .2s}

  /* ══════════ MARQUEE ══════════ */
  .marquee-sec{position:relative;overflow:hidden;background:#fff;padding:64px 0;border-top:1px solid var(--border)}
  .marquee-title{text-align:center;font-size:12.5px;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--muted)}
  .marquee-board{margin-top:32px;border-radius:18px;background:var(--bg);padding:24px;box-shadow:0 10px 30px -18px rgba(10,37,64,.16);box-shadow:0 10px 30px -18px rgba(10,37,64,.16),0 0 0 1px var(--border)}
  .marquee-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
  @media(min-width:640px){.marquee-grid{grid-template-columns:repeat(3,1fr)}}
  @media(min-width:1024px){.marquee-grid{grid-template-columns:repeat(7,1fr)}}
  .marquee-grid .cell{position:relative;height:64px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:#fff;box-shadow:0 0 0 1px var(--border-soft);transition:transform .18s,box-shadow .18s}
  .soon-badge{font-size:8.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--violet);background:rgba(99,91,255,.1);border-radius:999px;padding:2px 6px;line-height:1;white-space:nowrap}
  .marquee-grid .cell .soon-badge{position:absolute;top:7px;right:7px}
  .chip .soon-badge{margin-left:2px}
  .marquee-grid .cell:hover{transform:translateY(-2px);box-shadow:0 10px 20px -12px rgba(10,37,64,.14)}
  .marquee-grid .cell span{font-size:15px;font-weight:600;letter-spacing:-.01em}
  .marquee-grid .cell .mq-flag{display:flex;flex-direction:column;align-items:center;gap:5px}
  .marquee-grid .cell .mq-flag img{border-radius:3px}
  .marquee-grid .cell .mq-flag .mq-cap{font-size:10px;font-weight:600;letter-spacing:0;color:var(--ink-soft)}
  .marquee-track-wrap{position:relative;margin-top:24px;overflow:hidden}
  .marquee-track-wrap::before,.marquee-track-wrap::after{content:"";position:absolute;top:0;bottom:0;width:80px;z-index:2;pointer-events:none}
  .marquee-track-wrap::before{left:0;background:linear-gradient(90deg,#fff,transparent)}
  .marquee-track-wrap::after{right:0;background:linear-gradient(270deg,#fff,transparent)}
  .marquee-track{display:flex;gap:16px;padding:8px 0;width:max-content;animation:marquee 34s linear infinite}
  @keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-33.33%)}}
  .chip{display:inline-flex;flex-shrink:0;align-items:center;gap:8px;border-radius:999px;padding:8px 14px;font-size:13px;font-weight:500;white-space:nowrap}
  .chip.box{background:#fff;box-shadow:0 0 0 1px var(--border)}
  .chip i{width:6px;height:6px;border-radius:50%;display:block}

  /* ══════════ PRODUIT (ServicesOverview) ══════════ */
  .produit{background:#fff;padding:112px 0}
  .pr-intro{max-width:760px}
  .pr-intro .h2{margin-top:12px}
  .pr-intro p{margin-top:20px;font-size:17px;line-height:1.65;color:var(--ink-soft)}
  .pr-rows{margin-top:64px;display:flex;flex-direction:column;gap:64px}
  .pr-row{display:grid;gap:40px;align-items:center}
  @media(min-width:1024px){.pr-row{grid-template-columns:.92fr 1.08fr}.pr-row.rev .pr-shot{order:2}}
  .pr-shot-inner{position:relative;overflow:hidden;border-radius:18px;background:var(--bg);padding:12px;box-shadow:0 24px 60px -24px rgba(10,37,64,.22),0 0 0 1px var(--border)}
  .pr-shot-bar{display:flex;align-items:center;gap:8px;padding:8px 8px 12px}
  .pr-shot-bar i{width:10px;height:10px;border-radius:50%;display:block}
  .pr-shot-bar .lbl{margin-left:12px;font-size:11px;font-family:ui-monospace,monospace;color:var(--muted)}
  .pr-shot img{width:100%;border-radius:12px;box-shadow:0 8px 24px -10px rgba(10,37,64,.18);object-fit:cover}
  .pr-badge{display:inline-flex;align-items:center;gap:8px;border-radius:999px;background:var(--bg);padding:6px 12px;box-shadow:0 0 0 1px var(--border);margin-bottom:16px}
  .pr-badge i{width:8px;height:8px;border-radius:50%;display:block}
  .pr-badge span{font-size:12.5px;font-weight:600;color:var(--ink-soft)}
  .pr-text h3{max-width:520px;font-size:34px;font-weight:520;line-height:1.1;letter-spacing:-.04em;color:var(--ink)}
  .pr-text p{margin-top:16px;max-width:560px;font-size:16px;line-height:1.65;color:var(--ink-soft)}
  .pr-tags{margin-top:20px;display:flex;flex-wrap:wrap;gap:8px}
  .pr-tags span{border-radius:999px;background:#fff;padding:4px 12px;font-size:12px;font-weight:500;color:var(--ink-soft);box-shadow:0 0 0 1px var(--border)}

  /* Mockups d'interface GoLynk (remplacent les captures) */
  .mock{display:flex;height:340px;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 8px 24px -10px rgba(10,37,64,.18);font-size:11px;line-height:1.4;color:var(--ink)}
  .mk-side{width:126px;flex-shrink:0;border-right:1px solid var(--border);padding:12px 10px;display:none;background:#fff}
  @media(min-width:520px){.mk-side{display:block}}
  .mk-side .lg{display:flex;align-items:center;gap:7px;font-weight:600;font-size:12px;margin-bottom:14px}
  .mk-side .lg img{width:16px;height:16px}
  .mk-nav{display:flex;flex-direction:column;gap:1px}
  .mk-nav a{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:7px;color:var(--muted);font-size:11px}
  .mk-nav a.on{background:rgba(99,91,255,.1);color:var(--violet);font-weight:600}
  .mk-nav .dot{width:6px;height:6px;border-radius:2px;background:currentColor;flex-shrink:0;opacity:.65}
  .mk-main{flex:1;padding:14px 15px;background:var(--bg);overflow:hidden}
  .mk-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:11px}
  .mk-h .t{font-size:13px;font-weight:600}
  .mk-h .d{font-size:10px;color:var(--muted)}
  .mk-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:11px}
  .mk-kpi{background:#fff;border-radius:9px;padding:8px;box-shadow:0 0 0 1px var(--border)}
  .mk-kpi .k{font-size:8.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}
  .mk-kpi .v{font-size:13px;font-weight:700;margin-top:3px;font-variant-numeric:tabular-nums}
  .mk-kpi .c{font-size:8.5px;font-weight:600;color:var(--green);margin-top:1px}
  .mk-card{background:#fff;border-radius:9px;padding:10px 11px;box-shadow:0 0 0 1px var(--border)}
  .mk-cap{font-size:9.5px;font-weight:600;color:var(--muted);margin-bottom:8px;text-transform:uppercase;letter-spacing:.04em}
  .mk-bars{display:flex;align-items:flex-end;gap:7px;height:72px}
  .mk-bars .b{flex:1;border-radius:4px 4px 0 0;background:linear-gradient(180deg,#635bff,#b7b3ff)}
  .mk-row{display:flex;align-items:center;gap:8px;padding:6px 0;border-top:1px solid var(--border)}
  .mk-row:first-child{border-top:0}
  .mk-chk{width:13px;height:13px;border-radius:4px;box-shadow:inset 0 0 0 1.5px var(--violet);flex-shrink:0;position:relative}
  .mk-chk.on{background:var(--violet);box-shadow:none}
  .mk-chk.on::after{content:"";position:absolute;left:4px;top:1.5px;width:3px;height:6px;border:solid #fff;border-width:0 1.6px 1.6px 0;transform:rotate(45deg)}
  .mk-row .lbl{flex:1;font-size:10.5px}
  .mk-row .rt{font-size:10px;color:var(--muted)}
  .mk-table{width:100%;background:#fff;border-radius:9px;box-shadow:0 0 0 1px var(--border);overflow:hidden}
  .mk-tr{display:grid;grid-template-columns:48px 1fr 58px 58px;gap:6px;padding:7px 10px;font-size:10px;border-top:1px solid var(--border)}
  .mk-tr.hd{border-top:0;color:var(--muted);font-weight:600;text-transform:uppercase;font-size:8px;letter-spacing:.04em}
  .mk-tr .num{text-align:right;font-variant-numeric:tabular-nums}
  .mk-ia{display:flex;flex-direction:column;gap:8px}
  .mk-ia .it{display:flex;align-items:center;gap:10px;background:#fff;border-radius:9px;padding:9px 10px;box-shadow:0 0 0 1px var(--border)}
  .mk-ia .ic{width:26px;height:26px;border-radius:8px;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:11px}
  .mk-ia .nm{flex:1;font-weight:600;font-size:11.5px}
  .mk-ia .bt{font-size:9.5px;font-weight:600;padding:4px 10px;border-radius:6px;background:var(--ink);color:#fff}
  .mk-ia .bt.done{background:rgba(0,182,122,.12);color:var(--green)}
  .mk-field{background:#fff;border:1px solid var(--border);border-radius:7px;padding:7px 9px;font-size:11px;margin-bottom:7px}
  .mk-field.lbl{border:0;background:transparent;padding:0 0 3px;font-size:8.5px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
  .mk-tot{display:flex;justify-content:space-between;align-items:center;background:#fff;border-radius:9px;padding:9px 11px;box-shadow:0 0 0 1px var(--border);margin-top:8px}
  .mk-tot .big{font-size:14px;font-weight:700;font-variant-numeric:tabular-nums}
  .mk-send{background:var(--ink);color:#fff;font-size:10px;font-weight:600;padding:6px 12px;border-radius:7px}

  /* ══════════ ÉCOSYSTÈME (diagramme radial) ══════════ */
  .eco{background:var(--bg);padding:112px 0;overflow:hidden}
  .eco-head{text-align:center;max-width:640px;margin:0 auto 56px}
  .eco-head .h2{margin-top:12px}
  .eco-grid{display:grid;gap:48px;align-items:center}
  @media(min-width:900px){.eco-grid{grid-template-columns:1fr 1fr;gap:56px}}
  .eco-diagram{position:relative;width:100%;max-width:476px;margin:0 auto;aspect-ratio:1}
  .eco-lines{position:absolute;inset:0;width:100%;height:100%;z-index:0}
  .eco-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:94px;height:94px;border-radius:50%;background:var(--ink);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;z-index:3;box-shadow:0 12px 30px -8px rgba(10,37,64,.5)}
  .eco-center img{width:22px;height:22px;filter:brightness(0) invert(1)}
  .eco-center span{font-size:11px;font-weight:600;color:#fff}
  /* Satellites = cartes autonomes (icône + libellé ensemble → jamais de texte qui déborde). */
  .eco-node{position:absolute;transform:translate(-50%,-50%);box-sizing:border-box;width:98px;display:flex;flex-direction:column;align-items:center;gap:9px;padding:14px 8px 13px;border-radius:16px;background:#fff;box-shadow:0 0 0 1px var(--border),0 8px 20px -14px rgba(10,37,64,.3);cursor:pointer;border:0;z-index:2;transition:transform .35s cubic-bezier(.19,1,.22,1),box-shadow .3s}
  .eco-node .ic{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .3s,color .3s}
  .eco-node .ic svg{width:20px;height:20px}
  .eco-node .nm{font-size:12px;font-weight:600;line-height:1.2;color:var(--ink-soft);text-align:center;transition:color .3s}
  .eco-node:hover{transform:translate(-50%,-50%) translateY(-3px);box-shadow:0 0 0 1px var(--border),0 14px 26px -14px rgba(10,37,64,.35)}
  .eco-node.on{box-shadow:0 0 0 1.5px var(--eco-c,#635bff),0 16px 34px -14px var(--eco-c,#635bff)}
  /* Sous 900 px : plus de radial (trop serré) → grille 2 colonnes de cartes lisibles. */
  @media(max-width:899px){
    .eco-diagram{aspect-ratio:auto;max-width:460px;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
    .eco-lines,.eco-center{display:none}
    .eco-node{position:static!important;transform:none!important;left:auto!important;top:auto!important;width:auto;flex-direction:row;justify-content:flex-start;gap:12px;padding:13px 14px}
    .eco-node .nm{text-align:left}
    .eco-node:hover{transform:none!important}
  }
  .eco-info{min-height:236px}
  .eco-prog{display:flex;gap:6px;margin-bottom:26px}
  .eco-prog span{height:3px;flex:1;border-radius:999px;background:var(--border);transition:background .45s}
  .eco-count{font-size:11px;font-family:ui-monospace,monospace;text-transform:uppercase;letter-spacing:.16em;margin-bottom:12px}
  .eco-info h3{font-size:26px;font-weight:600;letter-spacing:-.03em;line-height:1.15;color:var(--ink);margin-bottom:14px}
  .eco-info p{font-size:15.5px;line-height:1.7;color:var(--ink-soft);max-width:470px}

  /* ══════════ INDÉPENDANTS — services détaillés (scroll + visuel sticky) ══════════ */
  .isv{background:#fff;border-top:1px solid var(--border)}
  .isv-grid{display:grid;gap:48px}
  @media(min-width:1024px){.isv-grid{grid-template-columns:1fr 1fr;gap:64px}}
  .isv-left{padding:80px 0}
  @media(max-width:1023px){.isv-left{padding:56px 0}}
  .isv-block{scroll-margin-top:96px}
  .isv-block:not(:last-child){padding-bottom:88px}
  .isv-numline{display:flex;align-items:center;gap:12px;margin-bottom:22px}
  .isv-num{font-size:13px;font-family:ui-monospace,monospace;color:var(--violet);background:#e6e2ff;padding:3px 9px;border-radius:6px}
  .isv-numline .hr{height:1px;flex:1;background:var(--border)}
  .isv-head{display:flex;align-items:flex-start;gap:16px;margin-bottom:18px}
  .isv-ico{width:56px;height:56px;border-radius:14px;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#fff}
  .isv-ico svg{width:26px;height:26px}
  .isv-head h3{font-size:32px;font-weight:520;line-height:1.08;letter-spacing:-.04em;color:var(--ink);max-width:540px}
  .isv-head .sub{margin-top:6px;font-size:17px;font-weight:500}
  .isv-desc{font-size:16px;line-height:1.7;color:var(--ink-soft);max-width:600px;margin-bottom:28px}
  .isv-details{display:grid;gap:18px}
  .isv-det{display:flex;gap:14px}
  .isv-det .db{width:40px;height:40px;border-radius:9px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border:1px solid}
  .isv-det .db svg{width:19px;height:19px}
  .isv-det h4{font-size:15px;font-weight:600;color:var(--ink);display:flex;align-items:center;gap:8px}
  .isv-det p{margin-top:3px;font-size:14px;line-height:1.55;color:var(--ink-soft)}
  .isv-soon{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--violet);background:rgba(99,91,255,.1);border-radius:999px;padding:2px 6px;line-height:1}
  .isv-mobvis{margin-bottom:32px;display:block}
  @media(min-width:1024px){.isv-mobvis{display:none}}
  .isv-right{display:none}
  @media(min-width:1024px){.isv-right{display:block;padding:80px 0}}
  .isv-sticky{position:sticky;top:96px}
  .isv-visuals{position:relative}
  .isv-vis{transition:opacity .5s cubic-bezier(.19,1,.22,1),transform .5s cubic-bezier(.19,1,.22,1)}
  .isv-vis.off{opacity:0;transform:translateY(12px) scale(.97);position:absolute;inset:0;pointer-events:none;z-index:0}
  .isv-vis.on{opacity:1;transform:none;position:relative;z-index:1}
  .isv-dots{margin-top:20px;display:flex;align-items:center;justify-content:center;gap:6px}
  .isv-dots button{height:6px;border-radius:999px;background:#cbd6e4;border:0;padding:0;cursor:pointer;transition:width .4s,background .4s;width:6px}
  .isv-dots button.on{width:28px}
  /* visuels (cartes) */
  .vis{border-radius:14px;background:var(--bg);padding:22px;box-shadow:0 0 0 1px var(--border)}
  .vis-h{display:flex;align-items:center;gap:12px;margin-bottom:18px}
  .vis-h .ic{width:40px;height:40px;border-radius:9px;display:flex;align-items:center;justify-content:center}
  .vis-h .ic svg{width:20px;height:20px}
  .vis-h .t{font-size:15px;font-weight:600;color:var(--ink)}
  .vis-h .s{font-size:12px;color:var(--muted)}
  .vis-h .bdg{margin-left:auto;font-size:10px;font-family:ui-monospace,monospace;padding:2px 8px;border-radius:5px}
  .vis-line{display:flex;align-items:center;justify-content:space-between;padding:8px 11px;border-radius:7px;background:#fff;box-shadow:0 0 0 1px var(--border);font-size:12px;margin-bottom:8px}
  .vis-line .num{font-variant-numeric:tabular-nums;font-family:ui-monospace,monospace;color:var(--ink-soft)}
  .vis-tot{border-top:1px solid var(--border);padding-top:12px;display:flex;justify-content:space-between;font-size:13px}
  .vis-tot b{font-weight:700;color:var(--ink)}
  .vis-tr{display:grid;grid-template-columns:44px 1fr 1fr 62px;gap:6px;padding:6px 0;font-size:11px;border-bottom:1px solid var(--border)}
  .vis-tr.hd{color:var(--muted);text-transform:uppercase;font-size:8.5px;letter-spacing:.04em;font-family:ui-monospace,monospace}
  .vis-tr .r{text-align:right;font-variant-numeric:tabular-nums;font-family:ui-monospace,monospace}
  .vis-pos{color:var(--green)}.vis-neg{color:var(--orange)}
  .vis-txn{display:flex;align-items:center;gap:10px;padding:7px 0;border-bottom:1px solid var(--border);font-size:12px}
  .vis-txn .tag{font-size:9.5px;font-family:ui-monospace,monospace;padding:1px 6px;border-radius:5px;background:#fff;box-shadow:0 0 0 1px var(--border);color:var(--muted)}
  .vis-dark{margin-top:16px;border-radius:9px;background:var(--ink);color:#fff;padding:12px 14px}
  .vis-dark .row{display:flex;align-items:center;justify-content:space-between;font-size:12px}
  .vis-dark .soft{color:#a3b6cc}
  .vis-bar{margin-top:9px;height:8px;border-radius:999px;background:rgba(255,255,255,.1);overflow:hidden}
  .vis-bar i{display:block;height:100%;border-radius:999px;background:var(--cyan);width:68%}
  .vis-kpis{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}
  .vis-kpi{background:#fff;border-radius:9px;padding:13px;box-shadow:0 0 0 1px var(--border)}
  .vis-kpi .k{font-size:11px;color:var(--muted)}
  .vis-kpi .v{font-size:22px;font-weight:600;margin-top:3px;font-variant-numeric:tabular-nums}
  .vis-pipe{background:#fff;border-radius:9px;padding:14px;box-shadow:0 0 0 1px var(--border)}
  .vis-pipe .lbl{font-size:11px;font-weight:600;color:var(--ink);margin-bottom:10px}
  .vis-pipe .cols{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;text-align:center}
  .vis-pipe .col{background:var(--bg);border-radius:7px;padding:9px 6px}
  .vis-pipe .col .n{font-size:11px;color:var(--muted)}
  .vis-pipe .col .c{font-size:18px;font-weight:700;color:var(--ink)}

  /* ══════════ ASSISTANT IA ══════════ */
  .ai{background:#fff;border-top:1px solid var(--border);padding:112px 0;overflow:hidden}
  .ai-head{max-width:760px}
  .ai-head h2{font-size:44px;font-weight:520;line-height:1.06;letter-spacing:-.045em;color:var(--ink);margin-top:12px;max-width:700px}
  @media(max-width:640px){.ai-head h2{font-size:32px}}
  .ai-head p{margin-top:24px;font-size:17px;line-height:1.65;color:var(--ink-soft);max-width:620px}
  .ai-showcase{margin-top:48px;border-radius:18px;background:var(--bg);padding:12px;box-shadow:0 24px 60px -24px rgba(10,37,64,.22),0 0 0 1px var(--border)}
  .ai-shbar{display:flex;align-items:center;gap:8px;padding:8px 8px 12px}
  .ai-shbar i{width:10px;height:10px;border-radius:50%;display:block}
  .ai-shbar .lbl{margin-left:12px;font-size:11px;font-family:ui-monospace,monospace;color:var(--muted)}
  .ai-panel{background:#fff;border-radius:12px;padding:22px;box-shadow:0 8px 24px -10px rgba(10,37,64,.14)}
  .ai-panel-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;flex-wrap:wrap;gap:8px}
  .ai-panel-h .t{font-size:16px;font-weight:600;color:var(--ink)}
  .ai-panel-h .s{font-size:12.5px;color:var(--muted)}
  .ai-cards{display:grid;grid-template-columns:1fr;gap:10px}
  @media(min-width:640px){.ai-cards{grid-template-columns:1fr 1fr}}
  @media(min-width:900px){.ai-cards{grid-template-columns:repeat(4,1fr)}}
  .ai-card{position:relative;border-radius:12px;background:var(--bg);padding:16px;box-shadow:0 0 0 1px var(--border);text-align:center}
  .ai-card.rec{box-shadow:0 0 0 1.5px var(--violet);background:rgba(99,91,255,.04)}
  .ai-card .rbadge{position:absolute;top:-9px;left:50%;transform:translateX(-50%);font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#fff;background:var(--violet);border-radius:999px;padding:3px 9px;white-space:nowrap}
  .ai-card .ic{width:38px;height:38px;border-radius:10px;margin:2px auto 10px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:16px}
  .ai-card .nm{font-size:14px;font-weight:600;color:var(--ink)}
  .ai-card .org{font-size:11.5px;color:var(--muted);margin-top:1px}
  .ai-card .bt{margin-top:12px;display:inline-block;font-size:11px;font-weight:600;padding:5px 12px;border-radius:7px;background:var(--ink);color:#fff}
  .ai-card .bt.done{background:rgba(0,182,122,.12);color:var(--green)}
  /* démo interactive : Connecter → chargement → Connecté (et retour) */
  .ai-card .bt{cursor:pointer;user-select:none;transition:background .2s ease,color .2s ease}
  .ai-card .bt:hover{opacity:.88}
  .ai-card .bt.busy{background:rgba(10,37,64,.08);color:var(--muted);cursor:default}
  .ai-card .bt .spin{display:inline-block;width:9px;height:9px;margin-right:6px;vertical-align:-1px;
    border:1.5px solid currentColor;border-top-color:transparent;border-radius:50%;
    animation:aiSpin .6s linear infinite}
  @keyframes aiSpin{to{transform:rotate(360deg)}}
  /* la coche vit en CSS : elle survit au changement de langue (qui réécrit le texte) */
  .ai-card .bt.done::before{content:"\2713 ";font-weight:700}
  .ai-grid2{margin-top:64px;display:grid;gap:48px}
  @media(min-width:1024px){.ai-grid2{grid-template-columns:1fr 1fr;gap:56px}}
  /* une seule colonne quand le bloc « Fonctionne avec » n'est plus là (doublon des
     logos déjà présents dans le panneau au-dessus) */
  .ai-grid2.one{max-width:760px}
  @media(min-width:1024px){.ai-grid2.one{grid-template-columns:1fr}}
  /* le lien « Voir comment configurer » suit désormais le panneau de connexion */
  .ai-showcase .ai-more{margin-top:20px}
  .ai-sublbl{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:20px}
  .ai-works{display:grid;grid-template-columns:1fr 1fr;gap:12px}
  .ai-work{display:flex;align-items:center;gap:12px;border-radius:10px;background:var(--bg);padding:16px;box-shadow:0 0 0 1px var(--border);transition:transform .15s,box-shadow .15s}
  .ai-work:hover{transform:translateY(-2px);box-shadow:0 8px 20px -10px rgba(10,37,64,.14)}
  .ai-work .ic{width:36px;height:36px;border-radius:9px;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#fff}
  .ai-work .ic svg{width:17px;height:17px}
  .ai-work .nm{font-size:15px;font-weight:600;color:var(--ink)}
  .ai-work .org{font-size:12px;color:var(--muted)}
  .ai-more{margin-top:24px}
  .ai-uses{display:flex;flex-direction:column;gap:14px}
  .ai-use{border-radius:12px;background:var(--bg);padding:18px;box-shadow:0 0 0 1px var(--border)}
  .ai-use .row{display:flex;align-items:flex-start;gap:12px}
  .ai-use .n{width:28px;height:28px;border-radius:50%;flex-shrink:0;background:var(--ink);color:#fff;font-size:11px;font-weight:600;font-family:ui-monospace,monospace;display:flex;align-items:center;justify-content:center}
  .ai-use .prompt{font-size:14px;font-family:ui-monospace,monospace;color:var(--violet);line-height:1.4}
  .ai-use .res{margin-top:8px;font-size:14px;line-height:1.55;color:var(--ink-soft)}

  /* ══════════ INDÉPENDANTS (bandeau sombre) ══════════ */
  .indep-hero{position:relative;overflow:hidden;background:var(--ink);color:#fff;padding:96px 0}
  .indep-hero .blob{position:absolute;border-radius:50%;filter:blur(120px);pointer-events:none}
  .indep-hero .blob1{right:-160px;top:-160px;width:500px;height:500px;background:rgba(0,212,255,.08)}
  .indep-hero .blob2{left:-160px;bottom:-160px;width:500px;height:500px;background:rgba(99,91,255,.12)}
  .indep-hero .inner{position:relative}
  .indep-hero .kick{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--cyan);margin-bottom:24px}
  .indep-hero h2{font-size:44px;font-weight:520;line-height:1.06;letter-spacing:-.045em;max-width:800px}
  @media(max-width:640px){.indep-hero h2{font-size:32px}}
  .indep-hero .sub{margin-top:24px;font-size:17px;line-height:1.65;color:#a3b6cc;max-width:680px}
  .indep-hero .feats{margin-top:32px;display:flex;flex-wrap:wrap;gap:12px 24px;font-size:14px;color:#a3b6cc}
  .indep-hero .feats span{display:flex;align-items:center;gap:8px}
  .indep-hero .feats svg{width:16px;height:16px;color:var(--cyan);flex-shrink:0}
  .indep-hero .acts{margin-top:36px;display:flex;flex-direction:column;gap:12px}
  @media(min-width:640px){.indep-hero .acts{flex-direction:row}}

  /* ══════════ CONFORMITÉ ══════════ */
  .comp{position:relative;overflow:hidden;background:#fff;padding:112px 0}
  .comp-halo{position:absolute;top:-128px;left:50%;transform:translateX(-50%);width:820px;height:420px;max-width:100%;border-radius:50%;opacity:.5;pointer-events:none;background:radial-gradient(circle,rgba(99,91,255,.08),rgba(0,182,122,.05) 40%,transparent 70%)}
  .comp-head{position:relative;max-width:760px;margin:0 auto;text-align:center}
  .comp-head .h2{margin-top:12px}
  .comp-hl{position:relative;display:inline-block;z-index:0}
  .comp-hl::after{content:"";position:absolute;left:0;bottom:2px;height:8px;width:100%;border-radius:999px;background:rgba(99,91,255,.22);z-index:-1}
  .comp-head p{margin:20px auto 0;max-width:600px;font-size:17px;line-height:1.65;color:var(--ink-soft)}
  .comp-badges{position:relative;margin-top:32px;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px}
  .comp-badge{display:inline-flex;align-items:center;gap:8px;border-radius:999px;background:#fff;padding:7px 14px;font-size:12.5px;font-weight:600;color:var(--ink);box-shadow:0 1px 2px rgba(10,37,64,.04),0 0 0 1px var(--border);transition:transform .15s}
  .comp-badge:hover{transform:translateY(-2px)}
  .comp-badge i{width:6px;height:6px;border-radius:50%;display:block}
  .comp-pillars{position:relative;margin-top:72px;display:grid;gap:20px}
  @media(min-width:900px){.comp-pillars{grid-template-columns:repeat(3,1fr)}}
  .comp-pillar{position:relative;overflow:hidden;height:100%;border-radius:16px;background:var(--bg);padding:28px;box-shadow:0 0 0 1px var(--border);transition:transform .2s,box-shadow .2s}
  .comp-pillar:hover{transform:translateY(-4px);box-shadow:0 14px 40px -16px rgba(10,37,64,.18),0 0 0 1px #cbd6e4}
  .comp-pico{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 8px 20px -6px rgba(10,37,64,.25)}
  .comp-pico svg{width:21px;height:21px}
  .comp-pillar h3{margin-top:24px;font-size:20px;font-weight:560;letter-spacing:-.02em;color:var(--ink)}
  .comp-pillar p{margin-top:12px;font-size:14.5px;line-height:1.7;color:var(--ink-soft)}
  .comp-tag{margin-top:20px;display:inline-flex;align-items:center;gap:8px;border-radius:999px;background:#fff;padding:5px 12px;font-size:11px;font-family:ui-monospace,monospace;text-transform:uppercase;letter-spacing:.03em;color:var(--ink);box-shadow:0 0 0 1px var(--border)}
  .comp-tag svg{width:12px;height:12px;flex-shrink:0}
  .comp-stats{position:relative;margin-top:48px;border-radius:16px;background:linear-gradient(135deg,#0a2540,#1c3553);padding:32px;color:#fff;box-shadow:0 24px 60px -30px rgba(10,37,64,.5)}
  .comp-stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
  @media(min-width:768px){.comp-stats-grid{grid-template-columns:repeat(4,1fr)}}
  .comp-stat{text-align:center}
  @media(min-width:768px){.comp-stat{text-align:left;border-left:1px solid rgba(255,255,255,.1);padding-left:24px}.comp-stat:first-child{border-left:0;padding-left:0}}
  .comp-stat .big{font-size:29px;font-weight:560;letter-spacing:-.03em}
  .comp-stat .lbl{margin-top:4px;font-size:12.5px;line-height:1.4;color:#a3b6cc}
  .comp-legal{position:relative;margin-top:30px;text-align:center;font-size:12.5px;color:var(--muted)}
  .comp-legal a{color:var(--violet);font-weight:500}

  /* ══════════ FIDUCIAIRES (bandeau sombre) ══════════ */
  .fid{position:relative;overflow:hidden;background:var(--ink);color:#fff;padding:112px 0}
  .fid .blob{position:absolute;border-radius:50%;filter:blur(120px);pointer-events:none}
  .fid .blob1{right:-160px;top:-160px;width:500px;height:500px;background:rgba(0,212,255,.08)}
  .fid .blob2{left:-160px;bottom:-160px;width:500px;height:500px;background:rgba(99,91,255,.12)}
  .fid-grid{position:relative;display:grid;gap:48px}
  @media(min-width:1024px){.fid-grid{grid-template-columns:.9fr 1.1fr;gap:56px}}
  .fid .kick{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--cyan);margin-bottom:12px}
  .fid h2{font-size:42px;font-weight:520;line-height:1.06;letter-spacing:-.045em}
  @media(max-width:640px){.fid h2{font-size:31px}}
  .fid .sub{margin-top:20px;font-size:17px;line-height:1.65;color:#a3b6cc}
  .fid .more{margin-top:28px;color:var(--cyan)}
  .fid .more:hover{color:#fff}
  .fid-cards{display:grid;gap:12px}
  @media(min-width:560px){.fid-cards{grid-template-columns:1fr 1fr}}
  .fid-card{border-radius:12px;background:rgba(255,255,255,.05);padding:22px;border:1px solid rgba(255,255,255,.08);transition:background .15s}
  .fid-card:hover{background:rgba(255,255,255,.08)}
  .fid-card>svg{width:24px;height:24px;color:var(--cyan);margin-bottom:14px}
  .fid-card .t{font-weight:600;font-size:15px;display:flex;align-items:center;gap:8px}
  .fid-card .x{margin-top:4px;font-size:13px;color:#a3b6cc}

  /* ══════════ FOOTER ══════════ */
  footer.ft{background:var(--ink);color:#fff}
  .ft-top{border-bottom:1px solid rgba(255,255,255,.08)}
  .ft-top .wrap{display:flex;flex-direction:column;gap:32px;align-items:flex-start;justify-content:space-between;padding:56px 20px}
  @media(min-width:1024px){.ft-top .wrap{flex-direction:row;align-items:center;padding:56px 24px}}
  .ft-top h3{font-size:28px;font-weight:520;letter-spacing:-.03em;line-height:1.2}
  .ft-top p{margin-top:8px;font-size:15px;color:#a3b6cc}
  .ft-top .acts{display:flex;gap:12px}
  .btn-white{background:#fff;color:var(--ink);height:40px;padding:0 20px;font-size:14px}
  .btn-white:hover{background:var(--bg)}
  .btn-outline{background:none;color:#fff;height:40px;padding:0 20px;font-size:14px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.15)}
  .btn-outline:hover{background:rgba(255,255,255,.06)}
  .ft-main{padding:56px 20px 32px}
  @media(min-width:1024px){.ft-main{padding:56px 24px 32px}}
  .ft-cols{display:flex;flex-direction:column;gap:40px}
  @media(min-width:1024px){.ft-cols{flex-direction:row;align-items:flex-start;justify-content:space-between}}
  .ft-brand{max-width:280px}
  .ft-brand .b{display:flex;align-items:center;gap:10px;margin-bottom:16px;font-size:17px;font-weight:600}
  .ft-brand .b img{width:24px;height:24px;filter:brightness(0) invert(1)}
  .ft-brand p{font-size:13.5px;line-height:1.55;color:#a3b6cc}
  .ft-social{display:flex;gap:10px;margin-top:18px}
  .ft-social a{width:34px;height:34px;border-radius:9px;display:flex;align-items:center;justify-content:center;color:#a3b6cc;background:rgba(255,255,255,.06);transition:color .15s,background .15s,transform .15s}
  .ft-social a:hover{color:#fff;background:rgba(255,255,255,.12);transform:translateY(-1px)}
  .ft-social a svg{width:17px;height:17px}
  .ft-links{display:grid;grid-template-columns:repeat(2,1fr);gap:40px}
  @media(min-width:640px){.ft-links{grid-template-columns:repeat(4,1fr);gap:56px}}
  .ft-links h4{margin-bottom:16px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--muted)}
  .ft-links li{list-style:none;margin-bottom:12px}
  .ft-links a{font-size:14px;color:#a3b6cc;transition:color .15s}
  .ft-links a:hover{color:#fff}
  .ft-bottom{margin-top:48px;display:flex;flex-direction:column;gap:16px;align-items:center;border-top:1px solid rgba(255,255,255,.08);padding-top:32px;font-size:12.5px;color:var(--muted)}
  @media(min-width:640px){.ft-bottom{flex-direction:row;justify-content:space-between}}
  .ft-bottom .legal{display:flex;flex-wrap:wrap;gap:16px;align-items:center}
  .ft-bottom a:hover{color:#fff}
  .ft-status{display:flex;align-items:center;gap:6px;color:var(--green)}

  @media(max-width:900px){.stripe-mesh{height:640px;left:-220px;right:-220px}}

  /* ══════════ HOME — Pricing teaser (.hpp) ══════════ */
  .hpp{background:#fff;padding:96px 0;border-top:1px solid var(--border)}
  .hpp-head{max-width:640px;margin:0 auto 56px;text-align:center}
  .hpp-head .kick{display:block;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--violet);margin-bottom:12px}
  .hpp-head .h2{font-size:clamp(32px,4.4vw,48px)}
  .hpp-head .sub{margin:18px auto 0;max-width:520px;font-size:17px;line-height:1.6;color:var(--ink-soft)}
  .hpp-grid{display:grid;gap:24px;max-width:1000px;margin:0 auto}
  @media(min-width:860px){.hpp-grid{grid-template-columns:repeat(3,1fr);align-items:stretch}}
  .hpp-card{position:relative;display:flex;flex-direction:column;border-radius:16px;background:#fff;padding:28px;box-shadow:0 0 0 1px var(--border),0 1px 2px rgba(10,37,64,.04)}
  .hpp-card.feat{background:var(--ink);color:#fff;box-shadow:0 24px 60px -24px rgba(10,37,64,.5)}
  .hpp-pop{position:absolute;top:16px;right:16px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#fff;background:var(--violet);padding:4px 10px;border-radius:999px}
  .hpp-nm{font-size:16px;font-weight:700;color:var(--ink)}
  .hpp-card.feat .hpp-nm{color:#fff}
  .hpp-tag{margin-top:2px;font-size:13.5px;color:var(--muted)}
  .hpp-card.feat .hpp-tag{color:#a3b6cc}
  .hpp-price{margin-top:18px;display:flex;align-items:baseline;gap:4px}
  .hpp-price .big{font-size:40px;font-weight:600;letter-spacing:-.03em;color:var(--ink)}
  .hpp-card.feat .hpp-price .big{color:#fff}
  .hpp-price .unit{font-size:14px;color:var(--muted)}
  .hpp-card.feat .hpp-price .unit{color:#a3b6cc}
  .hpp-trial{margin-top:8px;display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#00875a;background:rgba(0,182,122,.1);padding:5px 11px;border-radius:999px;width:max-content;max-width:100%;white-space:nowrap;box-shadow:inset 0 0 0 1px rgba(0,182,122,.2)}
  .hpp-trial svg{width:15px;height:15px;flex:none}
  .hpp-card.feat .hpp-trial{color:#5eecb5;background:rgba(94,236,181,.12);box-shadow:inset 0 0 0 1px rgba(94,236,181,.2)}
  .hpp-cta{margin-top:22px;height:44px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:14px;font-weight:600;transition:background .15s;text-decoration:none}
  .hpp-card:not(.feat) .hpp-cta{background:var(--ink);color:#fff}
  .hpp-card:not(.feat) .hpp-cta:hover{background:#1c3553}
  .hpp-card.feat .hpp-cta{background:#fff;color:var(--ink)}
  .hpp-card.feat .hpp-cta:hover{background:#e9ecff}
  .hpp-feats{margin-top:20px;padding-top:20px;border-top:1px solid var(--border);list-style:none;display:flex;flex-direction:column;gap:11px;flex:1}
  .hpp-card.feat .hpp-feats{border-color:rgba(255,255,255,.14)}
  .hpp-feats li{display:flex;align-items:flex-start;gap:10px;font-size:13.5px;line-height:1.4;color:var(--ink-soft)}
  .hpp-card.feat .hpp-feats li{color:#dce6f1}
  .hpp-feats svg{width:16px;height:16px;flex-shrink:0;margin-top:1px;color:var(--green)}
  .hpp-card.feat .hpp-feats svg{color:#5eecb5}
  .hpp-more{margin-top:40px;text-align:center}
  .hpp-secure{margin-top:14px;text-align:center;font-size:13px;color:var(--muted);display:flex;align-items:center;justify-content:center;gap:8px}
  .hpp-secure svg{width:15px;height:15px;color:var(--green)}
  /* ══════════ HOME — FAQ (.hpf) ══════════ */
  .hpf{background:var(--bg);padding:96px 0}
  .hpf-head{max-width:640px;margin:0 auto 40px;text-align:center}
  .hpf-head .kick{display:block;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--violet);margin-bottom:12px}
  .hpf-head .h2{font-size:clamp(30px,4vw,44px)}
  .hpf-list{max-width:760px;margin:0 auto;border-top:1px solid var(--border)}
  .hpf-q{border-bottom:1px solid var(--border)}
  .hpf-q summary{list-style:none;cursor:pointer;padding:20px 4px;display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:16.5px;font-weight:600;color:var(--ink)}
  .hpf-q summary::-webkit-details-marker{display:none}
  .hpf-q summary .ic{flex-shrink:0;width:20px;height:20px;position:relative;transition:transform .2s}
  .hpf-q summary .ic::before,.hpf-q summary .ic::after{content:"";position:absolute;background:var(--violet);border-radius:2px}
  .hpf-q summary .ic::before{top:9px;left:2px;right:2px;height:2px}
  .hpf-q summary .ic::after{left:9px;top:2px;bottom:2px;width:2px;transition:transform .2s}
  .hpf-q[open] summary .ic::after{transform:scaleY(0)}
  .hpf-q .a{padding:0 4px 22px;font-size:15px;line-height:1.65;color:var(--ink-soft);max-width:660px}
  .hpf-q:not([open]) .a{display:none} /* fermé par défaut : la réponse n'apparaît qu'au clic */
