:root {
  --bg:#05080f;--bg2:#07090f;--surf:rgba(255,255,255,0.032);--surf2:rgba(255,255,255,0.058);
  --brd:rgba(255,255,255,0.07);--brd2:rgba(255,255,255,0.13);
  --txt:#eef2ff;--txt2:rgba(238,242,255,0.52);--txt3:rgba(238,242,255,0.45);
  --blue:#6599c8;--blue2:#e3edfa;--accent:#5b9bd5;--acc-soft:rgba(91,155,213,0.13);
  --grad:linear-gradient(135deg,#6599c8,#e3edfa);
  --green:#4ade80;--amber:#fbbf24;--red:#f87171;
  --nav-h:68px;--r:14px;--font:'DM Sans',sans-serif;--mono:'DM Mono',monospace;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px}
body{font-family:var(--font);background:var(--bg);color:var(--txt);overflow-x:hidden}
::-webkit-scrollbar{width:3px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--blue);border-radius:2px}
a{text-decoration:none;color:inherit}
button{font-family:var(--font)}

#cur{position:fixed;top:0;left:0;z-index:9999;width:9px;height:9px;border-radius:50%;background:var(--blue2);pointer-events:none;transform:translate(-50%,-50%);transition:width .2s,height .2s,background .2s}
#cur-r{position:fixed;top:0;left:0;z-index:9998;width:34px;height:34px;border-radius:50%;border:1px solid rgba(101,153,200,.35);pointer-events:none;transform:translate(-50%,-50%);transition:left .08s,top .08s,width .25s,height .25s,opacity .25s}
body:has(a:hover) #cur,body:has(button:hover) #cur{width:14px;height:14px;background:var(--accent)}
body:has(a:hover) #cur-r,body:has(button:hover) #cur-r{width:48px;height:48px;opacity:.25}

body::before{content:'';position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.35;
background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.035'/%3E%3C/svg%3E")}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:1000;height:var(--nav-h);display:flex;align-items:center;justify-content:space-between;padding:0 48px;background:rgba(5,8,15,.65);backdrop-filter:blur(28px) saturate(160%);border-bottom:1px solid var(--brd);transition:background .3s,border-color .3s}
nav.solid{background:rgba(5,8,15,.92);border-color:var(--brd2)}
.logo{display:flex;align-items:center;cursor:pointer}
.logo svg.logo-full{height:36px;width:auto;flex-shrink:0}
.logo svg.logo-sm{height:28px;width:auto;flex-shrink:0}
.nav-tabs{display:flex;align-items:center;background:var(--surf);border:1px solid var(--brd);border-radius:12px;overflow:hidden}
.nav-tab{background:none;border:none;cursor:pointer;padding:8px 18px;font-size:.82rem;font-weight:500;color:var(--txt2);letter-spacing:.015em;transition:all .2s;white-space:nowrap;position:relative}
.nav-tab::after{content:'';position:absolute;bottom:0;left:12px;right:12px;height:2px;background:var(--grad);border-radius:2px 2px 0 0;transform:scaleX(0);transition:transform .25s}
.nav-tab.active{color:var(--txt);background:var(--surf2)}
.nav-tab.active::after{transform:scaleX(1)}
.nav-tab:hover:not(.active){color:var(--txt);background:rgba(255,255,255,.04)}
.nav-r{display:flex;align-items:center;gap:12px}
.nav-audience{display:flex;border:1px solid var(--brd2);border-radius:9px;overflow:hidden}
.nav-aud-btn{background:none;border:none;cursor:pointer;color:var(--txt2);font-size:.78rem;font-weight:500;padding:6px 14px;font-family:var(--font);transition:all .2s;letter-spacing:.02em}
.nav-aud-btn.active{background:var(--acc-soft);color:var(--blue2);border-radius:7px}
.nav-aud-btn:hover:not(.active){color:var(--txt)}
.btn-cta{background:var(--grad);color:#05080f;font-weight:700;font-size:.8rem;border:none;border-radius:9px;padding:8px 18px;cursor:pointer;font-family:var(--font);letter-spacing:.02em;transition:all .25s;white-space:nowrap}
.btn-cta:hover{transform:translateY(-1px);box-shadow:0 8px 24px rgba(101,153,200,.35)}

/* PAGES */
@keyframes fadeIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
.page{min-height:100vh;padding-top:var(--nav-h);position:relative;z-index:1;animation:fadeIn .45s cubic-bezier(.23,1,.32,1) both}


/* UTILS */
.wrap{max-width:1160px;margin:0 auto;padding:0 48px}
.chip{display:inline-flex;align-items:center;gap:7px;font-size:.72rem;font-weight:500;letter-spacing:.09em;text-transform:uppercase;color:var(--blue);padding:5px 14px;border:1px solid rgba(101,153,200,.22);background:rgba(101,153,200,.07);border-radius:100px}
.chip::before{content:'';width:18px;height:1px;background:var(--blue)}
h2.display{font-size:clamp(2rem,4.5vw,3.4rem);font-weight:300;letter-spacing:-.03em;line-height:1.08}
h2.display strong{font-weight:700}
.body-lg{font-size:1rem;line-height:1.72;color:var(--txt2);font-weight:300;max-width:520px}
.btn-outline{background:var(--surf);border:1px solid var(--brd2);color:var(--txt);font-weight:500;font-size:.88rem;border-radius:11px;padding:11px 24px;cursor:pointer;font-family:var(--font);transition:all .25s;display:inline-flex;align-items:center;gap:8px}
.btn-outline:hover{background:var(--surf2);transform:translateY(-1px)}
.btn-primary{background:var(--grad);color:#05080f;font-weight:700;font-size:.9rem;border:none;border-radius:11px;padding:13px 28px;cursor:pointer;font-family:var(--font);transition:all .25s;display:inline-flex;align-items:center;gap:8px}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 14px 36px rgba(101,153,200,.38)}
.dot-live{width:6px;height:6px;border-radius:50%;background:var(--accent);animation:blink 1.8s infinite}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.35}}
/* ── REVEAL ANIMATIONS ── */
.rv{
  opacity:0;
  transform:translateY(40px);
  transition:opacity .6s cubic-bezier(.16,1,.3,1), transform .6s cubic-bezier(.16,1,.3,1);
  will-change:opacity,transform;
}
.rv.d1{transition-delay:.12s}
.rv.d2{transition-delay:.24s}
.rv.d3{transition-delay:.36s}
.rv.d4{transition-delay:.48s}
.rv.on{opacity:1;transform:translateY(0)}

/* Variantes d'animation spéciales */
.rv-scale{
  opacity:0;transform:scale(.94) translateY(20px);
  transition:opacity .65s cubic-bezier(.16,1,.3,1),transform .65s cubic-bezier(.16,1,.3,1);
}
.rv-scale.on{opacity:1;transform:scale(1) translateY(0)}

.rv-left{
  opacity:0;transform:translateX(-32px);
  transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1);
}
.rv-left.on{opacity:1;transform:translateX(0)}

.rv-right{
  opacity:0;transform:translateX(32px);
  transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1);
}
.rv-right.on{opacity:1;transform:translateX(0)}
.orb-wrap{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.orb{position:absolute;border-radius:50%;filter:blur(1px)}
.orb-a{width:600px;height:600px;top:-180px;left:-180px;background:radial-gradient(circle,rgba(101,153,200,.11) 0%,transparent 70%);animation:o1 9s ease-in-out infinite}
.orb-b{width:500px;height:500px;bottom:-120px;right:-120px;background:radial-gradient(circle,rgba(91,155,213,.09) 0%,transparent 70%);animation:o2 11s ease-in-out infinite}
@keyframes o1{0%,100%{transform:translate(0,0)}50%{transform:translate(50px,30px)}}
@keyframes o2{0%,100%{transform:translate(0,0)}50%{transform:translate(-35px,-50px)}}
.grid-bg{position:absolute;inset:0;z-index:0;pointer-events:none;
background-image:linear-gradient(rgba(101,153,200,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(101,153,200,.035) 1px,transparent 1px);
background-size:60px 60px;mask-image:radial-gradient(ellipse 75% 75% at 50% 40%,black 0%,transparent 100%)}

/* HOME HERO */
.home-hero{min-height:calc(100vh - var(--nav-h));display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:80px 48px;position:relative;overflow:hidden}
.hero-badge{display:inline-flex;align-items:center;gap:8px;padding:6px 16px;border:1px solid rgba(101,153,200,.22);background:rgba(101,153,200,.07);border-radius:100px;font-size:.75rem;font-weight:500;color:var(--blue2);letter-spacing:.07em;text-transform:uppercase;margin-bottom:36px;animation:fadeIn .7s .1s both}
.hero-h1{font-size:clamp(2.8rem,7vw,6.2rem);font-weight:300;line-height:1.04;letter-spacing:-.035em;position:relative;z-index:1;animation:fadeIn .7s .25s both}
.hero-h1 strong{font-weight:700;display:block;background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.hero-h1 .sub{font-size:.38em;font-weight:500;letter-spacing:.1em;display:block;color:var(--txt2);-webkit-text-fill-color:var(--txt2);text-transform:uppercase;margin-top:10px}
.hero-p{max-width:600px;margin:30px auto 0;font-size:1.08rem;line-height:1.72;color:var(--txt2);font-weight:300;position:relative;z-index:1;animation:fadeIn .7s .4s both}
.hero-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:44px;position:relative;z-index:1;animation:fadeIn .7s .55s both}
.hero-scroll{position:absolute;bottom:36px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:7px;z-index:1;animation:fadeIn 1s 1s both}
.hero-scroll span{font-size:.7rem;color:var(--txt3);letter-spacing:.1em;text-transform:uppercase}
.scroll-line{width:1px;height:44px;background:linear-gradient(to bottom,var(--blue),transparent);animation:sp 2.2s ease-in-out infinite}
@keyframes sp{0%,100%{opacity:1;transform:scaleY(1)}50%{opacity:.25;transform:scaleY(.4)}}

/* DASHBOARD */
.dash-wrap{position:relative;z-index:1;margin-top:72px;width:100%;max-width:1040px;animation:fadeIn .7s .7s both}
.dash-frame{background:rgba(255,255,255,.018);border:1px solid var(--brd2);border-radius:22px;overflow:hidden;box-shadow:0 40px 100px rgba(0,0,0,.55),0 0 0 1px rgba(101,153,200,.08) inset;position:relative}
.dash-frame::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(101,153,200,.5),transparent)}
.d-bar{display:flex;align-items:center;gap:7px;padding:12px 18px;border-bottom:1px solid var(--brd);background:rgba(255,255,255,.01)}
.d-dot{width:9px;height:9px;border-radius:50%}
.d-dot.r{background:#ff5f57}.d-dot.y{background:#ffbd2e}.d-dot.g{background:#28c840}
.d-url{flex:1;text-align:center;font-family:var(--mono);font-size:.72rem;color:var(--txt3)}
.d-body{display:grid;grid-template-columns:200px 1fr;min-height:340px}
.d-side{background:rgba(255,255,255,.012);border-right:1px solid var(--brd);padding:16px 12px;display:flex;flex-direction:column;gap:3px}
.d-lbl{font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;color:var(--txt3);padding:10px 10px 5px;font-weight:500}
.d-item{display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:7px;font-size:.78rem;color:var(--txt2)}
.d-item.on{background:var(--acc-soft);color:var(--blue2)}
.d-item svg{width:13px;height:13px;flex-shrink:0;opacity:.7}
.d-main{padding:20px;display:flex;flex-direction:column;gap:16px}
.d-kpi{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.kpi{background:var(--surf);border:1px solid var(--brd);border-radius:10px;padding:14px;position:relative;overflow:hidden}
.kpi::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--grad);opacity:.5}
.kpi-l{font-size:.65rem;color:var(--txt3);letter-spacing:.06em;text-transform:uppercase;margin-bottom:5px}
.kpi-v{font-size:1.35rem;font-weight:600;font-family:var(--mono)}
.kpi-t{font-size:.65rem;color:var(--green);margin-top:3px}
.d-bot{display:grid;grid-template-columns:1fr 270px;gap:10px}
.d-chart{background:var(--surf);border:1px solid var(--brd);border-radius:10px;padding:14px}
.chart-t{font-size:.7rem;color:var(--txt2);margin-bottom:10px;font-weight:500}
.bars{display:flex;align-items:flex-end;gap:5px;height:72px}
.bar{flex:1;border-radius:3px 3px 0 0;background:linear-gradient(to top,#2a5fa5,var(--blue));opacity:.65}
.bar.hi{opacity:1;background:linear-gradient(to top,var(--blue),var(--blue2))}
.d-list{background:var(--surf);border:1px solid var(--brd);border-radius:10px;padding:14px}
.dl-t{font-size:.7rem;color:var(--txt2);margin-bottom:10px;font-weight:500}
.dl-row{display:flex;align-items:center;gap:8px;padding:5px 0;border-bottom:1px solid var(--brd);font-size:.72rem}
.dl-row:last-child{border:none}
.s{width:6px;height:6px;border-radius:50%;flex-shrink:0}
.s.ok{background:var(--green);box-shadow:0 0 5px var(--green)}.s.w{background:var(--amber);box-shadow:0 0 5px var(--amber)}.s.e{background:var(--red);box-shadow:0 0 5px var(--red)}
.dl-n{color:var(--txt2);flex:1}.dl-v{color:var(--txt3);font-family:var(--mono);font-size:.68rem}

/* HOME QUICK NAV */
.stats-strip{border-top:1px solid var(--brd);border-bottom:1px solid var(--brd);background:var(--surf);padding:48px 0}
.stats-row{display:flex;justify-content:space-around;gap:32px;flex-wrap:wrap}
.stat{text-align:center}
.stat-n{font-size:2.2rem;font-weight:700;font-family:var(--mono);background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.stat-l{font-size:.78rem;color:var(--txt2);margin-top:3px}
.pages-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:48px}
.page-card{background:var(--surf);border:1px solid var(--brd);border-radius:var(--r);padding:32px 28px;cursor:pointer;transition:all .3s;position:relative;overflow:hidden;text-align:left}
.page-card:hover{background:var(--surf2);border-color:var(--brd2);transform:translateY(-5px)}
.page-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--grad);transform:scaleX(0);transition:transform .3s}
.page-card:hover::before{transform:scaleX(1)}
.pc-icon{font-size:1.8rem;margin-bottom:16px}
.pc-name{font-size:.95rem;font-weight:600;margin-bottom:6px}
.pc-desc{font-size:.8rem;color:var(--txt2);line-height:1.5}
.pc-arrow{position:absolute;bottom:20px;right:20px;color:var(--txt3);font-size:.9rem;transition:all .25s}
.page-card:hover .pc-arrow{color:var(--blue2);transform:translateX(3px)}

/* PAGE HERO */
.page-hero{padding:60px 0 0;position:relative;overflow:hidden}
.page-hero .wrap{position:relative;z-index:1;padding-bottom:56px}

/* FEATURES GRID */
.feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--brd);border:1px solid var(--brd);border-radius:20px;overflow:hidden;margin:56px 0}
.feat-cell{background:var(--bg2);padding:36px;position:relative;overflow:hidden;
  opacity:0;transform:translateY(36px);
  transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1),background .3s}
.feat-grid.in-view .feat-cell:nth-child(1){transition-delay:.00s}
.feat-grid.in-view .feat-cell:nth-child(2){transition-delay:.10s}
.feat-grid.in-view .feat-cell:nth-child(3){transition-delay:.20s}
.feat-grid.in-view .feat-cell:nth-child(4){transition-delay:.30s}
.feat-grid.in-view .feat-cell:nth-child(5){transition-delay:.40s}
.feat-grid.in-view .feat-cell:nth-child(6){transition-delay:.50s}
.feat-grid.in-view .feat-cell{opacity:1;transform:translateY(0)}

.pages-grid .page-card{opacity:0;transform:translateY(28px) scale(.97);
  transition:opacity .65s cubic-bezier(.16,1,.3,1),transform .65s cubic-bezier(.16,1,.3,1),background .3s,border-color .3s}
.pages-grid.in-view .page-card:nth-child(1){transition-delay:.00s}
.pages-grid.in-view .page-card:nth-child(2){transition-delay:.10s}
.pages-grid.in-view .page-card:nth-child(3){transition-delay:.20s}
.pages-grid.in-view .page-card:nth-child(4){transition-delay:.30s}
.pages-grid.in-view .page-card{opacity:1;transform:translateY(0) scale(1)}

.pricing-grid .pc-card{opacity:0;transform:translateY(32px);
  transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}
.pricing-grid.in-view .pc-card:nth-child(1){transition-delay:.00s}
.pricing-grid.in-view .pc-card:nth-child(2){transition-delay:.12s}
.pricing-grid.in-view .pc-card:nth-child(3){transition-delay:.24s}
.pricing-grid.in-view .pc-card{opacity:1;transform:translateY(0)}

.brands-grid .brand{opacity:0;transform:scale(.9) translateY(16px);
  transition:opacity .5s cubic-bezier(.16,1,.3,1),transform .5s cubic-bezier(.16,1,.3,1),background .25s,border-color .25s}
.brands-grid.in-view .brand:nth-child(1){transition-delay:.00s}.brands-grid.in-view .brand:nth-child(2){transition-delay:.06s}
.brands-grid.in-view .brand:nth-child(3){transition-delay:.12s}.brands-grid.in-view .brand:nth-child(4){transition-delay:.18s}
.brands-grid.in-view .brand:nth-child(5){transition-delay:.24s}.brands-grid.in-view .brand:nth-child(6){transition-delay:.30s}
.brands-grid.in-view .brand:nth-child(7){transition-delay:.36s}.brands-grid.in-view .brand:nth-child(8){transition-delay:.42s}
.brands-grid.in-view .brand:nth-child(9){transition-delay:.48s}
.brands-grid.in-view .brand{opacity:1;transform:scale(1) translateY(0)}

.aud-panel .apc{opacity:0;transform:translateY(28px);
  transition:opacity .65s cubic-bezier(.16,1,.3,1),transform .65s cubic-bezier(.16,1,.3,1),background .3s,border-color .3s}
.aud-panel.active.in-view .apc:nth-child(1){transition-delay:.00s}
.aud-panel.active.in-view .apc:nth-child(2){transition-delay:.10s}
.aud-panel.active.in-view .apc:nth-child(3){transition-delay:.20s}
.aud-panel.active.in-view .apc:nth-child(4){transition-delay:.30s}
.aud-panel.active.in-view .apc{opacity:1;transform:translateY(0)}

.lucy-feats .lf{opacity:0;transform:translateX(-20px);
  transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1),background .25s,border-color .25s}
.lucy-feats.in-view .lf:nth-child(1){transition-delay:.00s}.lucy-feats.in-view .lf:nth-child(2){transition-delay:.10s}
.lucy-feats.in-view .lf:nth-child(3){transition-delay:.20s}.lucy-feats.in-view .lf:nth-child(4){transition-delay:.30s}
.lucy-feats.in-view .lf:nth-child(5){transition-delay:.40s}
.lucy-feats.in-view .lf{opacity:1;transform:translateX(0)}

.rm-item{opacity:0;transform:translateX(-24px);
  transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1)}
.roadmap.in-view .rm-item:nth-child(1){transition-delay:.00s}.roadmap.in-view .rm-item:nth-child(2){transition-delay:.10s}
.roadmap.in-view .rm-item:nth-child(3){transition-delay:.20s}.roadmap.in-view .rm-item:nth-child(4){transition-delay:.30s}
.roadmap.in-view .rm-item:nth-child(5){transition-delay:.40s}.roadmap.in-view .rm-item:nth-child(6){transition-delay:.50s}
.roadmap.in-view .rm-item{opacity:1;transform:translateX(0)}

.stat{opacity:0;transform:translateY(20px);transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1)}
.stats-strip.in-view .stat:nth-child(1){transition-delay:.00s}.stats-strip.in-view .stat:nth-child(2){transition-delay:.08s}
.stats-strip.in-view .stat:nth-child(3){transition-delay:.16s}.stats-strip.in-view .stat:nth-child(4){transition-delay:.24s}
.stats-strip.in-view .stat:nth-child(5){transition-delay:.32s}
.stats-strip.in-view .stat{opacity:1;transform:translateY(0)}
.feat-cell:hover{background:rgba(255,255,255,.035)}
.feat-cell:hover .fglow{opacity:1}
.fglow{position:absolute;inset:0;background:radial-gradient(circle at 30% 30%,rgba(101,153,200,.07) 0%,transparent 65%);opacity:0;transition:opacity .4s}
.f-num{font-family:var(--mono);font-size:.67rem;color:var(--blue);letter-spacing:.1em;margin-bottom:18px}
.f-icon{width:40px;height:40px;color:var(--blue2);margin-bottom:18px}
.feat-cell h3{font-size:1rem;font-weight:600;margin-bottom:9px;position:relative;z-index:1}
.feat-cell p{font-size:.83rem;color:var(--txt2);line-height:1.65;position:relative;z-index:1}
.f-tag{display:inline-block;margin-top:14px;background:rgba(101,153,200,.09);border:1px solid rgba(101,153,200,.15);color:var(--blue2);font-size:.68rem;letter-spacing:.06em;padding:3px 10px;border-radius:100px;font-weight:500;position:relative;z-index:1}

/* AUDIENCE TABS */
.aud-toggle{display:flex;gap:0;border:1px solid var(--brd2);border-radius:14px;overflow:hidden;margin:48px 0;background:var(--surf)}
.aud-tab{flex:1;border:none;background:none;cursor:pointer;padding:28px 36px;text-align:left;transition:all .3s;position:relative;border-right:1px solid var(--brd)}
.aud-tab:last-child{border-right:none}
.aud-tab.active{background:var(--acc-soft)}
.aud-tab::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--grad);transform:scaleX(0);transition:transform .3s}
.aud-tab.active::after{transform:scaleX(1)}
.aud-tab-icon{font-size:1.6rem;margin-bottom:8px}
.aud-tab-name{font-size:.92rem;font-weight:600;color:var(--txt);font-family:var(--font);margin-bottom:4px}
.aud-tab-desc{font-size:.78rem;color:var(--txt2);line-height:1.5}
.aud-panel{display:none;animation:fadeIn .45s both}
.aud-panel.active{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.apc{background:var(--surf);border:1px solid var(--brd);border-radius:var(--r);padding:28px;transition:all .3s;position:relative;overflow:hidden}
.apc:hover{border-color:var(--brd2);background:var(--surf2);transform:translateY(-3px)}
.apc::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--grad)}
.apc-icon{width:40px;height:40px;background:var(--acc-soft);border:1px solid rgba(91,155,213,.18);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;margin-bottom:16px}
.apc h3{font-size:.95rem;font-weight:600;margin-bottom:8px}
.apc p{font-size:.82rem;color:var(--txt2);line-height:1.6}

/* LUCY */
.lucy-split{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center;padding:56px 0 80px}
.lucy-feats{list-style:none;display:flex;flex-direction:column;gap:16px}
.lf{display:flex;gap:14px;align-items:flex-start;padding:18px;border-radius:11px;border:1px solid transparent;transition:all .3s}
.lf:hover{background:var(--surf);border-color:var(--brd)}
.lf-icon{width:34px;height:34px;background:var(--acc-soft);border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--blue2);font-size:1rem}
.lf-title{font-size:.88rem;font-weight:600;margin-bottom:3px}
.lf-desc{font-size:.8rem;color:var(--txt2);line-height:1.5}
.lucy-scr{background:linear-gradient(135deg,rgba(101,153,200,.055),rgba(42,95,165,.03));border:1px solid var(--brd2);border-radius:22px;padding:28px;position:relative;overflow:hidden;box-shadow:0 0 70px rgba(101,153,200,.07)}
.lucy-scr::before{content:'';position:absolute;top:-60px;right:-60px;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,rgba(101,153,200,.11) 0%,transparent 70%)}
.ai-badge{display:inline-flex;align-items:center;gap:7px;background:var(--acc-soft);border:1px solid rgba(91,155,213,.22);border-radius:100px;padding:4px 13px;font-size:.72rem;color:var(--blue2);font-weight:500;letter-spacing:.04em;margin-bottom:18px}
.l-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}
.l-stat{background:rgba(255,255,255,.03);border:1px solid var(--brd);border-radius:9px;padding:12px}
.l-stat-n{font-family:var(--mono);font-size:1.3rem;font-weight:500}
.l-stat-l{font-size:.65rem;color:var(--txt3);text-transform:uppercase;letter-spacing:.06em;margin-top:2px}
.ai-msg{background:rgba(101,153,200,.055);border:1px solid rgba(101,153,200,.13);border-radius:11px;padding:14px;display:flex;gap:10px;align-items:flex-start;margin-top:10px}
.ai-msg-ico{font-size:1rem}
.ai-msg-txt{font-size:.79rem;color:var(--txt2);line-height:1.55}
.ai-msg-txt strong{color:var(--blue2)}
.lucy-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:0 0 56px}
.lm-card{background:var(--surf);border:1px solid var(--brd);border-radius:var(--r);padding:28px;text-align:center;position:relative;overflow:hidden;transition:all .3s}
.lm-card:hover{border-color:var(--brd2);transform:translateY(-4px)}
.lm-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--grad)}
.lm-n{font-size:2.6rem;font-weight:700;font-family:var(--mono);background:var(--grad);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:6px}
.lm-l{font-size:.82rem;color:var(--txt2)}
.chat-demo{background:var(--surf);border:1px solid var(--brd);border-radius:var(--r);padding:28px;margin:24px 0 80px}
.chat-title{font-size:.78rem;font-weight:600;color:var(--txt2);margin-bottom:18px;display:flex;align-items:center;gap:8px}
.chat-msg{display:flex;flex-direction:column;gap:10px}
.msg{max-width:85%;padding:12px 16px;border-radius:12px;font-size:.82rem;line-height:1.55}
.msg.user{background:var(--acc-soft);border:1px solid rgba(91,155,213,.2);color:var(--blue2);align-self:flex-end;border-radius:12px 12px 3px 12px}
.msg.ai{background:rgba(255,255,255,.04);border:1px solid var(--brd);color:var(--txt2);align-self:flex-start;border-radius:12px 12px 12px 3px}
.msg.ai strong{color:var(--txt)}

/* COMPAT */
.compat-split{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center;padding:56px 0 72px}
.proto-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:28px}
.proto{background:var(--surf);border:1px solid var(--brd2);border-radius:100px;padding:7px 17px;font-family:var(--mono);font-size:.78rem;color:var(--txt);font-weight:500;transition:all .25s}
.proto:hover{background:var(--acc-soft);border-color:rgba(91,155,213,.3);color:var(--blue2)}
.proto.hi{background:var(--acc-soft);border-color:rgba(91,155,213,.3);color:var(--blue2)}
.brands-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.brand{background:var(--surf);border:1px solid var(--brd);border-radius:11px;padding:18px 14px;display:flex;flex-direction:column;align-items:center;gap:7px;font-size:.76rem;font-weight:500;color:var(--txt2);transition:all .25s;text-align:center}
.brand:hover{background:var(--surf2);border-color:var(--brd2);color:var(--txt)}
.brand-ico{font-size:1.5rem}
.brand-ok{font-size:.62rem;color:var(--green)}
.brand.featured{background:var(--acc-soft);border-color:rgba(91,155,213,.28);color:var(--blue2)}
.arch{background:var(--surf);border:1px solid var(--brd);border-radius:var(--r);padding:32px;margin-top:0;margin-bottom:48px}
.arch-title{font-size:.78rem;font-weight:600;color:var(--txt2);margin-bottom:24px;text-transform:uppercase;letter-spacing:.06em}
.arch-row{display:flex;align-items:center;gap:12px;margin-bottom:12px;flex-wrap:wrap}
.arch-node{background:rgba(255,255,255,.04);border:1px solid var(--brd2);border-radius:8px;padding:8px 14px;font-size:.78rem;font-weight:500;color:var(--txt);white-space:nowrap}
.arch-node.center{background:var(--acc-soft);border-color:rgba(91,155,213,.3);color:var(--blue2);font-weight:600}
.arch-arrow{color:var(--txt3);font-size:.9rem}
.arch-label{font-size:.68rem;color:var(--txt3);margin-top:4px;width:100%;padding-left:4px}
.roadmap{margin:0 0 80px}
.rm-title{font-size:.78rem;font-weight:600;color:var(--txt2);margin-bottom:20px;text-transform:uppercase;letter-spacing:.06em}
.rm-item{display:flex;gap:20px;align-items:flex-start;padding:20px 0;border-bottom:1px solid var(--brd)}
.rm-item:last-child{border-bottom:none}
.rm-dot-wrap{display:flex;flex-direction:column;align-items:center;width:20px;flex-shrink:0;padding-top:4px}
.rm-dot{width:10px;height:10px;border-radius:50%;border:2px solid var(--brd2);background:var(--bg)}
.rm-dot.done{background:var(--green);border-color:var(--green);box-shadow:0 0 8px var(--green)}
.rm-dot.now{background:var(--blue);border-color:var(--blue);box-shadow:0 0 8px var(--blue);animation:blink 1.5s infinite}
.rm-name{font-size:.88rem;font-weight:600;margin-bottom:3px}
.rm-desc{font-size:.78rem;color:var(--txt2);line-height:1.5}
.rm-badge{display:inline-block;margin-top:6px;font-size:.65rem;padding:2px 9px;border-radius:100px;font-weight:500}
.rm-badge.done{background:rgba(74,222,128,.1);border:1px solid rgba(74,222,128,.2);color:var(--green)}
.rm-badge.now{background:var(--acc-soft);border:1px solid rgba(91,155,213,.22);color:var(--blue2)}
.rm-badge.soon{background:rgba(251,191,36,.07);border:1px solid rgba(251,191,36,.18);color:var(--amber)}
.rm-badge.future{background:rgba(255,255,255,.05);border:1px solid var(--brd);color:var(--txt3)}

/* PRICING */
.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:56px 0}
.pc-card{background:var(--surf);border:1px solid var(--brd);border-radius:18px;padding:32px;position:relative;overflow:hidden;transition:all .3s;display:flex;flex-direction:column}
.pc-card:hover{transform:translateY(-5px);border-color:var(--brd2)}
.pc-card.feat{background:linear-gradient(135deg,rgba(101,153,200,.07),rgba(42,95,165,.05));border-color:rgba(101,153,200,.28)}
.pc-card.feat::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--grad)}
.pc-badge{display:inline-block;background:var(--grad);color:#05080f;font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:3px 11px;border-radius:100px;margin-bottom:18px}
.pc-name{font-size:.88rem;font-weight:500;color:var(--txt2);margin-bottom:6px}
.pc-price{font-size:1.9rem;font-weight:700;font-family:var(--mono);margin-bottom:4px}
.pc-sub{font-size:.78rem;color:var(--txt3);margin-bottom:16px}
.pc-desc{font-size:.8rem;color:var(--txt2);line-height:1.55;padding-bottom:18px;border-bottom:1px solid var(--brd);margin-bottom:18px}
.pc-feats{list-style:none;display:flex;flex-direction:column;gap:9px;flex:1}
.pc-feats li{display:flex;gap:9px;align-items:flex-start;font-size:.8rem;color:var(--txt2)}
.pc-feats li::before{content:'✓';color:var(--blue2);font-weight:700;flex-shrink:0;font-size:.85rem}
.pc-btn{margin-top:24px;width:100%;padding:11px;border-radius:9px;font-family:var(--font);font-size:.85rem;font-weight:600;cursor:pointer;transition:all .25s;border:1px solid var(--brd2);background:var(--surf);color:var(--txt)}
.pc-btn:hover{background:var(--surf2)}
.pc-card.feat .pc-btn{background:var(--grad);color:#05080f;border-color:transparent}
.pc-card.feat .pc-btn:hover{box-shadow:0 8px 24px rgba(101,153,200,.3)}
.faq{margin:0 0 80px}
.faq-title{font-size:.78rem;font-weight:600;color:var(--txt2);margin-bottom:20px;text-transform:uppercase;letter-spacing:.06em}
.faq-item{border-bottom:1px solid var(--brd)}
.faq-q{display:flex;justify-content:space-between;align-items:center;padding:18px 0;font-size:.9rem;font-weight:500;color:var(--txt);transition:color .2s;width:100%;background:none;border:none;font-family:var(--font);cursor:pointer;text-align:left}
.faq-q:hover{color:var(--blue2)}
.faq-chevron{font-size:.7rem;transition:transform .25s;color:var(--txt3)}
.faq-item.open .faq-chevron{transform:rotate(180deg)}
.faq-a{display:none;padding:0 0 16px;font-size:.83rem;color:var(--txt2);line-height:1.65}
.faq-item.open .faq-a{display:block}

/* CONTACT BLOCK */
.contact-block{border-top:1px solid var(--brd);background:var(--surf);padding:80px 0}
.contact-inner{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.cform{display:flex;flex-direction:column;gap:14px}
.crow{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.cgrp{display:flex;flex-direction:column;gap:6px}
.clbl{font-size:.76rem;color:var(--txt2);font-weight:500;letter-spacing:.02em}
.cinp,.csel,.cta{background:var(--surf);border:1px solid var(--brd);border-radius:9px;padding:11px 14px;color:var(--txt);font-family:var(--font);font-size:.85rem;transition:all .2s;outline:none;appearance:none}
.cinp:focus,.csel:focus,.cta:focus{border-color:rgba(101,153,200,.38);background:var(--surf2);box-shadow:0 0 0 3px rgba(101,153,200,.07)}
.cinp::placeholder,.cta::placeholder{color:var(--txt3)}
.cta{resize:vertical;min-height:100px}
.csel option{background:#05080f}
.cinfo{display:flex;flex-direction:column;gap:28px}
.ci-item{display:flex;gap:14px;align-items:flex-start}
.ci-ico{width:38px;height:38px;background:var(--acc-soft);border:1px solid rgba(91,155,213,.14);border-radius:9px;display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}
.ci-title{font-size:.82rem;font-weight:600;margin-bottom:3px}
.ci-val{font-size:.79rem;color:var(--txt2)}
.success-msg{display:none;text-align:center;padding:14px;background:rgba(74,222,128,.07);border:1px solid rgba(74,222,128,.18);border-radius:9px;color:var(--green);font-size:.85rem}

/* FOOTER */
footer{border-top:1px solid var(--brd);padding:48px 0 32px}
.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:40px}
.foot-brand p{font-size:.8rem;color:var(--txt2);line-height:1.6;max-width:240px;margin-top:14px}
.foot-col-t{font-size:.72rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--txt3);margin-bottom:14px}
.foot-links{list-style:none;display:flex;flex-direction:column;gap:9px}
.foot-links a{font-size:.8rem;color:var(--txt2);transition:color .2s;cursor:pointer}
.foot-links a:hover{color:var(--txt)}
.foot-bot{display:flex;justify-content:space-between;align-items:center;padding-top:28px;border-top:1px solid var(--brd);font-size:.74rem;color:var(--txt3)}
.foot-bot a{color:var(--txt3);cursor:pointer}.foot-bot a:hover{color:var(--txt2)}

@media(max-width:900px){
  nav{padding:0 20px}.wrap{padding:0 20px}
  .nav-tabs{display:none}
  .d-body{grid-template-columns:1fr}.d-side{display:none}
  .d-kpi{grid-template-columns:1fr 1fr}.d-bot{grid-template-columns:1fr}
  .pages-grid{grid-template-columns:1fr 1fr}
  .feat-grid{grid-template-columns:1fr}
  .aud-toggle{flex-direction:column}
  .aud-panel.active{grid-template-columns:1fr}
  .lucy-split,.compat-split,.contact-inner{grid-template-columns:1fr}
  .pricing-grid{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr 1fr}
  .crow{grid-template-columns:1fr}
  .lucy-metrics{grid-template-columns:1fr}
  .brands-grid{grid-template-columns:repeat(2,1fr)}
  .home-hero{padding:60px 20px}
  .nav-burger{display:flex}
  .nav-r .nav-audience,.nav-r .btn-cta{display:none}
}

/* Focus rings */
:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:4px}
:focus:not(:focus-visible){outline:none}

/* Skip link */
.skip-link{position:fixed;top:-100%;left:0;z-index:10000;background:var(--blue);color:#05080f;padding:10px 18px;border-radius:0 0 9px 0;font-weight:700;font-size:.85rem;transition:top .2s;text-decoration:none}
.skip-link:focus{top:0}

/* Hamburger + mobile nav */
.nav-burger{display:none;background:none;border:1px solid var(--brd2);border-radius:8px;padding:7px 9px;cursor:pointer;color:var(--txt);align-items:center;justify-content:center;transition:all .2s}
.nav-burger:hover{background:var(--surf2)}
.mobile-nav{position:fixed;top:var(--nav-h);left:0;right:0;bottom:0;z-index:999;background:rgba(5,8,15,.97);backdrop-filter:blur(28px);display:flex;flex-direction:column;padding:20px;gap:4px;animation:fadeIn .2s both}
.mobile-nav[hidden]{display:none!important}
.mn-item{display:block;padding:15px 18px;font-size:.95rem;font-weight:500;color:var(--txt2);border-radius:10px;border:1px solid transparent;transition:all .2s;cursor:pointer;text-decoration:none}
.mn-item:hover,.mn-item.active{background:var(--surf2);border-color:var(--brd2);color:var(--txt)}

/* prefers-reduced-motion */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .rv,.rv-scale,.rv-left,.rv-right{opacity:1;transform:none}
}

/* ════════ DASHBOARD MOCKUP v2 (premium espace client) ════════ */
.dx-frame{background:linear-gradient(160deg,rgba(255,255,255,.022),rgba(255,255,255,.006));border:1px solid var(--brd2);border-radius:20px;overflow:hidden;box-shadow:0 40px 110px rgba(0,0,0,.6),0 0 0 1px rgba(101,153,200,.07) inset;position:relative}
.dx-frame::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(101,153,200,.55),transparent);z-index:3}
.dx-bar{display:flex;align-items:center;gap:8px;padding:11px 16px;border-bottom:1px solid var(--brd);background:rgba(255,255,255,.012)}
.dx-url{flex:1;text-align:center;font-family:var(--mono);font-size:.7rem;color:var(--txt3)}
.dx-live{display:inline-flex;align-items:center;gap:6px;font-size:.66rem;color:var(--blue2);background:var(--acc-soft);border:1px solid rgba(91,155,213,.2);padding:3px 9px;border-radius:100px;font-weight:500}
.dx-body{display:grid;grid-template-columns:184px 1fr;min-height:392px}
.dx-side{background:rgba(255,255,255,.014);border-right:1px solid var(--brd);padding:14px 11px;display:flex;flex-direction:column;gap:2px}
.dx-side-brand{display:flex;align-items:center;gap:8px;padding:4px 8px 14px;font-size:.82rem;font-weight:700;letter-spacing:-.01em}
.dx-side-brand i{width:18px;height:18px;border-radius:5px;background:var(--grad);display:inline-block;flex-shrink:0}
.dx-side-lbl{font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;color:var(--txt3);padding:11px 9px 5px;font-weight:600}
.dx-nav{display:flex;align-items:center;gap:9px;padding:8px 9px;border-radius:8px;font-size:.76rem;color:var(--txt2);cursor:default;transition:background .2s}
.dx-nav svg{width:14px;height:14px;flex-shrink:0;opacity:.62}
.dx-nav.on{background:var(--acc-soft);color:var(--blue2)}
.dx-nav.on svg{opacity:1}
.dx-badge{margin-left:auto;font-family:var(--mono);font-size:.6rem;background:rgba(248,113,113,.16);color:#fca5a5;border:1px solid rgba(248,113,113,.25);border-radius:100px;padding:0 6px;font-weight:600}
.dx-main{padding:18px;display:flex;flex-direction:column;gap:14px;min-width:0}
.dx-top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.dx-hello{font-size:.92rem;font-weight:600}
.dx-sub{font-size:.68rem;color:var(--txt3);margin-top:2px}
.dx-period{font-size:.68rem;color:var(--txt2);background:var(--surf);border:1px solid var(--brd2);border-radius:8px;padding:6px 11px;white-space:nowrap}
.dx-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}
.dx-kpi{background:var(--surf);border:1px solid var(--brd);border-radius:11px;padding:12px;position:relative;overflow:hidden;min-width:0}
.dx-kpi-ico{width:26px;height:26px;border-radius:7px;display:flex;align-items:center;justify-content:center;margin-bottom:9px;background:var(--acc-soft);color:var(--blue2)}
.dx-kpi-ico svg{width:14px;height:14px}
.dx-kpi-ico.g{background:rgba(74,222,128,.12);color:var(--green)}
.dx-kpi-ico.a{background:rgba(251,191,36,.12);color:var(--amber)}
.dx-kpi-l{font-size:.6rem;color:var(--txt3);letter-spacing:.05em;text-transform:uppercase;margin-bottom:3px}
.dx-kpi-v{font-size:1.15rem;font-weight:600;font-family:var(--mono);line-height:1.1;white-space:nowrap}
.dx-kpi-d{font-size:.62rem;margin-top:4px;display:flex;align-items:center;gap:3px}
.dx-kpi-d.up{color:var(--green)}.dx-kpi-d.flat{color:var(--txt3)}
.dx-grid{display:grid;grid-template-columns:1fr 250px;gap:9px}
.dx-card{background:var(--surf);border:1px solid var(--brd);border-radius:11px;padding:13px 14px;min-width:0}
.dx-card-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:11px}
.dx-card-t{font-size:.7rem;color:var(--txt2);font-weight:600}
.dx-card-tag{font-size:.6rem;color:var(--blue2);background:var(--acc-soft);border:1px solid rgba(91,155,213,.18);border-radius:100px;padding:2px 8px;font-family:var(--mono)}
.dx-area{width:100%;height:118px;display:block}
.dx-ring-wrap{display:flex;flex-direction:column;align-items:center;gap:3px;padding:2px 0 12px;border-bottom:1px solid var(--brd);margin-bottom:11px}
.dx-ring{width:96px;height:96px;transform:rotate(-90deg)}
.dx-ring-c{position:relative;width:96px;height:96px}
.dx-ring-v{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.dx-ring-n{font-family:var(--mono);font-size:1.1rem;font-weight:600}
.dx-ring-l{font-size:.56rem;color:var(--txt3);text-transform:uppercase;letter-spacing:.06em}
.dx-site{display:flex;align-items:center;gap:8px;padding:5px 0;font-size:.7rem}
.dx-site .s{width:6px;height:6px;border-radius:50%;flex-shrink:0}
.dx-site .s.ok{background:var(--green);box-shadow:0 0 5px var(--green)}
.dx-site .s.w{background:var(--amber);box-shadow:0 0 5px var(--amber)}
.dx-site .s.e{background:var(--red);box-shadow:0 0 5px var(--red)}
.dx-site-n{color:var(--txt2);flex:1}
.dx-site-v{color:var(--txt3);font-family:var(--mono);font-size:.66rem}
.dx-aff-bars{display:flex;align-items:flex-end;gap:4px;height:62px}
.dx-aff-bars .b{flex:1;border-radius:3px 3px 0 0;background:linear-gradient(to top,rgba(101,153,200,.25),rgba(101,153,200,.6));min-height:3px}
.dx-aff-bars .b.hi{background:linear-gradient(to top,var(--blue),var(--blue2))}
.dx-aff-x{display:flex;justify-content:space-between;margin-top:6px;font-size:.56rem;color:var(--txt3);font-family:var(--mono)}
@media(max-width:900px){
  .dx-body{grid-template-columns:1fr}.dx-side{display:none}
  .dx-kpis{grid-template-columns:1fr 1fr}.dx-grid{grid-template-columns:1fr}
}

/* ── COMPTAGE : bandeau fluides ── */
.fluids{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:8px 0 8px}
.fluid{background:var(--surf);border:1px solid var(--brd);border-radius:14px;padding:22px;display:flex;flex-direction:column;gap:10px;transition:all .3s;position:relative;overflow:hidden}
.fluid:hover{border-color:var(--brd2);transform:translateY(-4px)}
.fluid-ico{width:42px;height:42px;border-radius:11px;display:flex;align-items:center;justify-content:center;background:var(--acc-soft);color:var(--blue2)}
.fluid-ico svg{width:22px;height:22px}
.fluid-n{font-size:.95rem;font-weight:600}
.fluid-d{font-size:.76rem;color:var(--txt2);line-height:1.5}
.process{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--brd);border:1px solid var(--brd);border-radius:18px;overflow:hidden;margin:48px 0 18px}
.proc-step{background:var(--bg2);padding:30px 26px;position:relative}
.proc-num{font-family:var(--mono);font-size:.72rem;color:var(--blue);letter-spacing:.1em;margin-bottom:14px}
.proc-t{font-size:.95rem;font-weight:600;margin-bottom:8px}
.proc-d{font-size:.8rem;color:var(--txt2);line-height:1.55}
.proc-note{font-size:.78rem;color:var(--txt3);margin:0 0 64px;text-align:center}
@media(max-width:900px){.fluids,.process{grid-template-columns:1fr 1fr}}

/* ── Dashboard v2.1 : KPI horizontaux + encadrés affluence (override) ── */
.dx-kpi{display:flex;align-items:center;gap:10px}
.dx-kpi-ico{margin-bottom:0;flex-shrink:0}
.dx-kpi-b{min-width:0;flex:1}
.dx-kpi-v{white-space:nowrap}
.dx-aff-hi{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}
.dx-aff-box{border-radius:9px;padding:9px 12px;border:1px solid var(--brd)}
.dx-aff-box.pic{background:rgba(74,222,128,.06);border-color:rgba(74,222,128,.2)}
.dx-aff-box.act{background:var(--acc-soft);border-color:rgba(91,155,213,.22)}
.dx-aff-k{font-size:.58rem;letter-spacing:.08em;text-transform:uppercase;color:var(--txt3);margin-bottom:3px}
.dx-aff-vv{font-size:.74rem;color:var(--txt);font-weight:500}
@media(max-width:900px){.dx-aff-hi{grid-template-columns:1fr}}

/* ════════ FIX MOBILE : menu hamburger + empilement des grilles ════════ */
/* (placé en fin de feuille pour gagner sur les règles précédentes) */
@media(max-width:900px){
  .nav-tabs{display:none}
  .nav-burger{display:flex!important}        /* le bouton menu DOIT être visible sur mobile */
  .nav-r{gap:0}
  .nav-r .btn-cta{display:none}
  /* tout ce qui est en grille multi-colonnes repasse en 1 colonne (override des styles inline) */
  .pages-grid,.pricing-grid{grid-template-columns:1fr!important}
  .fluids,.process{grid-template-columns:1fr 1fr!important}
  .feat-grid{grid-template-columns:1fr!important}
  .dash-wrap{margin-top:48px}
}
@media(max-width:560px){
  .fluids,.process{grid-template-columns:1fr!important}
  .dx-kpis{grid-template-columns:1fr 1fr!important}
  .home-hero{padding:56px 18px}
  .hero-h1{font-size:2.5rem}
}
/* menu déroulant mobile : onglets bien lisibles */
.mobile-nav{padding:16px}
.mn-item{font-size:1.02rem;padding:16px 18px}
