:root{
    /* Brand */
    --bg:#FAF6EF;
    --ink:#1E2129;
    --ink-soft:#3A3F4B;
    --muted:#9AA0AC;
    --line:rgba(30,33,41,.08);
    --line-strong:rgba(30,33,41,.14);

    /* 3 univers */
    --atlas:#00A2DC;
    --atlas-soft:#E1F2FB;
    --agora:#6366F1;
    --agora-soft:#ECEBFF;
    --ulyss:#00A2DC;

    /* Accents */

    /* Status */
    --shadow:0 14px 40px rgba(30,33,41,.07);
    --radius-lg:32px;
  }

  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{
    font-family:'Poppins',-apple-system,BlinkMacSystemFont,sans-serif;
    background:var(--bg);
    color:var(--ink);
    line-height:1.55;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  h1,h2,h4{
    font-family:'Poppins',sans-serif;
    font-weight:700;
    letter-spacing:-0.025em;
    line-height:1.05;
  }
  a{color:inherit;text-decoration:none}
  button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}
  img,svg{display:block;max-width:100%}

  .container{max-width:1240px;margin:0 auto;padding:0 28px}
  /* U with star */

  .icon-tile{
    border-radius:22%;
    display:grid;place-items:center;
    position:relative;
    box-shadow:0 18px 40px rgba(30,33,41,.16);
  }
  .icon-tile.tile-h{background:linear-gradient(160deg, #8FDCC0, #22B07D)}
  .icon-tile.tile-a{background:linear-gradient(160deg, #8B8DF7, #4F52D9)}
  .icon-tile.tile-u{background:linear-gradient(160deg, #33B9E6, #0A6E97)}
  .icon-tile::after{
    content:"";position:absolute;left:8%;top:8%;width:60%;height:24%;
    background:radial-gradient(ellipse at center, rgba(255,255,255,.22), transparent 65%);
    border-radius:50%;pointer-events:none;
  }

  /* ============ NAV (Canva-style flat header) ============ */
  nav{
    position:sticky;top:0;z-index:50;
    background:#fff;
    border-bottom:1px solid var(--line);
  }

  .btn{
    display:inline-flex;align-items:center;gap:8px;
    padding:12px 20px;border-radius:999px;
    font-weight:600;font-size:14px;
    transition:transform .2s ease, box-shadow .2s ease, background .2s ease;
  }
  .btn-lg{padding:15px 24px;font-size:15px}

  /* ============ SECTION GENERIC ============ */
  section.block{padding:120px 0;position:relative}

  /* ============ ULYSS ============ */

  /* ============ USE CASES ============ */
  .uc{
    background:#fff;border:1px solid var(--line);border-radius:22px;
    padding:28px;display:flex;flex-direction:column;justify-content:space-between;
    min-height:240px;transition:transform .3s ease,box-shadow .3s ease;
    position:relative;overflow:hidden;
  }
  .uc::after{
    content:"";position:absolute;bottom:-40px;right:-40px;width:160px;height:160px;border-radius:50%;
    background:var(--c, var(--atlas-soft));opacity:.45;
  }
  .uc:hover{transform:translateY(-4px);box-shadow:var(--shadow)}

  /* ============ FINAL CTA ============ */
  .final-cta{
    background:var(--ink);color:#fff;
    border-radius:var(--radius-lg);padding:100px 40px;
    text-align:center;position:relative;overflow:hidden;
  }
  .final-cta::before{
    content:"";position:absolute;width:520px;height:520px;border-radius:50%;
    background:radial-gradient(circle,var(--atlas),transparent 70%);
    top:-220px;left:-180px;opacity:.6;
  }
  .final-cta::after{
    content:"";position:absolute;width:560px;height:560px;border-radius:50%;
    background:radial-gradient(circle,var(--ulyss),transparent 70%);
    bottom:-280px;right:-180px;opacity:.5;
  }
  .final-cta .icons-row{
    position:relative;display:inline-flex;gap:-14px;margin-bottom:24px;
  }
  .final-cta .icons-row .icon-tile{width:64px;height:64px;border-radius:18px;margin:0 -8px;border:3px solid var(--ink);box-shadow:0 12px 30px rgba(0,0,0,.3)}
  .final-cta .icons-row .icon-tile svg{width:42px;height:42px}
  .final-cta h2{font-size:clamp(42px,5.5vw,72px);max-width:820px;margin:0 auto 22px;position:relative}
  .final-cta p{color:rgba(255,255,255,.7);max-width:560px;margin:0 auto 36px;font-size:18px;position:relative}
  .final-cta .ctas{display:inline-flex;gap:12px;position:relative;flex-wrap:wrap;justify-content:center}
  .btn-cream{background:#fff;color:var(--ink)}
  .btn-cream:hover{transform:translateY(-1px);box-shadow:0 14px 30px rgba(255,255,255,.20)}

  /* ============ FOOTER ============ */
  footer{padding:90px 0 50px}
  /* Parent wrapper — un seul dégradé continu sur les 2 sections violettes */
  .home-purple-flow{
    position:relative;
    isolation:isolate;
    overflow:hidden;
    background:
      radial-gradient(ellipse 900px 700px at 12% 12%, rgba(99,102,241,.28), transparent 55%),
      radial-gradient(ellipse 800px 600px at 88% 8%, rgba(0,162,220,.14), transparent 55%),
      linear-gradient(180deg,
        #1E2129 0%,
        #24274A 22%,
        #262A4A 46%,
        #6366F1 68%,
        #8B8DF7 84%,
        #DCDDFD 94%,
        #FFFFFF 100%
      );
  }
  .home-purple-flow > section{
    background:transparent !important;
    border:0 !important;
    box-shadow:none !important;
    margin:0 !important;
    position:relative;z-index:1;
  }
  /* Fondu long et progressif vers la section suivante (blanche) */
  .home-purple-flow::after{
    content:"";position:absolute;left:0;right:0;bottom:0;height:340px;
    background:linear-gradient(180deg,
      rgba(255,255,255,0) 0%,
      rgba(255,255,255,.12) 50%,
      rgba(255,255,255,.55) 80%,
      #FFFFFF 100%);
    pointer-events:none;z-index:0;
  }

  .launch-hero{
    position:relative;
    color:#fff;
    padding:90px 0 0;
  }
  .launch-inner{position:relative;text-align:center;max-width:1320px;margin:0 auto;padding:0 28px}

  .brand-mark{
    display:inline-flex;align-items:center;gap:10px;
    margin-bottom:28px;
  }
  .brand-mark .word{
    font-family:'Poppins',cursive;
    font-size:54px;color:#fff;line-height:1;letter-spacing:-.01em;
  }
  .brand-mark .sub{
    font-family:'Poppins',sans-serif;
    font-size:30px;font-weight:700;color:#fff;letter-spacing:-.02em;
  }
  .brand-mark .v{
    font-family:'Poppins',sans-serif;font-size:13px;font-weight:700;
    background:rgba(255,255,255,.16);
    border:1px solid rgba(255,255,255,.28);
    color:#fff;padding:5px 9px;border-radius:9px;letter-spacing:.02em;
  }

  .launch-hero .launch-title{
    font-family:'Poppins',sans-serif;
    font-size:clamp(28px,4vw,54px);
    font-weight:700;color:#fff;letter-spacing:-.02em;
    margin:0 0 56px;line-height:1.1;white-space:nowrap;
  }

  .tab-switcher{
    display:inline-flex;align-items:center;
    background:#fff;border-radius:999px;
    padding:6px;gap:4px;
    box-shadow:0 18px 50px rgba(0,0,0,.25);
    position:relative;z-index:2;
  }
  .tab-btn{
    position:relative;padding:14px 30px;
    font-family:'Poppins',sans-serif;font-size:17px;font-weight:700;
    color:var(--ink);border-radius:999px;
    transition:color .25s ease;cursor:pointer;
    background:none;border:none;
  }
  .tab-btn.active{
    color:#fff;
    background:linear-gradient(135deg,#00A2DC 0%, #6366F1 55%, #8B8DF7 100%);
    box-shadow:0 8px 20px rgba(99,102,241,.45);
  }

  .mockup-wrap{
    position:relative;
    z-index:2;
    margin:60px auto 0;
    max-width:1180px;
    padding:0 40px 90px;
  }
  .mockup{
    position:relative;background:#fff;
    border-radius:24px;overflow:hidden;
    aspect-ratio:16/9;
    box-shadow:0 50px 120px rgba(0,0,0,.45);
    display:grid;grid-template-columns:292px 1fr 280px;
    transition:grid-template-columns .35s ease;
  }
  .mockup.struct{grid-template-columns:86px 1fr 300px}
  .mockup.rail{grid-template-columns:86px 1fr 280px}
  /* panneau droit : étape sélectionnée (style #89) */
  .uc-detail{display:none}
  .mockup.struct .mock-aside.uc{display:block;padding:0;background:#fff;overflow:hidden}
  .mockup.struct .mock-aside.uc::after{content:none;display:none}
  .mockup.struct .mock-aside.uc > :not(.uc-detail){display:none}
  .mockup.struct .uc-detail{display:flex;flex-direction:column;height:100%}
  .ud-top{display:flex;align-items:center;gap:8px;justify-content:flex-end;padding:12px 14px;border-bottom:1px solid var(--line);flex:none}
  .ud-share{display:inline-flex;align-items:center;gap:6px;background:var(--agora);color:#fff;border:none;border-radius:9px;padding:8px 13px;font-size:12px;font-weight:700;cursor:pointer;font-family:inherit}
  .ud-tic,.ud-av{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;flex:none}
  .ud-tic{color:var(--ink-soft);background:var(--bg)}
  .ud-av{background:#1f2733;color:#fff;font-size:12px;font-weight:700}
  .ud-scroll{flex:1;overflow:hidden;padding:14px 16px}
  .ud-head{display:flex;align-items:center;justify-content:space-between}
  .ud-head b{font-size:13px;font-weight:700;color:var(--ink-soft)}
  .ud-head .ud-x{color:var(--muted);cursor:pointer}
  .ud-num{font-size:12px;color:var(--muted);font-weight:700;margin-top:12px;display:inline-block}
  .ud-titlerow{display:flex;align-items:center;justify-content:space-between;margin-top:2px;gap:8px}
  .ud-titlerow h4{font-family:'Poppins';font-size:20px;font-weight:800;color:var(--ink)}
  .ud-status{font-size:11px;font-weight:600;color:#B8812A;background:#FFE9D6;border-radius:999px;padding:4px 9px;white-space:nowrap}
  .ud-tabs{display:flex;gap:16px;margin-top:14px;border-bottom:1px solid var(--line)}
  .ud-tabs span{font-size:12.5px;color:var(--muted);font-weight:600;padding-bottom:9px;cursor:pointer}
  .ud-tabs span.act{color:var(--agora);border-bottom:2px solid var(--agora)}
  .ud-sec{margin-top:16px}
  .ud-lbl{font-size:11px;font-weight:700;color:var(--ink);letter-spacing:.02em;margin-bottom:8px}
  .ud-desc{font-size:12px;color:var(--ink-soft);line-height:1.5}
  .ud-preview{background:#FBF9F5;border-radius:12px;padding:18px;display:flex;align-items:center;justify-content:center;min-height:150px}
  .ud-logo{width:108px;height:108px;object-fit:contain}
  .ud-versions{display:flex;gap:8px}
  .ud-versions .v{width:46px;height:46px;border-radius:9px;background:#FBF9F5;border:1px solid var(--line);overflow:hidden;display:grid;place-items:center}
  .ud-versions .v img{width:78%;height:78%;object-fit:contain}
  .ud-versions .add{width:46px;height:46px;border-radius:9px;border:1px dashed var(--line-strong);display:grid;place-items:center;color:var(--muted);font-size:18px}
  .ud-action{display:flex;align-items:center;gap:10px;background:var(--bg);border-radius:12px;padding:11px;margin-bottom:8px;text-decoration:none}
  .ud-aic{width:30px;height:30px;border-radius:8px;background:#fff;display:grid;place-items:center;flex:none}
  .ud-action b{font-family:'Poppins';font-size:12.5px;font-weight:700;color:var(--ink);display:block;line-height:1.2}
  .ud-action > div span{font-size:10.5px;color:var(--ink-soft);line-height:1.3}
  .ud-action .chev{margin-left:auto;color:var(--muted);font-size:16px}
  .mock-side{
    background:#fff;border-right:1px solid rgba(30,33,41,.06);
    padding:28px 18px;display:flex;flex-direction:column;gap:26px;
  }
  .mock-stage{position:relative;overflow:hidden}
  .mock-aside{background:linear-gradient(180deg,#F4F4FF 0%,#FFFFFF 100%);border-left:1px solid rgba(30,33,41,.04);padding:24px 20px;display:flex;flex-direction:column;gap:18px;overflow:hidden}

  .scene{display:none;width:100%;height:100%}
  .scene.active{display:flex;flex-direction:column;gap:18px}
  .kpi{
    background:#fff;border:1px solid rgba(30,33,41,.06);
    border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:6px;
  }

  @media (max-width:980px){
    .mockup-wrap{display:none !important}
    .mockup{grid-template-columns:1fr;aspect-ratio:auto}
    .mock-side,.mock-aside,.scene{display:none}
    .tab-switcher{flex-wrap:nowrap;justify-content:center;max-width:100%}
    .tab-btn{padding:10px 14px;font-size:13px;white-space:nowrap}
    @media (max-width:420px){
      .tab-btn{padding:9px 10px;font-size:12px}
    }
    .launch-hero .launch-title{font-size:32px;white-space:normal}
    .brand-mark .word{font-size:42px}
    .brand-mark .sub{font-size:24px}

    /* MOBILE — HOMR Studio editor mockup (Canva-style, Tableau blanc) */
    .mockup{background:transparent;box-shadow:none;border-radius:0;overflow:visible;position:relative}
  }
  /* tous : padding 18px, border, header centré Poppins 10.5px caps */

  /* ============ EXPERTS PRO (Canva Pro+ style) ============ */
  .experts-pro{
    background:#FFFFFF;
    color:#1E2129;
    padding:100px 0;
    position:relative;overflow:hidden;
  }
  .experts-pro::before{display:none}
  .experts-grid{
    position:relative;
    display:grid;grid-template-columns:1fr 1fr;
    gap:60px;align-items:center;
  }
  .experts-text h2{
    font-family:'Poppins',sans-serif;
    font-size:clamp(36px,4.4vw,60px);
    font-weight:800;letter-spacing:-.02em;
    color:#1E2129;line-height:1.05;
    margin-bottom:22px;
  }
  .experts-text p{
    font-size:16.5px;line-height:1.65;
    color:#3A3F4B;
    max-width:520px;margin-bottom:32px;
  }
  .experts-ctas{display:flex;gap:12px;flex-wrap:wrap}
  .btn-light-outline{
    background:#fff;color:#1E2129;
    border:1px solid rgba(30,33,41,.14);
    padding:14px 26px;border-radius:999px;
    font-family:'Poppins';font-weight:700;font-size:15px;
    display:inline-flex;align-items:center;gap:8px;
    transition:all .2s ease;
  }
  .btn-light-outline:hover{border-color:#6366F1;color:#6366F1;transform:translateY(-2px);box-shadow:0 10px 24px rgba(30,33,41,.08)}

  /* Scene right side */
  .experts-scene{
    position:relative;height:540px;
  }
  /* Expert photo */
  .ex-figure{
    position:absolute;right:20px;bottom:0;
    width:300px;height:480px;
    border-radius:24px;overflow:hidden;
    box-shadow:0 30px 60px rgba(0,0,0,.35);
  }
  .ex-figure img{
    width:100%;height:100%;object-fit:cover;object-position:center top;display:block;
  }

  /* Floating cards */
  .ex-card{
    position:absolute;
    border-radius:14px;padding:14px 18px;
    font-family:'Poppins';color:#fff;
    box-shadow:0 22px 50px rgba(0,0,0,.35);
  }
  .ex-card.kpi{
    left:36%;top:46%;
    background:linear-gradient(135deg,#6366F1,#4F52D9);
    font-weight:800;font-size:13px;line-height:1.25;
    letter-spacing:.04em;text-transform:uppercase;
    z-index:3;
  }
  .ex-name{
    position:absolute;
    background:linear-gradient(135deg,#FF6FA8,#D35454);
    color:#fff;font-family:'Poppins';font-weight:800;font-size:14px;
    padding:7px 14px;border-radius:11px;
    box-shadow:0 12px 28px rgba(211,84,84,.45);
    z-index:4;
  }
  .ex-name.tamara{top:18%;right:5%}
  .ex-name.tamara::after{
    content:"";position:absolute;left:-7px;top:50%;transform:translateY(-50%);
    border:6px solid transparent;border-right-color:#FF6FA8;
  }

  /* Sparkles */
  .ex-spark{
    position:absolute;color:#FFE57A;font-size:24px;
    text-shadow:0 0 12px rgba(255,229,122,.6);
    pointer-events:none;
  }
  .ex-spark.s1{top:6%;right:18%}
  .ex-spark.s2{bottom:36%;right:36%}
  .ex-spark.s3{top:32%;right:32%}

  @media (max-width:880px){
    .experts-grid{grid-template-columns:1fr;gap:32px;justify-items:center}
    /* Hoist text children into the grid so we can reorder button AFTER the image */
    .experts-text{display:contents}
    .experts-text h2{order:1;text-align:center;width:100%}
    .experts-text p{order:2;text-align:center;max-width:560px;margin-left:auto;margin-right:auto;width:100%}
    .experts-scene{order:3;height:auto;min-height:600px;max-width:520px;margin:0 auto;width:100%;display:flex;justify-content:center;align-items:center}
    .experts-ctas{order:4;justify-content:center;margin-top:4px}
  }
  /* MOBILE — center the whole experts-scene properly */
  @media (max-width:640px){
    .experts-scene{height:auto;min-height:560px;max-width:100%;margin:0 auto;padding:16px 0;position:relative}
    /* Parent is flex-centered → .ex-figure just flows in place, no left/transform needed */
    .ex-figure{position:relative;right:auto;bottom:auto;left:auto;transform:none;width:88%;max-width:360px;height:auto;aspect-ratio:3/4.6;margin:0 auto}
    .ex-card.kpi{left:50%;top:auto;bottom:22%;transform:translateX(-50%);font-size:13px;padding:12px 16px}
    .ex-name.tamara{right:8%;top:10%;font-size:13px;padding:7px 14px}
    .ex-spark{font-size:22px}
    .ex-spark.s1{top:3%;right:18%}
    .ex-spark.s2{bottom:26%;right:22%}
    .ex-spark.s3{top:22%;right:18%}
  }
  @media (max-width:420px){
    .experts-scene{max-width:100%;min-height:520px}
    .ex-figure{width:92%;max-width:320px;height:auto;left:auto;transform:none}
  }

  /* bannière "de l'inspiration au succès" (style #86) */
  .vbanner{background:transparent;padding:100px 0 220px;min-height:760px;display:flex;align-items:center}
  .vbanner .vb-inner{max-width:1240px;margin:0 auto;padding:0 32px;display:grid;grid-template-columns:1fr 1.12fr;gap:54px;align-items:center}
  .vbanner .vb-text h2{font-family:'Poppins',sans-serif;font-size:50px;line-height:1.04;font-weight:800;letter-spacing:-.02em;color:#fff}
  .vbanner .vb-text p{margin-top:20px;font-size:17px;line-height:1.6;color:rgba(255,255,255,.9);max-width:480px}
  .vbanner .vb-btn{margin-top:28px;display:inline-flex;align-items:center;gap:8px;background:#fff;color:var(--ink);font-weight:700;font-size:16px;padding:15px 28px;border-radius:14px;transition:transform .2s ease,box-shadow .2s ease}
  .vbanner .vb-btn:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(30,33,41,.28)}
  .vbanner .vb-visual img{width:100%;height:auto;border-radius:20px;box-shadow:0 30px 70px rgba(30,33,41,.38);display:block;border:1px solid rgba(255,255,255,.25)}

  /* Narrow variant — mirrors the sidebar layout in image 9 (4 cards stacked, 2-row input) */
  @media (max-width:900px){.vbanner{padding:70px 0 170px;min-height:auto}.vbanner .vb-inner{grid-template-columns:1fr;gap:32px}.vbanner .vb-text h2{font-size:36px}}

  /* ============ MOCKUP refonte façon app (#14) ============ */
  .mock-stage{padding:0 !important;
    background:radial-gradient(rgba(30,33,41,.05) 1px, transparent 1px) 0 0/22px 22px, #FBF9F5 !important}
  .mock-stage > .scene{padding:30px 38px}
  .mock-stage > .scene.cv-scene{padding:0}
  .mock-stage > .scene.cv-scene.active{display:block}

  /* Centre : canvas */
  .cv-toolbar{position:absolute;top:16px;left:50%;transform:translateX(-50%);display:flex;gap:3px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:5px;box-shadow:0 8px 24px rgba(30,33,41,.1);z-index:3}
  .cv-toolbar span{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;color:var(--ink-soft)}
  .cv-toolbar span.on{background:var(--ink);color:#fff}
  .cv-toolbar .cv-div{width:1px;height:20px;background:var(--line);display:block;border-radius:2px;margin:0 2px}
  .cv-annot{position:absolute;top:60px;left:50%;transform:translateX(-236px);z-index:2;display:flex;align-items:flex-end;gap:6px;pointer-events:none}
  .cv-annot p{font-family:'Caveat',cursive;font-weight:600;font-size:21px;line-height:1.18;color:var(--agora);margin:0;text-align:left}
  .cv-annot .cv-arrow{flex:none;margin-bottom:2px}
  .cv-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;padding:20px}
  .cv-blob{position:absolute;border-radius:50%;filter:blur(7px);opacity:.55;z-index:0}
  .cv-logo{width:118px;height:118px;border-radius:30px;background:#fff;display:grid;place-items:center;box-shadow:0 30px 70px rgba(30,33,41,.14);position:relative;z-index:1}
  .cv-center h4{position:relative;z-index:1;font-family:'Poppins';font-weight:800;font-size:23px;color:var(--ink);letter-spacing:-.02em}
  /* écran vide façon Excalidraw (#32) */
  .cv-empty{gap:14px}
  .cv-empty .cv-menu{margin-top:10px}
  .cv-menu{display:flex;flex-direction:column;gap:1px;min-width:260px}
  .cv-mi{display:flex;align-items:center;gap:10px;padding:5px 10px;border-radius:10px;cursor:pointer;transition:background .15s ease}
  .cv-mi:hover{background:rgba(30,33,41,.05)}
  .cv-mi .i{width:17px;display:grid;place-items:center;color:#aab0bd;flex:none}
  .cv-mi .i svg{width:15px;height:15px}
  .cv-mi .t{flex:1;text-align:left;font-family:'Caveat',cursive;font-weight:600;font-size:17px;color:#9aa3b2;line-height:1.1}
  .cv-mi .k{font-family:'Caveat',cursive;font-size:15px;color:#b7bdc9}
  .cv-bottom{position:absolute;bottom:16px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:2px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:5px 7px;box-shadow:0 8px 24px rgba(30,33,41,.1);color:var(--ink-soft);z-index:3}
  .cv-bottom span{width:30px;height:30px;border-radius:8px;display:grid;place-items:center}
  .cv-bottom .zoom{font-weight:600;font-size:12px;padding:0 8px;width:auto}

  /* carte mentale de projet (section Structure, style #67) */
  .pmap{position:relative;flex:1;width:100%;min-height:600px;border-radius:18px;background:
    radial-gradient(circle at 50% 46%, rgba(99,102,241,.06), transparent 55%),
    radial-gradient(circle, rgba(30,33,41,.055) 1px, transparent 1.4px) 0 0/22px 22px,
    #FBF9F5;
    border:1px solid rgba(30,33,41,.05);
    overflow:hidden}
  .pmap::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 46%, transparent 30%, rgba(250,246,239,.85) 78%);pointer-events:none;z-index:1}
  .pmap-links{position:absolute;inset:0;width:100%;height:100%;z-index:1}
  .pmap-links path{stroke:url(#pmap-line-grad);stroke-width:1.3;fill:none;vector-effect:non-scaling-stroke;stroke-dasharray:3 4;stroke-linecap:round;opacity:.75}
  .pmap-links circle{fill:#6366F1;opacity:.55}
  .pn{position:absolute;transform:translate(-50%,-50%);background:#fff;border:1px solid rgba(30,33,41,.07);border-radius:14px;padding:10px 11px;width:104px;box-shadow:0 1px 0 rgba(255,255,255,.9) inset,0 10px 24px -12px rgba(30,33,41,.18),0 2px 6px rgba(30,33,41,.05);z-index:2;transition:box-shadow .22s ease,transform .22s ease,border-color .22s ease}
  .pn:hover{transform:translate(-50%,-50%) translateY(-2px);box-shadow:0 1px 0 rgba(255,255,255,.9) inset,0 22px 40px -18px rgba(30,33,41,.28),0 4px 10px rgba(30,33,41,.06);border-color:rgba(99,102,241,.25)}
  .pn.sel{border-color:rgba(99,102,241,.55);box-shadow:0 0 0 4px rgba(99,102,241,.14),0 16px 32px -12px rgba(99,102,241,.4),0 4px 12px rgba(30,33,41,.06);transform:translate(-50%,-50%) scale(1.08)}
  .pn.sel::before{content:"Étape en cours";position:absolute;top:-11px;left:50%;transform:translateX(-50%);background:#6366F1;color:#fff;font-family:'Poppins';font-weight:800;font-size:8.5px;letter-spacing:.10em;text-transform:uppercase;padding:3px 9px;border-radius:99px;white-space:nowrap;box-shadow:0 6px 14px rgba(99,102,241,.35);z-index:3}
  .pn.sel:lang(en)::before{content:"Current step"}
  .pn.done .pn-ic{background:linear-gradient(135deg,#E6F6EC,#E3F5EE);color:#22B07D}
  .pn.done .num{color:#22B07D}
  .pn.locked{opacity:.48}
  .pn.locked .pn-ic{background:rgba(30,33,41,.05);color:var(--ink-soft)}
  .pn.locked .ttl{color:var(--ink-soft)}
  .pn.locked .pn-av{filter:grayscale(80%)}
  .pn.locked::after{content:"";width:12px;height:12px;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2358657A' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><rect x='5' y='11' width='14' height='10' rx='2'/><path d='M8 11V8a4 4 0 018 0v3'/></svg>") no-repeat center/100% 100%;position:absolute;top:6px;right:6px;left:auto;transform:none;background-color:transparent;border:none;opacity:.7}
  .pn.goal{background:linear-gradient(135deg,#00A2DC 0%,#6366F1 100%);border:none;color:#fff;box-shadow:0 20px 40px -10px rgba(0,162,220,.5),0 6px 14px rgba(30,33,41,.10);z-index:3}
  .pn.goal .pn-ic{background:rgba(255,255,255,.2);color:#fff}
  .pn.goal .num{color:rgba(255,255,255,.75)}
  .pn.goal .ttl{color:#fff;font-size:12px}
  .pn.goal .goal-cap{font-family:'Poppins';font-weight:700;font-size:8.5px;color:rgba(255,255,255,.85);letter-spacing:.10em;text-transform:uppercase;margin-top:5px}
  .pn.goal .goal-flag{margin-left:auto;font-size:16px}
  .pn .pn-top{display:flex;align-items:center;gap:6px;min-height:18px}
  .pn .pn-ic{display:inline-flex;align-items:center;justify-content:center;color:#6366F1;flex:none;width:20px;height:20px;border-radius:6px;background:linear-gradient(135deg,#F4F4FF,#ECEBFF)}
  .pn .pn-ic svg{width:12px;height:12px}
  .pn .num{font-size:9px;font-weight:800;color:#B8BECB;letter-spacing:.06em}
  .pn .pn-av{margin-left:auto;width:22px;height:22px;border-radius:999px;overflow:hidden;border:1.5px solid #fff;box-shadow:0 2px 6px rgba(30,33,41,.18),0 0 0 1px rgba(30,33,41,.05);position:relative;flex:none;background:#ECEBFF}
  .pn .pn-av img{width:100%;height:100%;object-fit:cover;display:block;border-radius:999px}
  .pn .pn-av .av-dot{position:absolute;bottom:-1px;right:-1px;width:8px;height:8px;border-radius:999px;background:#22B07D;border:1.5px solid #fff;z-index:2}
  .pn .ttl{font-family:'Poppins',sans-serif;font-size:10.5px;font-weight:800;color:var(--ink);line-height:1.2;margin-top:7px;letter-spacing:.02em}
  .pn .pr{height:4px;border-radius:999px;background:rgba(30,33,41,.06);margin-top:8px;overflow:hidden}
  .pn .pr i{display:block;height:100%;background:linear-gradient(90deg,#8B8DF7,#6366F1);border-radius:999px;box-shadow:0 0 6px rgba(99,102,241,.5)}
  .pmap-top{position:absolute;top:14px;left:14px;width:158px;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);border:1px solid rgba(30,33,41,.08);border-radius:12px;padding:9px 11px;z-index:4;box-shadow:0 10px 22px -10px rgba(30,33,41,.18),0 2px 6px rgba(30,33,41,.04)}
  .pmap-top .pt-row{display:flex;align-items:center;justify-content:space-between;font-size:9px;color:var(--ink-soft);font-weight:600}
  .pmap-top .pt-row b{color:var(--agora);font-size:11px;font-weight:800}
  .pmap-top .pt-bar{height:5px;border-radius:999px;background:rgba(30,33,41,.06);margin-top:6px;overflow:hidden}
  .pmap-top .pt-bar i{display:block;height:100%;background:linear-gradient(90deg,#6366F1,#00A2DC);border-radius:999px;box-shadow:0 0 6px rgba(99,102,241,.5)}

  /* canvas "Create" (style #97) */
  .webmap{position:relative;flex:1;width:100%;min-height:600px;border-radius:18px;background:
    radial-gradient(circle at 50% 42%, rgba(99,102,241,.05), transparent 55%),
    radial-gradient(circle, rgba(30,33,41,.055) 1px, transparent 1.4px) 0 0/22px 22px,
    #FBF9F5;
    border:1px solid rgba(30,33,41,.05);
    overflow:hidden}
  .webmap::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 45%, transparent 30%, rgba(250,246,239,.7) 82%);pointer-events:none;z-index:1}
  .webmap .wm-links{position:absolute;inset:0;width:100%;height:100%;z-index:1}
  .webmap .wm-links path{stroke:url(#wm-line-grad);stroke-width:1.3;fill:none;vector-effect:non-scaling-stroke;stroke-dasharray:3 4;stroke-linecap:round;opacity:.75}
  .wm-crumb{position:absolute;top:14px;left:14px;display:flex;align-items:center;gap:10px;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border:1px solid rgba(30,33,41,.08);border-radius:14px;padding:8px 12px;z-index:6;box-shadow:0 12px 26px -10px rgba(99,102,241,.28),0 2px 6px rgba(30,33,41,.05)}
  .wm-crumb-num{background:linear-gradient(135deg,#8B8DF7,#6366F1);color:#fff;width:26px;height:26px;border-radius:8px;display:grid;place-items:center;font-family:'Poppins',sans-serif;font-weight:800;font-size:11px;box-shadow:0 4px 10px -3px rgba(99,102,241,.5)}
  .wm-crumb-text{display:flex;flex-direction:column;line-height:1.1;gap:2px}
  .wm-crumb-eyebrow{font-size:8px;color:var(--muted);font-weight:700;letter-spacing:.09em;text-transform:uppercase}
  .wm-crumb-text b{font-family:'Poppins',sans-serif;font-size:11px;font-weight:800;color:var(--ink);letter-spacing:.05em}
  .wm-crumb-sep{width:1px;height:22px;background:rgba(30,33,41,.08)}
  .wm-crumb-av{width:22px;height:22px;border-radius:999px;overflow:hidden;border:1.5px solid #fff;box-shadow:0 2px 6px rgba(30,33,41,.15),0 0 0 1px rgba(30,33,41,.05);flex:none}
  .wm-crumb-av img{width:100%;height:100%;object-fit:cover;display:block}
  .wm-crumb-prog{display:flex;align-items:center;gap:7px}
  .wm-crumb-pr{width:56px;height:5px;border-radius:999px;background:rgba(30,33,41,.06);overflow:hidden}
  .wm-crumb-pr i{display:block;height:100%;background:linear-gradient(90deg,#8B8DF7,#6366F1);border-radius:999px;box-shadow:0 0 6px rgba(99,102,241,.5)}
  .wm-crumb-prog span{font-size:10px;font-weight:800;color:var(--agora)}
  .webmap .wc{position:absolute;width:156px;background:#fff;border:1px solid rgba(30,33,41,.07);border-radius:14px;padding:11px 12px;box-shadow:0 1px 0 rgba(255,255,255,.9) inset,0 10px 24px -12px rgba(30,33,41,.18),0 2px 6px rgba(30,33,41,.05);z-index:2;transition:box-shadow .22s ease,transform .22s ease,border-color .22s ease}
  .webmap .wc:hover{transform:translateY(-2px);box-shadow:0 1px 0 rgba(255,255,255,.9) inset,0 22px 40px -18px rgba(30,33,41,.28),0 4px 10px rgba(30,33,41,.06);border-color:rgba(99,102,241,.2)}
  .webmap .wc-h{display:flex;align-items:center;gap:7px;margin-bottom:7px}
  .webmap .wc-h .wc-ic{width:18px;height:18px;border-radius:6px;flex:none;box-shadow:0 2px 5px -1px currentColor,inset 0 -1px 0 rgba(0,0,0,.08)}
  .webmap .wc-h b{font-family:'Poppins',sans-serif;font-size:9px;font-weight:800;letter-spacing:.04em;color:var(--ink);flex:1;line-height:1.1}
  .webmap .wc-h .wc-q{width:19px;height:19px;border-radius:999px;overflow:hidden;border:1.5px solid #fff;box-shadow:0 2px 5px rgba(30,33,41,.15),0 0 0 1px rgba(30,33,41,.05);flex:none;padding:0;background:#ECEBFF;font-size:0}
  .webmap .wc-h .wc-q img{width:100%;height:100%;object-fit:cover;display:block;border-radius:999px}
  .webmap .wc-i{font-size:9.5px;color:var(--ink-soft);margin:4px 0;display:flex;align-items:center;gap:6px;font-weight:500}
  .webmap .wc-i::before{content:"✓";width:13px;height:13px;border-radius:999px;background:linear-gradient(135deg,#22B07D,#22B07D);color:#fff;font-size:8px;font-weight:800;display:grid;place-items:center;flex:none;box-shadow:0 1px 3px rgba(34,176,125,.35);line-height:1}
  .webmap .wc-mock{width:180px;padding:0;overflow:hidden;border-color:rgba(99,102,241,.22);box-shadow:0 1px 0 rgba(255,255,255,.9) inset,0 18px 40px -14px rgba(99,102,241,.35),0 4px 10px rgba(30,33,41,.06)}
  .webmap .wc-mock .wm-t{padding:11px 12px 8px;font-family:'Poppins',sans-serif;font-size:11px;font-weight:800;color:var(--ink);line-height:1.25;letter-spacing:.01em}
  .webmap .wc-mock .wm-t span{background:linear-gradient(90deg,#6366F1,#00A2DC);-webkit-background-clip:text;background-clip:text;color:transparent}
  .webmap .wc-mock .wm-palette{display:flex;gap:5px;padding:0 12px 8px}
  .webmap .wc-mock .wm-palette span{flex:1;height:22px;border-radius:6px;box-shadow:0 2px 5px rgba(30,33,41,.08),inset 0 -1px 0 rgba(0,0,0,.06)}
  .webmap .wc-mock .wm-typo{display:flex;align-items:baseline;gap:8px;padding:0 12px 12px;color:var(--ink)}
  .webmap .wc-mock .wm-typo .aa{font-family:Georgia,serif;font-weight:400;font-size:20px;color:var(--agora);line-height:1}
  .webmap .wc-mock .wm-typo .lbl{font-family:'Poppins',sans-serif;font-size:9px;font-weight:700;color:var(--ink-soft);letter-spacing:.02em}
  .webmap .wc-annot{position:absolute;font-family:'Caveat',cursive;font-size:13px;font-weight:600;color:#9aa3b2;z-index:1;line-height:1.2;max-width:96px}
  .webmap .wc-file{display:flex;align-items:center;gap:6px;margin-top:8px;background:linear-gradient(180deg,#F9F7F1,#F4F0E5);border:1px solid rgba(30,33,41,.05);border-radius:8px;padding:6px 8px;font-size:8.5px;color:var(--ink-soft);font-weight:700}
  .webmap .wc-file::before{content:"";width:10px;height:12px;border-radius:2px;background:linear-gradient(180deg,#F28E8E,#E0606A);flex:none;box-shadow:0 1px 2px rgba(224,96,106,.35)}
  .webmap .wc-file.wc-file-alt{margin-top:4px;opacity:.7;background:linear-gradient(180deg,#FBF9F5,#F5F2EB)}
  .webmap .wc-file.wc-file-alt::before{background:linear-gradient(180deg,#D8B0B0,#B98080)}
  .wm-tagline{position:absolute;top:22px;right:18px;font-family:'Caveat',cursive;font-size:19px;font-weight:600;color:var(--agora);z-index:5;line-height:1.05;transform:rotate(-1.5deg);letter-spacing:.01em;max-width:200px;text-align:right;opacity:.9;pointer-events:none}
  .wm-tagline::before{content:"↙";display:inline-block;font-family:'Poppins',sans-serif;font-size:14px;color:var(--agora);margin-right:4px;opacity:.6;transform:translateY(-2px);vertical-align:middle}
  .webmap .wc-note{position:absolute;width:126px;background:linear-gradient(180deg,#FFF6D0,#FFE9A3);border-radius:4px 4px 12px 4px;padding:10px 11px;font-size:9px;color:#6b5a1e;line-height:1.35;box-shadow:0 12px 22px -6px rgba(180,150,30,.35),0 2px 5px rgba(180,150,30,.15);z-index:3;transform:rotate(-2deg)}
  .webmap .wc-note::before{content:"";position:absolute;top:6px;left:50%;transform:translateX(-50%);width:20px;height:5px;border-radius:2px;background:rgba(255,255,255,.4);box-shadow:0 1px 2px rgba(180,150,30,.15)}
  .webmap .wc-note b{font-family:'Poppins',sans-serif;font-size:10px;display:block;margin:6px 0 4px;color:#5a4a12;letter-spacing:.02em}

  /* dashboard de lancement (Deploy, style #102) */
  .launch-dash{position:relative;display:flex;flex-direction:column;gap:14px;padding:64px 18px 20px;border-radius:18px;background:
    radial-gradient(circle at 50% 40%, rgba(99,102,241,.05), transparent 55%),
    radial-gradient(circle, rgba(30,33,41,.055) 1px, transparent 1.4px) 0 0/22px 22px,
    #FBF9F5;
    border:1px solid rgba(30,33,41,.05);
    overflow:hidden;flex:1;min-height:600px}
  .launch-dash::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 45%, transparent 30%, rgba(250,246,239,.7) 82%);pointer-events:none;z-index:1}
  .launch-dash > *:not(.wm-crumb):not(.wm-tagline){position:relative;z-index:2}
  .launch-dash .ld-steps{display:flex;gap:8px}
  .launch-dash .ld-step{flex:1;background:#fff;border:1px solid rgba(30,33,41,.07);border-radius:14px;padding:12px 7px;text-align:center;box-shadow:0 1px 0 rgba(255,255,255,.9) inset,0 10px 24px -12px rgba(30,33,41,.18),0 2px 6px rgba(30,33,41,.05);transition:transform .22s ease,box-shadow .22s ease;position:relative}
  .launch-dash .ld-step:hover{transform:translateY(-2px);box-shadow:0 1px 0 rgba(255,255,255,.9) inset,0 22px 40px -18px rgba(30,33,41,.28),0 4px 10px rgba(30,33,41,.06)}
  .launch-dash .ld-step.active{border-color:rgba(99,102,241,.35);box-shadow:0 0 0 3px rgba(99,102,241,.12),0 1px 0 rgba(255,255,255,.9) inset,0 14px 30px -14px rgba(99,102,241,.4),0 3px 8px rgba(30,33,41,.05)}
  .launch-dash .ld-n{width:24px;height:24px;border-radius:50%;background:linear-gradient(135deg,#F4F4FF,#ECEBFF);color:var(--agora);font-size:10.5px;font-weight:800;display:grid;place-items:center;margin:0 auto 8px;box-shadow:inset 0 -1px 0 rgba(99,102,241,.12),0 2px 5px -1px rgba(99,102,241,.18)}
  .launch-dash .ld-step.done .ld-n{background:linear-gradient(135deg,#22B07D,#22B07D);color:#fff;box-shadow:inset 0 -1px 0 rgba(0,0,0,.12),0 3px 8px -1px rgba(34,176,125,.4)}
  .launch-dash .ld-step.active .ld-n{background:linear-gradient(135deg,#8B8DF7,#6366F1);color:#fff;box-shadow:inset 0 -1px 0 rgba(0,0,0,.12),0 3px 8px -1px rgba(99,102,241,.5)}
  .launch-dash .ld-step b{font-family:'Poppins',sans-serif;font-size:10px;font-weight:800;color:var(--ink);display:block;line-height:1.15;letter-spacing:.02em}
  .launch-dash .ld-step span:last-child{font-size:8.5px;color:var(--ink-soft);display:block;margin-top:5px;font-weight:600}
  .launch-dash .ld-lbl{font-family:'Poppins',sans-serif;font-size:12px;font-weight:800;color:var(--ink);letter-spacing:.02em;padding-left:2px;display:flex;align-items:center;gap:8px}
  .launch-dash .ld-lbl::before{content:"";width:5px;height:5px;border-radius:999px;background:var(--agora);box-shadow:0 0 8px rgba(99,102,241,.7),0 0 0 3px rgba(99,102,241,.14)}
  .launch-dash .ld-kpis{display:flex;gap:8px}
  .launch-dash .ld-kpi{flex:1;background:#fff;border:1px solid rgba(30,33,41,.07);border-radius:14px;padding:11px 12px;box-shadow:0 1px 0 rgba(255,255,255,.9) inset,0 10px 24px -12px rgba(30,33,41,.18),0 2px 6px rgba(30,33,41,.05);transition:transform .22s ease,box-shadow .22s ease;position:relative;overflow:hidden}
  .launch-dash .ld-kpi:hover{transform:translateY(-2px);box-shadow:0 1px 0 rgba(255,255,255,.9) inset,0 22px 40px -18px rgba(30,33,41,.28),0 4px 10px rgba(30,33,41,.06)}
  .launch-dash .ld-kpi .k-l{font-size:9px;font-weight:700;color:var(--ink-soft);letter-spacing:.05em;text-transform:uppercase}
  .launch-dash .ld-kpi b{font-family:'Poppins',sans-serif;font-size:17px;font-weight:800;color:var(--ink);display:block;margin-top:4px;letter-spacing:-.015em}
  .launch-dash .ld-kpi .k-up{display:inline-flex;align-items:center;gap:2px;font-size:9px;color:#22B07D;font-weight:800;background:rgba(34,176,125,.12);border-radius:999px;padding:2px 7px;margin-top:3px}
  .launch-dash .ld-kpi svg{display:block;width:100%;height:22px;margin-top:8px;filter:drop-shadow(0 2px 4px rgba(30,33,41,.08))}
  .launch-dash .ld-actions{background:#fff;border:1px solid rgba(30,33,41,.07);border-radius:14px;padding:14px 16px;box-shadow:0 1px 0 rgba(255,255,255,.9) inset,0 10px 24px -12px rgba(30,33,41,.18),0 2px 6px rgba(30,33,41,.05)}
  .launch-dash .ld-act{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--ink-soft);margin:8px 0;font-weight:500}
  .launch-dash .ld-act::before{content:"";width:16px;height:16px;border-radius:50%;border:1.5px solid rgba(30,33,41,.15);flex:none;background:#fff}
  .launch-dash .ld-act.ok{color:var(--ink);font-weight:600}
  .launch-dash .ld-act.ok::before{content:"✓";background:linear-gradient(135deg,#22B07D,#22B07D);border-color:transparent;color:#fff;font-size:9px;display:grid;place-items:center;font-weight:800;box-shadow:0 2px 5px -1px rgba(34,176,125,.35)}
  .launch-dash .ld-act .ld-av{margin-left:auto;width:20px;height:20px;border-radius:999px;overflow:hidden;border:1.5px solid #fff;box-shadow:0 2px 5px rgba(30,33,41,.15),0 0 0 1px rgba(30,33,41,.05);flex:none}
  .launch-dash .ld-act .ld-av img{width:100%;height:100%;object-fit:cover;display:block}

  /* Gauche : panneau façon #41 */
  .mock-side.lp{padding:15px 13px;gap:13px;overflow:hidden;display:flex;flex-direction:column}
  .lp-head{display:flex;align-items:center;gap:9px}
  .lp-head .lp-av-a{width:34px;height:34px;border-radius:10px;background:linear-gradient(160deg,#8B8DF7,#4F52D9);display:grid;place-items:center;flex:none;box-shadow:0 6px 14px rgba(79,82,217,.30)}
  .lp-head .lp-av-a svg{width:24px;height:24px}
  .lp-head b{font-family:'Poppins',sans-serif;font-weight:800;font-size:15px;color:var(--ink)}
  .lp-title{font-family:'Poppins',sans-serif;font-weight:800;font-size:16px;color:var(--ink);line-height:1.1}
  .lp-sub{font-size:11.5px;color:var(--ink-soft);margin-top:-9px}
  /* rail d'icônes (mode Structure, style #76) */
  .lp-rail{display:none}
  .mockup.struct .mock-side.lp,.mockup.rail .mock-side.lp{padding:12px 5px}
  .mockup.struct .mock-side.lp > :not(.lp-rail),.mockup.rail .mock-side.lp > :not(.lp-rail){display:none}
  .mockup.struct .lp-rail,.mockup.rail .lp-rail{display:flex;flex-direction:column;align-items:center;gap:12px;height:100%}
  .lp-rail .lr-top{color:var(--ink-soft);margin-bottom:2px}
  .lp-rail .lr-i{display:flex;flex-direction:column;align-items:center;gap:3px;color:var(--ink-soft);text-decoration:none;cursor:pointer}
  .lp-rail .lr-i .ic{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;position:relative;color:var(--ink-soft)}
  .lp-rail .lr-i.act .ic{background:var(--agora-soft);color:var(--agora)}
  .lp-rail .lr-i .ic.plus{background:var(--agora);color:#fff}
  .lp-rail .lr-i b{font-size:8.5px;font-weight:600;color:var(--ink-soft);text-align:center;line-height:1.1}
  .lp-rail .lr-bottom{margin-top:auto;display:flex;flex-direction:column;align-items:center;gap:12px}
  .lp-rail .lr-bottom .ic{width:30px;height:30px;display:grid;place-items:center;color:var(--ink-soft)}
  .lp-prompt{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:12px;padding:9px 11px;color:var(--muted);font-size:11.5px}
  .lp-prompt .lp-plus,.lp-prompt .lp-mic{border:none;background:none;cursor:pointer;display:grid;place-items:center;color:var(--ink);flex:none}
  .lp-prompt .lp-mic{color:var(--ink-soft)}
  .lp-prompt .lp-ph{flex:1}
  .lp-actions{display:flex;gap:8px}
  .lp-gen{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:10px;padding:8px 10px;font-size:12px;font-weight:700;color:var(--ink);background:#fff;cursor:pointer;font-family:inherit}
  .lp-gen .lp-caret{display:inline-flex;align-items:center;margin-left:3px;padding-left:6px;border-left:1px solid var(--line);color:var(--muted)}
  .lp-search{flex:1;border:none;border-radius:10px;background:var(--agora);color:#fff;font-size:12.5px;font-weight:700;cursor:pointer;font-family:inherit}
  .lp-sec{display:flex;flex-direction:column;gap:8px}
  .lp-sec-head{display:flex;align-items:center;justify-content:space-between}
  .lp-sec-head b{font-family:'Poppins';font-size:12.5px;font-weight:800;color:var(--ink)}
  .lp-sec-head a{font-size:11px;color:var(--ink-soft);cursor:pointer}
  .lp-thumbs{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .lp-thumb{position:relative;height:60px;border-radius:8px;border:1px solid var(--line);display:grid;place-items:center;font-size:8px;font-weight:800;letter-spacing:.04em;text-align:center;line-height:1.2;overflow:hidden}
  .lp-crown{position:absolute;bottom:4px;right:4px;width:14px;height:14px;border-radius:50%;background:rgba(110,110,122,.85);color:#fff;display:grid;place-items:center;font-size:7px}
  .lp-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .lp-card{position:relative;height:54px;border-radius:8px;border:1px solid var(--line);display:grid;place-items:center;font-size:7px;font-weight:800;text-align:center;line-height:1.15;letter-spacing:.03em;overflow:hidden;padding:3px}

  /* --- intérieur des vignettes (mini aperçus) --- */
  .lp-card .tp{position:absolute;inset:0;overflow:hidden}
  .lp-card .tp{padding:7px 8px;display:flex;flex-direction:column}
  .lp-card .tp .t{font-size:5.5px;font-weight:800;letter-spacing:.04em;line-height:1.1}
  .tp-persona{background:linear-gradient(135deg,#EBF7F2,#F3F6F9)}
  .tp-persona .t{color:#26425f}
  .tp-persona .avs{margin-top:auto;display:flex;justify-content:center;gap:0}
  .tp-persona .avs i{width:22px;height:22px;border-radius:50%;border:2px solid #fff;margin-left:-6px;overflow:hidden;display:inline-block;box-shadow:0 2px 4px rgba(30,33,41,.15)}
  .tp-persona .avs i:first-child{margin-left:0}
  .tp-persona .avs i:nth-child(1){background:linear-gradient(135deg,#F0B58A,#E58A3F)}
  .tp-persona .avs i:nth-child(2){background:linear-gradient(135deg,#B49BFF,#6366F1)}
  .tp-persona .avs i:nth-child(3){background:linear-gradient(135deg,#7BD3B3,#22B07D)}
  .tp-persona .avs i:nth-child(4){background:linear-gradient(135deg,#F58AB0,#E85C8D)}
  .tp-persona .avs i img{width:100%;height:100%;object-fit:cover;display:block;border-radius:50%}
  .tp-mkt{background:#EAF0F6;position:absolute}
  .tp-mkt .yr{position:absolute;right:3px;top:-4px;font-family:'Poppins';font-size:24px;font-weight:800;color:rgba(10,110,151,.12);line-height:1}
  .tp-mkt .t{color:#1E3A8A;position:relative}
  .tp-mkt .bars{margin-top:auto;display:flex;align-items:flex-end;gap:3px;height:18px}
  .tp-mkt .bars i{width:5px;background:#3358B0;border-radius:1px}
  .tp-mkt .bars i:nth-child(1){height:35%}.tp-mkt .bars i:nth-child(2){height:55%}.tp-mkt .bars i:nth-child(3){height:75%}.tp-mkt .bars i:nth-child(4){height:100%}
  /* mini-mindmap façon #57 */
  .mm{background:#F7F6FB;padding:6px 7px}
  .mm .mm-root{position:absolute;left:7px;top:50%;transform:translateY(-50%);width:33px;height:22px;border-radius:6px;background:var(--mm);color:#fff;font-size:5px;font-weight:800;display:grid;place-items:center;text-align:center;line-height:1.05;letter-spacing:.02em}
  .mm .mm-row{position:absolute;right:7px;width:52px;height:8px;border-radius:3px;background:#fff;border:1px solid var(--line)}
  .mm .mm-row::after{content:"";position:absolute;left:5px;top:50%;transform:translateY(-50%);width:3px;height:3px;border-radius:50%;background:var(--mm)}
  .mm .r1{top:6px}
  .mm .r2{top:50%;transform:translateY(-50%)}
  .mm .r3{bottom:6px}
  .mm .mm-link{position:absolute;left:45px;top:13px;bottom:13px;width:1.5px;background:var(--mm);opacity:.55;border-radius:2px}
  .mm .mm-link::before,.mm .mm-link::after{content:"";position:absolute;left:0;width:23px;height:1.5px;background:var(--mm);opacity:.55}
  .mm .mm-link::before{top:0}
  .mm .mm-link::after{bottom:0}
  /* aperçu mindmap "document" (style #61) */
  .tp-mind{position:absolute;inset:0;display:flex;background:#fff}
  .tp-mind .side{flex:0 0 36%;background:linear-gradient(180deg,#6E7BF0,#9AA6F6);padding:5px;display:flex;flex-direction:column;gap:3px}
  .tp-mind .side .tt{height:5px;width:75%;border-radius:2px;background:#fff}
  .tp-mind .side .ln{height:2px;border-radius:1px;background:rgba(255,255,255,.55)}
  .tp-mind .side .ln.s{width:55%}
  .tp-mind .side .icr{margin-top:auto;display:flex;gap:3px}
  .tp-mind .side .icr i{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.85)}
  .tp-mind .map{flex:1;position:relative}
  .tp-mind .map .root{position:absolute;left:6px;top:50%;transform:translateY(-50%);width:22px;height:15px;border-radius:3px;background:#5B6CF0}
  .tp-mind .map .lnk{position:absolute;left:29px;top:13px;bottom:13px;width:1.5px;background:#c2cbf5}
  .tp-mind .map .br{position:absolute;right:5px;height:5px;width:38px;border-radius:2px;background:#EEF0FB;border:1px solid #dbe0fa}
  .tp-mind .map .br::before{content:"";position:absolute;left:-11px;top:50%;transform:translateY(-50%);width:11px;height:1.5px;background:#c2cbf5}
  .tp-mind .map .b1{top:9px}
  .tp-mind .map .b2{top:50%;transform:translateY(-50%)}
  .tp-mind .map .b3{bottom:9px}
  /* aperçu mindmap radial (style #63) */
  .tp-radial{position:absolute;inset:0;background:#fff;overflow:hidden}
  .tp-radial .rb-title{position:absolute;top:5px;left:50%;transform:translateX(-50%);width:44px;height:9px;border-radius:4px;background:linear-gradient(90deg,#F4B43C,#F8C766)}
  .tp-radial .rb-core{position:absolute;left:50%;top:56%;transform:translate(-50%,-50%);width:27px;height:16px;border-radius:5px;background:#F2A93C;box-shadow:0 2px 5px rgba(242,169,60,.4)}
  .tp-radial .rb-n{position:absolute;border-radius:5px}
  .tp-radial .n1{width:18px;height:8px;background:#8FD3EE;top:33%;left:13%}
  .tp-radial .n2{width:15px;height:8px;background:#F2C97A;top:62%;left:9%}
  .tp-radial .n3{width:18px;height:8px;background:#8FD3EE;top:31%;right:13%}
  .tp-radial .n4{width:15px;height:8px;background:#8FD3EE;top:64%;right:11%}
  .tp-radial .n5{width:14px;height:7px;background:#F2C97A;bottom:9%;left:40%}
  .tp-radial .n6{width:13px;height:7px;background:#8FD3EE;top:11%;left:42%}
  /* template #70 : panneau + illustration + branches */
  .tdoc{position:absolute;inset:0;display:flex;background:#fff}
  .tdoc .td-side{flex:0 0 30%;background:linear-gradient(180deg,#7E8BF0,#A8B0F6);padding:4px;display:flex;flex-direction:column;gap:2.5px}
  .tdoc .td-side .t{height:4px;width:80%;border-radius:2px;background:#fff}
  .tdoc .td-side .l{height:1.5px;border-radius:1px;background:rgba(255,255,255,.5)}
  .tdoc .td-side .l.s{width:55%}
  .tdoc .td-fig{flex:0 0 24%;position:relative}
  .tdoc .td-fig::before{content:"";position:absolute;left:50%;top:40%;transform:translateX(-50%);width:9px;height:9px;border-radius:50%;background:#E7B58A}
  .tdoc .td-fig::after{content:"";position:absolute;left:50%;top:52%;transform:translateX(-50%);width:14px;height:16px;border-radius:6px 6px 4px 4px;background:#6E7BF0}
  .tdoc .td-map{flex:1;position:relative}
  .tdoc .td-map .root{position:absolute;left:3px;top:50%;transform:translateY(-50%);width:15px;height:20px;border-radius:3px;background:#F2A93C}
  .tdoc .td-map .b{position:absolute;right:3px;height:5px;width:30px;border-radius:2px;background:#EEF0FB;border:1px solid #dbe0fa}
  .tdoc .td-map .b1{top:6px}
  .tdoc .td-map .b2{top:50%;transform:translateY(-50%)}
  .tdoc .td-map .b3{bottom:6px}
  /* template #69 : mindmap radial coloré + bannière */
  .tmm{position:absolute;inset:0;background:#fff;overflow:hidden}
  .tmm .ttl{position:absolute;top:4px;left:6px;right:6px;height:9px;border-radius:3px;background:linear-gradient(90deg,#8A7BE8,#AB9DF2)}
  .tmm .core{position:absolute;left:50%;top:60%;transform:translate(-50%,-50%);width:26px;height:11px;border-radius:4px;background:#E0609E}
  .tmm .d{position:absolute;width:13px;height:7px;border-radius:3px}
  .tmm .d1{background:#F2C97A;top:36%;left:11%}
  .tmm .d2{background:#8FD3EE;top:64%;left:13%}
  .tmm .d3{background:#8FD0B0;top:34%;right:11%}
  .tmm .d4{background:#C9B6F5;top:66%;right:11%}
  .tmm .d5{background:#F2C97A;bottom:7%;left:43%}

  /* Droite : chat Ulyss */
  .mock-aside.uc{background:#fff;border-left:1px solid var(--line);padding:20px 15px;gap:13px}
  .uc-head{display:flex;align-items:center;gap:9px}
  .uc-head .av-u{width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,#33B9E6,#0A6E97);display:grid;place-items:center;flex:none}
  .uc-head .av-u svg{width:24px;height:24px}
  .uc-head b{font-family:'Poppins';font-weight:800;font-size:15px;flex:1;color:var(--ink)}
  .uc-head .ic{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;color:var(--ink-soft);background:var(--bg);font-size:14px}
  .uc-launch{margin-top:20px;display:flex;flex-direction:column;gap:14px;flex:1;justify-content:flex-end}
  .uc-launch-msg{display:flex;flex-direction:column;gap:4px}
  .uc-launch-msg b{font-family:'Poppins';font-weight:800;font-size:15px;color:var(--ink)}
  .uc-launch-msg span{font-size:12.5px;color:var(--ink-soft);line-height:1.4}
  .uc-input{margin-top:auto;border:1px solid var(--line);border-radius:14px;padding:11px 12px;display:flex;flex-direction:column;gap:9px}
  .uc-input .ph{font-size:12px;color:var(--muted)}
  .uc-input .row{display:flex;align-items:center;gap:10px;color:var(--muted)}
  .uc-input .send{margin-left:auto;width:30px;height:30px;border-radius:50%;background:var(--ulyss);color:#fff;display:grid;place-items:center}

  /* Panneau Activité (mode rail / onglet Créer) */
  .uc-activity{display:none}
  .mockup.rail .mock-aside.uc{display:block;padding:0;background:#fff;overflow:hidden}
  .mockup.rail .mock-aside.uc > :not(.uc-activity){display:none}
  .mockup.rail .uc-activity{display:flex;flex-direction:column;gap:11px;height:100%;padding:13px 12px;overflow-y:auto}
  .uc-activity .ua-block{background:#fff;border:1px solid var(--line);border-radius:14px;padding:11px 12px;display:flex;flex-direction:column;gap:11px}
  .uc-activity .ua-h{display:flex;align-items:center;justify-content:space-between}
  .uc-activity .ua-h b{font-family:'Poppins';font-weight:800;font-size:12.5px;color:var(--ink)}
  .uc-activity .ua-add{width:22px;height:22px;border-radius:7px;border:1px solid var(--line);background:#fff;color:var(--ink);font-size:13px;line-height:1;display:grid;place-items:center;cursor:pointer}
  .uc-activity .ua-new{height:22px;border-radius:7px;border:1px solid #6366F1;background:#fff;color:#6366F1;font-size:10.5px;font-weight:700;padding:0 8px;cursor:pointer}
  .uc-activity .ua-feed{display:flex;flex-direction:column;gap:11px}
  .uc-activity .ua-item{display:flex;gap:9px}
  .uc-activity .ua-avatar{width:30px;height:30px;border-radius:50%;flex:none;overflow:hidden;background:#EEE;box-shadow:0 1px 2px rgba(30,33,41,.08)}
  .uc-activity .ua-avatar img{width:100%;height:100%;object-fit:cover;display:block}
  .uc-activity .ua-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}
  .uc-activity .ua-meta{display:flex;align-items:center;justify-content:space-between}
  .uc-activity .ua-meta b{font-family:'Poppins';font-weight:800;font-size:11.5px;color:var(--ink)}
  .uc-activity .ua-time{font-size:9.5px;color:var(--muted)}
  .uc-activity .ua-tag{align-self:flex-start;border-radius:999px;padding:2px 8px;font-size:9px;font-weight:700;letter-spacing:.01em}
  .uc-activity .tg-violet{background:#ECEBFF;color:#4F52D9}
  .uc-activity .tg-green{background:#E3F5EE;color:#2E7A4B}
  .uc-activity .ua-msg{font-size:10.5px;color:var(--ink);line-height:1.35;margin:1px 0 0}
  .uc-activity .ua-react{align-self:flex-end;font-size:10.5px;color:var(--muted)}
  .uc-activity .ua-thumb{color:#E8A93B;font-weight:700}
  .uc-activity .ua-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:2px}
  .uc-activity .ua-go{display:inline-flex;align-items:center;gap:5px;background:linear-gradient(135deg,#22B07D,#22B07D);color:#fff;font-family:'Poppins',sans-serif;font-size:9.5px;font-weight:800;padding:4px 10px 4px 11px;border-radius:999px;text-decoration:none;box-shadow:0 4px 10px -3px rgba(34,176,125,.5),inset 0 -1px 0 rgba(0,0,0,.08);transition:transform .18s ease,box-shadow .18s ease;letter-spacing:.03em;cursor:pointer;border:none}
  .uc-activity .ua-go:hover{transform:translateY(-1px);box-shadow:0 6px 14px -3px rgba(34,176,125,.6),inset 0 -1px 0 rgba(0,0,0,.08)}
  .uc-activity .ua-docs{display:flex;flex-direction:column;gap:8px}
  .uc-activity .ua-doc{display:flex;align-items:center;gap:9px}
  .uc-activity .ua-doc-ic{position:relative;width:26px;height:30px;border-radius:4px;background:#fff;border:1px solid #ECE6DB;display:grid;place-items:end center;padding-bottom:3px;font-size:7.5px;font-weight:800;flex:none;letter-spacing:.04em}
  .uc-activity .ua-doc-ic::before{content:"";position:absolute;top:3px;right:3px;width:7px;height:7px;background:#fff;border-left:1px solid #ECE6DB;border-bottom:1px solid #ECE6DB;border-radius:0 3px 0 3px}
  .uc-activity .dc-pdf{color:#E54B4B}
  .uc-activity .dc-ppt{color:#E07B3C}
  .uc-activity .dc-xls{color:#22B07D}
  .uc-activity .ua-doc > div{display:flex;flex-direction:column;min-width:0;line-height:1.25}
  .uc-activity .ua-doc b{font-family:'Poppins';font-weight:700;font-size:11px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .uc-activity .ua-doc span{font-size:9.5px;color:var(--muted)}
  .uc-activity .ua-all{font-size:11px;color:#4F52D9;font-weight:700;margin-top:2px;cursor:pointer;text-decoration:none}
  .uc-activity .ua-agora{background:#F4F4FF;border-radius:14px;padding:12px 12px;display:flex;flex-direction:column;gap:7px}
  .uc-activity .ua-ag-h{display:flex;align-items:center;gap:7px}
  .uc-activity .ua-ag-ic{width:22px;height:22px;border-radius:7px;background:#6366F1;color:#fff;display:grid;place-items:center}
  .uc-activity .ua-ag-h b{font-family:'Poppins';font-weight:800;font-size:12px;color:var(--ink)}
  .uc-activity .ua-agora p{font-size:10.5px;color:var(--ink);line-height:1.35;margin:0}
  .uc-activity .ua-ag-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:2px}
  .uc-activity .ua-ag-avs{display:flex;align-items:center}
  .uc-activity .ua-ag-avs i{width:18px;height:18px;border-radius:50%;border:2px solid #F4F4FF;display:inline-block;margin-left:-7px}
  .uc-activity .ua-ag-avs i:first-child{margin-left:0;background:linear-gradient(135deg,#F4B6C2,#E07B9F)}
  .uc-activity .ua-ag-avs i:nth-child(2){background:linear-gradient(135deg,#A3C9F1,#00A2DC)}
  .uc-activity .ua-ag-avs i:nth-child(3){background:linear-gradient(135deg,#D5C0A2,#8E6A45)}
  .uc-activity .ua-ag-avs span{font-size:9.5px;color:var(--muted);font-weight:600;margin-left:7px}
  .uc-activity .ua-ag-btn{margin-left:auto;background:#6366F1;color:#fff;border:none;border-radius:9px;padding:7px 11px;font-size:10.5px;font-weight:700;cursor:pointer}
  /* MOBILE universal pack */
  @media (max-width:900px){
    section,.block{padding:60px 0 !important}
    .container{padding:0 22px}
    h1{font-size:clamp(30px,6vw,44px) !important;line-height:1.1}
    h2{font-size:clamp(26px,4.5vw,36px) !important;line-height:1.15}
    /* .launch-title était un h2 dans la maquette : sans cet ajout, la taille suivrait le h1{...} */
    /* ci-dessus (44px) au lieu de la taille voulue par le design d'origine (36px), issue du h2{...}. */
    /* Règle séparée, SANS line-height : .launch-hero .launch-title{line-height:1.1} (règle desktop */
    /* ci-dessus) doit continuer à l'emporter sur ce h2{line-height:1.15}, exactement comme dans la */
    /* maquette — les grouper aurait donné la même spécificité aux deux et fait gagner celle-ci par */
    /* ordre de déclaration, ce qui n'est pas ce qui se passe dans la maquette (elle gagne par */
    /* spécificité : .launch-hero h2.launch-title > h2 seul). */
    .launch-hero .launch-title{font-size:clamp(26px,4.5vw,36px) !important}
  }
  @media (max-width:640px){
    section,.block{padding:44px 0 !important}
    .container{padding:0 18px}
    h1{font-size:clamp(26px,7vw,36px) !important}
    h2,.launch-hero .launch-title{font-size:clamp(22px,5vw,28px) !important}
    p{font-size:14.5px !important}
    .btn,.btn-lg{padding:12px 20px !important;font-size:14px !important;width:auto}
    .ctas{flex-wrap:wrap !important;gap:10px !important}
  }
  @media (max-width:480px){
    section,.block{padding:36px 0 !important}
    .container{padding:0 16px}
    h1{font-size:26px !important;line-height:1.15}
    h2,.launch-hero .launch-title{font-size:22px !important}
  }

  /* Center orb */
