:root,[data-theme="light"]{
    --bg:#f7f8fa; --surface:#ffffff; --s2:#f1f3f7; --s3:#e7ebf2; --border:#e4e7ee; --border-hi:#d3d8e3;
    --text:#14161f; --text-dim:#4a5169; --muted:#8a93ab;
    --accent:#6b5cf5; --accent-hi:#564bd8;
    --chaud:#d64560; --tiede:#c08a2e; --froid:#3d7fc2; --green:#22a06b;
    --radius-sm:3px; --radius:4px; --radius-lg:8px; --radius-xl:16px;
    --shadow:0 1px 2px rgba(20,22,31,.05); --shadow-sm:0 1px 3px rgba(20,22,31,.06); --shadow-md:0 4px 14px rgba(20,22,31,.07);
    --shadow-lg:0 24px 60px rgba(20,22,31,.12); --shadow-xl:0 40px 90px rgba(20,22,31,.16);
    --sans:-apple-system,BlinkMacSystemFont,'Inter','Segoe UI',sans-serif; --disp:'Plus Jakarta Sans',var(--sans); --mono:'JetBrains Mono',monospace;
  }
  [data-theme="noir"]{
    --bg:#0f1115; --surface:#16181d; --s2:#1c1f26; --s3:#232730; --border:#2a2e38; --border-hi:#363b47;
    --text:#f2f3f7; --text-dim:#a8adbd; --muted:#5f6578;
    --accent:#8b7bff; --accent-hi:#a89dff;
    --chaud:#ff6680; --tiede:#f0c050; --froid:#5ca8ff; --green:#4fd49a;
    --radius-sm:2px; --radius:3px; --radius-lg:6px; --radius-xl:14px;
    --shadow:0 1px 2px rgba(0,0,0,.5); --shadow-sm:0 1px 3px rgba(0,0,0,.55); --shadow-md:0 4px 14px rgba(0,0,0,.5);
    --shadow-lg:0 28px 70px rgba(0,0,0,.7); --shadow-xl:0 44px 100px rgba(0,0,0,.8);
  }
  *{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.5;overflow-x:hidden}
  a{color:inherit;text-decoration:none}
  ::selection{background:color-mix(in srgb,var(--accent) 22%,transparent)}
  .wrap{max-width:1160px;margin:0 auto;padding:0 32px}
  h1,h2,h3{font-family:var(--disp);letter-spacing:-.03em;margin:0;font-weight:800}
  .mono{font-family:var(--mono)}
  .eye{display:inline-flex;align-items:center;gap:9px;font-family:var(--mono);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}
  .eye::before{content:"";width:18px;height:1px;background:var(--muted)}
  .grad{background:linear-gradient(100deg,var(--accent),var(--accent-hi));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}

  /* buttons — CLAUDE.md law */
  .btn{display:inline-flex;align-items:center;gap:7px;font-family:var(--sans);font-size:13px;font-weight:600;border-radius:10px;padding:8px 14px;cursor:pointer;border:1px solid transparent;transition:background .15s,border-color .15s,color .15s,transform .15s;white-space:nowrap}
  .btn .ar{transition:transform .18s} .btn:hover .ar{transform:translateX(3px)}
  .btn-p{background:var(--text);color:var(--bg);border-color:var(--text)} .btn-p:hover{background:var(--surface);color:var(--text);border-color:var(--text)}
  .btn-s{background:var(--s2);color:var(--text);border-color:var(--border)} .btn-s:hover{background:var(--s3)}
  .btn-g{background:transparent;color:var(--text-dim)} .btn-g:hover{background:var(--s2);color:var(--text)}
  .btn-lg{padding:10px 17px;font-size:13.5px}

  /* ===== NAV ===== */
  .nav{position:sticky;top:0;z-index:60;background:color-mix(in srgb,var(--bg) 80%,transparent);backdrop-filter:blur(16px);border-bottom:1px solid transparent;transition:border-color .3s,background .3s}
  .nav.scrolled{border-color:var(--border)}
  .nav-in{display:flex;align-items:center;gap:28px;height:64px}
  .brand{font-family:var(--disp);font-size:22px;font-weight:800;letter-spacing:-.04em;color:var(--text)}
  .nav-links{display:flex;gap:26px;margin-left:6px} .nav-links a{font-size:14px;font-weight:500;color:var(--text-dim);transition:color .15s} .nav-links a:hover{color:var(--text)}
  .nav-sp{flex:1}
  .nav-act{display:flex;align-items:center;gap:8px}
  .tgl{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text-dim);cursor:pointer;padding:0;transition:border-color .15s,color .15s,background .15s} .tgl:hover{color:var(--text);background:var(--s2)} .tgl svg{width:18px;height:18px} .icon-noir{display:none} [data-theme="noir"] .icon-light{display:none} [data-theme="noir"] .icon-noir{display:block}
  @media(max-width:980px){.nav-links{display:none}}

  /* ===== HERO ===== */
  .hero{position:relative;padding:80px 0 0;overflow:hidden}
  .hero-glow{position:absolute;top:-160px;left:50%;transform:translateX(-50%);width:900px;height:520px;background:radial-gradient(ellipse at center,color-mix(in srgb,var(--accent) 16%,transparent),transparent 62%);filter:blur(20px);pointer-events:none;z-index:0}
  .hero-in{position:relative;z-index:1;text-align:center}
  .hero .badge{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--text-dim);background:var(--surface);border:1px solid var(--border);border-radius:99px;padding:6px 8px 6px 14px;box-shadow:var(--shadow)}
  .hero .badge .tag{font-family:var(--mono);font-size:10px;font-weight:600;color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent);border-radius:99px;padding:3px 9px}
  .hero h1{font-size:clamp(38px,5vw,62px);line-height:1.06;margin:24px auto 0;max-width:22ch;font-weight:700;letter-spacing:-.028em;text-wrap:balance}
  .hero h1 .thin{font-weight:400;color:var(--text-dim);font-family:var(--disp)}
  .hero-lede{margin:24px auto 0;font-size:18px;line-height:1.62;color:var(--text-dim);max-width:600px}
  .hero-lede b{color:var(--text);font-weight:600}
  .hero-cta{display:flex;gap:11px;margin:32px 0 0;justify-content:center;flex-wrap:wrap}
  .hero-proof{display:flex;gap:0;margin:30px auto 0;justify-content:center;flex-wrap:wrap;max-width:640px}
  .hero-proof .pp{display:flex;flex-direction:column;align-items:center;padding:0 26px}.hero-proof .pp+.pp{border-left:1px solid var(--border)}
  .hero-proof .pv{font-family:var(--disp);font-size:22px;font-weight:700;letter-spacing:-.02em}
  .hero-proof .pl{font-size:12px;color:var(--muted);margin-top:3px}

  /* hero stage — layered floating cards */
  .stage{position:relative;margin:64px auto 0;max-width:1000px;height:560px;perspective:1600px}
  .stage-main{position:relative;margin:0 auto;width:100%;max-width:920px;background:var(--surface);border:1px solid var(--border-hi);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);overflow:hidden;transform-style:preserve-3d}
  .win-bar{display:flex;align-items:center;gap:8px;height:42px;padding:0 15px;border-bottom:1px solid var(--border);background:var(--s2)}
  .win-bar .d{width:10px;height:10px;border-radius:50%;background:var(--border-hi)}
  .win-bar .u{margin-left:10px;font-family:var(--mono);font-size:11px;color:var(--muted)}
  .app-body{display:grid;grid-template-columns:200px 1fr}
  .side{border-right:1px solid var(--border);padding:14px 12px;background:var(--surface)}
  .side .grp{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:14px 8px 8px} .side .grp:first-child{margin-top:0}
  .side .it{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:500;color:var(--text-dim);padding:8px 10px;border-radius:var(--radius)} .side .it svg{width:15px;height:15px}
  .side .it.on{background:var(--s2);color:var(--text);font-weight:600}
  .side .it .cnt{margin-left:auto;font-family:var(--mono);font-size:10px;color:var(--muted)}
  .panel{padding:0}
  .panel-h{display:flex;align-items:center;gap:10px;padding:14px 18px;border-bottom:1px solid var(--border)}
  .panel-h .t{font-size:15px;font-weight:700} .panel-h .c{font-family:var(--mono);font-size:11px;color:var(--muted)} .panel-h .sp{flex:1}
  .fchip{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;color:var(--text);border:1px solid transparent;border-radius:var(--radius-sm);padding:5px 9px} .fchip .lb{color:var(--muted);font-weight:700} .fchip.on{background:color-mix(in srgb,var(--accent) 8%,transparent);border-color:color-mix(in srgb,var(--accent) 24%,transparent)} .fchip.on .lb{color:var(--accent)}
  .row{display:grid;grid-template-columns:1.8fr .8fr .8fr .8fr;gap:12px;align-items:center;padding:12px 18px;border-bottom:1px solid var(--border);font-size:13px}
  .who{display:flex;align-items:center;gap:11px}.who .av{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;color:#fff;font-size:10px;font-weight:700;flex-shrink:0}.who .nm{font-weight:700}.who .em{font-size:11px;color:var(--muted)}
  .tmp{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:700;padding:3px 9px;border-radius:99px}.tmp .b{width:5px;height:5px;border-radius:50%}
  .t-chaud{color:var(--chaud);background:color-mix(in srgb,var(--chaud) 13%,transparent)}.t-chaud .b{background:var(--chaud)}
  .t-froid{color:var(--froid);background:color-mix(in srgb,var(--froid) 13%,transparent)}.t-froid .b{background:var(--froid)}
  .t-tiede{color:var(--tiede);background:color-mix(in srgb,var(--tiede) 15%,transparent)}.t-tiede .b{background:var(--tiede)}
  .num{font-variant-numeric:tabular-nums;font-weight:600}.dim{color:var(--muted)}

  /* floating cards */
  .float{position:absolute;background:var(--surface);border:1px solid var(--border-hi);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:3;will-change:transform}
  .f-sug{top:64%;left:-38px;width:290px;padding:14px}
  .f-sug .hd{display:flex;align-items:center;gap:9px;margin-bottom:9px}.f-sug .m{width:24px;height:24px;border-radius:6px;background:var(--text);color:var(--bg);display:grid;place-items:center;font-family:var(--disp);font-weight:800;font-size:13px}.f-sug .hl{font-size:12px;font-weight:700}
  .f-sug .tx{font-size:12px;line-height:1.5;color:var(--text-dim)}.f-sug .tx b{color:var(--text)}
  .f-sug .btns{display:flex;gap:7px;margin-top:11px}.f-sug .sb{font-size:11px;font-weight:600;border-radius:var(--radius);padding:5px 10px;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer}.f-sug .sb.p{background:var(--text);color:var(--bg);border-color:var(--text)}
  .f-stat{top:-30px;right:-30px;width:210px;padding:15px}
  .f-stat .lab{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
  .f-stat .big{font-family:var(--disp);font-size:34px;font-weight:800;letter-spacing:-.03em;margin:6px 0 2px}
  .f-stat .delta{font-size:12px;font-weight:700;color:var(--green);display:inline-flex;align-items:center;gap:4px}
  .f-stat .spark{display:flex;align-items:flex-end;gap:3px;height:32px;margin-top:10px}
  .f-stat .spark i{flex:1;background:color-mix(in srgb,var(--accent) 28%,transparent);border-radius:1px}
  /* donna chat floating card */
  .f-chat{top:56%;left:-46px;width:296px;padding:13px}
  .chat-h{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;margin-bottom:11px}
  .chat-h .m{width:22px;height:22px;border-radius:6px;background:var(--text);color:var(--bg);display:grid;place-items:center;font-family:var(--disp);font-weight:800;font-size:12px}
  .chat-h .on-dot{width:7px;height:7px;border-radius:50%;background:var(--green);margin-left:auto}
  .cb{font-size:12px;line-height:1.46;padding:8px 11px;border-radius:12px;margin-bottom:7px;max-width:88%}
  .cb.bot{background:var(--s2);color:var(--text);border-bottom-left-radius:4px}
  .cb.usr{background:var(--text);color:var(--bg);margin-left:auto;border-bottom-right-radius:4px}
  .cb b{font-weight:700}
  /* prospection prédictive floating card */
  .f-pp{top:-36px;right:-40px;width:256px;padding:15px}
  .pp-h{display:flex;align-items:center;gap:7px;font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--accent);font-weight:600;margin-bottom:13px}
  .pp-h::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--accent)}
  .pp-row{display:flex;align-items:center;gap:9px;margin-bottom:10px}
  .pp-nm{font-size:12px;font-weight:600;width:80px;flex-shrink:0}
  .pp-bar{flex:1;height:5px;background:var(--s2);border-radius:99px;overflow:hidden}
  .pp-bar i{display:block;height:100%;background:var(--accent);border-radius:99px}
  .pp-sc{font-family:var(--mono);font-size:11px;font-weight:600;color:var(--text-dim);width:32px;text-align:right}
  .pp-ft{font-size:11px;color:var(--muted);line-height:1.42;margin-top:12px;padding-top:11px;border-top:1px solid var(--border)}
  /* hero scroll choreography */
  .hero-copy{position:relative;z-index:1;will-change:transform,opacity}
  .stage{position:relative;z-index:5;will-change:transform;height:auto;perspective:1600px}
  /* scripted demo cursor */
  .demo-cursor{position:absolute;top:0;left:0;width:20px;height:20px;z-index:60;pointer-events:none;opacity:0;background:transparent;transform:translate(420px,160px);transition:transform .75s cubic-bezier(.45,.05,.2,1),opacity .3s}
  .demo-cursor.show{opacity:1}
  .demo-cursor svg{width:100%;height:100%;display:block;fill:var(--text);stroke:#fff;overflow:visible;filter:drop-shadow(0 1px 1.5px rgba(0,0,0,.22));transition:transform .14s}ity .3s}
  .demo-cursor.show{opacity:1}
  .demo-cursor svg{width:100%;height:100%;display:block;fill:var(--text);stroke:#fff;transition:transform .14s}
  .demo-cursor.tap svg{transform:scale(.8)}
  /* ===== realistic app window ===== */
  .appwin{position:relative;display:flex;width:100%;background:var(--surface);border:1px solid var(--border-hi);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);overflow:hidden;font-size:12px}
  .aw-side{width:172px;flex-shrink:0;border-right:1px solid var(--border);background:var(--surface);padding:12px 10px;display:flex;flex-direction:column;gap:2px}
  .aw-brand{display:flex;align-items:center;gap:8px;padding:2px 6px 8px;font-family:var(--disp);font-weight:800;font-size:16px;letter-spacing:-.04em}
  .aw-brand .dt{color:var(--accent)}
  .aw-brand .ver{margin-left:2px;font-family:var(--mono);font-size:8px;font-weight:600;color:var(--text-dim);background:var(--s2);border:1px solid var(--border);border-radius:99px;padding:1px 6px;letter-spacing:0}
  .aw-search{display:flex;align-items:center;gap:7px;background:var(--s2);border:1px solid var(--border);border-radius:7px;padding:6px 9px;font-size:11px;color:var(--muted);margin-bottom:7px}
  .aw-search svg{width:13px;height:13px}
  .aw-search kbd{margin-left:auto;font-family:var(--mono);font-size:8px;background:var(--surface);border:1px solid var(--border);border-radius:3px;padding:0 4px;color:var(--text-dim)}
  .aw-org{font-family:var(--mono);font-size:9px;font-weight:600;letter-spacing:.09em;color:var(--muted);padding:5px 6px 2px;display:flex;align-items:center;gap:5px}
  .aw-sec{font-family:var(--mono);font-size:8px;font-weight:600;letter-spacing:.1em;color:var(--muted);padding:9px 6px 3px}
  .aw-item{display:flex;align-items:center;gap:9px;padding:6px 8px;border-radius:6px;font-size:12px;font-weight:500;color:var(--text-dim)}
  .aw-item svg{width:15px;height:15px;flex-shrink:0}
  .aw-item .c{margin-left:auto;font-family:var(--mono);font-size:9px;color:var(--muted)}
  .aw-item .soon{margin-left:auto;font-family:var(--mono);font-size:7.5px;font-weight:700;letter-spacing:.05em;color:var(--muted);background:var(--s2);border:1px solid var(--border);border-radius:99px;padding:1px 6px}
  .aw-item.on{background:color-mix(in srgb,var(--accent) 9%,transparent);color:var(--text);font-weight:600}
  .aw-item.on svg{color:var(--accent)}
  .aw-user{margin-top:auto;display:flex;align-items:center;gap:9px;padding:8px;border:1px solid var(--border);border-radius:8px;background:var(--s2)}
  .aw-user .uav{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,var(--accent),#a78bfa);color:#fff;display:grid;place-items:center;font-size:10px;font-weight:700;flex-shrink:0}
  .aw-user .un{font-size:11px;font-weight:700}
  .aw-user .ur{font-size:9px;color:var(--muted);margin-top:1px}
  .aw-main{flex:1;min-width:0;display:flex;flex-direction:column;position:relative}
  .aw-top{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border)}
  .aw-title{display:flex;align-items:center;gap:8px;font-family:var(--disp);font-weight:800;font-size:16px;letter-spacing:-.02em}
  .aw-title svg{width:16px;height:16px;color:var(--text-dim)}
  .aw-title .c{font-family:var(--mono);font-size:12px;color:var(--muted);font-weight:600}
  .aw-top .sp{flex:1}
  .aw-btn{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;border-radius:8px;padding:6px 11px;white-space:nowrap;transition:border-color .2s,box-shadow .2s,background .2s}
  .aw-btn svg{width:13px;height:13px}
  .aw-btn.dark{background:var(--text);color:var(--bg)}
  .aw-btn.light{background:var(--surface);border:1px solid var(--border);color:var(--text)}
  .aw-btn.light .sp3{width:15px;height:15px;border-radius:5px;background:linear-gradient(135deg,var(--accent),#a78bfa);color:#fff;display:grid;place-items:center;font-size:9px}
  .aw-btn.light.hot{border-color:color-mix(in srgb,var(--accent) 50%,transparent);box-shadow:0 0 0 3px var(--accent-dim)}
  .aw-filters{display:flex;align-items:center;gap:7px;padding:9px 16px;border-bottom:1px solid var(--border);overflow:hidden}
  .aw-flabel{font-family:var(--mono);font-size:9px;font-weight:600;letter-spacing:.09em;color:var(--muted);flex-shrink:0}
  .aw-fchip{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;color:var(--text);background:var(--s2);border:1px solid var(--border);border-radius:7px;padding:5px 9px;white-space:nowrap;flex-shrink:0}
  .aw-fchip .l{color:var(--muted);font-weight:700}
  .aw-fchip .x{color:var(--muted);font-size:12px;line-height:1}
  .aw-fchip .cnt{background:var(--accent);color:#fff;font-family:var(--mono);font-size:8px;font-weight:700;border-radius:99px;padding:1px 5px}
  .aw-fchip .cv{transition:color .2s}
  .aw-fchip.appl .cv{color:var(--accent)}
  .aw-propose{display:flex;align-items:center;gap:11px;margin:12px 16px 4px;padding:9px 12px;background:color-mix(in srgb,var(--accent) 5%,var(--surface));border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border));border-radius:9px;overflow:hidden}
  .aw-propose .pic{width:30px;height:30px;border-radius:7px;background:var(--text);color:var(--bg);display:grid;place-items:center;flex-shrink:0}.aw-propose .pic svg{width:16px;height:16px}
  .aw-propose .pt{font-size:12px;font-weight:700}
  .aw-propose .ps{font-size:9.5px;color:var(--muted);margin-top:1px}
  .aw-propose .refr{width:26px;height:26px;display:grid;place-items:center;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--muted);flex-shrink:0}.aw-propose .refr svg{width:13px;height:13px}
  .aw-propose .pdiv{width:1px;height:26px;background:var(--border);flex-shrink:0}
  .aw-acts{display:flex;gap:7px;overflow:hidden;-webkit-mask:linear-gradient(90deg,#000 86%,transparent);mask:linear-gradient(90deg,#000 86%,transparent)}
  .aw-act{display:inline-flex;align-items:center;gap:7px;font-size:11px;font-weight:600;background:var(--surface);border:1px solid var(--border);border-radius:99px;padding:5px 11px;white-space:nowrap;flex-shrink:0}
  .aw-act .cb{width:14px;height:14px;border-radius:4px;background:var(--accent);color:#fff;display:grid;place-items:center;flex-shrink:0}.aw-act .cb svg{width:10px;height:10px}
  .aw-act.todo .cb{background:transparent;border:1.5px solid var(--border-hi)}
  .aw-table{flex:1;overflow:hidden;padding:0 6px}
  .aw-th,.aw-tr{display:grid;grid-template-columns:22px 1.9fr .72fr .62fr .66fr .92fr .42fr .82fr .82fr;gap:10px;align-items:center;padding:0 10px}
  .aw-th{height:32px;font-family:var(--mono);font-size:8.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--border)}
  .aw-th .s{display:inline-flex;align-items:center;gap:3px}
  .aw-tr{padding-top:9px;padding-bottom:9px;border-bottom:1px solid var(--border);font-size:12px;transition:opacity .35s,max-height .38s,padding .38s;max-height:60px;overflow:hidden}
  .aw-tr.row-hidden{opacity:0;max-height:0;padding-top:0;padding-bottom:0;border-bottom-color:transparent}
  .aw-cbx{width:15px;height:15px;border:1.5px solid var(--border-hi);border-radius:4px}
  .aw-who{display:flex;align-items:center;gap:10px;min-width:0}
  .aw-av{width:30px;height:30px;border-radius:8px;color:#fff;font-size:10px;font-weight:700;display:grid;place-items:center;flex-shrink:0}
  .aw-nm{font-weight:700;font-size:12px;display:flex;align-items:center;gap:5px}
  .aw-nm .ext{color:var(--muted)}.aw-nm .ext svg{width:11px;height:11px}
  .aw-sub{font-size:10px;color:var(--muted);margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .aw-pill{display:inline-flex;align-items:center;gap:5px;font-size:10.5px;font-weight:700;padding:2px 8px;border-radius:99px}
  .aw-pill .d{width:5px;height:5px;border-radius:50%}
  .p-froid{color:var(--froid);background:color-mix(in srgb,var(--froid) 13%,transparent)}.p-froid .d{background:var(--froid)}
  .p-tiede{color:var(--tiede);background:color-mix(in srgb,var(--tiede) 15%,transparent)}.p-tiede .d{background:var(--tiede)}
  .p-chaud{color:var(--chaud);background:color-mix(in srgb,var(--chaud) 13%,transparent)}.p-chaud .d{background:var(--chaud)}
  .aw-score{display:inline-flex;align-items:center;gap:8px}
  .aw-ring{width:20px;height:20px;border-radius:50%;background:conic-gradient(var(--green) calc(var(--p)*1%),var(--s3) 0);position:relative;flex-shrink:0}
  .aw-ring::before{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--surface)}
  .aw-score .v{font-variant-numeric:tabular-nums;font-weight:600}
  .aw-mono{font-variant-numeric:tabular-nums;font-weight:600}
  .aw-dim{color:var(--muted)}
  .aw-contact{display:inline-flex;align-items:center;gap:6px;color:var(--text-dim)}.aw-contact .d{width:5px;height:5px;border-radius:50%;flex-shrink:0}
  .aw-relance{display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:700;color:var(--chaud);background:color-mix(in srgb,var(--chaud) 11%,transparent);border:1px solid color-mix(in srgb,var(--chaud) 24%,transparent);border-radius:99px;padding:3px 9px}.aw-relance .d{width:4px;height:4px;border-radius:50%;background:var(--chaud)}
  .aw-main.dim .aw-table,.aw-main.dim .aw-propose{filter:blur(1.4px);opacity:.5;transition:opacity .4s,filter .4s}
  /* ===== donna chat bottom sheet ===== */
  .chat{position:absolute;left:0;right:0;bottom:0;z-index:30;display:flex;flex-direction:column;max-height:84%;background:var(--surface);border-top:1px solid var(--border-hi);border-top-left-radius:var(--radius-xl);border-top-right-radius:var(--radius-xl);box-shadow:0 -14px 44px rgba(20,22,31,.14);transform:translateY(102%);transition:transform .5s cubic-bezier(.3,.8,.25,1)}
  [data-theme="noir"] .chat{box-shadow:0 -14px 48px rgba(0,0,0,.6)}
  .chat.on{transform:none}
  .chat-h{display:flex;align-items:center;gap:9px;padding:12px 16px;border-bottom:1px solid var(--border);flex-shrink:0}
  .chat-h .cav{width:24px;height:24px;border-radius:7px;background:linear-gradient(135deg,var(--accent),#a78bfa);color:#fff;display:grid;place-items:center;font-family:var(--disp);font-weight:800;font-size:12px}
  .chat-h .cn{font-size:13px;font-weight:700;font-family:var(--disp)}
  .chat-h .cs{font-size:11px;color:var(--muted)}
  .chat-h .sp{flex:1}
  .chat-h .hb{width:26px;height:26px;border-radius:6px;display:grid;place-items:center;color:var(--muted)}.chat-h .hb svg{width:15px;height:15px}
  .chat-body{padding:14px 16px;display:flex;flex-direction:column;gap:9px;overflow-y:auto;min-height:0}
  .chat-body:empty{display:none}
  .cmsg{max-width:76%;font-size:12.5px;line-height:1.5;padding:9px 12px;border-radius:13px}
  .cmsg.me{align-self:flex-end;background:var(--text);color:var(--bg);border-bottom-right-radius:4px}
  .cmsg.bot{align-self:flex-start;background:var(--s2);color:var(--text);border-bottom-left-radius:4px}
  .cmsg.bot b{font-weight:700}
  .ctype{align-self:flex-start;background:var(--s2);border-radius:13px;padding:11px 13px;display:inline-flex;gap:4px}
  .ctype i{width:5px;height:5px;border-radius:50%;background:var(--muted);animation:blink 1.2s infinite}.ctype i:nth-child(2){animation-delay:.2s}.ctype i:nth-child(3){animation-delay:.4s}
  @keyframes blink{0%,60%,100%{opacity:.3}30%{opacity:1}}
  .ccard{align-self:stretch;background:var(--surface);border:1px solid var(--border);border-radius:9px;padding:9px 12px;display:flex;align-items:center;gap:11px}
  .ccard .cav2{width:30px;height:30px;border-radius:8px;color:#fff;font-size:10px;font-weight:700;display:grid;place-items:center;flex-shrink:0}
  .ccard .ci{flex:1;min-width:0;display:flex;flex-direction:column}
  .ccard .cn2{font-size:12.5px;font-weight:700}
  .ccard .cr2{font-size:10.5px;color:var(--muted);margin-top:1px}
  .ccard .cta2{font-size:10px;font-weight:700;color:var(--chaud);background:color-mix(in srgb,var(--chaud) 11%,transparent);border:1px solid color-mix(in srgb,var(--chaud) 24%,transparent);border-radius:99px;padding:3px 9px;flex-shrink:0}
  .ccard .cta2.g{color:var(--green);background:color-mix(in srgb,var(--green) 12%,transparent);border-color:color-mix(in srgb,var(--green) 26%,transparent)}
  .canim{animation:asin .4s ease}
  @keyframes asin{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
  .chat-comp{margin:6px 14px 10px;display:flex;align-items:center;gap:10px;background:var(--s2);border:1px solid var(--border);border-radius:12px;padding:9px 12px;flex-shrink:0}
  .chat-comp .ph{flex:1;font-size:13px;color:var(--muted)}
  .chat-comp .send{width:30px;height:30px;border-radius:8px;background:var(--text);color:var(--bg);display:grid;place-items:center;flex-shrink:0}.chat-comp .send svg{width:14px;height:14px}
  .chat-sugg{display:flex;gap:8px;padding:0 14px 14px;flex-wrap:wrap;flex-shrink:0}
  .chat-sg{display:inline-flex;align-items:center;gap:7px;font-size:11.5px;font-weight:600;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:99px;padding:7px 12px;transition:border-color .2s,box-shadow .2s}
  .chat-sg svg{width:13px;height:13px;color:var(--accent)}
  .chat-sg.hot{border-color:color-mix(in srgb,var(--accent) 48%,transparent);box-shadow:0 0 0 3px var(--accent-dim)}
  @media(max-width:1080px){.f-sug{left:8px}.f-stat{right:8px}}
  @media(max-width:820px){.stage{height:auto;perspective:none;margin-top:48px}.stage-main{position:relative;max-width:100%}.app-body{grid-template-columns:1fr}.side{display:none}.float{display:none}}

  /* ===== marquee ===== */
  .clients{padding:38px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--surface);margin-top:80px}
  .clients .lab{text-align:center;font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin-bottom:22px}
  .marquee{overflow:hidden;-webkit-mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
  .mq-track{display:flex;width:max-content;align-items:center}
  .mq-track span{padding:0 30px;font-family:var(--disp);font-size:20px;font-weight:700;color:var(--text-dim);letter-spacing:-.02em;opacity:.6;white-space:nowrap}

  /* ===== section ===== */
  .sec{padding:110px 0}
  .sec-head{max-width:640px}
  .sec-head.ctr{margin:0 auto;text-align:center}
  .sec-head h2{font-size:clamp(32px,4.4vw,52px);line-height:1.04;margin:18px 0 0}
  .sec-head p{font-size:18px;color:var(--text-dim);margin:20px 0 0;line-height:1.6}
  .sec-head.ctr .eye{justify-content:center}.sec-head.ctr .eye::before{display:none}

  /* ===== bento ===== */
  .bento{display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:minmax(200px,auto);gap:16px;margin-top:56px}
  .card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);padding:26px;overflow:hidden;position:relative;transition:border-color .25s,transform .25s,box-shadow .25s}
  .card:hover{border-color:var(--border-hi);transform:translateY(-3px);box-shadow:var(--shadow-md)}
  .card .ci{width:38px;height:38px;border-radius:var(--radius);background:var(--s2);border:1px solid var(--border);display:grid;place-items:center;color:var(--text);margin-bottom:16px} .card .ci svg{width:19px;height:19px}
  .card h3{font-size:20px;margin:0 0 9px} .card p{font-size:14.5px;color:var(--text-dim);line-height:1.6;margin:0}
  .c-lg{grid-column:span 4} .c-sm{grid-column:span 2} .c-md{grid-column:span 3} .c-full{grid-column:span 6}
  .card.c-full{display:grid;grid-template-columns:1fr 1.05fr;gap:30px;align-items:center}
  @media(max-width:860px){.card.c-full{grid-template-columns:1fr}}
  .cv-map{position:relative;height:186px;border:1px solid var(--border);border-radius:12px;overflow:hidden;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 220' preserveAspectRatio='none'%3E%3Crect width='400' height='220' fill='%23efe7de'/%3E%3Cg fill='%23f6f1ea'%3E%3Cpath d='M-5 70 L405 55 L405 66 L-5 81 Z'/%3E%3Cpath d='M-5 140 L405 126 L405 137 L-5 151 Z'/%3E%3Cpath d='M80 -5 L91 -5 L104 225 L93 225 Z'/%3E%3Cpath d='M210 -5 L221 -5 L212 225 L201 225 Z'/%3E%3Cpath d='M310 -5 L299 -5 L330 225 L341 225 Z'/%3E%3C/g%3E%3Crect x='372' y='0' width='28' height='220' fill='%23dbeaf3'/%3E%3Cg fill='%23e0348c' fill-opacity='0.05' stroke='%23e0348c' stroke-width='1.2' stroke-opacity='0.7'%3E%3Cpath d='M60 30 L190 22 L205 110 L110 130 L55 95 Z'/%3E%3Cpath d='M205 110 L300 96 L315 180 L200 195 Z'/%3E%3C/g%3E%3C/svg%3E") 0 0/100% 100% no-repeat}
  .cv-pin{position:absolute;border-radius:50%;display:grid;place-items:center;color:#fff;font-family:var(--mono);font-size:9px;font-weight:700;border:2px solid rgba(255,255,255,.9);box-shadow:0 1px 4px rgba(60,40,90,.25)}
  .cv-pin.a{background:#8b7bff}.cv-pin.b{background:#c08a2e}.cv-pin.c{background:#d64560}
  .cv-pin.hot{box-shadow:0 0 0 5px color-mix(in srgb,var(--chaud) 22%,transparent),0 1px 4px rgba(60,40,90,.3)}
  .cv-pplg{display:flex;gap:12px;margin-top:14px;font-family:var(--mono);font-size:8.5px;color:var(--muted)}
  .cv-pplg span{display:inline-flex;align-items:center;gap:5px}.cv-pplg i{width:8px;height:8px;border-radius:50%}
  /* Attio-style mini visuals per card */
  .cv{margin-top:18px;border:1px solid var(--border);border-radius:10px;background:var(--bg);padding:11px;overflow:hidden}
  .cv-row{display:flex;align-items:center;gap:8px}
  .cv-mono{font-family:var(--mono);font-size:8.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
  /* assistant: chat */
  .cv-chat{display:flex;flex-direction:column;gap:7px}
  .cv-b{max-width:82%;font-size:11px;line-height:1.35;padding:7px 10px;border-radius:10px}
  .cv-b.bot{align-self:flex-start;background:var(--surface);border:1px solid var(--border);color:var(--text-dim);border-bottom-left-radius:3px}
  .cv-b.me{align-self:flex-end;background:var(--text);color:var(--bg);border-bottom-right-radius:3px}
  .cv-type{align-self:flex-start;display:inline-flex;gap:3px;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:8px 10px}
  .cv-type i{width:4px;height:4px;border-radius:50%;background:var(--muted);animation:cvblink 1.2s infinite}.cv-type i:nth-child(2){animation-delay:.2s}.cv-type i:nth-child(3){animation-delay:.4s}
  @keyframes cvblink{0%,60%,100%{opacity:.3}30%{opacity:1}}
  /* match rows */
  .cv-match{display:flex;flex-direction:column;gap:7px}
  .cv-m{display:flex;align-items:center;gap:9px}
  .cv-mav{width:22px;height:22px;border-radius:6px;color:#fff;font-size:9px;font-weight:700;display:grid;place-items:center;flex-shrink:0}
  .cv-mn{flex:1;min-width:0;font-size:11px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .cv-sc{font-family:var(--mono);font-size:10px;font-weight:700;color:var(--green);white-space:nowrap}
  .cv-bar2{height:4px;border-radius:99px;background:var(--s3);overflow:hidden;flex:1;max-width:46px}.cv-bar2 i{display:block;height:100%;background:var(--green);border-radius:99px}
  /* bar chart */
  .cv-chart{display:flex;align-items:flex-end;gap:9px;height:70px;padding-top:6px}
  .cv-col2{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;height:100%;justify-content:flex-end}
  .cv-bcol{width:100%;border-radius:4px 4px 0 0;background:linear-gradient(180deg,var(--accent),color-mix(in srgb,var(--accent) 55%,transparent))}
  .cv-blab{font-family:var(--mono);font-size:8px;color:var(--muted)}
  /* agenda */
  .cv-ag{display:flex;flex-direction:column;gap:0}
  .cv-slot{display:flex;align-items:center;gap:10px;padding:6px 0;border-top:1px solid var(--border)}.cv-slot:first-child{border-top:0}
  .cv-time{font-family:var(--mono);font-size:9px;color:var(--muted);width:34px;flex-shrink:0}
  .cv-ev{flex:1;min-width:0;font-size:11px;font-weight:600;display:flex;align-items:center;gap:7px}
  .cv-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}
  /* phone */
  .cv-phone{display:flex;justify-content:center}
  .cv-ph{width:112px;border:1px solid var(--border-hi);border-radius:16px;background:var(--surface);padding:9px 8px 11px;box-shadow:var(--shadow-sm)}
  .cv-notch{width:34px;height:4px;border-radius:99px;background:var(--s3);margin:0 auto 9px}
  .cv-pc{border:1px solid var(--border);border-radius:8px;padding:7px 8px;margin-bottom:6px;background:var(--bg)}
  .cv-pc .n{font-size:9.5px;font-weight:700}.cv-pc .m{font-size:8px;color:var(--muted);margin-top:2px}
  .cv-pcta{font-size:9px;font-weight:700;color:var(--bg);background:var(--text);border-radius:6px;padding:5px;text-align:center}
  @media(max-width:860px){.bento{grid-template-columns:1fr}.c-lg,.c-sm,.c-md{grid-column:span 1}}

  /* pipeline preview inside big card */
  .mini-pipe{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:22px}
  .mp-col{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:9px}
  .mp-h{font-family:var(--mono);font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:8px}
  .mp-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:7px 8px;margin-bottom:6px;font-size:11px}.mp-card:last-child{margin-bottom:0}
  .mp-card.hot{border-color:color-mix(in srgb,var(--accent) 36%,var(--border))}
  .mp-card .n{font-weight:700}.mp-card .pf{display:flex;align-items:center;justify-content:space-between;margin-top:4px}.mp-card .pp{font-family:var(--mono);font-size:9.5px;color:var(--muted)}
  .mt{width:6px;height:6px;border-radius:50%}.mt.chaud{background:var(--chaud)}.mt.tiede{background:var(--tiede)}.mt.froid{background:var(--froid)}

  /* ===== showcase (tabbed) ===== */
  .show{border-top:1px solid var(--border);background:var(--surface)}
  .show-head{text-align:center;max-width:640px;margin:0 auto}
  .tabs{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:40px 0 0}
  .tab{display:flex;align-items:center;gap:10px;background:var(--bg);border:1px solid var(--border);border-radius:12px;padding:11px 16px;cursor:pointer;transition:border-color .2s,background .2s;text-align:left}
  .tab:hover{border-color:var(--border-hi)}
  .tab.on{border-color:var(--text);background:var(--surface);box-shadow:var(--shadow-md)}
  .tab .tn{font-family:var(--mono);font-size:12px;font-weight:600;color:var(--muted);width:24px;height:24px;border:1px solid var(--border);border-radius:50%;display:grid;place-items:center;flex-shrink:0;transition:all .2s}
  .tab.on .tn{background:var(--text);color:var(--bg);border-color:var(--text)}
  .tab .tt{font-size:13.5px;font-weight:700;color:var(--text-dim)}.tab.on .tt{color:var(--text)}
  .tab .tk{font-family:var(--mono);font-size:10px;font-weight:600;color:var(--accent);text-transform:uppercase;letter-spacing:.05em;display:block;margin-bottom:2px}
  .show-stage{display:grid;grid-template-columns:1fr 1.15fr;gap:48px;align-items:center;margin:44px 0 0;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-xl);padding:40px;overflow:hidden}
  .show-text{position:relative;min-height:150px}
  .show-pane{position:absolute;inset:0;opacity:0;transform:translateY(12px);transition:opacity .45s,transform .45s;pointer-events:none}
  .show-pane.on{opacity:1;transform:none;position:relative;pointer-events:auto}
  .show-pane h3{font-size:clamp(24px,2.8vw,32px);line-height:1.1;margin:0 0 14px}
  .show-pane p{font-size:16px;color:var(--text-dim);line-height:1.62;margin:0;max-width:400px}
  .show-pane .tag2{display:inline-block;font-family:var(--mono);font-size:11px;font-weight:600;color:var(--accent);margin-bottom:14px}
  .show-card{position:relative;background:var(--surface);border:1px solid var(--border-hi);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden;min-height:340px}
  .layer{position:absolute;inset:0;opacity:0;transform:translateY(16px) scale(.99);transition:opacity .5s,transform .5s;pointer-events:none}
  .layer.on{opacity:1;transform:none;position:relative;pointer-events:auto}
  .lh{display:flex;align-items:center;gap:9px;padding:14px 16px;border-bottom:1px solid var(--border);background:var(--s2);font-family:var(--mono);font-size:11.5px;color:var(--muted)}.lh svg{width:15px;height:15px}.lh .sp{flex:1}
  .match{display:flex;align-items:center;gap:11px;padding:13px 16px;border-bottom:1px solid var(--border)}.match:last-child{border-bottom:0}
  .match .av{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;color:#fff;font-size:11px;font-weight:700;flex-shrink:0}
  .match .mi{flex:1}.match .mn{font-size:13.5px;font-weight:700}.match .mr{font-size:11.5px;color:var(--muted);margin-top:2px}
  .match .ms{font-family:var(--mono);font-size:13px;font-weight:700;color:var(--green)}
  .sug2{display:flex;gap:11px;padding:15px 16px;background:color-mix(in srgb,var(--accent) 5%,var(--surface))}
  .sug2 .m{width:26px;height:26px;border-radius:6px;background:var(--text);color:var(--bg);display:grid;place-items:center;font-family:var(--disp);font-weight:800;font-size:13px;flex-shrink:0}
  .sug2 .tx{font-size:12.5px;line-height:1.5;color:var(--text-dim)}.sug2 .tx b{color:var(--text)}
  .sug2 .btns{display:flex;gap:7px;margin-top:9px}.sug2 .sb{font-size:11.5px;font-weight:600;border-radius:var(--radius);padding:5px 10px;border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer}.sug2 .sb.p{background:var(--text);color:var(--bg);border-color:var(--text)}
  @media(max-width:940px){.tabs{flex-direction:column}.show-stage{grid-template-columns:1fr;gap:28px;padding:24px}.show-text{min-height:0}.show-pane{position:relative;opacity:1;transform:none;display:none}.show-pane.on{display:block}}

  /* ===== stats band ===== */
  .band{border-top:1px solid var(--border);background:var(--bg)}
  .band-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-left:1px solid var(--border)}
  .band-cell{border-right:1px solid var(--border);padding:44px 30px;text-align:center}
  .band-cell .big{font-family:var(--disp);font-size:clamp(36px,4.5vw,54px);font-weight:800;letter-spacing:-.03em}
  .band-cell .lab{font-size:14px;color:var(--text-dim);margin-top:8px}
  @media(max-width:820px){.band-grid{grid-template-columns:1fr 1fr}.band-cell{border-bottom:1px solid var(--border)}}

  /* ===== security ===== */
  .sec-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
  @media(max-width:940px){.sec-grid{grid-template-columns:1fr;gap:40px}}
  .sc-cells{display:grid;grid-template-columns:1fr 1fr;gap:14px}
  .scell{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px;transition:transform .25s,border-color .25s}
  .scell:hover{transform:translateY(-3px);border-color:var(--border-hi)}
  .scell .si{width:32px;height:32px;border-radius:var(--radius);background:var(--s2);border:1px solid var(--border);display:grid;place-items:center;margin-bottom:14px}.scell .si svg{width:16px;height:16px}
  .scell h4{font-size:15px;margin:0 0 6px}.scell p{font-size:13px;color:var(--text-dim);line-height:1.5;margin:0}

  /* ===== pricing ===== */
  .price{border-top:1px solid var(--border);background:var(--surface)}
  .price-card{max-width:440px;margin:48px auto 0;background:var(--bg);border:1px solid var(--border-hi);border-radius:var(--radius-xl);padding:34px;box-shadow:var(--shadow-md);position:relative}
  .price-card .ph{display:flex;align-items:center;gap:10px;margin-bottom:22px}.price-card .pw{font-family:var(--disp);font-size:19px;font-weight:800}.price-card .pl{font-family:var(--mono);font-size:10px;font-weight:600;color:var(--text-dim);background:var(--s2);border:1px solid var(--border);border-radius:99px;padding:3px 9px}
  .price-card .pnum{font-family:var(--disp);font-size:48px;font-weight:800;letter-spacing:-.03em}.price-card .psuf{font-size:14px;color:var(--muted);margin-left:6px}
  .price-card .psub{font-size:14px;color:var(--text-dim);margin:12px 0 24px}
  .price-feat{list-style:none;padding:0;margin:0 0 26px;display:grid;gap:12px}.price-feat li{display:flex;gap:10px;font-size:14px;color:var(--text-dim);align-items:flex-start}.price-feat svg{width:16px;height:16px;color:var(--green);flex-shrink:0;margin-top:2px}
  .price-card .btn{width:100%;justify-content:center}
  .price-note{text-align:center;font-size:13.5px;color:var(--muted);margin:26px 0 0}.price-note a{color:var(--text);text-decoration:underline;text-underline-offset:3px}

  /* ===== CTA ===== */
  .cta{position:relative;text-align:center;padding:130px 0;overflow:hidden;border-top:1px solid var(--border)}
  .cta-glow{position:absolute;bottom:-200px;left:50%;transform:translateX(-50%);width:800px;height:500px;background:radial-gradient(ellipse at center,color-mix(in srgb,var(--accent) 15%,transparent),transparent 65%);filter:blur(20px);pointer-events:none}
  .cta-in{position:relative;z-index:1}
  .cta h2{font-size:clamp(38px,5.5vw,68px);line-height:1.02}
  .cta p{font-size:19px;color:var(--text-dim);margin:22px 0 36px}
  .cta-b{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}

  /* ===== footer ===== */
  .foot{border-top:1px solid var(--border);background:var(--surface);padding:60px 0 30px}
  .foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px}
  @media(max-width:860px){.foot-grid{grid-template-columns:1fr 1fr}}
  .foot .brand{font-size:20px}
  .foot-tag{font-size:13.5px;color:var(--text-dim);line-height:1.6;margin:16px 0 0;max-width:320px}
  .foot-col h5{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 16px;font-weight:600}
  .foot-col ul{list-style:none;padding:0;margin:0;display:grid;gap:11px}.foot-col a{font-size:14px;color:var(--text-dim)}.foot-col a:hover{color:var(--text)}
  .foot-bot{display:flex;align-items:center;justify-content:space-between;margin-top:46px;padding-top:22px;border-top:1px solid var(--border);font-size:13px;color:var(--muted);flex-wrap:wrap;gap:12px}
  .foot-fr{display:inline-flex;align-items:center;gap:8px}.foot-fr .fl{width:12px;height:8px;border-radius:1px;background:linear-gradient(90deg,#002654 33%,#fff 33% 66%,#ED2939 66%)}

  /* ===== motion ===== */
  html.reveal-on [data-rv]{opacity:0;transform:translateY(30px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
  html.reveal-on [data-rv].in{opacity:1;transform:none}
  @media(prefers-reduced-motion:no-preference){
    .mq-track.run{animation:mq 40s linear infinite}.marquee:hover .mq-track{animation-play-state:paused}
    @keyframes mq{to{transform:translateX(-50%)}}
  }

  /* ===== faithful product demo (dz) ===== */
  .stage{height:auto!important}
  .dz{position:relative;display:grid;grid-template-columns:140px 1fr;height:588px;background:var(--surface);border:1px solid color-mix(in srgb,var(--border) 60%,transparent);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);overflow:hidden;font-size:12px;text-align:left}
  .dz svg{display:block}
  /* sidebar */
  .dz-side{border-right:1px solid var(--border);padding:11px 9px;display:flex;flex-direction:column;background:var(--surface);overflow:hidden}
  .dz-brand{display:flex;align-items:center;gap:5px;font-family:var(--disp);font-size:16px;font-weight:800;letter-spacing:-.03em;padding:2px 4px 10px}.dz-brand span:first-of-type{color:var(--accent)}
  .dz-ver{margin-left:auto;font-family:var(--mono);font-size:8px;font-weight:600;color:var(--text-dim);background:var(--s2);border:1px solid var(--border);border-radius:99px;padding:2px 5px;letter-spacing:0}
  .dz-search{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--muted);background:var(--s2);border:1px solid var(--border);border-radius:7px;padding:6px 8px;margin-bottom:8px}.dz-search svg{width:12px;height:12px}.dz-kbd{margin-left:auto;font-family:var(--mono);font-size:9px}
  .dz-agency{display:flex;align-items:center;gap:4px;font-family:var(--mono);font-size:9.5px;font-weight:600;letter-spacing:.06em;color:var(--muted);padding:4px 5px 2px}.dz-agency svg{width:11px;height:11px}
  .dz-grp{font-family:var(--mono);font-size:8.5px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);padding:11px 5px 5px}
  .dz-it{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:500;color:var(--text-dim);padding:6px 8px;border-radius:7px}.dz-it svg{width:14px;height:14px;color:var(--muted);flex-shrink:0}
  .dz-it.on{background:var(--accent-dim,color-mix(in srgb,var(--accent) 9%,transparent));color:var(--accent);font-weight:700}.dz-it.on svg{color:var(--accent)}
  .dz-it .dz-c{margin-left:auto;font-family:var(--mono);font-size:9.5px;color:var(--muted)}.dz-it.on .dz-c{color:var(--accent)}
  .dz-user{margin-top:auto;display:flex;align-items:center;gap:8px;background:var(--s2);border:1px solid var(--border);border-radius:9px;padding:7px}.dz-uav{width:26px;height:26px;border-radius:7px;background:linear-gradient(135deg,#6b5cf5,#a78bfa);color:#fff;display:grid;place-items:center;font-size:9.5px;font-weight:700;flex-shrink:0}.dz-user>span:last-child{min-width:0;flex:1;overflow:hidden}.dz-user b{font-size:11.5px;display:block;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dz-user span span{font-size:9.5px;color:var(--muted);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  /* main */
  .dz-main{display:flex;flex-direction:column;min-width:0;background:var(--bg)}
  .dz-top{display:flex;align-items:center;gap:8px;padding:12px 16px 8px;background:transparent}
  .dz-ttl{display:flex;align-items:center;gap:8px;font-family:var(--disp);font-size:16px;font-weight:800;letter-spacing:-.02em}.dz-ttl svg{width:16px;height:16px;color:var(--text-dim)}.dz-ttl span{font-size:13px;font-weight:600;color:var(--muted)}
  .dz-sp{flex:1}
  .dz-b{display:inline-flex;align-items:center;gap:5px;font-family:var(--sans);font-size:11px;font-weight:600;line-height:1;border-radius:8px;padding:4px 11px;border:1px solid var(--text);background:var(--text);color:var(--bg);white-space:nowrap}.dz-b svg{width:12px;height:12px}
  .dz-b.ask{background:var(--surface);color:var(--text);border-color:var(--border)}.dz-b.ask svg{color:var(--accent)}
  .dz-b.ask.hot{border-color:color-mix(in srgb,var(--accent) 55%,transparent);box-shadow:0 0 0 3px var(--accent-dim,color-mix(in srgb,var(--accent) 12%,transparent))}
  .dz-filters{display:flex;align-items:center;gap:2px;padding:9px 14px 10px;background:transparent;border-top:1px solid var(--border);border-bottom:1px solid var(--border);overflow:hidden}
  .dz-fl{display:inline-flex;align-items:center;font-family:var(--mono);font-size:9px;font-weight:600;letter-spacing:.06em;color:var(--muted);padding-right:9px;margin-right:5px;border-right:1px solid var(--border)}
  .dz-f{display:inline-flex;align-items:center;gap:3px;font-size:9px;font-weight:600;color:var(--text);white-space:nowrap;padding:4px 4px;border-radius:7px;border:1px solid transparent;background:transparent}.dz-f i{color:var(--muted);font-style:normal;font-weight:600}
  .dz-f.on{background:var(--surface);border-color:var(--border);padding:3px 5px}.dz-f.on i{color:var(--muted)}
  .dz-f b{background:var(--s3);color:var(--text-dim);font-family:var(--mono);font-size:9px;border-radius:99px;padding:1px 5px}.dz-f .cx{color:var(--muted);font-size:11px}
  .dz-propose{display:flex;align-items:center;gap:10px;margin:6px 16px 0;padding:9px 12px;background:color-mix(in srgb,var(--accent) 4%,var(--surface));border:1px solid color-mix(in srgb,var(--accent) 15%,var(--border));border-radius:10px;overflow:hidden}
  .dz-pi{width:26px;height:26px;border-radius:8px;background:var(--text);color:var(--bg);display:grid;place-items:center;flex-shrink:0}.dz-pi svg{width:14px;height:14px}
  .dz-pt{flex-shrink:0}.dz-pt b{font-size:12.5px;font-weight:700;display:block;white-space:nowrap}.dz-pt span{font-size:10px;color:var(--muted);white-space:nowrap}
  .dz-refresh{width:24px;height:24px;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--muted);display:grid;place-items:center;flex-shrink:0}.dz-refresh svg{width:12px;height:12px}
  .dz-sep2{width:1px;height:26px;background:var(--border);flex-shrink:0}
  .dz-chips{display:flex;gap:7px;overflow:hidden;-webkit-mask:linear-gradient(90deg,#000 86%,transparent);mask:linear-gradient(90deg,#000 86%,transparent)}
  .dz-ch{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:6px 10px;white-space:nowrap}
  .dz-thead{display:grid;grid-template-columns:2.1fr .8fr .62fr .72fr 1fr .92fr .92fr;gap:9px;align-items:center;padding:11px 14px 10px;font-family:var(--mono);font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
  .dz-table{margin:12px 16px 0;background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden}
  .dz-rows{transition:transform .8s cubic-bezier(.3,.7,.2,1)}
  .dz-row{display:grid;grid-template-columns:2.1fr .8fr .62fr .72fr 1fr .92fr .92fr;gap:9px;align-items:center;padding:9px 14px;border-top:1px solid var(--border);background:var(--surface)}
  .dz-who{display:flex;align-items:center;gap:9px;min-width:0}.dz-who>span:last-child{display:flex;flex-direction:column;justify-content:center;min-width:0}.dz-av{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;color:#fff;font-size:10px;font-weight:700;flex-shrink:0}
  .dz-n{font-size:12.5px;font-weight:700;line-height:1.25}.dz-sub{font-size:10px;color:var(--muted);margin-top:3px;display:block}
  .dz-st{display:inline-flex;align-items:center;gap:5px;font-size:10.5px;font-weight:600;padding:2px 8px;border-radius:99px;border:1px solid}.dz-st::before{content:"";width:5px;height:5px;border-radius:50%}
  .dz-st.froid{color:var(--froid);border-color:color-mix(in srgb,var(--froid) 30%,transparent)}.dz-st.froid::before{background:var(--froid)}
  .dz-st.tiede{color:var(--tiede);border-color:color-mix(in srgb,var(--tiede) 34%,transparent)}.dz-st.tiede::before{background:var(--tiede)}
  .dz-score{display:flex;align-items:center;gap:7px;font-family:var(--mono);font-size:12px;font-weight:600}
  .dz-ring{--v:80;width:19px;height:19px;border-radius:50%;background:conic-gradient(var(--green) calc(var(--v)*3.6deg),var(--s3) 0);position:relative;flex-shrink:0}.dz-ring::after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--surface)}
  .dz-num{font-variant-numeric:tabular-nums;font-size:12px;font-weight:600}.dz-num.dim{color:var(--muted);font-weight:500}
  .dz-relance{display:inline-flex;align-items:center;gap:5px;font-size:10.5px;font-weight:600;color:var(--chaud);background:color-mix(in srgb,var(--chaud) 9%,transparent);border:1px solid color-mix(in srgb,var(--chaud) 26%,transparent);border-radius:99px;padding:3px 9px}.dz-relance::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--chaud)}
  /* ===== views + Prospection prédictive ===== */
  .dz-main{position:relative}
  .dz-view{position:absolute;inset:0;display:flex;flex-direction:column;opacity:0;transition:opacity .5s;pointer-events:none;overflow:hidden}
  .dz-view.on{opacity:1;pointer-events:auto}
  .pp-flag{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;line-height:1;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:4px 11px;white-space:nowrap}
  .pp-flag i{width:7px;height:7px;border-radius:50%;background:var(--muted)}.pp-flag i.on{background:var(--green)}.pp-flag i.ac{background:var(--accent)}
  .pp-seg{display:inline-flex;gap:6px;align-items:center;color:var(--muted);padding-right:8px;margin-right:3px;border-right:1px solid var(--border)}.pp-seg svg{width:14px;height:14px}
  .ppt{display:inline-flex;align-items:center;gap:6px;font-size:10px;font-weight:600;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:7px;padding:3px 7px;white-space:nowrap}
  .ppt .sw{width:20px;height:11px;border-radius:99px;background:var(--border-hi);position:relative}.ppt.on .sw{background:var(--accent)}.ppt .sw::after{content:"";position:absolute;top:1.5px;left:1.5px;width:8px;height:8px;border-radius:50%;background:#fff;transition:left .18s}.ppt.on .sw::after{left:9.5px}
  .pp-map{position:relative;flex:1;margin:12px 16px 14px;border:1px solid var(--border);border-radius:12px;overflow:hidden;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 720 470' preserveAspectRatio='none'%3E%3Crect width='720' height='470' fill='%23efe7de'/%3E%3Cg fill='%23f6f1ea'%3E%3Cpath d='M-10 150 L730 120 L730 137 L-10 167 Z'/%3E%3Cpath d='M-10 285 L730 255 L730 271 L-10 301 Z'/%3E%3Cpath d='M-10 390 L730 366 L730 379 L-10 403 Z'/%3E%3Cpath d='M150 -10 L166 -10 L206 480 L190 480 Z'/%3E%3Cpath d='M356 -10 L372 -10 L360 480 L344 480 Z'/%3E%3Cpath d='M556 -10 L540 -10 L578 480 L594 480 Z'/%3E%3C/g%3E%3Crect x='674' y='0' width='46' height='470' fill='%23dbeaf3'/%3E%3Crect x='672' y='0' width='2' height='470' fill='%23c3dae8'/%3E%3Cg fill='%23e0348c' fill-opacity='0.05' stroke='%23e0348c' stroke-width='1.4' stroke-opacity='0.7'%3E%3Cpath d='M120 60 L330 40 L360 210 L200 250 L110 200 Z'/%3E%3Cpath d='M360 210 L540 190 L560 340 L380 360 L200 250 Z'/%3E%3Cpath d='M540 190 L674 172 L674 330 L560 340 Z'/%3E%3Cpath d='M110 200 L200 250 L180 420 L120 430 L100 320 Z'/%3E%3Cpath d='M380 360 L560 340 L580 470 L360 470 Z'/%3E%3C/g%3E%3C/svg%3E") 0 0/100% 100% no-repeat,#efe7de}
  .pp-streets{position:absolute;inset:0;width:100%;height:100%}
  .pp-search{position:absolute;top:14px;left:14px;background:var(--surface);border:1px solid var(--border);border-radius:9px;padding:8px 13px;font-size:12px;color:var(--muted);box-shadow:var(--shadow);width:220px}
  .pp-zoom{position:absolute;top:14px;right:14px;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:8px;overflow:hidden;box-shadow:var(--shadow)}
  .pp-zoom span{width:26px;height:23px;display:grid;place-items:center;font-size:15px;color:var(--text-dim)}.pp-zoom span+span{border-top:1px solid var(--border)}
  .pp-pin{position:absolute;transform:translate(-50%,-50%) scale(.5);display:grid;place-items:center;border-radius:50%;color:#fff;font-family:var(--mono);font-size:11px;font-weight:600;box-shadow:0 2px 7px rgba(60,40,90,.28);opacity:0;transition:opacity .45s cubic-bezier(.3,.7,.2,1),transform .45s cubic-bezier(.3,.7,.2,1);background:#b7a6f2;border:2px solid rgba(255,255,255,.85)}
  .pp-pin.m{background:#8b7bff}.pp-pin.h{background:#5646c8}
  .dz-view.on .pp-pin{opacity:1;transform:translate(-50%,-50%) scale(1)}
  .pp-mazone{position:absolute;background:var(--surface);border:1px solid var(--chaud);color:var(--chaud);font-size:10px;font-weight:700;border-radius:99px;padding:2px 8px;display:inline-flex;align-items:center;gap:5px;transform:translate(-50%,-50%)}.pp-mazone::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--chaud)}
  .pp-legend{position:absolute;bottom:14px;left:14px;background:var(--surface);border:1px solid var(--border);border-radius:9px;padding:9px 11px;box-shadow:var(--shadow)}
  .pp-legend .lt{font-family:var(--mono);font-size:9px;font-weight:600;letter-spacing:.05em;color:var(--muted);margin-bottom:6px}
  .pp-legend .lr{display:flex;gap:12px}.pp-legend .li{display:inline-flex;align-items:center;gap:5px;font-size:10px;color:var(--text-dim)}.pp-legend .li i{width:8px;height:8px;border-radius:50%}
  /* PP lead cards in chat */
  .dz-lead{display:flex;align-items:center;gap:10px;padding:9px 11px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}
  .dz-lead .lpin{width:26px;height:26px;border-radius:7px;background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent);display:grid;place-items:center;flex-shrink:0}.dz-lead .lpin svg{width:14px;height:14px}
  .dz-lead .li2{flex:1;min-width:0}.dz-lead .la{font-size:12.5px;font-weight:700}.dz-lead .lm{font-size:11px;color:var(--muted);margin-top:1px}
  .dz-lead .lsc{font-family:var(--mono);font-size:13px;font-weight:700;white-space:nowrap}.dz-lead .lsc.hot{color:var(--chaud)}.dz-lead .lsc.warm{color:var(--tiede)}
  /* PP filter bar variant */
  .pp-seg{display:inline-flex;align-items:center;color:var(--text-dim);padding-right:9px;margin-right:4px;border-right:1px solid var(--border)}.pp-seg svg{width:14px;height:14px}
  .pp-flag.sc{border-color:color-mix(in srgb,var(--accent) 45%,transparent);color:var(--accent);background:color-mix(in srgb,var(--accent) 7%,transparent)}
  .pp-flag b{font-family:var(--mono);font-size:9px;background:var(--s3);color:var(--text-dim);border-radius:99px;padding:1px 5px;margin-left:2px}
  /* PP pin variants */
  .pp-pin.g{background:#c08a2e;border-color:rgba(255,255,255,.9)}
  .pp-pin.r{background:#d64560;border-color:rgba(255,255,255,.9)}
  .pp-pin.hot-target{box-shadow:0 0 0 5px color-mix(in srgb,var(--chaud) 22%,transparent),0 2px 7px rgba(60,40,90,.3);z-index:5}
  /* PP scan chip */
  .pp-scan{position:absolute;top:14px;left:50%;transform:translateX(-50%) translateY(-6px);display:inline-flex;align-items:center;gap:9px;background:var(--surface);border:1px solid var(--border-hi);border-radius:99px;padding:7px 15px;font-size:11.5px;font-weight:600;color:var(--text);box-shadow:var(--shadow-xl);opacity:0;transition:opacity .35s,transform .35s;z-index:8}.pp-scan.on{opacity:1;transform:translateX(-50%) translateY(0)}
  .pp-scan .n{font-family:var(--mono);font-weight:700;color:var(--accent);font-variant-numeric:tabular-nums}
  /* PP lead scoring card (money shot) */
  .pp-card{position:absolute;top:14px;right:14px;bottom:14px;width:288px;background:var(--surface);border:1px solid var(--border-hi);border-radius:13px;box-shadow:var(--shadow-xl);padding:15px 15px 14px;display:flex;flex-direction:column;gap:11px;opacity:0;transform:translateX(20px) scale(.98);transform-origin:right center;transition:opacity .5s,transform .5s;pointer-events:none;z-index:9;overflow:hidden}
  .pp-card.on{opacity:1;transform:none}
  .pc-badge{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:9px;font-weight:700;letter-spacing:.07em;color:var(--accent)}.pc-badge span{width:15px;height:15px;border-radius:5px;background:var(--accent);color:#fff;display:grid;place-items:center}.pc-badge span svg{width:9px;height:9px}
  .pc-addr{font-family:var(--disp);font-size:15px;font-weight:800;letter-spacing:-.01em;line-height:1.22}
  .pc-meta{font-family:var(--mono);font-size:9.5px;color:var(--muted);letter-spacing:.02em}
  .pc-score{display:flex;align-items:center;gap:9px}
  .pc-sn{font-family:var(--disp);font-size:33px;font-weight:800;line-height:.9;font-variant-numeric:tabular-nums}
  .pc-bar{flex:1;height:6px;border-radius:99px;background:var(--s3);overflow:hidden}.pc-bar i{display:block;height:100%;width:0;background:var(--chaud);border-radius:99px;transition:width 1.1s cubic-bezier(.3,.7,.2,1) .2s}.pp-card.on .pc-bar i{width:90%}
  .pc-hot{font-family:var(--mono);font-size:8.5px;font-weight:700;color:var(--chaud);background:color-mix(in srgb,var(--chaud) 12%,transparent);border:1px solid color-mix(in srgb,var(--chaud) 30%,transparent);border-radius:99px;padding:3px 7px;white-space:nowrap}
  .pc-lede{font-size:11px;line-height:1.45;color:var(--text-dim)}.pc-lede b{color:var(--text);font-weight:700}
  .pc-tt{font-family:var(--mono);font-size:8.5px;font-weight:600;letter-spacing:.06em;color:var(--muted);display:flex;align-items:center;gap:6px}.pc-tt::after{content:"";flex:1;height:1px;background:var(--border)}
  .pc-trigs{display:flex;flex-direction:column;gap:5px}
  .pp-trig{display:flex;align-items:center;gap:8px;padding:6px 9px;border:1px solid var(--border);border-radius:8px;background:var(--s2);opacity:0;transform:translateY(7px);transition:opacity .32s,transform .32s}
  .pp-trig.in{opacity:1;transform:none}
  .pp-trig .tc{width:16px;height:16px;border-radius:5px;background:color-mix(in srgb,var(--green) 17%,transparent);color:var(--green);display:grid;place-items:center;flex-shrink:0}.pp-trig .tc svg{width:10px;height:10px}
  .pp-trig .tl{flex:1;min-width:0;font-size:10px;font-weight:600;line-height:1.28}
  .pp-trig .tp{font-family:var(--mono);font-size:10px;font-weight:700;color:var(--green);white-space:nowrap}
  .pc-cta{margin-top:auto;display:flex;align-items:center;justify-content:center;gap:7px;font-size:11.5px;font-weight:700;color:var(--bg);background:var(--text);border-radius:8px;padding:9px;white-space:nowrap}.pc-cta svg{width:13px;height:13px}
  @media(max-width:820px){.pp-card{position:relative;inset:auto;width:auto;margin:10px 0 0;opacity:1;transform:none}}
  .fc-panel{display:none;flex-direction:column;gap:12px;min-height:0}
  .fc-panel.on{display:flex}
  .fc-mhd{display:flex;align-items:center;justify-content:space-between;gap:8px;font-family:var(--mono);font-size:9px;letter-spacing:.06em;color:var(--muted)}
  .fc-mhd .g{color:var(--text-dim);font-weight:700}
  .fc-mgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
  .fc-mc{border:1px solid var(--border);border-radius:11px;background:var(--surface);overflow:hidden;opacity:0;transform:translateY(9px);transition:opacity .34s,transform .34s}
  .fc-mc.in{opacity:1;transform:none}
  .fc-mc.top{border-color:color-mix(in srgb,var(--accent) 38%,transparent);box-shadow:0 0 0 1px var(--accent-dim,color-mix(in srgb,var(--accent) 12%,transparent))}
  .fc-mimg{position:relative;height:118px;background:linear-gradient(135deg,#e7ebf2,#d3d8e3)}
  .fc-mimg .ico{position:absolute;inset:0;display:grid;place-items:center;color:color-mix(in srgb,var(--muted) 55%,transparent)}.fc-mimg .ico svg{width:30px;height:30px}
  .fc-mmatch{position:absolute;top:9px;left:9px;font-size:10px;font-weight:700;color:#fff;background:var(--accent);border-radius:6px;padding:3px 8px}
  .fc-mmandat{position:absolute;top:9px;right:9px;font-size:9px;font-weight:700;color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,#fff);border-radius:6px;padding:3px 7px}
  .fc-mbody{padding:8px 11px 9px}
  .fc-mprice{font-family:var(--disp);font-size:16px;font-weight:800;letter-spacing:-.01em}
  .fc-maddr{font-size:11px;color:var(--text-dim);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .fc-mspecs{font-family:var(--mono);font-size:9.5px;color:var(--muted);margin-top:6px;display:flex;gap:9px}
  .fc-mchips{display:flex;flex-wrap:nowrap;gap:5px;margin-top:8px;overflow:hidden}
  .fc-chip{font-size:9px;font-weight:600;border-radius:6px;padding:3px 6px;white-space:nowrap;border:1px solid transparent;flex-shrink:0}
  .fc-chip.ok{color:var(--green);background:color-mix(in srgb,var(--green) 11%,transparent);border-color:color-mix(in srgb,var(--green) 26%,transparent)}
  .fc-chip.warn{color:var(--tiede);background:color-mix(in srgb,var(--tiede) 12%,transparent);border-color:color-mix(in srgb,var(--tiede) 28%,transparent)}
  .fc-chip.new{color:var(--accent);background:var(--accent-dim,color-mix(in srgb,var(--accent) 12%,transparent));border-color:color-mix(in srgb,var(--accent) 30%,transparent)}
  .fc-more{font-size:10.5px;font-weight:600;color:var(--muted);text-align:center;padding:4px}
  .fc-qa{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;color:var(--muted);background:var(--s2);border:1px solid var(--border);border-radius:7px;padding:4px 9px}.fc-qa svg{width:11px;height:11px}.fc-qa kbd{font-family:var(--mono);font-size:9px;background:var(--surface);border:1px solid var(--border);border-radius:4px;padding:0 4px}
  .fc-actions{display:flex;align-items:center;gap:7px;flex-shrink:0}
  .fc-ib{width:30px;height:30px;border-radius:8px;border:1px solid var(--border);background:var(--s2);color:var(--text-dim);display:grid;place-items:center}.fc-ib svg{width:14px;height:14px}
  .fc-b2{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;border-radius:8px;padding:7px 12px;white-space:nowrap}.fc-b2 svg{width:13px;height:13px}
  .fc-b2.sec{background:var(--s2);border:1px solid var(--border);color:var(--text)}
  .fc-b2.pri{background:var(--text);color:var(--bg)}
  .fc-substat{font-family:var(--mono);font-size:8.5px;color:var(--muted);margin-top:4px}
  /* ===== fiche client (fc) ===== */
  .dz-fiche{display:grid;grid-template-columns:1fr 236px;flex:1;min-height:0;overflow:hidden}
  .fc-main{padding:13px 16px;display:flex;flex-direction:column;gap:10px;overflow:hidden;background:var(--surface)}
  .fc-stats,.fc-grid,.fc-secbox{background:var(--bg)}
  .fc-stats,.fc-grid,.fc-secbox{background:var(--surface)}
  .fc-hd{display:flex;align-items:flex-start;gap:11px}
  .fc-av{width:40px;height:40px;border-radius:11px;background:var(--accent-dim,color-mix(in srgb,var(--accent) 12%,transparent));color:var(--accent);display:grid;place-items:center;font-weight:700;font-size:13px;flex-shrink:0}
  .fc-nm{font-family:var(--disp);font-size:17px;font-weight:800;letter-spacing:-.015em}
  .fc-line{font-family:var(--mono);font-size:10px;color:var(--muted);margin-top:5px;display:flex;gap:8px;flex-wrap:wrap}
  .fc-stats{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--border);border-radius:10px;overflow:hidden}
  .fc-stat{padding:9px 12px;border-right:1px solid var(--border)}.fc-stat:last-child{border-right:0}
  .fc-sl{font-family:var(--mono);font-size:8px;letter-spacing:.05em;color:var(--muted);display:flex;align-items:center;gap:4px}
  .fc-sv{font-size:12.5px;font-weight:700;margin-top:5px;display:flex;align-items:center;gap:6px}
  .fc-sv .dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}
  .fc-nextpill{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:var(--froid);background:color-mix(in srgb,var(--froid) 10%,transparent);border:1px solid color-mix(in srgb,var(--froid) 26%,transparent);border-radius:7px;padding:4px 10px}.fc-nextpill .dot{width:6px;height:6px;border-radius:50%;background:var(--froid)}
  .fc-tabs{display:flex;gap:2px;border-bottom:1px solid var(--border)}
  .fc-tab{font-size:11px;font-weight:600;color:var(--muted);padding:7px 10px;border-bottom:2px solid transparent;display:inline-flex;align-items:center;gap:5px}
  .fc-tab.on{color:var(--text);border-bottom-color:var(--accent);background:var(--accent-dim,color-mix(in srgb,var(--accent) 12%,transparent))}
  .fc-tab b{font-family:var(--mono);font-size:9px;font-weight:700;background:var(--s3);color:var(--text-dim);border-radius:99px;padding:1px 5px}
  .fc-sec{font-family:var(--mono);font-size:9px;letter-spacing:.06em;color:var(--muted);margin-bottom:-4px}
  .fc-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--border);border-radius:10px;overflow:hidden}
  .fc-cell{padding:12px 13px;border-right:1px solid var(--border)}.fc-cell:nth-child(3n){border-right:0}.fc-cell:nth-child(n+4){border-top:1px solid var(--border)}
  .fc-cl{font-family:var(--mono);font-size:8px;letter-spacing:.04em;color:var(--muted)}
  .fc-cv{font-size:14px;font-weight:600;margin-top:6px}.fc-cv .fc-empty{color:var(--muted);font-weight:500}
  .fc-cell.editing{background:var(--accent-dim,color-mix(in srgb,var(--accent) 12%,transparent));box-shadow:inset 0 0 0 1.5px var(--accent)}
  .fc-pills{display:flex;gap:7px;flex-wrap:wrap;align-items:center}
  .fc-pill{font-size:11px;font-weight:600;color:var(--accent);background:var(--accent-dim,color-mix(in srgb,var(--accent) 12%,transparent));border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);border-radius:7px;padding:4px 10px}
  .fc-pill.fc-new{opacity:0;transform:scale(.7);transition:opacity .3s,transform .3s;display:none}
  .fc-pill.fc-new.in{opacity:1;transform:none;display:inline-flex}
  .fc-add{font-size:11px;font-weight:600;color:var(--muted);border:1px dashed var(--border-hi);border-radius:7px;padding:4px 10px}
  .fc-secbox{border:1px solid var(--border);border-radius:10px;padding:11px 12px}
  .fc-secttl{font-family:var(--mono);font-size:8.5px;letter-spacing:.05em;color:var(--muted);display:flex;align-items:center;gap:5px;margin-bottom:9px}
  .fc-rail{border-left:1px solid var(--border);background:var(--s2);padding:14px 13px;display:flex;flex-direction:column;gap:11px;overflow:hidden}
  .fc-rhd{display:flex;align-items:center;gap:6px;font-family:var(--mono);font-size:8.5px;font-weight:700;color:var(--text-dim);letter-spacing:.05em}
  .fc-rhd .o{width:15px;height:15px;border-radius:5px;background:var(--accent);color:#fff;display:grid;place-items:center;flex-shrink:0}.fc-rhd .o svg{width:9px;height:9px}
  .fc-rhd .at{margin-left:auto;font-weight:600;color:var(--muted)}
  .fc-scwrap{display:flex;align-items:center;gap:12px;margin-top:2px}
  .fc-scn{font-family:var(--disp);font-size:52px;font-weight:800;line-height:.8;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
  .fc-scr{flex:1;min-width:0;display:flex;flex-direction:column;gap:7px}
  .fc-hot{font-family:var(--mono);font-size:9px;font-weight:700;letter-spacing:.06em;color:var(--chaud);align-self:flex-end}
  .fc-bar{height:5px;border-radius:99px;background:var(--s3);overflow:hidden}.fc-bar i{display:block;height:100%;width:0;background:var(--chaud);border-radius:99px;transition:width 1s cubic-bezier(.3,.7,.2,1)}
  .fc-desc{font-size:11px;line-height:1.45;color:var(--text-dim)}.fc-desc b{color:var(--text);font-weight:700}
  .fc-sugt{font-family:var(--mono);font-size:8.5px;font-weight:600;letter-spacing:.05em;color:var(--muted)}
  .fc-sug{display:flex;align-items:center;gap:9px;padding:9px 10px;border-left:2px solid var(--accent);background:var(--surface);border-radius:0 8px 8px 0;transition:opacity .4s}
  .fc-sug .tx{flex:1;min-width:0}
  .fc-sug .chev{color:var(--muted);flex-shrink:0}.fc-sug .chev svg{width:13px;height:13px}
  .fc-sug .i{width:17px;height:17px;border-radius:5px;background:var(--accent-dim,color-mix(in srgb,var(--accent) 12%,transparent));color:var(--accent);display:grid;place-items:center;flex-shrink:0}.fc-sug .i svg{width:11px;height:11px}
  .fc-sug .t{font-size:10.5px;font-weight:700;line-height:1.2}
  .fc-sug .d{font-size:9.5px;color:var(--muted);margin-top:3px;line-height:1.35}
  .fc-rdiv{display:flex;align-items:center;justify-content:center;padding:2px 0}.fc-rdiv span{width:24px;height:24px;border-radius:7px;border:1px solid var(--border);background:var(--surface);color:var(--muted);display:grid;place-items:center}.fc-rdiv span svg{width:12px;height:12px}
  .fc-rsec{display:flex;align-items:center;justify-content:space-between;font-family:var(--mono);font-size:8.5px;font-weight:700;letter-spacing:.06em;color:var(--text-dim);padding-top:2px;border-top:1px solid var(--border);margin-top:2px}
  .fc-tasks{display:flex;align-items:center;gap:7px;font-size:11px;font-weight:700}
  .fc-tasks .c{font-family:var(--mono);font-size:9px;font-weight:600;color:var(--muted);background:var(--s3);border-radius:99px;padding:1px 7px}
  .fc-taskempty{font-size:10.5px;font-style:italic;color:var(--muted);text-align:center;padding:4px 0}
  .fc-sug.done{border-left-color:var(--green)}.fc-sug.done .i{background:color-mix(in srgb,var(--green) 17%,transparent);color:var(--green)}
  /* ===== dossiers kanban (dk) ===== */
  .dz-kan{flex:1;min-height:0;display:flex;flex-direction:column;background:var(--bg)}
  .dk-scroll{flex:1;min-height:0;display:flex;gap:10px;padding:12px 14px;overflow:hidden}
  .dk-col{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}
  .dk-ch{display:flex;flex-wrap:wrap;align-items:center;gap:6px 6px;font-family:var(--mono);font-size:9px;font-weight:700;letter-spacing:.04em;color:var(--text-dim);text-transform:uppercase;padding-bottom:2px}
  .dk-ch .n{font-family:var(--mono);font-size:8.5px;font-weight:700;color:var(--muted);background:var(--s3);border-radius:99px;padding:0 6px;margin-left:auto;transition:all .3s}
  .dk-ch .n.bump{background:var(--accent);color:#fff}
  .dk-ch .bar{width:100%;height:2px;border-radius:2px;flex-shrink:0;order:-1;margin-bottom:5px}
  .dk-body{display:flex;flex-direction:column;gap:8px;flex:1;min-height:0;overflow-y:auto;border-radius:10px;padding:3px;transition:background .3s,box-shadow .3s}
  .dk-body::-webkit-scrollbar{width:0}
  .dk-body.drop{background:var(--accent-dim,color-mix(in srgb,var(--accent) 9%,transparent));box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--accent) 40%,transparent)}
  .dk-card{border:1px solid var(--border);border-radius:9px;background:var(--surface);padding:9px 10px;box-shadow:var(--shadow);opacity:0;transform:translateY(8px);transition:opacity .3s,transform .3s}
  .dk-card.in{opacity:1;transform:none}
  .dk-card.ghost{opacity:.35}
  .dk-cn{font-size:11px;font-weight:700;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .dk-ca{font-size:9.5px;color:var(--muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .dk-cf{display:flex;align-items:center;justify-content:space-between;margin-top:7px}
  .dk-cp{font-family:var(--disp);font-size:12px;font-weight:800;letter-spacing:-.01em}
  .dk-tag{font-family:var(--mono);font-size:7.5px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;border-radius:5px;padding:2px 5px}
  .dk-tag.exclu{color:var(--accent);background:var(--accent-dim,color-mix(in srgb,var(--accent) 12%,transparent))}
  .dk-tag.simple{color:var(--muted);background:var(--s3)}
  .dk-fly{position:absolute;z-index:14;width:172px;pointer-events:none;box-shadow:var(--shadow-xl);transform:rotate(-2.5deg);opacity:0;transition:opacity .2s}
  .dk-fly.on{opacity:1}
  .dk-modal{position:absolute;inset:0;z-index:16;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--text) 22%,transparent);opacity:0;pointer-events:none;transition:opacity .3s}
  .dk-modal.on{opacity:1;pointer-events:auto}
  .dk-mbox{width:min(420px,86%);background:var(--surface);border:1px solid var(--border-hi);border-radius:14px;box-shadow:var(--shadow-xl);overflow:hidden;transform:scale(.96);transition:transform .3s}.dk-modal.on .dk-mbox{transform:none}
  .dk-mhd{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:15px 16px 13px;border-bottom:1px solid var(--border)}
  .dk-mt{font-family:var(--disp);font-size:17px;font-weight:800;letter-spacing:-.01em}
  .dk-msub{font-size:11px;color:var(--muted);margin-top:3px}
  .dk-mx{width:24px;height:24px;border-radius:7px;border:1px solid var(--border);display:grid;place-items:center;color:var(--muted);font-size:15px;flex-shrink:0}
  .dk-maddr{margin:13px 16px 0;background:var(--s2);border-radius:8px;padding:9px 12px;font-size:12px;font-weight:600;color:var(--text-dim)}
  .dk-mrow{display:flex;gap:9px;align-items:flex-end;margin:14px 16px 0}
  .dk-mrow2{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:14px 16px 0}
  .dk-mf{min-width:0}.dk-mf.full{margin:14px 16px 0}.dk-mrow .dk-mf{flex:1}
  .dk-mf label{display:block;font-family:var(--mono);font-size:8.5px;font-weight:700;letter-spacing:.04em;color:var(--text-dim);margin-bottom:6px}.dk-mf label span{color:var(--muted);font-weight:400}
  .dk-mdate{height:36px;display:flex;align-items:center;border:1px solid var(--border-hi);border-radius:8px;padding:0 11px;font-size:12px;font-weight:600;color:var(--text);background:var(--surface);box-sizing:border-box}.dk-mdate.dim{color:var(--muted);font-weight:400}
  .dk-mdate.fill{border-color:var(--accent);background:var(--accent-dim,color-mix(in srgb,var(--accent) 8%,transparent))}
  .dk-mtoday{height:36px;display:flex;align-items:center;font-size:11px;font-weight:700;color:var(--text);background:var(--s2);border:1px solid var(--border);border-radius:8px;padding:0 16px;white-space:nowrap;box-sizing:border-box}
  .dk-mfoot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:15px;padding:12px 16px;border-top:1px solid var(--border);background:var(--s2)}
  .dk-mkbd{font-size:9.5px;color:var(--muted)}.dk-mkbd kbd{font-family:var(--mono);font-size:8.5px;background:var(--surface);border:1px solid var(--border);border-radius:4px;padding:1px 4px;color:var(--text-dim)}
  .dk-mbtns{display:flex;gap:8px;flex-shrink:0}
  .dk-mpass{font-size:11.5px;font-weight:600;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:8px 14px}
  .dk-mok{font-size:11.5px;font-weight:700;color:var(--bg);background:var(--text);border-radius:8px;padding:8px 16px}
  .dk-toast{position:absolute;left:50%;bottom:16px;transform:translateX(-50%) translateY(8px);display:inline-flex;align-items:center;gap:8px;background:var(--text);color:var(--bg);border-radius:10px;padding:8px 14px;font-size:11px;font-weight:600;box-shadow:var(--shadow-xl);opacity:0;transition:opacity .35s,transform .35s;z-index:15}.dk-toast.on{opacity:1;transform:translateX(-50%) translateY(0)}.dk-toast .c{width:15px;height:15px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center}.dk-toast .c svg{width:10px;height:10px}
  /* chat overlay */
  .dz-veil{position:absolute;left:0;right:0;bottom:0;top:auto;height:64%;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--surface) 90%,transparent) 62%);z-index:18;opacity:0;transition:opacity .4s;pointer-events:none}.dz-veil.on{opacity:1}
  .dz-chat{position:absolute;left:50%;bottom:16px;top:auto;width:min(560px,76%);max-height:78%;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border-hi);border-radius:14px;box-shadow:var(--shadow-xl);z-index:25;opacity:0;transform:translate(-50%,24px) scale(.98);transform-origin:bottom center;transition:opacity .45s,transform .45s;pointer-events:none;overflow:hidden}
  .dz-chat.on{opacity:1;transform:translate(-50%,0) scale(1)}
  .dz-chat-h{display:flex;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid var(--border);flex-shrink:0}
  .dz-cav{width:26px;height:26px;border-radius:7px;background:var(--text);color:var(--bg);display:grid;place-items:center;flex-shrink:0}.dz-cav svg{width:14px;height:14px}
  .dz-chat-h b{font-family:var(--disp);font-size:14px;font-weight:800}.dz-csub{font-size:11px;color:var(--muted)}
  .dz-cx{width:24px;height:24px;border-radius:6px;color:var(--muted);display:grid;place-items:center;font-size:15px}
  .dz-chat-body{padding:14px;display:flex;flex-direction:column;gap:10px;overflow-y:auto;flex:1;min-width:0;min-height:0}
  .dz-msg{font-size:12.5px;line-height:1.5;overflow-wrap:anywhere}
  .dz-msg.me{align-self:flex-end;background:var(--s2);border:1px solid var(--border);border-radius:12px;border-bottom-right-radius:4px;padding:8px 13px;font-weight:600;max-width:80%}
  .dz-msg.bot{align-self:stretch;color:var(--text-dim)}.dz-msg.bot b{color:var(--text);font-weight:700}
  .dz-typing{align-self:flex-start;background:var(--s2);border-radius:12px;padding:10px 13px;display:inline-flex;gap:4px}.dz-typing i{width:5px;height:5px;border-radius:50%;background:var(--muted);animation:blink 1.2s infinite}.dz-typing i:nth-child(2){animation-delay:.2s}.dz-typing i:nth-child(3){animation-delay:.4s}
  .dz-cc{display:flex;align-items:center;gap:10px;padding:9px 11px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}
  .dz-cc.hot{border-color:color-mix(in srgb,var(--accent) 32%,transparent);background:var(--accent-dim,color-mix(in srgb,var(--accent) 6%,transparent))}
  .dz-ccav{width:30px;height:30px;border-radius:8px;color:#fff;font-size:10px;font-weight:700;display:grid;place-items:center;flex-shrink:0}
  .dz-cci{flex:1;min-width:0}.dz-ccn{font-size:12.5px;font-weight:700;margin-right:7px}.dz-cc.hot .dz-ccn{color:var(--accent)}.dz-ccm{font-size:11px;color:var(--muted);margin-top:1px}
  .dz-cclb{font-family:var(--mono);font-size:10.5px;font-weight:700;color:var(--muted);white-space:nowrap}.dz-cclb.urgent{color:var(--chaud)}.dz-cclb.hot{color:var(--accent)}.dz-cclb.react{color:var(--tiede)}
  .dz-chat-in{display:flex;align-items:flex-start;gap:8px;margin:0 14px 10px;padding:9px 10px 9px 14px;border:1px solid var(--border-hi);border-radius:12px;flex-shrink:0}
  .dz-chat-in input{flex:1;border:0;background:transparent;font-family:var(--sans);font-size:12.5px;color:var(--text);outline:none}.dz-chat-in input::placeholder{color:var(--muted)}
  .dz-typed{flex:1;font-size:12.5px;color:var(--text);line-height:1.4;white-space:normal;word-break:break-word;max-height:44px;overflow:hidden}
  .dz-send{width:30px;height:30px;border-radius:9px;background:var(--text);color:var(--bg);border:0;display:grid;place-items:center;flex-shrink:0}.dz-send svg{width:15px;height:15px}
  .dz-sugs{display:flex;gap:7px;padding:0 14px 13px;flex-wrap:nowrap;overflow:hidden;flex-shrink:0;justify-content:center}
  .dz-sug{font-family:var(--sans);font-size:11px;font-weight:600;color:var(--text-dim);background:var(--s2);border:1px solid var(--border);border-radius:99px;padding:6px 11px;white-space:nowrap;cursor:pointer}
  .dz-sugs.wrap{flex-wrap:wrap}
  .dz-sug.big{font-size:11.5px;padding:8px 14px;color:var(--text);background:var(--surface);border-color:var(--border-hi)}
  .dz-sug.big:hover{background:var(--s2)}
  .dz-in{animation:dzin .4s ease}@keyframes dzin{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
  .dz-start-ov{position:absolute;inset:0;z-index:19;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:radial-gradient(120% 90% at 50% 45%,color-mix(in srgb,var(--surface) 62%,transparent),color-mix(in srgb,var(--surface) 30%,transparent));opacity:0;transition:opacity .5s;pointer-events:none}
  .dz-start-ov.on{opacity:1;pointer-events:auto}
  .dz-start{display:inline-flex;align-items:center;gap:9px;font-family:var(--sans);font-size:15px;font-weight:700;color:var(--bg);background:var(--text);border:0;border-radius:var(--radius);padding:13px 22px;cursor:pointer;box-shadow:var(--shadow-xl)}
  .dz-start:hover{background:var(--text-dim)}
  .dz-start svg{width:17px;height:17px}
  .dz-start-ov .h{font-size:12px;font-weight:600;color:var(--text-dim);letter-spacing:.01em}
  .dz-home{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;padding:20px 28px;text-align:center;background:var(--bg)}
  .dh-orb{width:44px;height:44px;border-radius:12px;background:var(--accent-dim,color-mix(in srgb,var(--accent) 12%,transparent));display:grid;place-items:center;color:var(--accent)}.dh-orb svg{width:22px;height:22px}
  .dh-h{font-family:var(--disp);font-size:25px;font-weight:800;letter-spacing:-.02em;line-height:1.1}.dh-h span{color:var(--text-dim)}
  .dh-sub{font-size:13px;color:var(--text-dim);margin-top:-4px}.dh-sub b{color:var(--text);font-weight:700}
  .dh-ask{width:min(560px,94%);display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--border-hi);border-radius:14px;padding:12px 12px 12px 16px;box-shadow:var(--shadow-xl);margin-top:6px;cursor:text}
  .dh-clip{width:16px;height:16px;color:var(--muted);flex-shrink:0}
  .dh-ph{flex:1;text-align:left;font-size:13.5px;color:var(--muted)}
  .dh-send{width:34px;height:34px;border-radius:10px;background:var(--text);color:var(--bg);border:0;display:grid;place-items:center;flex-shrink:0;cursor:pointer}.dh-send svg{width:16px;height:16px}
  .dh-meta{display:flex;align-items:center;gap:11px;font-size:11px;color:var(--muted)}.dh-model{font-weight:700;color:var(--text-dim);background:var(--s2);border:1px solid var(--border);border-radius:7px;padding:3px 8px}
  .dh-pills{display:flex;flex-wrap:wrap;gap:9px;justify-content:center;margin-top:8px}
  .dh-pill{display:inline-flex;align-items:center;gap:7px;font-family:var(--sans);font-size:12px;font-weight:600;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:99px;padding:8px 14px;cursor:pointer}.dh-pill svg{width:13px;height:13px;color:var(--accent)}
  .dh-pill:hover{background:var(--s2);border-color:var(--border-hi)}
  .dz.hub{background:transparent;border-color:transparent;box-shadow:none}
  .dz.hub .dz-side,.dz.hub .dz-main{opacity:0;pointer-events:none}
  .dz.hub .dz-veil{opacity:0!important;pointer-events:none}
  .dz.hub .dz-chat{top:50%;bottom:auto}
  .dz.hub .dz-chat.on{transform:translate(-50%,-50%) scale(1)}
  .dz-chat.on{pointer-events:auto}
  .dz-chat-in.dz-err{border-color:var(--chaud)}
  .dz-chat-in.dz-hide{display:none}
  .dz-chat-in input:not([readonly]){cursor:text}
  .dz-chat-in.email-mode{border-color:color-mix(in srgb,var(--accent) 55%,transparent);background:var(--accent-dim,color-mix(in srgb,var(--accent) 8%,transparent))}
  .dz-chat-in.email-mode input::placeholder{color:var(--accent-hi);opacity:.95}
  .dz-mailico{width:16px;height:16px;color:var(--accent);flex-shrink:0}
  .dz-chat-in.email-mode .dz-send{animation:dzsend 1.6s ease-in-out infinite}
  @keyframes dzsend{0%,100%{transform:none}50%{transform:translateX(2px)}}
  .dz-sug-mail{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,transparent);background:var(--accent-dim,color-mix(in srgb,var(--accent) 8%,transparent));display:inline-flex;align-items:center;gap:6px}
  .dz-sug-mail svg{width:14px;height:14px}
  .dz-sug-mail:hover{background:color-mix(in srgb,var(--accent) 15%,transparent)}
  .dz-msg.dz-stream::after{content:'';display:inline-block;width:2px;height:1em;margin-left:1px;background:var(--accent);vertical-align:-2px;animation:dzcar .8s steps(1) infinite}@keyframes dzcar{50%{opacity:0}}
  .dz-searching{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--text-dim);background:var(--s2);border-radius:10px;padding:8px 12px}
  .dz-spin{width:13px;height:13px;border:2px solid var(--border-hi);border-top-color:var(--accent);border-radius:50%;animation:dzspin .7s linear infinite;flex-shrink:0}@keyframes dzspin{to{transform:rotate(360deg)}}
  .dz-found{align-self:flex-start;display:inline-flex;align-items:center;gap:7px;font-family:var(--mono);font-size:11px;color:var(--muted)}.dz-found svg{width:13px;height:13px;color:var(--green)}
  .dz-cc .dz-match{font-family:var(--mono);font-size:11px;font-weight:700;color:var(--green);white-space:nowrap}
  .dz-ccbtn{font-family:var(--sans);font-size:11px;font-weight:600;color:var(--bg);background:var(--text);border:0;border-radius:8px;padding:6px 11px;white-space:nowrap;cursor:pointer;flex-shrink:0}
  .dz-sms{align-self:stretch;min-width:0;max-width:100%;border:1px solid var(--border);border-radius:10px;background:var(--surface);padding:10px 12px}
  .dz-sms-h{display:flex;align-items:center;gap:8px;margin-bottom:6px}
  .dz-sms-to{font-family:var(--sans);font-size:12px;font-weight:700;color:var(--text)}
  .dz-sms-send{margin-left:auto;font-size:10px;font-weight:700;color:var(--bg);background:var(--text);border-radius:6px;padding:3px 9px;flex-shrink:0}
  .dz-sms-b{padding:0;font-size:12px;line-height:1.5;color:var(--text-dim);overflow-wrap:anywhere}
  @media(max-width:820px){.dz{grid-template-columns:1fr;height:auto}.dz-side{display:none}.dz-chat{position:relative;left:auto;right:auto;bottom:auto;width:100%;transform:none;opacity:1;max-height:none;border-radius:0;border:0;border-top:1px solid var(--border)}.dz-chips,.dz-filters{-webkit-mask:none;mask:none}}

/* ============ SUB-PAGE KIT (prospection / pilotage / mandats) ============ */
.nav .brand-badge{font-family:var(--mono);font-size:9.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);background:var(--accent-dim,color-mix(in srgb,var(--accent) 12%,transparent));border:1px solid color-mix(in srgb,var(--accent) 28%,transparent);border-radius:99px;padding:2px 8px;margin-left:8px;vertical-align:2px}
.nav-links a.active{color:var(--text)}
a{color:inherit} a:hover{color:var(--text)}

/* hero split */
.phero{padding:72px 0 40px;position:relative;overflow:hidden}
.phero .hero-glow{position:absolute;top:-20%;left:50%;transform:translateX(-50%);width:900px;height:520px;background:radial-gradient(closest-side,color-mix(in srgb,var(--accent) 16%,transparent),transparent);pointer-events:none;filter:blur(10px)}
.phero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:56px;align-items:center;position:relative}
.phero h1{font-size:clamp(34px,5vw,60px);line-height:1.03;margin:20px 0 0}
.phero-sub{font-size:19px;line-height:1.6;color:var(--text-dim);margin:22px 0 0;max-width:33ch}.phero-sub b,.phero-sub strong{color:var(--text);font-weight:700}
.phero-cta{display:flex;gap:12px;margin-top:30px;flex-wrap:wrap}
@media(max-width:920px){.phero-grid{grid-template-columns:1fr;gap:36px}.phero-visual{order:-1}}

/* steps */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:56px}
.step{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);padding:26px;overflow:hidden;transition:border-color .25s,transform .25s,box-shadow .2s}
.step:hover{border-color:var(--border-hi);transform:translateY(-3px);box-shadow:var(--shadow-md)}
.step-bar{position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--accent),transparent)}
.step-num{font-family:var(--mono);font-size:12px;font-weight:600;color:var(--muted)}
.step-ic{width:38px;height:38px;border-radius:var(--radius);background:var(--s2);border:1px solid var(--border);display:grid;place-items:center;color:var(--text);margin:14px 0 16px}.step-ic svg{width:19px;height:19px}
.step h3{font-size:19px;margin:0 0 9px}.step p{font-size:14.5px;color:var(--text-dim);line-height:1.6;margin:0}
@media(max-width:860px){.steps{grid-template-columns:1fr}}

/* split feature (copy + card / copy + copy) */
.psplit{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;margin-top:12px}
@media(max-width:860px){.psplit{grid-template-columns:1fr;gap:36px}}
.pcopy h2{font-size:clamp(28px,3.6vw,40px);line-height:1.06;margin:16px 0 0}
.pcopy p{font-size:17px;color:var(--text-dim);line-height:1.65;margin:18px 0 0}
.ppoints{list-style:none;padding:0;margin:24px 0 0;display:flex;flex-direction:column;gap:14px}
.ppoints li{display:flex;gap:12px;font-size:15px;line-height:1.5;color:var(--text-dim)}
.ppt-ic{width:22px;height:22px;border-radius:7px;background:var(--accent-dim,color-mix(in srgb,var(--accent) 12%,transparent));color:var(--accent);display:grid;place-items:center;flex-shrink:0}.ppt-ic svg{width:13px;height:13px}

/* temperatures */
.temps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:56px}
.temp{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);padding:26px;position:relative}
.temp-dot{width:11px;height:11px;border-radius:50%;display:block;margin-bottom:16px}
.temp.chaud .temp-dot{background:var(--chaud)}.temp.tiede .temp-dot{background:var(--tiede)}.temp.froid .temp-dot{background:var(--froid)}
.temp h3{font-size:19px;margin:0 0 9px}.temp p{font-size:14.5px;color:var(--text-dim);line-height:1.6;margin:0}
@media(max-width:860px){.temps{grid-template-columns:1fr}}

/* faq */
.faq{max-width:720px;margin:44px auto 0}
.faq h3{font-size:18px;margin:26px 0 8px}.faq h3:first-child{margin-top:0}
.faq p{font-size:15.5px;color:var(--text-dim);line-height:1.65;margin:0}.faq p b,.faq p strong{color:var(--text);font-weight:600}

/* cta band */
.pcta{padding:96px 0}
.pcta-in{max-width:720px;margin:0 auto;text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);padding:56px 40px;box-shadow:var(--shadow-md)}
.pcta-in h2{font-size:clamp(28px,3.6vw,40px);line-height:1.08}
.pcta-in p{font-size:17px;color:var(--text-dim);margin:16px 0 28px}

/* generic mock card */
.mock{background:var(--surface);border:1px solid var(--border-hi);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden}
.mock-bar{display:flex;align-items:center;gap:10px;padding:13px 16px;border-bottom:1px solid var(--border);background:var(--s2)}
.mock-bar .av{width:26px;height:26px;border-radius:50%;background:var(--accent);display:grid;place-items:center;color:#fff;font-weight:700;font-size:13px;font-family:var(--disp)}
.mock-bar .t{font-size:12.5px;font-weight:700;letter-spacing:-.01em}.mock-bar .sub{font-size:10.5px;color:var(--muted);margin-top:1px}
.mock-bar .pill{margin-left:auto;font-family:var(--mono);font-size:10px;font-weight:600;color:var(--accent);background:var(--accent-dim,color-mix(in srgb,var(--accent) 12%,transparent));padding:3px 9px;border-radius:99px}
.mock-foot{display:flex;align-items:center;gap:8px;padding:12px 16px;border-top:1px solid var(--border);font-size:11.5px;color:var(--text-dim)}
.mock-foot .d{width:7px;height:7px;border-radius:99px;background:var(--accent)}
.mock-foot .mono{margin-left:auto;font-family:var(--mono);font-size:11px;color:var(--muted)}

/* prospection fiche ring */
.pf{padding:18px}
.pf-h{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.pf-h-ic{width:34px;height:34px;border-radius:9px;background:var(--accent-dim,color-mix(in srgb,var(--accent) 12%,transparent));color:var(--accent);display:grid;place-items:center;flex-shrink:0}.pf-h-ic svg{width:17px;height:17px}
.pf-eyebrow{font-family:var(--mono);font-size:9px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.pf-addr{font-family:var(--disp);font-size:17px;font-weight:800;letter-spacing:-.01em;margin-top:2px}
.pf-meta{font-size:11.5px;color:var(--muted);margin-top:2px}
.pf-score{display:flex;align-items:center;gap:16px;padding:14px;background:var(--s2);border-radius:12px}
.pf-ring{position:relative;width:74px;height:74px;flex-shrink:0}
.pf-ring svg{width:74px;height:74px;transform:rotate(-90deg)}
.pf-ring-track{stroke:var(--s3)}.pf-ring-fill{stroke:var(--chaud);transition:stroke-dashoffset 1.4s cubic-bezier(.3,.7,.2,1)}
.pf-ring-num{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:var(--disp)}.pf-ring-num b{font-size:22px;font-weight:800;line-height:1}.pf-ring-num span{font-size:9px;color:var(--muted)}
.pf-score-lbl{font-family:var(--mono);font-size:9px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin-bottom:7px}
.pf-chip{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:var(--chaud);background:color-mix(in srgb,var(--chaud) 12%,transparent);border:1px solid color-mix(in srgb,var(--chaud) 28%,transparent);border-radius:99px;padding:4px 11px}.pf-chip i{width:6px;height:6px;border-radius:50%;background:var(--chaud)}
.pf-sigs{margin-top:14px}
.pf-sigs-h{font-family:var(--mono);font-size:9px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin-bottom:9px}
.pf-sig{display:flex;align-items:center;gap:9px;font-size:12.5px;color:var(--text-dim);padding:7px 0;border-top:1px solid var(--border)}
.pf-sig-ic{width:17px;height:17px;border-radius:5px;background:color-mix(in srgb,var(--green) 15%,transparent);color:var(--green);display:grid;place-items:center;flex-shrink:0}.pf-sig-ic svg{width:11px;height:11px}

/* pilotage kpi grid */
.plt-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--border)}
.plt-kpi{background:var(--surface);padding:15px 16px}
.plt-kpi .k{font-family:var(--mono);font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.plt-kpi .v{font-family:var(--disp);font-size:23px;font-weight:800;letter-spacing:-.02em;margin-top:6px}
.plt-kpi .s{font-size:11px;color:var(--text-dim);margin-top:3px}
.plt-kpi.king{background:var(--text);grid-column:1/-1}
.plt-kpi.king .k{color:color-mix(in srgb,var(--bg) 60%,transparent)}.plt-kpi.king .v{color:var(--bg)}.plt-kpi.king .s{color:color-mix(in srgb,var(--bg) 55%,transparent)}

/* mandats steps */
.mdt-steps{display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:15px 16px}
.mdt-step{font-family:var(--mono);font-size:10px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:var(--muted);background:var(--s2);border:1px solid var(--border);border-radius:7px;padding:5px 9px}
.mdt-step.done{color:var(--green);background:color-mix(in srgb,var(--green) 12%,transparent);border-color:color-mix(in srgb,var(--green) 26%,transparent)}
.mdt-step.now{color:var(--accent);background:var(--accent-dim,color-mix(in srgb,var(--accent) 12%,transparent));border-color:color-mix(in srgb,var(--accent) 30%,transparent)}
.mdt-sep{color:var(--muted);font-size:11px}
.mdt-card{margin:0 16px 14px;border:1px solid var(--border);border-radius:12px;padding:13px 14px;background:var(--bg)}
.mdt-card-h{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:12px}
.mdt-card-h .ad{font-size:13px;font-weight:700}.mdt-card-h .me{font-size:11px;color:var(--muted);margin-top:2px}
.mdt-flag{font-family:var(--mono);font-size:9px;font-weight:700;color:var(--chaud);background:color-mix(in srgb,var(--chaud) 12%,transparent);border:1px solid color-mix(in srgb,var(--chaud) 28%,transparent);border-radius:99px;padding:3px 8px;white-space:nowrap}
.mdt-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border);border:1px solid var(--border);border-radius:8px;overflow:hidden}
.mdt-cell{background:var(--surface);padding:9px 10px}.mdt-cell .k{font-family:var(--mono);font-size:8px;letter-spacing:.03em;text-transform:uppercase;color:var(--muted)}.mdt-cell .v{font-size:13px;font-weight:700;margin-top:4px}
.mdt-foot .d{background:var(--green)}.mdt-foot .mono{color:var(--text);font-weight:500}

/* reveal (sub-page) */
.reveal{opacity:0;transform:translateY(16px);transition:opacity .6s cubic-bezier(.2,.7,.2,1),transform .6s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}
.reveal[data-d="1"]{transition-delay:.08s}.reveal[data-d="2"]{transition-delay:.16s}.reveal[data-d="3"]{transition-delay:.24s}

/* ===== Attio-style data-model hero ===== */
.ahero{position:relative;padding:56px 0 96px;overflow:hidden;text-align:center}
.ah-glow{position:absolute;top:-140px;left:50%;transform:translateX(-50%);width:820px;height:460px;background:radial-gradient(ellipse at center,color-mix(in srgb,var(--accent) 9%,transparent),transparent 66%);filter:blur(20px);pointer-events:none;z-index:0}
.ah-in{position:relative;z-index:2}
.ah-pill{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--text-dim);background:var(--surface);border:1px solid var(--border);border-radius:99px;padding:7px 16px;box-shadow:var(--shadow)}
.ahero h1{font-family:var(--disp);font-size:clamp(40px,6.4vw,74px);font-weight:800;letter-spacing:-.035em;line-height:1;margin:22px auto 0;max-width:15ch;text-wrap:balance;color:var(--text)}
.ah-sub{font-size:clamp(17px,2vw,20px);color:var(--text-dim);line-height:1.5;margin:20px auto 0;max-width:40ch}
.ah-sub b{color:var(--text);font-weight:600}
.ah-cta{display:flex;gap:11px;justify-content:center;margin-top:30px;flex-wrap:wrap}
.schema{position:relative;max-width:1060px;margin:14px auto 0;padding:0 8px}
.schema-lines{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;overflow:visible}
.schema-lines path{fill:none;stroke:var(--border-hi);stroke-width:1.4;vector-effect:non-scaling-stroke}
.schema-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:auto auto;gap:52px 44px;align-items:start}
.schema-grid .s-tl{grid-column:1;grid-row:1}.schema-grid .s-tr{grid-column:3;grid-row:1}
.schema-grid .s-bl{grid-column:1;grid-row:2}.schema-grid .s-bm{grid-column:2;grid-row:2}.schema-grid .s-br{grid-column:3;grid-row:2}
.emc{background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-md);overflow:hidden;text-align:left;transition:transform .25s,box-shadow .25s,border-color .25s}
.emc:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);border-color:var(--border-hi)}
.emc-h{display:flex;align-items:center;gap:9px;padding:12px 13px}
.emc-ic{width:24px;height:24px;border-radius:7px;display:grid;place-items:center;background:var(--text);color:var(--bg);flex-shrink:0}.emc-ic svg{width:14px;height:14px}
.emc-nm{font-size:14px;font-weight:700;letter-spacing:-.01em;color:var(--text)}
.emc-b{margin-left:auto;font-family:var(--mono);font-size:9px;font-weight:600;color:var(--muted);background:var(--s2);border:1px solid var(--border);border-radius:99px;padding:2px 8px}
.emc-a{display:flex;align-items:center;gap:9px;padding:9px 13px;border-top:1px solid var(--border);font-size:12.5px;color:var(--text-dim)}
.emc-a svg{width:14px;height:14px;color:var(--muted);flex-shrink:0}
.emc-more{padding:9px 13px;border-top:1px solid var(--border);font-size:11.5px;color:var(--muted)}
@media(max-width:860px){.schema-grid{grid-template-columns:1fr;gap:16px;max-width:340px;margin:0 auto}.schema-grid>*{grid-column:auto!important;grid-row:auto!important}.schema-lines{display:none}}


/* ============ CONSTELLATION HERO (Attio data-model style) ============ */
@view-transition{navigation:auto}
::view-transition-old(root){animation:vtOut .28s ease both}
::view-transition-new(root){animation:vtIn .34s ease both}
@keyframes vtOut{to{opacity:0;transform:translateY(-8px)}}
@keyframes vtIn{from{opacity:0;transform:translateY(10px)}}
.constel{position:relative;padding:28px 0 40px}
.constel-stage{position:relative;width:1240px;max-width:100%;height:772px;margin:0 auto}
.constel-lines{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0}
.constel-lines path{fill:none;stroke:var(--border-hi);stroke-width:1.5;stroke-dasharray:1;stroke-dashoffset:1;animation:cnDraw .9s cubic-bezier(.65,0,.35,1) forwards}
.constel-lines path:nth-of-type(1){animation-delay:.5s}.constel-lines path:nth-of-type(2){animation-delay:.6s}.constel-lines path:nth-of-type(3){animation-delay:.7s}.constel-lines path:nth-of-type(4){animation-delay:.8s}.constel-lines path:nth-of-type(5){animation-delay:.9s}
.constel-lines circle{fill:var(--surface);stroke:var(--border-hi);stroke-width:1.5;opacity:0;animation:cnDot .35s ease forwards 1.15s}
@keyframes cnDraw{to{stroke-dashoffset:0}}@keyframes cnDot{from{opacity:0;transform:scale(.2)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.constel-lines path{stroke-dashoffset:0;animation:none}.constel-lines circle{opacity:1;animation:none}}
.constel-center{position:absolute;left:50%;top:56px;transform:translateX(-50%);width:960px;max-width:92%;text-align:center;z-index:3}
.constel-center h1{font-size:clamp(40px,5vw,64px);line-height:1;letter-spacing:-.03em;margin:18px 0 0}
.constel-center .sub{font-size:19px;line-height:1.55;color:var(--text-dim);margin:20px auto 0;max-width:30ch}.constel-center .sub b{color:var(--text);font-weight:700}
.constel-cta{display:flex;gap:11px;justify-content:center;margin-top:28px}
.cn-card{position:absolute;width:300px;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-md);z-index:2;overflow:hidden;opacity:0;transform:translateY(34px) scale(.95);transition:opacity .7s cubic-bezier(.2,.75,.2,1),transform .7s cubic-bezier(.2,.75,.2,1)}
.cn-card.in{opacity:1;transform:none}
.cn-card[data-d="1"]{transition-delay:.9s}.cn-card[data-d="2"]{transition-delay:1.02s}.cn-card[data-d="3"]{transition-delay:1.14s}.cn-card[data-d="4"]{transition-delay:1.26s}
@media(prefers-reduced-motion:reduce){.cn-card{transition:none;opacity:1;transform:none}}
.cn-hd{display:flex;align-items:center;gap:9px;padding:13px 14px}
.cn-ic{width:26px;height:26px;border-radius:7px;display:grid;place-items:center;color:#fff;flex-shrink:0}.cn-ic svg{width:15px;height:15px}
.cn-t{font-size:14px;font-weight:700;letter-spacing:-.01em;flex:1;min-width:0}
.cn-tag{font-family:var(--mono);font-size:9px;font-weight:600;letter-spacing:.03em;color:var(--text-dim);background:var(--s2);border:1px solid var(--border);border-radius:99px;padding:2px 8px}
.cn-tag.hot{color:var(--chaud);background:color-mix(in srgb,var(--chaud) 12%,transparent);border-color:color-mix(in srgb,var(--chaud) 26%,transparent)}
.cn-row{display:flex;align-items:center;gap:10px;padding:10px 14px;border-top:1px solid var(--border);font-size:13px;color:var(--text-dim)}
.cn-row svg{width:15px;height:15px;color:var(--muted);flex-shrink:0}
.cn-row .val{margin-left:auto;font-weight:600;color:var(--text);font-variant-numeric:tabular-nums}
.cn-more{padding:9px 14px;border-top:1px solid var(--border);font-size:12px;color:var(--muted);display:flex;align-items:center;gap:7px}
.cn-more::before{content:'+';font-weight:700}
/* fixed desktop positions */
.cn-tl{left:0;top:308px}
.cn-tr{right:0;top:308px}
.cn-bl{left:150px;top:568px}
.cn-bc{left:50%;transform:translateX(-50%) translateY(34px) scale(.95);top:568px}.cn-bc.in{transform:translateX(-50%)}
.cn-br{right:150px;top:568px}
@media(max-width:1080px){
  .constel-stage{height:auto;display:flex;flex-direction:column;align-items:center;gap:22px}
  .constel-lines{display:none}
  .constel-center{position:static;transform:none;width:100%}
  .cn-card{position:static!important;transform:translateY(14px);width:min(340px,92%)}
  .cn-card.in{transform:none}
  .cn-bc.in{transform:none}
}

/* ---- Mandats: process flow (cards in sequence) ---- */
.cflow-wrap{margin-top:44px}
.cflow{display:flex;align-items:stretch;justify-content:center;gap:0;flex-wrap:nowrap;max-width:100%}
.cflow .cn-card{position:static;flex:1 1 0;min-width:0;box-shadow:var(--shadow-sm);transform:translateY(26px) scale(.96)}
.cflow .cn-card.in{transform:none}
.cflow .cn-card[data-d="1"]{transition-delay:.15s}.cflow .cn-card[data-d="2"]{transition-delay:.45s}.cflow .cn-card[data-d="3"]{transition-delay:.75s}.cflow .cn-card[data-d="4"]{transition-delay:1.05s}.cflow .cn-card[data-d="5"]{transition-delay:1.35s}
.cflow .cn-card.hi{box-shadow:var(--shadow-md);border-color:color-mix(in srgb,var(--chaud) 40%,var(--border))}
.cflow-ar{flex:0 0 30px;display:flex;align-items:center;justify-content:center;color:var(--muted);opacity:0;transform:translateX(-6px);transition:opacity .4s ease,transform .4s ease}
.cflow-ar.in{opacity:1;transform:none}
.cflow-ar svg{width:18px;height:18px}
.cflow-ar[data-d="1"]{transition-delay:.35s}.cflow-ar[data-d="2"]{transition-delay:.65s}.cflow-ar[data-d="3"]{transition-delay:.95s}.cflow-ar[data-d="4"]{transition-delay:1.25s}
.cflow-cap{display:flex;justify-content:center;gap:11px;margin-top:22px;font-size:13px;color:var(--muted)}
.cflow-cap b{color:var(--text);font-weight:600}
@media(max-width:1000px){
  .cflow{flex-direction:column;align-items:center;gap:0}
  .cflow .cn-card{flex:0 0 auto;width:min(320px,90%)}  .cflow-ar{flex:0 0 auto;height:30px;transform:translateY(-6px) rotate(90deg)}.cflow-ar.in{transform:rotate(90deg)}
}
@media(prefers-reduced-motion:reduce){.cflow .cn-card,.cflow-ar{opacity:1;transform:none;transition:none}}

/* ---- Pilotage: funnel (inputs converge to result) ---- */
.cfunnel .constel-stage{height:772px}
.cfunnel .cn-card.result{border-color:var(--border-hi);box-shadow:var(--shadow-lg);width:340px}
.cfunnel .cn-card.result .cn-hd{background:var(--text)}
.cfunnel .cn-card.result .cn-t{color:var(--bg)}
.cfunnel .cn-card.result .cn-tag{color:var(--bg);background:color-mix(in srgb,var(--bg) 22%,transparent);border-color:transparent}
.cfunnel .cn-in-tl{left:40px;top:300px}
.cfunnel .cn-in-tr{right:40px;top:300px}
.cfunnel .cn-in-ml{left:120px;top:520px}
.cfunnel .cn-in-mr{right:120px;top:520px}
.cfunnel .cn-result{left:50%;top:560px;transform:translateX(-50%) translateY(34px) scale(.95)}.cfunnel .cn-result.in{transform:translateX(-50%)}
@media(max-width:1080px){
  .cfunnel .constel-stage{height:auto;display:flex;flex-direction:column;align-items:center;gap:14px;padding-top:8px}
  .cfunnel .cn-card{position:static!important;left:auto!important;right:auto!important;top:auto!important;width:min(360px,92%)!important;opacity:1!important;transform:none!important}
  .cfunnel .cn-card.result{width:min(360px,92%)}
  .cfunnel .cn-result.in{transform:none}
}

/* ---- global mobile pass (sub-pages) ---- */
@media(max-width:760px){
  .wrap{padding:0 22px}
  .nav-in{gap:14px;height:58px}
  .nav .brand-badge{display:none}
  .sec{padding:72px 0}
}
@media(max-width:560px){
  .wrap{padding:0 18px}
  .nav-in{gap:10px;height:54px}
  .nav-act{gap:6px}
  .btn-g{display:none}
  .btn{padding:8px 12px;font-size:13px}
  .btn-lg{padding:11px 15px;font-size:14px}
  .brand{font-size:19px}
  .constel{padding:14px 0 20px}
  .constel-center h1{font-size:clamp(30px,8.6vw,42px)}
  .constel-center .sub{font-size:16px}
  .constel-cta{flex-direction:column;gap:9px}
  .constel-cta .btn{width:auto;justify-content:center}
  .sec{padding:60px 0}
  .sec-head h2{font-size:clamp(24px,7vw,32px)}
  .steps,.temps{gap:12px}
  .step,.temp{padding:22px}
  .pcopy h2{font-size:clamp(24px,7vw,32px)}
  .pcopy p{font-size:15.5px}
  .pcta{padding:56px 0}
  .pcta-in{padding:38px 20px}
  .pcta-in h2{font-size:clamp(24px,7vw,32px)}
  .faq h3{font-size:16.5px}
  .cflow .cn-card{width:100%}
  .cflow-cap{font-size:12px;text-align:center}
  .foot-grid{grid-template-columns:1fr 1fr;gap:28px}
}
@media(max-width:380px){
  .foot-grid{grid-template-columns:1fr}
}



.cn-cta{display:flex;align-items:center;justify-content:center;gap:7px;margin:10px 14px 13px;padding:9px;border-radius:9px;background:var(--text);color:var(--bg);font-size:11.5px;font-weight:700;line-height:1;text-decoration:none;transition:background .2s}
.cn-cta svg{width:13px;height:13px;flex-shrink:0}
.cn-cta:hover{background:var(--text-dim);color:var(--bg)}
.cfunnel .cn-card.result{overflow:hidden}

.brand-badge{display:inline-block;margin-left:8px;padding:3px 7px;font:600 10px/1 var(--mono,ui-monospace,monospace);
  letter-spacing:.06em;text-transform:uppercase;color:var(--muted);background:var(--s2);
  border:1px solid var(--border);border-radius:var(--radius-sm,3px);vertical-align:middle;transform:translateY(-1px)}

.wl-form{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;max-width:520px;margin:0 auto;position:relative}
.wl-input{flex:1;min-width:240px;height:48px;padding:0 16px;font:500 15px/1 inherit;color:var(--text);background:var(--s2);border:1px solid var(--border);border-radius:var(--radius-lg,6px);outline:none;transition:border-color .2s,box-shadow .2s}
.wl-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}
.wl-input::placeholder{color:var(--muted)}
.wl-form.wl-err .wl-input{border-color:var(--chaud);animation:wlShake .35s}
@keyframes wlShake{25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}
.wl-done{padding:14px 20px;font:600 15px/1.4 inherit;color:var(--green);background:color-mix(in srgb,var(--green) 10%,transparent);border:1px solid color-mix(in srgb,var(--green) 30%,transparent);border-radius:var(--radius-lg,6px)}
.wl-note{margin-top:14px;font-size:13px;color:var(--muted);text-align:center}
.fc-mphoto{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
@media(max-width:560px){.wl-input{min-width:100%}.wl-form button{width:auto;justify-content:center}}

/* nav CTA : caché en haut, apparaît au scroll (comme la home) */
.nav-cta{opacity:0;max-width:0;padding-left:0;padding-right:0;margin-left:-8px;border-color:transparent!important;overflow:hidden;white-space:nowrap;pointer-events:none;transition:opacity .3s,max-width .4s cubic-bezier(.2,.7,.2,1),padding .4s cubic-bezier(.2,.7,.2,1),margin .4s cubic-bezier(.2,.7,.2,1)}
.nav.scrolled .nav-cta{opacity:1;max-width:240px;padding-left:14px;padding-right:14px;margin-left:0;pointer-events:auto}

/* Menu burger mobile */
.nav-burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:30px;height:30px;padding:0;background:none;border:none;cursor:pointer;flex:none;opacity:.8;transition:opacity .2s}
.nav-burger:hover{opacity:1}
.nav-burger span{display:block;width:22px;height:1.5px;margin:0 auto;background:var(--text);border-radius:2px;transition:transform .3s cubic-bezier(.2,.7,.2,1),opacity .2s}
.nav.menu-open .nav-burger span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.nav.menu-open .nav-burger span:nth-child(2){opacity:0}
.nav.menu-open .nav-burger span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
.nav-mobile{display:none;flex-direction:column;position:absolute;left:0;right:0;top:100%;background:var(--surface);border-bottom:1px solid var(--border);padding:8px 22px 18px;box-shadow:0 20px 40px -12px rgba(0,0,0,.28)}
.nav.menu-open .nav-mobile{display:flex}
.nav-mobile a{padding:14px 4px;font-size:16px;font-weight:600;color:var(--text);text-decoration:none;border-bottom:1px solid var(--border)}
.nav-mobile a:last-child{border-bottom:none}
.nav-mobile a.active{color:var(--accent)}
@media(max-width:980px){.nav-burger{display:flex}}
@media(min-width:981px){.nav-mobile{display:none!important}}

@media(max-width:560px){.nav-etude{font-size:0!important;gap:0!important;padding:9px 10px!important}.nav-etude svg{width:18px;height:18px;margin:0!important}}
