
@font-face{font-family:'Outfit';font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/media/d8a316f7cbfa.woff2) format('woff2')}
@font-face{font-family:'DM Mono';font-style:normal;font-display:swap;font-weight:400;src:url(/assets/media/1a0430d40513.woff2) format('woff2')}
@font-face{font-family:'DM Mono';font-style:normal;font-display:swap;font-weight:500;src:url(/assets/media/f425382cda70.woff2) format('woff2')}
@font-face{font-family:'Fraunces';font-style:italic;font-display:swap;font-weight:100 900;font-stretch:100%;src:url(/assets/media/8fb2c545d1c1.woff2) format('woff2')}


:root{
  --red:#A3001E; --red-dark:#5C0012; --brick:#E8603C; --ink:#0A0A0A; --paper:#F4EFE6; --cream:#F4EFE6; --white:#FFFFFF;
  --muted:#5e554c; --line:#ddd4c6; --soft:#ebe3d6;
  --radius:18px; --radius-sm:10px;
  --shadow:0 1px 2px rgba(10,10,10,.04),0 12px 32px rgba(10,10,10,.08);
  --ease:cubic-bezier(.22,1,.36,1);
  --max:1200px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
html{overflow-x:hidden}
body{overflow-x:clip}
body{font-family:'Outfit',system-ui,sans-serif;background:var(--paper);color:var(--ink);line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}
.mono{font-family:'DM Mono',monospace;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:'DM Mono',monospace;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--red);margin-bottom:14px}
.eyebrow::before{content:"";width:22px;height:3px;background:var(--brick);transform-origin:left;transform:scaleX(0);transition:transform .8s var(--ease) .2s}
.in .eyebrow::before,.eyebrow.in::before,.hero .eyebrow::before{transform:scaleX(1)}
h1,h2,h3{font-weight:700;letter-spacing:-.02em;line-height:1.1}
h2{font-size:clamp(1.8rem,3.6vw,2.8rem);margin-bottom:14px}
.hl{position:relative;white-space:nowrap}
.hl::after{content:"";position:absolute;left:0;right:0;bottom:.06em;height:.28em;background:var(--brick);opacity:.35;z-index:-1;transform:scaleX(0);transform-origin:left;transition:transform 1s var(--ease) .35s}
.in .hl::after{transform:scaleX(1)}
.lead{color:var(--muted);font-size:1.08rem;max-width:680px}
section{padding:96px 0;position:relative}

/* ===== BOUTONS ===== */
.btn{position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:8px;padding:13px 22px;border-radius:999px;font-weight:600;font-size:.95rem;transition:transform .3s var(--ease),background .25s,color .25s,box-shadow .3s;border:1.5px solid transparent;cursor:pointer;font-family:inherit}
.btn:hover{transform:translateY(-2px)}
.btn .arr{display:inline-block;transition:transform .3s var(--ease)}
.btn:hover .arr{transform:translateX(4px)}
.btn-red{background:var(--red);color:#fff;box-shadow:0 8px 24px rgba(163,0,30,.25)}
.btn-red::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.45),transparent);transform:skewX(-20deg);animation:shine 4s ease-in-out infinite}
.btn-red:hover{background:var(--red-dark);box-shadow:0 12px 32px rgba(163,0,30,.35)}
@keyframes shine{0%,70%{left:-60%}100%{left:130%}}
.btn-ghost{border-color:var(--ink);color:var(--ink);background:transparent}
.btn-ghost:hover{background:var(--ink);color:#fff}
.tag{display:inline-block;align-self:flex-start;font-family:'DM Mono',monospace;font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;padding:4px 9px;border-radius:999px;background:var(--soft);color:var(--muted)}
.tag-red{background:rgba(163,0,30,.1);color:var(--red)}

/* ===== RÉVÉLATION AU SCROLL ===== */
.rv{opacity:0;transform:translateY(34px);transition:opacity .9s var(--ease),transform .9s var(--ease);transition-delay:var(--d,0s)}
.rv.in{opacity:1;transform:none}
.rv-l{transform:translateX(-40px)}
.rv-r{transform:translateX(40px)}
.rv-s{transform:scale(.92)}

/* ===== BARRE DE PROGRESSION ===== */
.progress{position:fixed;top:0;left:0;height:3px;width:100%;background:var(--brick);transform-origin:left;transform:scaleX(0);z-index:100}

/* ===== CARTES SPOTLIGHT ===== */
.spot{position:relative;overflow:hidden}
.spot::before{content:"";position:absolute;inset:0;background:radial-gradient(320px circle at var(--x,50%) var(--y,50%),rgba(163,0,30,.10),transparent 60%);opacity:0;transition:opacity .3s;pointer-events:none}
.spot:hover::before{opacity:1}

/* ===== HEADER / MEGA MENU ===== */
header{position:sticky;top:0;z-index:50;background:rgba(244,239,230,.86);backdrop-filter:blur(12px);border-bottom:1px solid transparent;transition:border-color .3s,background .3s;animation:drop .9s var(--ease) backwards}
header.scrolled{border-color:var(--line);background:rgba(244,239,230,.95)}
@keyframes drop{from{transform:translateY(-100%)}to{transform:none}}
.nav{display:flex;align-items:center;justify-content:space-between;height:72px;gap:20px}
.logo{font-weight:800;font-size:1.7rem;letter-spacing:-.04em;color:var(--red);display:inline-block;transition:transform .4s var(--ease)}
.logo:hover{transform:rotate(-4deg) scale(1.05)}
.menu{display:flex;align-items:center;gap:4px;list-style:none}
.menu>li{position:relative}
section[id],.pole-row[id]{scroll-margin-top:72px}
.menu>li>a,.menu>li>button{position:relative;display:flex;align-items:center;gap:6px;padding:10px 14px;border-radius:999px;font-weight:500;font-size:.95rem;background:none;border:none;cursor:pointer;font-family:inherit;color:var(--ink);transition:background .2s}
.menu>li>a:hover,.menu>li>button:hover,.menu>li.open>button{background:var(--soft)}
.menu .chev{font-size:.6rem;transition:transform .3s var(--ease)}
.menu li.open .chev{transform:rotate(180deg)}
.mega{position:absolute;top:calc(100% + 10px);left:0;transform:translateX(var(--sx,0px)) translateY(12px) scale(.98);transform-origin:top left;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 24px 60px rgba(10,10,10,.14);padding:24px;opacity:0;visibility:hidden;transition:opacity .25s,transform .35s var(--ease),visibility .25s;display:grid;gap:24px}
.mega::before{content:"";position:absolute;left:0;right:0;top:-14px;height:14px}
.menu li.open .mega{opacity:1;visibility:visible;transform:translateX(var(--sx,0px)) translateY(0) scale(1)}
.mega.cols-3{grid-template-columns:repeat(3,240px)}
.mega.cols-2{grid-template-columns:repeat(2,240px)}
.mega .mega-h{font-family:'DM Mono',monospace;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:10px;font-weight:500}
.mega a{display:block;padding:9px 10px;border-radius:var(--radius-sm);transition:background .15s,transform .25s var(--ease)}
.mega a:hover{background:var(--paper);transform:translateX(4px)}
.mega a strong{display:block;font-size:.92rem;font-weight:600}
.mega a span{display:block;font-size:.8rem;color:var(--muted);line-height:1.35}
.mega-foot{grid-column:1/-1;border-top:1px solid var(--line);padding-top:14px;display:flex;justify-content:space-between;align-items:center;font-size:.85rem;color:var(--muted)}
.mega-foot a{display:inline;padding:0;color:var(--red);font-weight:600}
.mega-foot a:hover{background:none;transform:none;text-decoration:underline}
.nav-cta{display:flex;align-items:center;gap:10px}
.badge-new{font-family:'DM Mono',monospace;font-size:.58rem;background:var(--red);color:#fff;padding:2px 6px;border-radius:999px;text-transform:uppercase;letter-spacing:.05em;animation:blink 2.4s infinite}
.menu>li>a,.menu>li>button{white-space:nowrap}
.burger{display:none;background:none;border:none;font-size:1.6rem;cursor:pointer}

/* ===== HERO ===== */
.hero{padding:64px 0 80px;overflow:hidden}
.blob{position:absolute;border-radius:50%;opacity:.55;pointer-events:none;z-index:-1;will-change:transform}
.b1{width:560px;height:560px;background:radial-gradient(circle,rgba(163,0,30,.32),transparent 68%);top:-120px;right:8%;animation:float1 14s ease-in-out infinite}
.b2{width:460px;height:460px;background:radial-gradient(circle,rgba(232,96,60,.30),transparent 68%);bottom:-80px;left:-60px;animation:float2 18s ease-in-out infinite}
.b3{width:320px;height:320px;background:radial-gradient(circle,rgba(232,96,60,.2),transparent 68%);top:40%;left:45%;animation:float1 20s ease-in-out infinite reverse}
@keyframes float1{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-50px,40px) scale(1.12)}}
@keyframes float2{0%,100%{transform:translate(0,0)}50%{transform:translate(60px,-40px) scale(1.08)}}
.grid-bg{position:absolute;inset:0;z-index:-2;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:56px 56px;mask-image:radial-gradient(ellipse at 30% 30%,#000 10%,transparent 65%);opacity:.5}
.hero-grid{display:grid;grid-template-columns:1.25fr .9fr;gap:48px;align-items:start}
.hero h1{font-size:clamp(2.4rem,5.2vw,4.2rem);margin-bottom:22px}
.line{display:block;overflow:hidden;padding-bottom:.06em}
.line>span{display:inline-block;transform:translateY(110%);animation:up 1s var(--ease) forwards;animation-delay:var(--d)}
@keyframes up{to{transform:none}}
.rot{display:inline-grid;vertical-align:bottom;color:var(--red)}
.rot b{grid-area:1/1;font-weight:inherit;opacity:0;transform:translateY(60%) rotateX(-70deg);transition:opacity .5s,transform .7s var(--ease);transform-origin:50% 100%}
.rot b.on{opacity:1;transform:none}
.rot b.out{opacity:0;transform:translateY(-60%) rotateX(70deg)}
.fade-in{opacity:0;transform:translateY(16px);animation:fin .9s var(--ease) forwards;animation-delay:var(--d)}
@keyframes fin{to{opacity:1;transform:none}}
.hero p.intro{font-size:1.1rem;color:var(--ink);font-weight:700;max-width:620px;margin-bottom:28px}
.poles{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:26px}
.pole{background:var(--white);border:1.5px solid var(--line);border-radius:var(--radius);padding:18px;transition:transform .35s var(--ease),border-color .25s,box-shadow .35s;display:flex;flex-direction:column;gap:6px}
.pole:hover{border-color:var(--red);transform:translateY(-5px);box-shadow:var(--shadow)}
.pole .ico{font-size:1.6rem;display:inline-block;transition:transform .5s var(--ease)}
.pole:hover .ico{transform:scale(1.25) rotate(-8deg)}
.pole .pole-t{font-size:1.08rem;font-weight:700;letter-spacing:-.02em;line-height:1.1;color:var(--ink);margin:0}
.pole p{font-size:.8rem;color:var(--muted);line-height:1.4}
.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px}
.hero-actions .alt{font-size:.9rem;color:var(--muted)}
.hero-actions .alt a{color:var(--ink);font-weight:600;text-decoration:underline;text-underline-offset:3px}

.hero-side{display:flex;flex-direction:column;gap:16px}
.video{position:relative;aspect-ratio:4/5;border-radius:var(--radius);overflow:hidden;background:linear-gradient(160deg,#1c1c1c,#0A0A0A);display:flex;align-items:flex-end;padding:22px;color:#fff;transition:transform .5s var(--ease)}
.video::before{content:"";position:absolute;inset:-50%;background:conic-gradient(from 0deg,transparent 0 70%,rgba(163,0,30,.35) 80%,transparent 90%);animation:spin 8s linear infinite}
.video::after{content:"";position:absolute;inset:2px;border-radius:calc(var(--radius) - 2px);background:linear-gradient(160deg,#1c1c1c,#0A0A0A)}
.video>*{position:relative;z-index:1}
@keyframes spin{to{transform:rotate(360deg)}}
.video .play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:76px;height:76px;border-radius:50%;background:var(--red);display:grid;place-items:center;font-size:1.5rem;cursor:pointer;transition:transform .3s var(--ease)}
.video .play:hover{transform:translate(-50%,-50%) scale(1.1)}
.video .play::before,.video .play::after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid var(--red);animation:ring 2.4s ease-out infinite}
.video .play::after{animation-delay:1.2s}
@keyframes ring{from{transform:scale(1);opacity:.8}to{transform:scale(2.2);opacity:0}}
.video .who{font-size:.9rem}
.video .who strong{display:block;font-size:1.05rem}
.video .logo-w{position:absolute;top:20px;left:22px;font-weight:800;font-size:1.3rem;color:#fff;letter-spacing:-.04em}
.assistant{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:18px}
.assistant .head{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.assistant .av{position:relative;width:36px;height:36px;border-radius:50%;background:var(--red);color:#fff;display:grid;place-items:center;font-weight:800}
.assistant .av::after{content:"";position:absolute;right:-1px;bottom:-1px;width:10px;height:10px;border-radius:50%;background:#1fb35c;border:2px solid #fff;animation:blink 2s infinite}
@keyframes blink{50%{opacity:.3}}
.assistant .head p{font-size:.85rem;color:var(--muted);line-height:1.3}
.assistant .head p strong{color:var(--ink);display:block}
.assistant ul{list-style:none;display:flex;flex-direction:column;gap:8px}
.assistant li{opacity:0;transform:translateX(20px);animation:fin2 .7s var(--ease) forwards;animation-delay:var(--d)}
@keyframes fin2{to{opacity:1;transform:none}}
.assistant li a{display:flex;justify-content:space-between;padding:10px 14px;border-radius:var(--radius-sm);background:var(--paper);font-size:.88rem;font-weight:500;transition:background .15s,color .15s,padding .3s var(--ease)}
.assistant li a:hover{background:var(--soft);color:var(--red);padding-left:20px}

/* ===== BANDEAUX DÉFILANTS ===== */
.logos{padding:46px 0 34px;background:var(--white);border-bottom:1px solid var(--line);border-top:1px solid var(--line)}
.logos p{text-align:center;margin-bottom:18px;color:var(--muted)}
.marquee{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.track{display:flex;gap:56px;width:max-content;animation:scroll 38s linear infinite}
.track.rev{animation-direction:reverse}
.marquee:hover .track{animation-play-state:paused}
.logos .track span{font-weight:700;font-size:1.15rem;color:#9a958d;white-space:nowrap;letter-spacing:-.01em;transition:color .2s}
.logos .track span:hover{color:var(--red)}
@keyframes scroll{to{transform:translateX(-50%)}}

/* ===== MANIFESTE ===== */
.manifesto{padding:110px 0 120px;text-align:center}
.mf-it{display:block;font-family:'Fraunces',Georgia,serif;font-style:italic;font-weight:300;font-variation-settings:"opsz" 144,"SOFT" 60,"WONK" 1;font-size:clamp(1.8rem,3.6vw,2.8rem);color:var(--brick);line-height:1;margin-bottom:18px}
.mf{font-weight:900;letter-spacing:-.045em;line-height:1.02;font-size:clamp(2rem,5.2vw,4.4rem);max-width:1050px;margin:0 auto}
.mf .w{display:inline-block;transition:transform .5s var(--ease)}
.mf .w>i{display:inline-block;font-style:normal;opacity:0;filter:blur(14px);transform:translate(var(--tx,0),var(--ty,60px)) rotate(var(--tr,0)) scale(1.5);transition:color .35s ease}
.mf.on .w>i{animation:wordIn .95s cubic-bezier(.34,1.56,.64,1) forwards;animation-delay:var(--d,0s)}
@keyframes wordIn{60%{filter:blur(0)}to{opacity:1;filter:blur(0);transform:none}}
.mf .sv.lit>i{color:var(--brick)}
.blk{position:relative;display:inline-block;padding:0 .14em .04em;margin:0 .04em}
.blk::before{content:"";position:absolute;inset:.1em 0 0;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .75s var(--ease) var(--bd,1.2s)}
.mf.on .blk::before{transform:scaleX(1)}
.blk .w{position:relative;z-index:1}
.blk .w>i{transition:color .3s ease calc(var(--bd,1.2s) + .35s)}
.mf.on .blk .w>i{color:var(--cream)}
.mf-it{opacity:0;transform:translateY(14px);letter-spacing:.08em;transition:opacity .9s var(--ease),transform .9s var(--ease),letter-spacing 1.2s var(--ease)}
.manifesto.on .mf-it{opacity:1;transform:none;letter-spacing:0}
.mf-rule{width:72px;height:5px;background:var(--brick);margin:34px auto 0;transform:scaleX(0);transition:transform .8s var(--ease)}
.mf-rule.on{transform:scaleX(1);transition-delay:var(--rd,1.4s)}

/* ===== CHIFFRES ===== */
.figures{padding:64px 0}
.fig-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.fig{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:26px;text-align:left}
.fig strong{display:block;font-size:clamp(2.4rem,4vw,3.4rem);font-weight:800;color:var(--red);letter-spacing:-.04em;line-height:1}
.fig>span{font-size:.9rem;color:var(--muted)}

/* ===== PÔLES ===== */
.pole-sec{padding:96px 0 40px}
.pole-row{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:start;padding:56px 0;border-top:1px solid var(--line)}
.pole-row:first-of-type{border-top:none}
.pole-head{position:sticky;top:110px}
.pole-num{font-family:'DM Mono',monospace;font-size:.85rem;color:var(--brick);display:block;margin-bottom:10px}
.pole-head h3{font-size:clamp(2rem,4vw,3.2rem);margin-bottom:14px;display:flex;align-items:center;gap:14px}
.pole-head h3 .e{display:inline-block;animation:bob 3s ease-in-out infinite}
@keyframes bob{50%{transform:translateY(-6px) rotate(6deg)}}
.pole-head p{color:var(--muted);margin-bottom:22px;max-width:420px}
.svc-list{display:flex;flex-direction:column;gap:14px}
.svc{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:24px 26px;display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;transition:transform .4s var(--ease),border-color .25s,box-shadow .4s}
.svc:hover{transform:translateX(8px);border-color:var(--red);box-shadow:var(--shadow)}
.svc .ico{width:54px;height:54px;border-radius:14px;background:var(--paper);display:grid;place-items:center;font-size:1.6rem;transition:transform .5s var(--ease),background .3s}
.svc:hover .ico{transform:rotate(-10deg) scale(1.1);background:rgba(163,0,30,.1)}
.svc h4{font-size:1.1rem;margin-bottom:4px}
.svc p{font-size:.88rem;color:var(--muted)}
.svc .go{width:40px;height:40px;border-radius:50%;border:1.5px solid var(--line);display:grid;place-items:center;transition:all .35s var(--ease)}
.svc:hover .go{background:var(--red);border-color:var(--red);color:#fff;transform:rotate(-45deg)}

/* ===== PROFILS ===== */
.profils{background:var(--white)}
.tabs{position:relative;display:inline-flex;flex-wrap:wrap;gap:6px;margin:30px 0 26px;background:var(--paper);padding:6px;border-radius:999px}
.tab{position:relative;z-index:1;padding:11px 18px;border-radius:999px;border:none;background:none;font-family:inherit;font-size:.92rem;font-weight:500;cursor:pointer;transition:color .3s}
.tab.active{color:#fff}
.pill{position:absolute;top:6px;left:6px;height:calc(100% - 12px);background:var(--ink);border-radius:999px;transition:transform .5s var(--ease),width .5s var(--ease);z-index:0}
.panel{display:none}
.panel.active{display:block;animation:panelIn .6s var(--ease)}
@keyframes panelIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
.panel>p{font-size:1.02rem;margin-bottom:18px;max-width:700px}
.cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:22px}
.mini{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:22px;display:flex;flex-direction:column;gap:8px;transition:transform .35s var(--ease),border-color .25s,background .25s}
.mini:hover{border-color:var(--red);transform:translateY(-4px);background:var(--white)}
.panel.active .mini{animation:panelIn .7s var(--ease) both}
.panel.active .mini:nth-child(2){animation-delay:.08s}
.panel.active .mini:nth-child(3){animation-delay:.16s}
.mini .ico{font-size:1.5rem}
.mini h3{font-size:1.05rem}
.mini p{font-size:.86rem;color:var(--muted)}
.mini .meta{margin-top:auto;padding-top:10px;font-size:.85rem}
.mini .meta a{color:var(--red);font-weight:600}
.panel-actions{display:flex;flex-wrap:wrap;gap:12px}

/* ===== IA ===== */
.ia{background:var(--ink);color:#fff;overflow:hidden}
.ia .lead{color:#c9bfb2}
.ia .eyebrow,.indus .eyebrow{color:var(--brick)}
.ia h2 .hl::after{background:var(--brick)}
.ia .glow{position:absolute;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(92,0,18,.75),transparent 65%);top:-200px;right:-150px;animation:float1 16s ease-in-out infinite;pointer-events:none}
.ia-top{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.chat{background:#141414;border:1px solid #2a2a2a;border-radius:var(--radius);padding:22px;min-height:290px;display:flex;flex-direction:column;gap:14px}
.chat .bar{display:flex;gap:6px;margin-bottom:4px}
.chat .bar i{width:10px;height:10px;border-radius:50%;background:#333}
.chat .q{align-self:flex-end;background:var(--red);color:var(--cream);padding:12px 16px;border-radius:16px 16px 4px 16px;font-size:.92rem;max-width:88%;min-height:44px}
.chat .q .caret{display:inline-block;width:2px;height:1em;background:#fff;vertical-align:-2px;margin-left:2px;animation:blink 1s step-end infinite}
.chat .a{align-self:flex-start;background:#1f1f1f;padding:14px 16px;border-radius:16px 16px 16px 4px;font-size:.9rem;max-width:92%;color:#ddd;opacity:0;transform:translateY(10px);transition:all .6s var(--ease)}
.chat .a.show{opacity:1;transform:none}
.dots{display:inline-flex;gap:4px}
.dots i{width:7px;height:7px;border-radius:50%;background:#888;animation:dot 1s infinite}
.dots i:nth-child(2){animation-delay:.15s}.dots i:nth-child(3){animation-delay:.3s}
@keyframes dot{50%{transform:translateY(-5px);opacity:.4}}
.verdicts{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto}
.verdicts span{font-family:'DM Mono',monospace;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;padding:6px 12px;border-radius:999px;border:1px solid #333;color:#777;transition:all .4s var(--ease)}
.verdicts span.on{color:var(--cream);border-color:var(--brick);background:rgba(232,96,60,.2);transform:scale(1.06)}
.ia-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:48px 0 26px}
.ia-card{border:1px solid #2a2a2a;border-radius:var(--radius);padding:24px;background:#141414;transition:transform .4s var(--ease),border-color .25s;display:flex;flex-direction:column;gap:10px}
.ia-card:hover{border-color:var(--brick);transform:translateY(-6px)}
.ia-card .ico{font-size:1.8rem;display:inline-block;transition:transform .5s var(--ease)}
.ia-card:hover .ico{transform:scale(1.2) rotate(-10deg)}
.ia-card h3{font-size:1.1rem}
.ia-card p{font-size:.88rem;color:#a9a49c}
.ia-card.spot::before{background:radial-gradient(320px circle at var(--x,50%) var(--y,50%),rgba(232,96,60,.16),transparent 60%)}

/* ===== RÉSULTATS ===== */
.cases{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:34px}
.case{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;transition:transform .4s var(--ease),box-shadow .4s}
.case:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.case .visual{position:relative;overflow:hidden;aspect-ratio:16/8;background:var(--red);display:grid;place-items:center;color:#fff;font-weight:800;font-size:1.6rem;letter-spacing:-.02em;text-align:center;padding:20px}
.case .visual.dark{background:var(--ink)}
.case .visual{color:var(--cream)}
.case .visual span{transition:transform .6s var(--ease)}
.case:hover .visual span{transform:scale(1.08)}
.case .visual::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(45deg,rgba(255,255,255,.05) 0 2px,transparent 2px 14px);transition:transform 1.2s var(--ease)}
.case:hover .visual::after{transform:translateX(30px)}
.case .body{padding:24px;display:flex;flex-direction:column;gap:12px;flex:1}
.case h3{font-size:1.25rem}
.stats{display:flex;gap:24px;flex-wrap:wrap;list-style:none}
.stats li{font-size:.85rem;color:var(--muted)}
.stats strong{display:block;font-size:1.6rem;color:var(--red);font-weight:700;line-height:1.1}
.case .body>a{margin-top:auto;color:var(--red);font-weight:600}
.others{margin-top:22px;color:var(--muted);font-size:.92rem}

/* ===== RAPPEL ===== */
.rappel{background:var(--red);color:var(--cream);overflow:hidden}
.rappel::before{content:"regard";position:absolute;right:-40px;bottom:-60px;font-weight:900;font-size:clamp(8rem,18vw,16rem);letter-spacing:-.06em;color:rgba(244,239,230,.07);line-height:1;pointer-events:none;animation:drift 12s ease-in-out infinite}
@keyframes drift{50%{transform:translateX(-40px)}}
.rappel-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:start;position:relative}
.rappel h2{color:var(--cream)}
.rappel .lead{color:rgba(244,239,230,.9)}
.rappel ul.pts{list-style:none;margin-top:24px;display:flex;flex-direction:column;gap:12px}
.rappel ul.pts li{display:flex;gap:10px;font-size:.95rem}
form.f{background:var(--white);color:var(--ink);border-radius:var(--radius);padding:28px;display:grid;grid-template-columns:1fr 1fr;gap:14px;box-shadow:0 30px 60px rgba(0,0,0,.18)}
.f label{display:block;font-size:.82rem;font-weight:600}
.f label i{font-style:normal;font-weight:400;color:var(--muted)}
.f input,.f select,.f textarea{display:block;width:100%;margin-top:6px;font-family:inherit;font-size:.95rem;padding:12px 14px;border:1.5px solid var(--line);border-radius:var(--radius-sm);background:var(--paper);outline:none;transition:border-color .2s,box-shadow .2s,background .2s}
.f input:focus,.f select:focus,.f textarea:focus{border-color:var(--red);background:#fff;box-shadow:0 0 0 4px rgba(163,0,30,.12)}
.f .full{grid-column:1/-1}
.f textarea{min-height:90px;resize:vertical}
.f .rgpd{font-size:.75rem;color:var(--muted);font-weight:400;line-height:1.4}

/* ===== MÉTHODE ===== */
.steps{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:34px 0 40px;list-style:none;counter-reset:s}
.steps::before{content:"";position:absolute;top:40px;left:8%;right:8%;height:2px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform 1.6s var(--ease) .3s;z-index:0}
.steps.in::before{transform:scaleX(1)}
.steps li{position:relative;z-index:1;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:24px}
.steps li::before{counter-increment:s;content:counter(s);position:absolute;top:22px;right:22px;width:36px;height:36px;border-radius:50%;background:var(--red);color:#fff;display:grid;place-items:center;font-weight:700}
.steps b{display:block;font-size:1.1rem;margin-bottom:8px;padding-right:44px}
.steps p{font-size:.9rem;color:var(--muted)}
.models{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:30px}
.models h3{font-size:1.3rem;margin-bottom:20px}
.models-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.models-grid b{display:block;margin-bottom:6px}
.models-grid p{font-size:.88rem;color:var(--muted)}

/* ===== AVIS ===== */
.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:30px}
.review{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:24px;display:flex;flex-direction:column;gap:14px;transition:transform .4s var(--ease)}
.review:hover{transform:translateY(-4px) rotate(-.5deg)}
.review .stars{color:var(--red);letter-spacing:2px}
.review p{font-size:.95rem}
.review .who{display:flex;align-items:center;gap:10px;margin-top:auto;font-size:.88rem}
.review .who span{width:36px;height:36px;border-radius:50%;background:var(--soft);display:grid;place-items:center;font-weight:700}

/* ===== FONDATEUR ===== */
.founder{background:var(--white)}
.founder-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:center}
.portrait{position:relative;aspect-ratio:4/5;border-radius:var(--radius);background:linear-gradient(160deg,#2a2a2a,#0A0A0A);display:grid;place-items:center;color:#777;font-family:'DM Mono',monospace;font-size:.8rem;overflow:hidden}
.portrait::after{content:"";position:absolute;inset:0;border:2px solid var(--red);border-radius:var(--radius);transform:translate(14px,14px);z-index:-1}
.portrait-wrap{position:relative}
.portrait-wrap::after{content:"";position:absolute;inset:0;border:2px solid var(--red);border-radius:var(--radius);transform:translate(16px,16px);z-index:-1;transition:transform .6s var(--ease)}
.portrait-wrap:hover::after{transform:translate(8px,8px)}
.founder h2{margin-bottom:6px}
.founder .role{color:var(--muted);margin-bottom:20px}
.founder p{margin-bottom:16px}
.founder blockquote{border-left:3px solid var(--red);padding:6px 0 6px 18px;font-size:1.1rem;font-weight:500;margin:22px 0}
.founder .acts{display:flex;gap:12px;flex-wrap:wrap}

/* ===== RÉSEAUX ===== */
.network{padding:56px 0}
.network-row{display:flex;justify-content:space-between;align-items:center;gap:30px;flex-wrap:wrap}
.network h2{font-size:1.6rem;margin:0}
.network ul{display:flex;gap:14px;flex-wrap:wrap;list-style:none}
.network li{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-sm);padding:14px 20px;font-weight:600;font-size:.92rem;transition:transform .3s var(--ease),border-color .2s}
.network li:hover{transform:translateY(-3px);border-color:var(--red)}

/* ===== FAQ ===== */
.faq-list{margin:30px auto 0;display:flex;flex-direction:column;gap:10px;max-width:760px}
.faq-sec .wrap>.rv:first-child{text-align:center}
.faq-sec .eyebrow{justify-content:center}
details{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-sm);padding:0 22px;transition:border-color .2s}
details[open]{border-color:var(--red)}
summary{list-style:none;cursor:pointer;padding:18px 0;font-weight:600;display:flex;justify-content:space-between;gap:20px}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";color:var(--red);font-size:1.4rem;line-height:1;transition:transform .35s var(--ease)}
details[open] summary::after{transform:rotate(45deg)}
details p{padding:0 0 20px;color:var(--muted);font-size:.95rem;animation:panelIn .45s var(--ease)}
details p strong{color:var(--ink)}

/* ===== CTA FINAL ===== */
.final{text-align:center;padding:120px 0;overflow:hidden}
.final h2{font-size:clamp(2rem,4.4vw,3.4rem);max-width:900px;margin:0 auto 16px}
.final .lead{margin:0 auto 30px}
.final .acts{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}
.final small{display:block;margin-top:18px;color:var(--muted)}
.final .rocket{display:inline-block;font-size:2.4rem;margin-bottom:12px;animation:rocket 3s ease-in-out infinite}
@keyframes rocket{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-14px) rotate(-8deg)}}

/* ===== FOOTER ===== */
footer{background:var(--ink);color:#c9bfb2;padding:64px 0 28px;overflow:hidden}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;margin-bottom:44px}
footer .logo{display:block;margin-bottom:14px}
footer p{font-size:.9rem;max-width:300px}
footer h4{color:var(--cream);font-size:.95rem;margin-bottom:14px}
footer ul{list-style:none;display:flex;flex-direction:column;gap:9px;font-size:.9rem}
footer ul a{transition:color .2s,padding .3s var(--ease)}
footer ul a:hover{color:#fff;padding-left:4px}
.socials{display:flex;gap:14px;margin-top:18px;font-size:.9rem}
.socials a{text-decoration:underline;text-underline-offset:3px}
.big-word{text-align:center;font-weight:900;font-size:clamp(5rem,18vw,15rem);letter-spacing:-.07em;line-height:.8;color:var(--red-dark);margin:10px 0 30px;user-select:none}
.big-word span{display:inline-block;transition:color .3s,transform .4s var(--ease)}
.big-word span:hover{color:var(--brick);transform:translateY(-10px)}
.legal{border-top:1px solid #262626;padding-top:22px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:.82rem}
.legal div{display:flex;gap:18px}


/* ===== INTÉGRATION IA ===== */
.integ{background:var(--white)}
.integ-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:36px 0 34px}
.integ-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:26px;display:flex;flex-direction:column;gap:10px;transition:transform .4s var(--ease),border-color .25s,background .25s}
.integ-card:hover{transform:translateY(-6px);border-color:var(--red);background:var(--white)}
.integ-card .ico{font-size:2rem;display:inline-block;transition:transform .5s var(--ease)}
.integ-card:hover .ico{transform:scale(1.2) rotate(-10deg)}
.integ-card h3{font-size:1.2rem}
.integ-card p{font-size:.9rem;color:var(--muted)}
.integ-card .lnk{margin-top:auto;padding-top:8px;color:var(--red);font-weight:600;font-size:.9rem}
.flow{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative}
.flow::before{content:"";position:absolute;top:22px;left:12%;right:12%;height:2px;background:var(--line)}
.flow::after{content:"";position:absolute;top:22px;left:12%;right:12%;height:2px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform 1.8s var(--ease) .3s}
.flow.in::after{transform:scaleX(1)}
.flow li{position:relative;z-index:1;text-align:center;padding:0 10px}
.flow span{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--white);border:2px solid var(--red);color:var(--red);font-family:'DM Mono',monospace;font-size:.8rem;margin-bottom:12px;transition:background .3s,color .3s}
.flow.in span{animation:pop .5s var(--ease) both}
.flow.in li:nth-child(1) span{animation-delay:.4s}.flow.in li:nth-child(2) span{animation-delay:.8s}.flow.in li:nth-child(3) span{animation-delay:1.2s}.flow.in li:nth-child(4) span{animation-delay:1.6s}
@keyframes pop{0%{transform:scale(.6)}60%{transform:scale(1.15);background:var(--red);color:#fff}100%{transform:scale(1);background:var(--red);color:#fff}}
.flow b{display:block;font-size:1.05rem}
.flow p{font-size:.85rem;color:var(--muted)}

/* ===== AUDIT IA ===== */
.audit-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.audit-list{list-style:none;display:flex;flex-direction:column;gap:12px}
.audit-list li{display:flex;gap:16px;align-items:flex-start;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:20px;transition:transform .4s var(--ease),border-color .25s}
.audit-list li:hover{transform:translateX(-8px);border-color:var(--red)}
.audit-list li>span{font-size:1.5rem;width:48px;height:48px;border-radius:12px;background:var(--paper);display:grid;place-items:center;flex-shrink:0}
.audit-list b{display:block;margin-bottom:3px}
.audit-list p{font-size:.88rem;color:var(--muted)}

/* ===== INDUSTRIE IA ===== */
.indus{padding-top:0}
.indus-box{position:relative;overflow:hidden;background:var(--red-dark);color:var(--cream);border-radius:28px;padding:56px;display:grid;grid-template-columns:1fr 1.1fr;gap:44px;align-items:center}
.indus-box::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:40px 40px;animation:gridmove 20s linear infinite}
@keyframes gridmove{to{background-position:40px 40px}}
.indus-box>*{position:relative}
.indus-box .lead{color:rgba(244,239,230,.82)}
.indus-box .btn-red{background:var(--cream);color:var(--red)}
.indus-box .btn-red:hover{background:#fff}
.indus-acts{margin-top:26px}
.indus-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ic{background:rgba(244,239,230,.06);border:1px solid rgba(244,239,230,.16);border-radius:var(--radius);padding:20px;transition:transform .4s var(--ease),border-color .25s}
.ic:hover{transform:translateY(-4px);border-color:var(--brick)}
.ic b{display:block;margin-bottom:6px}
.ic p{font-size:.86rem;color:rgba(244,239,230,.72)}

.mbar{display:none}


/* ===== PAGES PRESTATIONS ===== */
[hidden]{display:none!important}
.d-hero{position:relative;overflow:hidden;padding:56px 0 88px}
.crumb{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:.85rem;color:var(--muted);margin-bottom:28px}
.crumb a{text-decoration:underline;text-underline-offset:3px}
.crumb a:hover{color:var(--red)}
.crumb b{color:var(--ink);font-weight:600}
.d-ico{display:inline-grid;place-items:center;width:72px;height:72px;border-radius:18px;background:var(--white);border:1px solid var(--line);font-size:2.2rem;margin-bottom:22px;animation:fin .9s var(--ease) forwards,bob 3s ease-in-out 1.2s infinite;animation-delay:.2s,1.2s}
.d-hero h1{font-size:clamp(2.2rem,5vw,4rem);max-width:900px;margin-bottom:22px}
.d-hero h1 .line>span{white-space:normal}
.d-hero .intro{font-size:1.15rem;font-weight:500;max-width:720px;margin-bottom:30px}
.pains{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:30px}
.pain{background:var(--white);border:1px solid var(--line);border-left:4px solid var(--brick);border-radius:var(--radius);padding:24px;transition:transform .4s var(--ease)}
.pain:hover{transform:translateY(-4px)}
.pain span{font-family:'Fraunces',Georgia,serif;font-style:italic;font-weight:300;font-size:2rem;color:var(--brick);line-height:1;display:block;margin-bottom:10px}
.pain p{font-weight:500}
.d-incl{background:var(--white)}
.d-incl-grid,.d-liv-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:start}
.incl{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.incl li{display:flex;gap:12px;align-items:flex-start;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-sm);padding:16px;font-weight:500;font-size:.95rem;transition:border-color .2s,transform .3s var(--ease)}
.incl li:hover{border-color:var(--red);transform:translateX(4px)}
.incl li span{flex-shrink:0;width:24px;height:24px;border-radius:6px;background:var(--red);color:var(--cream);display:grid;place-items:center;font-size:.8rem;font-weight:700}
.d-steps{grid-template-columns:repeat(4,1fr)}
.d-liv{background:var(--ink);color:var(--cream);overflow:hidden}
.d-liv .lead{color:#c9bfb2}
.d-liv .eyebrow{color:var(--brick)}
.liv-glow{position:absolute;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(163,0,30,.55),transparent 65%);left:-160px;bottom:-200px;pointer-events:none}
.d-liv-grid{position:relative;align-items:start}
.liv{list-style:none;display:flex;flex-direction:column;gap:12px;margin-top:28px;counter-reset:l}
.liv li{position:relative;overflow:hidden;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;background:rgba(244,239,230,.05);border:1px solid rgba(244,239,230,.12);border-radius:var(--radius);padding:18px 22px;transition:opacity .6s var(--ease) var(--d,0s),transform .6s var(--ease) var(--d,0s),border-color .3s,background .3s}
.liv li.in:hover{transition-delay:0s;border-color:var(--brick);background:rgba(244,239,230,.08)}
.liv-n{font-family:'Fraunces',Georgia,serif;font-style:italic;font-weight:300;font-size:2.4rem;line-height:1;color:var(--brick);min-width:34px}
.liv-t{font-weight:600;font-size:1.02rem}
.liv-ok{width:30px;height:30px;border-radius:8px;background:var(--red);color:var(--cream);display:grid;place-items:center;font-weight:800;font-size:.85rem;transform:scale(0) rotate(-90deg);transition:transform .55s cubic-bezier(.34,1.56,.64,1);transition-delay:calc(var(--d,0s) + .25s)}
.liv li.in .liv-ok{transform:none}
.liv-bar{position:absolute;left:0;bottom:0;height:3px;width:100%;background:var(--brick);transform:scaleX(0);transform-origin:left;transition:transform .7s var(--ease);transition-delay:calc(var(--d,0s) + .1s)}
.liv li.in .liv-bar{transform:scaleX(1)}
.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:28px}
.tile{position:relative;aspect-ratio:1/1;background:var(--white);color:var(--ink);border-radius:var(--radius);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:12px;text-align:center;opacity:0;transform:scale(.8) translateY(16px);transition:box-shadow .3s,transform .3s var(--ease)}
.tiles.in .tile{animation:tilePop .55s cubic-bezier(.34,1.56,.64,1) forwards;animation-delay:calc(var(--i) * .05s)}
.tile:hover{transform:translateY(-6px)}
@keyframes tilePop{to{opacity:1;transform:none}}
@keyframes tileFloat{0%,100%{translate:0 0}50%{translate:0 -6px}}
.tile::after{content:"";position:absolute;inset:0;border-radius:inherit;border:2px solid var(--g);opacity:0;transition:opacity .3s}
.tile:hover{box-shadow:0 18px 40px rgba(0,0,0,.35);z-index:2}
.tile:hover::after{opacity:1}
.tile-ico{display:grid;place-items:center;width:56px;height:56px;transition:transform .45s cubic-bezier(.34,1.56,.64,1)}
.tile:hover .tile-ico{transform:scale(1.2) rotate(-6deg)}
.ti{flex-shrink:0;width:24px;height:24px;background:var(--c,var(--ink));-webkit-mask:var(--u) center/contain no-repeat;mask:var(--u) center/contain no-repeat}
.ti.mono{-webkit-mask:none;mask:none;background:var(--ink);color:var(--cream);border-radius:6px;display:grid;place-items:center;font-size:.75rem;font-weight:800}
.tile .ti{width:44px;height:44px}
.tile .ti.mono{width:44px;height:44px;font-size:1.1rem;border-radius:10px}
.ti-img{width:46px;height:46px;object-fit:contain;display:block}
.ti-img.wide{width:96px;height:46px;max-width:100%}
.tile-ico:has(.wide){width:100%}
.tile-n{font-weight:700;font-size:.85rem;line-height:1.2}
.formules{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:30px}
.formule{background:var(--white);border:1.5px solid var(--line);border-radius:var(--radius);padding:28px;display:flex;flex-direction:column;gap:10px;transition:transform .4s var(--ease),border-color .25s}
.formule:hover{transform:translateY(-6px);border-color:var(--red)}
.formule.hot{border-color:var(--red)}
.formule .ico{font-size:1.8rem}
.formule h3{font-size:1.3rem}
.formule p{color:var(--muted);font-size:.92rem;flex:1}
.formule b{font-size:1.1rem;color:var(--red)}
.formule .btn{justify-content:center;margin-top:6px}
.d-rel{margin-top:26px}


/* ===== RÉALISATIONS ===== */
.home-real{margin-top:36px}
#homeReal .rnum{display:none}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{padding:9px 16px;border-radius:999px;border:1.5px solid var(--line);background:var(--white);font-family:inherit;font-size:.9rem;font-weight:500;cursor:pointer;color:var(--ink)}
.chip.active{background:var(--ink);color:var(--cream);border-color:var(--ink)}
.chip.active span{opacity:.8}
.rlogo.dark{background:transparent;padding:0}
.nav-cta .btn{white-space:nowrap}
@media(max-width:1480px){.nav-cta .btn-ghost{display:none}}

.r-hero{padding-bottom:40px}
.r-hero .mf-it{text-align:left;margin-bottom:6px}
.r-hero h1{font-weight:900;letter-spacing:-.05em}
.r-list{padding-top:20px}
.r-chips{margin-bottom:30px}
.chip{display:inline-flex;align-items:center;gap:8px;transition:background .25s,color .25s,border-color .25s,transform .25s var(--ease)}
.chip:hover{transform:translateY(-2px)}
.chip span{font-family:'DM Mono',monospace;font-size:.72rem;opacity:.6}
.rgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.rcard{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;transition:transform .4s var(--ease),box-shadow .4s,border-color .25s,opacity .9s var(--ease);will-change:transform}
.rcard:hover{border-color:var(--red);box-shadow:var(--shadow)}
.rvis{position:relative;aspect-ratio:16/10;padding:22px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;color:var(--cream)}
.rvis.bg-red{background:var(--red)}.rvis.bg-ink{background:var(--ink)}.rvis.bg-deep{background:var(--red-dark)}.rvis.bg-brick{background:var(--brick);color:var(--white)}
.rvis::before{content:"";position:absolute;left:22px;top:22px;width:56px;height:5px;background:var(--brick);transition:width .6s var(--ease)}
.rvis.bg-brick::before{background:var(--cream)}
.rcard:hover .rvis::before{width:110px}
.rvis::after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,rgba(244,239,230,.05) 0 1px,transparent 1px 40px);transition:transform 1.2s var(--ease)}
.rcard:hover .rvis::after{transform:translateX(40px)}
.rk{position:relative;z-index:1;font-family:'Fraunces',Georgia,serif;font-style:italic;font-weight:300;font-size:1.05rem;opacity:.85;margin-bottom:4px}
.rn{position:relative;z-index:1;font-weight:900;font-size:clamp(1.5rem,2.4vw,2rem);letter-spacing:-.05em;line-height:.95;text-transform:lowercase;transition:transform .5s var(--ease)}
.rcard:hover .rn{transform:translateX(6px)}
.rbody{padding:22px;display:flex;flex-direction:column;gap:10px;flex:1}
.rbody h3{font-size:1.12rem}
.rbody p{font-size:.9rem;color:var(--muted)}
.rtags{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.rtags span{font-family:'DM Mono',monospace;font-size:.68rem;letter-spacing:.04em;text-transform:uppercase;padding:4px 9px;border-radius:999px;background:var(--soft);color:var(--muted)}
.rnum{position:absolute;right:20px;top:14px;z-index:1;font-family:'Fraunces',Georgia,serif;font-style:italic;font-weight:300;font-size:2.2rem;opacity:.55}
.rlogo{position:relative;z-index:1;align-self:flex-start;background:var(--white);border-radius:12px;padding:10px 14px;margin-bottom:auto;margin-top:26px;max-width:62%;color:var(--ink);font-weight:800;transition:transform .5s var(--ease)}
.rcard:hover .rlogo{transform:scale(1.06) rotate(-2deg)}
.rlogo img{display:block;height:46px;width:auto;max-width:100%;object-fit:contain}
.rphoto{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.92;transform-origin:22% 16%;transition:transform 1s var(--ease),opacity .4s}
.rcard:hover .rphoto{transform:scale(1.05);opacity:1}
.rshade{position:absolute;inset:0;background:linear-gradient(to top,rgba(92,0,18,.92) 0%,rgba(92,0,18,.35) 45%,rgba(92,0,18,0) 70%);pointer-events:none}
.rvis .rk,.rvis .rn{text-shadow:0 1px 12px rgba(10,10,10,.25)}
.rlist{list-style:none;display:flex;flex-direction:column;gap:6px;margin-top:4px}
.rlist li{font-size:.88rem;color:var(--muted);padding-left:18px;position:relative}
.rlist li::before{content:"";position:absolute;left:0;top:.62em;width:9px;height:3px;background:var(--brick)}
.rmedias{margin-top:8px;padding-top:12px;border-top:1px solid var(--line)}
.rmedias small{display:block;font-family:'DM Mono',monospace;font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:8px}
.rmedias div{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.rmedias img{height:22px;width:auto;filter:grayscale(1);opacity:.75;transition:filter .3s,opacity .3s}
.rmedias img:hover{filter:none;opacity:1}
.rmedias span{font-size:.8rem;font-weight:600}
.racts{margin-top:auto;padding-top:10px;display:flex;flex-wrap:wrap;gap:16px}
.racts .rlink{margin-top:0;padding-top:0}
.rlink.alt{color:var(--ink)}
.rlink{margin-top:auto;padding-top:10px;color:var(--red);font-weight:600;font-size:.9rem}
.rlink:hover .arr{transform:translateX(4px)}
.rlink .arr{display:inline-block;transition:transform .3s var(--ease)}
.center .btn{margin-top:26px}
@media(max-width:1020px){.rgrid{grid-template-columns:1fr 1fr}}
@media(max-width:680px){
  .rgrid{grid-template-columns:1fr}
  .r-hero .mf-it{text-align:center}
  .r-chips{justify-content:center}
  .rbody{text-align:center;align-items:center}
  .rtags,.racts,.rmedias div{justify-content:center}
  .rlist{align-items:center}
  .rvis{align-items:center;text-align:center}
  .rvis::before{left:50%;transform:translateX(-50%)}
  .rlogo{align-self:center}
  .rbody .tag{align-self:center}
  .rlist li{padding-left:0}.rlist li::before{display:none}
  .center .btn{width:100%;justify-content:center}
}


/* ===== HEADLINE ===== */
.hero .h1-hero{font-size:clamp(2.9rem,6.4vw,5.4rem);font-weight:900;letter-spacing:-.045em;line-height:.9;margin-bottom:0}
.h1-hero .line{padding-bottom:.08em}
.h-it{font-family:'Fraunces',Georgia,serif;font-style:italic;font-weight:300;font-variation-settings:"opsz" 144,"SOFT" 60,"WONK" 1;letter-spacing:-.01em;color:var(--brick);font-size:.6em;line-height:1}
.h1-hero .rot{position:relative;display:inline-grid;overflow:hidden;vertical-align:bottom;color:var(--red);padding:0 .02em .16em}
.h1-hero .rot b{grid-area:1/1;font-weight:inherit;opacity:1;transform:translateY(140%);transition:transform .75s cubic-bezier(.76,0,.24,1)}
.h1-hero .rot b.on{transform:none}
.h1-hero .rot b.out{transform:translateY(-140%)}
.h1-hero .rot b{position:relative;justify-self:start}
.h1-hero .rot b::after{content:"";position:absolute;left:.02em;right:0;bottom:-.04em;height:.08em;background:var(--brick);transform:scaleX(0);transform-origin:left;transition:transform .6s cubic-bezier(.76,0,.24,1)}
.h1-hero .rot b.on::after{transform:scaleX(1);transition-delay:.55s}
.h1-hero .rot b.out::after{transform-origin:right;transform:scaleX(0);transition-delay:0s}
.h-rule{width:72px;height:5px;background:var(--brick);margin:26px 0 26px}
@media(max-width:680px){
  .hero h1.h1-hero{font-size:clamp(2.6rem,12.5vw,3.4rem)}
  .h-rule{margin:20px auto}
}


/* ===== HEADLINE (captivante) ===== */
.h1-hero .rot b .ch{display:inline-block;transform:translateY(140%) rotate(8deg);transition:transform .65s cubic-bezier(.76,0,.24,1);transition-delay:calc(var(--c) * 28ms)}
.h1-hero .rot b.on .ch{transform:none}
.h1-hero .rot b.out .ch{transform:translateY(-140%) rotate(-8deg);transition-delay:calc(var(--c) * 18ms)}
.h1-hero .rot b{transform:none!important}
.h1-hero .line{transition:translate .6s var(--ease)}
.h-prog{display:flex;gap:8px;margin:26px 0}
.h-prog button{position:relative;width:46px;height:5px;padding:0;border:none;background:rgba(232,96,60,.22);cursor:pointer;overflow:hidden;transition:width .4s var(--ease)}
.h-prog button:hover{background:rgba(232,96,60,.4)}
.h-prog button.on{width:72px}
.h-prog i{position:absolute;inset:0;background:var(--brick);transform:scaleX(0);transform-origin:left}
.h-prog button.done i{transform:scaleX(1)}
.h-prog button.on i{animation:prog var(--dur,2.8s) linear forwards}
@keyframes prog{to{transform:scaleX(1)}}
.hero::after{content:"";position:absolute;inset:0;background:radial-gradient(520px circle at var(--mx,72%) var(--my,30%),rgba(232,96,60,.14),transparent 62%);pointer-events:none;z-index:-1;transition:background-position .2s}
@media(max-width:680px){.h-prog{justify-content:center;margin:20px auto}}


/* ===== VIDÉO MOTION DESIGN ===== */
.video{padding:0;aspect-ratio:4/5}
.video video{position:absolute;inset:2px;z-index:1;width:calc(100% - 4px);height:calc(100% - 4px);object-fit:cover;display:block;border-radius:calc(var(--radius) - 2px);background:var(--ink)}
@media(max-width:1020px){.video{aspect-ratio:4/5;min-height:0}}
@media(max-width:680px){.video{max-width:380px;width:100%;margin:0 auto}}


/* ===== RÉALISATIONS : vrais logos ===== */
.rvis{justify-content:center;align-items:center}
.rvis .rlogo{position:relative;z-index:1;align-self:center;margin:0;background:none;padding:0;border-radius:0;max-width:72%;display:grid;place-items:center;transition:transform .6s cubic-bezier(.34,1.56,.64,1)}
.rvis .rlogo img{height:clamp(84px,9vw,120px);width:auto;max-width:100%;object-fit:contain;filter:drop-shadow(0 8px 24px rgba(0,0,0,.25))}
.rvis .rlogo.box{background:var(--white);padding:14px;border-radius:20px}
.rvis .rlogo.box img{height:clamp(70px,7.5vw,96px);filter:none}
.rcard:hover .rvis .rlogo{transform:scale(1.1) rotate(-2deg)}
.rbody .rk{font-family:'Fraunces',Georgia,serif;font-style:italic;font-weight:300;font-size:1rem;color:var(--brick);margin-bottom:-4px}
.rbody .rname{font-weight:900;font-size:1.45rem;letter-spacing:-.04em;line-height:1}


/* ===== BANDEAU LOGOS CLIENTS ===== */
.logos{background:var(--ink);border:none;padding:40px 0 46px}
.logos p{color:#c9bfb2;margin-bottom:24px}
.logos .track{gap:84px;align-items:center;animation-duration:34s}
.lg-it{display:grid;place-items:center;height:78px;flex-shrink:0;transition:transform .45s cubic-bezier(.34,1.56,.64,1)}
.lg-it img{height:78px;width:auto;opacity:.72;transition:opacity .3s}
.lg-it.wide img{height:44px}
.lg-it:hover{transform:scale(1.1)}
.lg-it:hover img{opacity:1}
@media(max-width:680px){.logos .track{gap:52px}.lg-it{height:58px}.lg-it img{height:58px}.lg-it.wide img{height:32px}}


/* ===== CARTE PHOTO : nom en grand, logos médias ===== */
.rbig{position:absolute;left:22px;right:22px;bottom:20px;z-index:2;color:var(--cream);font-weight:900;font-size:clamp(2rem,3.2vw,2.8rem);letter-spacing:-.05em;line-height:.9;text-transform:lowercase;transition:transform .5s var(--ease)}
.rbig i{display:block;font-family:'Fraunces',Georgia,serif;font-style:italic;font-weight:300;font-size:.42em;letter-spacing:0;text-transform:none;color:var(--brick);margin-bottom:6px}
.rcard:hover .rbig{transform:translateX(6px)}
.rvis.is-photo .rlogo{display:none}
.rcard:has(.is-photo) .rbody .rk,.rcard:has(.is-photo) .rbody .rname{display:none}
.rmedias div{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.rmedias img{height:54px;width:100%;object-fit:contain;filter:none;opacity:1;background:var(--paper);border-radius:10px;padding:8px;box-sizing:border-box;transition:transform .3s cubic-bezier(.34,1.56,.64,1)}
.rmedias img:hover{transform:scale(1.08)}
.rmedias span{display:grid;place-items:center;height:54px;background:var(--paper);border-radius:10px;font-size:.78rem}
@media(max-width:680px){.rbig{text-align:center}}


/* ===== BOUTON SON ===== */
.snd{position:absolute;right:14px;bottom:14px;z-index:3;display:inline-flex;align-items:center;gap:8px;padding:10px 16px 10px 12px;border:none;border-radius:999px;background:rgba(10,10,10,.72);color:var(--cream);font-family:inherit;font-weight:600;font-size:.88rem;cursor:pointer;backdrop-filter:blur(6px);transition:background .25s,transform .3s cubic-bezier(.34,1.56,.64,1)}
.snd:hover{background:var(--red);transform:scale(1.05)}
.snd .snd-ico{font-size:1rem;line-height:1}
.snd:not(.on){animation:sndPulse 2.4s ease-in-out infinite}
@keyframes sndPulse{0%,100%{box-shadow:0 0 0 0 rgba(232,96,60,.55)}50%{box-shadow:0 0 0 10px rgba(232,96,60,0)}}
.snd.on .snd-t{display:none}
.snd.on{padding:10px 12px}


/* ===== FORMULAIRE : consentement et confirmation ===== */
.f .consent{display:flex;gap:10px;align-items:flex-start;font-weight:400;font-size:.82rem;color:var(--muted);line-height:1.45}
.f .consent input{width:18px;height:18px;margin:2px 0 0;flex-shrink:0;accent-color:var(--red)}
.f .consent a,.f .rgpd a{color:var(--red);text-decoration:underline}
.f-ok{background:rgba(163,0,30,.08);color:var(--red);border-radius:var(--radius-sm);padding:14px 16px;font-weight:600;font-size:.92rem}
.f button[disabled]{opacity:.6;pointer-events:none}

/* ===== PAGES LÉGALES ===== */
.legal-page{padding:40px 0 90px}
.legal-page .wrap{max-width:820px}
.legal-page h1{font-size:clamp(2.2rem,5vw,3.4rem);font-weight:900;letter-spacing:-.05em;line-height:.95;margin-bottom:10px}
.legal-page .upd{color:var(--muted);font-size:.9rem;margin-bottom:34px}
.legal-page section{padding:0}
.lg-block{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:26px 28px;margin-bottom:14px}
.lg-block h2{font-size:1.2rem;margin-bottom:10px;display:flex;gap:12px;align-items:baseline}
.lg-block h2 i{font-family:'Fraunces',Georgia,serif;font-style:italic;font-weight:300;color:var(--brick);font-size:1.5rem}
.lg-block p,.lg-block li{color:var(--muted);font-size:.95rem}
.lg-block p+p{margin-top:8px}
.lg-block ul{margin:8px 0 0 18px}
.lg-block a{color:var(--red);text-decoration:underline}
.lg-block strong{color:var(--ink)}
@media(max-width:680px){.legal-page{text-align:left}.lg-block{padding:20px}}


/* ===== SEO : H1 descriptifs et blocs « En bref » ===== */
.hero h1.eyebrow{font-size:.75rem;line-height:1.4;font-weight:500;letter-spacing:.08em;margin-bottom:14px}
.d-kw,.d-hero h1.d-kw{font-family:'DM Mono',monospace;font-size:.8rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--red);line-height:1.4;margin-bottom:12px;max-width:none}
.d-hero .d-h1{font-weight:700;letter-spacing:-.02em;line-height:1.1;font-size:clamp(2.2rem,5vw,4rem);max-width:900px;margin-bottom:22px}
.d-hero .d-h1 .line>span{white-space:normal}
.d-brief{padding:0 0 30px}
.brief{background:var(--white);border:1px solid var(--line);border-left:4px solid var(--brick);border-radius:var(--radius);padding:24px 28px;max-width:900px}
.brief p{font-size:1.05rem;line-height:1.65}
@media(max-width:680px){.brief{padding:20px;text-align:left}.d-kw{text-align:center}}


/* ===== SURVOL STABLE : le contenu bouge, jamais la zone survolée ===== */
html{-webkit-tap-highlight-color:transparent}
.liv-n,.liv-t{transition:transform .45s var(--ease)}
@media (hover:hover) and (pointer:fine){
  .liv li.in:hover .liv-n,.liv li.in:hover .liv-t{transform:translateX(8px)}
  .svc:hover{transform:none}
  .svc>*{transition:transform .4s var(--ease)}
  .svc:hover>div{transform:translateX(6px)}
  .audit-list li:hover{transform:none}
  .audit-list li>*{transition:transform .4s var(--ease)}
  .audit-list li:hover>div{transform:translateX(-6px)}
  .incl li:hover{transform:none}
}
/* écrans tactiles : aucun déplacement au toucher */
@media (hover:none),(pointer:coarse){
  .liv li:hover,.liv li.in:hover,.tile:hover,.svc:hover,.audit-list li:hover,.incl li:hover,.mini:hover,.pole:hover,.ia-card:hover,.integ-card:hover,.case:hover,.rcard:hover,.formule:hover,.pain:hover,.ic:hover,.review:hover,.btn:hover,.lg-it:hover,.tools span:hover,.network li:hover{transform:none!important;box-shadow:none}
  .tile:hover .tile-ico,.pole:hover .ico,.svc:hover .ico,.ia-card:hover .ico,.integ-card:hover .ico,.rcard:hover .rlogo,.rcard:hover .rn,.rcard:hover .rbig,.case:hover .visual span,.rcard:hover .rphoto{transform:none!important}
  .liv li:hover{background:rgba(244,239,230,.05);border-color:rgba(244,239,230,.12)}
}

/* ===== RESPONSIVE ===== */
@media(max-width:1240px){
  .menu,.nav-cta .btn-ghost{display:none}
  .burger{display:block}
  .menu.show{display:flex;flex-direction:column;align-items:stretch;position:absolute;top:72px;left:0;right:0;background:var(--white);border-bottom:1px solid var(--line);padding:12px 16px 20px;max-height:calc(100vh - 72px);overflow:auto}
  .menu.show .mega{position:static;transform:none;opacity:1;visibility:visible;box-shadow:none;border:none;padding:6px 0 10px 12px;display:none;grid-template-columns:1fr}
  .menu.show li.open .mega{display:grid;transform:none}
}
@media(max-width:1020px){
  .menu,.nav-cta .btn-ghost{display:none}
  .burger{display:block}
  .menu.show{display:flex;flex-direction:column;align-items:stretch;position:absolute;top:72px;left:0;right:0;background:var(--white);border-bottom:1px solid var(--line);padding:12px 16px 20px;max-height:calc(100vh - 72px);overflow:auto}
  .menu.show .mega{position:static;transform:none;opacity:1;visibility:visible;box-shadow:none;border:none;padding:6px 0 10px 12px;display:none;grid-template-columns:1fr}
  .menu.show li.open .mega{display:grid;transform:none}
  .hero-grid,.rappel-grid,.founder-grid,.ia-top,.pole-row,.audit-grid,.indus-box,.d-incl-grid,.d-liv-grid{grid-template-columns:1fr}
  .d-steps,.pains{grid-template-columns:1fr 1fr}
  .integ-grid{grid-template-columns:1fr 1fr}
  .pole-head{position:static}
  .hero-side{flex-direction:row}
  .hero-side>*{flex:1}
  .video{min-height:0}
  .cards3,.reviews{grid-template-columns:1fr 1fr}
  .ia-grid,.fig-grid{grid-template-columns:1fr 1fr}
  .foot-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:680px){
  section{padding:68px 0}
  .wrap{padding:0 16px}
  .poles,.cards3,.reviews,.ia-grid,.models-grid,.cases,.steps,.foot-grid,.integ-grid,.indus-cards,.pains,.incl,.formules,.d-steps{grid-template-columns:1fr}
  .flow{grid-template-columns:1fr 1fr;row-gap:24px}.flow::before,.flow::after{display:none}
  .indus-box{padding:30px 22px;border-radius:var(--radius)}
  .steps::before{display:none}
  .hero-side{flex-direction:column}
  .svc{grid-template-columns:auto 1fr;padding:20px}
  .svc .go{display:none}
  .tabs{border-radius:var(--radius)}
  .pill{display:none}
  .tab.active{background:var(--ink)}
  form.f{grid-template-columns:1fr;padding:20px}
  .nav-cta .btn-red{display:none}
  .mbar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:60;background:var(--white);border-top:1px solid var(--line);padding:10px 16px;gap:10px}
  .mbar a{flex:1;justify-content:center}
  body{padding-bottom:70px}
}

/* ===== TÉLÉPHONE : site centré ===== */
@media(max-width:680px){
  .hl{white-space:normal}
  h2{font-size:clamp(1.7rem,7.4vw,2.1rem)}
  .lead{font-size:1rem;margin-left:auto;margin-right:auto}
  section>.wrap>.rv:first-child,.rv>.eyebrow{text-align:center}
  .eyebrow{justify-content:center}
  section .wrap>.rv:first-child .lead{margin:0 auto}
  /* hero */
  .hero{padding:36px 0 56px;text-align:center}
  .hero h1{font-size:clamp(2.2rem,10.5vw,2.8rem)}
  .hero p.intro{font-size:1rem;margin:0 auto 24px}
  .hero-actions{justify-content:center;flex-direction:column;gap:10px}
  .hero-actions .btn{width:100%;justify-content:center}
  .poles{gap:10px}
  .pole{align-items:center;text-align:center;padding:16px}

  .assistant{text-align:left}
  /* manifeste */
  .manifesto{padding:72px 0 80px}
  .mf{font-size:clamp(1.7rem,8vw,2.2rem)}
  /* pôles */
  .pole-sec{padding:64px 0 20px}
  .pole-row{padding:40px 0;gap:26px}
  .pole-head{text-align:center}
  .pole-head h3{justify-content:center}
  .pole-head p{margin-left:auto;margin-right:auto}
  .pole-head .btn{justify-content:center}
  /* cartes centrées */
  .mini,.ia-card,.integ-card,.pain,.formule,.review,.fig,.ic{text-align:center;align-items:center}
  .mini .tag,.case .tag,.formule .tag{align-self:center}
  .tabs{display:flex;justify-content:center;width:100%}
  .panel>p{text-align:center;margin-left:auto;margin-right:auto}
  .panel-actions,.d-hero .hero-actions{justify-content:center}
  .panel-actions .btn{width:100%;justify-content:center}
  /* IA, audit, industrie */
  .ia-top>.rv:first-child,.audit-grid>.rv:first-child,.indus-box>div:first-child{text-align:center}
  .ia-top .btn,.audit-grid .btn,.indus-box .btn{width:100%;justify-content:center}
  .chat{min-height:250px}
  .audit-list li{text-align:left}
  .flow{text-align:center}
  /* réalisations */
  .case .body{text-align:center;align-items:center}
  .stats{justify-content:center}
  .others{text-align:center}
  /* rappel */
  .rappel-grid>div:first-child{text-align:center}
  .rappel ul.pts{align-items:center}
  .f .full .btn{width:100%;justify-content:center}
  /* méthode */
  .steps li{text-align:center;padding-top:62px}
  .steps li::before{left:50%;right:auto;transform:translateX(-50%)}
  .steps b{padding-right:0}
  .models{text-align:center;padding:24px}
  /* fondateur */
  .founder-grid{text-align:center;gap:32px}
  .portrait{aspect-ratio:1/1;max-width:260px;margin:0 auto}
  .portrait-wrap{max-width:260px;margin:0 auto}
  .founder blockquote{border-left:none;border-top:3px solid var(--brick);padding:14px 0 0}
  .founder .acts{justify-content:center}
  /* FAQ et CTA final */
  .faq-list{margin-left:auto;margin-right:auto}
  .final{padding:72px 0}
  .final .acts .btn{width:100%;justify-content:center}
  /* pied de page */
  .foot-grid{text-align:center;gap:28px}
  footer p{margin:0 auto}
  .socials{justify-content:center}
  footer ul{align-items:center}
  .legal{flex-direction:column;align-items:center;text-align:center}
  .big-word{text-align:center;font-size:clamp(4rem,24vw,7rem)}
  /* pages prestations */
  .d-hero{padding:32px 0 56px;text-align:center}
  .crumb{justify-content:center;font-size:.8rem}
  .d-hero .intro{font-size:1rem;margin:0 auto 24px}
  .d-hero .hero-actions .btn{width:100%;justify-content:center}
  .d-incl-grid>.rv:first-child,.d-liv-grid>.rv{text-align:center}
  .tiles{grid-template-columns:repeat(3,1fr);gap:8px}
  .tile{padding:8px;gap:8px}
  .tile-ico{width:40px;height:40px}.tile .ti,.tile .ti.mono,.ti-img{width:34px;height:34px}
  .tile-n{font-size:.72rem}
  .liv li{padding:14px 16px;gap:12px}
  .liv-n{font-size:1.9rem}
  .liv-col>.rv,.tools-col>.rv{text-align:center}
  .formule .btn{width:100%}
  .svc{text-align:left}
}


/* ===== SURVOL SANS TREMBLEMENT : la carte survolée ne bouge plus ===== */
.btn:hover,.pole:hover,.svc:hover,.mini:hover,.ia-card:hover,.case:hover,.review:hover,.network li:hover,.integ-card:hover,.audit-list li:hover,.ic:hover,.pain:hover,.incl li:hover,.tile:hover,.formule:hover,.chip:hover,.lg-it:hover,.rcard:hover,.liv li:hover,.big-word span:hover{transform:none!important}
.tiles.in .tile:hover{animation:tilePop .55s cubic-bezier(.34,1.56,.64,1) forwards}



/* ===== ACCESSIBILITÉ : contrastes des petits textes ===== */
.rbody .rk,.pole-num{color:#B5401F;opacity:1}
.verdicts span{color:#999}

/* ===== BANDEAU « ILS NOUS FONT CONFIANCE » : plus fin, plus discret ===== */
.logos{padding:22px 0 24px}
.logos p{margin-bottom:12px;font-size:.68rem;opacity:.8}
.logos .track{gap:56px}
.lg-it{height:44px}
.lg-it img{height:44px;opacity:.5}
.lg-it.wide img{height:26px}
@media(max-width:700px){.logos{padding:18px 0 20px}.lg-it,.lg-it img{height:36px}.lg-it.wide img{height:22px}.logos .track{gap:40px}}
/* Liens dans les réponses de FAQ */
.faq-list details p a{color:var(--red);text-decoration:underline;text-underline-offset:3px}
/* ===== GUIDES ===== */
.g-sec{padding:40px 0 80px}
.g-body{max-width:780px;margin:0 auto;font-size:1.06rem;line-height:1.75}
.g-body .g-meta{font:500 .8rem 'DM Mono',monospace;letter-spacing:.04em;color:var(--muted);margin:0 0 28px;text-transform:uppercase}
.g-body h2{font-size:clamp(1.45rem,2.6vw,1.9rem);line-height:1.2;margin:52px 0 16px}
.g-body h2:first-of-type{margin-top:8px}
.g-body p{margin:0 0 16px}
.g-steps{list-style:none;counter-reset:gs;padding:0;margin:20px 0 0;display:grid;gap:14px}
.g-steps li{counter-increment:gs;position:relative;padding:20px 22px 18px 72px;background:var(--white);border:1px solid var(--line);border-radius:18px}
.g-steps li::before{content:counter(gs,decimal-leading-zero);position:absolute;left:22px;top:20px;font:500 .9rem 'DM Mono',monospace;color:var(--red)}
.g-steps h3{font-size:1.08rem;margin:0 0 6px}
.g-steps p{margin:0;font-size:.98rem;color:var(--ink)}
.g-table{overflow-x:auto;margin:20px 0;border:1px solid var(--line);border-radius:18px;background:var(--white)}
.g-table table{width:100%;border-collapse:collapse;font-size:.95rem;min-width:560px}
.g-table th,.g-table td{padding:14px 16px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
.g-table thead th{font-size:.85rem;background:var(--ink);color:var(--cream)}
.g-table tbody th{font-weight:600;width:22%}
.g-table tr:last-child th,.g-table tr:last-child td{border-bottom:none}
.g-src{margin-top:48px;padding:24px 26px;border-radius:18px;background:var(--white);border:1px solid var(--line)}
.g-src h2{font-size:1.1rem!important;margin:0 0 12px!important}
.g-src ul{margin:0;padding-left:18px;font-size:.95rem}
.g-src a{color:var(--red);text-decoration:underline;text-underline-offset:3px}
@media(max-width:640px){.g-body{font-size:1rem}.g-steps li{padding:18px 18px 16px 58px}.g-steps li::before{left:18px}}
/* ===== ANIMATIONS EN HAUT DES PAGES ===== */
.d-hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:48px;align-items:center}
.d-hero-grid .d-h1{font-size:clamp(2rem,3.8vw,3.4rem)!important}
.hv{position:relative;width:100%;max-width:440px;aspect-ratio:1/1;margin-left:auto;border-radius:28px;background:var(--ink);color:var(--cream);overflow:hidden;isolation:isolate;container-type:inline-size;box-shadow:0 30px 70px rgba(10,10,10,.22);opacity:0;transform:translateY(24px) scale(.97);animation:fin 1s var(--ease) .35s forwards;font-family:'Outfit',system-ui,sans-serif}
.hv::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(244,239,230,.09) 1px,transparent 1px);background-size:5cqw 5cqw;z-index:-1}
.hv::after{content:"";position:absolute;width:70%;height:70%;right:-20%;bottom:-25%;border-radius:50%;background:radial-gradient(circle,rgba(163,0,30,.55),transparent 65%);z-index:-1;animation:hvGlow 7s ease-in-out infinite}
@keyframes hvGlow{50%{transform:translate(-18%,-14%) scale(1.15)}}
.hv-tag{position:absolute;top:5cqw;left:5cqw;z-index:3;display:flex;gap:2cqw;align-items:center;font:500 2.7cqw/1 'DM Mono',monospace;letter-spacing:.08em;text-transform:uppercase;color:rgba(244,239,230,.78);background:rgba(244,239,230,.06);border:1px solid rgba(244,239,230,.14);padding:2cqw 3cqw;border-radius:99px}
.hv-tag i{width:1.8cqw;height:1.8cqw;border-radius:50%;background:var(--brick);animation:hvPulse 1.6s infinite}
@keyframes hvPulse{0%{box-shadow:0 0 0 0 rgba(232,96,60,.7)}100%{box-shadow:0 0 0 2.6cqw rgba(232,96,60,0)}}
.hv-st{position:absolute;inset:17cqw 6cqw 6cqw}
.hv .card{background:rgba(244,239,230,.07);border:1px solid rgba(244,239,230,.13);border-radius:4cqw}
.hv .ln{display:block;height:2cqw;border-radius:2cqw;background:rgba(244,239,230,.2)}
.hv .hvp{position:absolute;display:inline-flex;align-items:center;gap:1.6cqw;white-space:nowrap;font-size:3.1cqw;font-weight:600;color:var(--ink);background:var(--cream);padding:2.2cqw 3.4cqw;border-radius:99px;box-shadow:0 2cqw 5cqw rgba(0,0,0,.35)}
.hv .hvp.red{background:var(--red);color:var(--cream)}
/* séquences : chaque étape apparaît à son tour puis tout repart */
.hv .k1,.hv .k2,.hv .k3,.hv .k4,.hv .k5,.hv .k6,.hv .kt{animation:var(--kn) var(--T,9s) var(--ease) infinite both}
.hv .k1{--kn:hk1}.hv .k2{--kn:hk2}.hv .k3{--kn:hk3}.hv .k4{--kn:hk4}.hv .k5{--kn:hk5}.hv .k6{--kn:hk6}.hv .kt{--kn:hkt}
@keyframes hk1{0%,3%{opacity:0;transform:translateY(3cqw) scale(.94)}9%,90%{opacity:1;transform:none}96%,100%{opacity:0;transform:none}}
@keyframes hk2{0%,15%{opacity:0;transform:translateY(3cqw) scale(.94)}21%,90%{opacity:1;transform:none}96%,100%{opacity:0;transform:none}}
@keyframes hk3{0%,29%{opacity:0;transform:translateY(3cqw) scale(.94)}35%,90%{opacity:1;transform:none}96%,100%{opacity:0;transform:none}}
@keyframes hk4{0%,43%{opacity:0;transform:translateY(3cqw) scale(.94)}49%,90%{opacity:1;transform:none}96%,100%{opacity:0;transform:none}}
@keyframes hk5{0%,57%{opacity:0;transform:translateY(3cqw) scale(.94)}63%,90%{opacity:1;transform:none}96%,100%{opacity:0;transform:none}}
@keyframes hk6{0%,69%{opacity:0;transform:translateY(3cqw) scale(.94)}75%,90%{opacity:1;transform:none}96%,100%{opacity:0;transform:none}}
@keyframes hkt{0%,20%{opacity:0}23%,31%{opacity:1}34%,100%{opacity:0}}
.hv .dots{display:inline-flex;gap:1.2cqw}.hv .dots i{width:1.8cqw;height:1.8cqw;border-radius:50%;background:currentColor;animation:hvDot 1s infinite}
.hv .dots i:nth-child(2){animation-delay:.15s}.hv .dots i:nth-child(3){animation-delay:.3s}
@keyframes hvDot{0%,60%,100%{opacity:.3;transform:none}30%{opacity:1;transform:translateY(-1cqw)}}

/* réseaux sociaux */
.hv-social .ph{position:absolute;left:50%;top:0;bottom:0;width:48%;transform:translateX(-50%);border:2px solid rgba(244,239,230,.25);border-radius:8cqw;background:#151313;overflow:hidden}
.hv-social .ph::before{content:"";position:absolute;top:2.4cqw;left:50%;width:30%;height:3cqw;transform:translateX(-50%);border-radius:3cqw;background:var(--ink);z-index:2}
.hv-social .feed{padding:8cqw 3cqw 0;animation:hvFeed 10s linear infinite}
@keyframes hvFeed{to{transform:translateY(-50%)}}
.hv-social .post{margin-bottom:4cqw}
.hv-social .ph-h{display:flex;align-items:center;gap:2cqw;margin-bottom:2cqw}.hv-social .ph-h b{width:5cqw;height:5cqw;border-radius:50%;background:var(--brick)}.hv-social .ph-h .ln{width:45%}
.hv-social .img{aspect-ratio:1/1;border-radius:3cqw;background:linear-gradient(135deg,var(--red),var(--brick))}
.hv-social .post:nth-child(3n+2) .img{background:linear-gradient(135deg,#2a2524,#5c0012)}
.hv-social .post:nth-child(3n) .img{background:linear-gradient(135deg,var(--brick),var(--cream))}
.hv-social .act{font-size:3cqw;margin-top:1.6cqw;letter-spacing:1.4cqw;color:rgba(244,239,230,.7)}
.hv-social .hearts i{position:absolute;right:12%;bottom:12%;font-style:normal;font-size:6cqw;color:var(--red);opacity:0;animation:hvHeart 3.6s ease-out infinite}
.hv-social .hearts i:nth-child(2){animation-delay:.7s;--x:-6cqw;font-size:4.5cqw;color:var(--brick)}.hv-social .hearts i:nth-child(3){animation-delay:1.4s;--x:4cqw}.hv-social .hearts i:nth-child(4){animation-delay:2.1s;--x:-3cqw;font-size:5cqw;color:var(--cream)}.hv-social .hearts i:nth-child(5){animation-delay:2.8s;--x:5cqw;font-size:4cqw}
@keyframes hvHeart{0%{opacity:0;transform:translateY(0) scale(.5)}15%{opacity:1;transform:translateY(-6cqw) scale(1.1)}100%{opacity:0;transform:translate(var(--x,0),-48cqw) scale(.8)}}
.hv-social .p1{left:0;top:14%}.hv-social .p2{right:0;top:52%}

/* contenus */
.hv-content .prev{position:absolute;inset:0 0 44% 0;overflow:hidden;background:linear-gradient(135deg,#1b1716,#2c1512)}
.hv-content .prev .o{position:absolute;border-radius:50%;background:var(--red);width:30%;aspect-ratio:1;left:12%;top:18%;animation:hvOrb 5s ease-in-out infinite}
.hv-content .prev .o2{background:var(--brick);width:20%;left:60%;top:40%;animation-duration:6.5s;animation-direction:reverse}
@keyframes hvOrb{50%{transform:translate(40%,25%) scale(1.25)}}
.hv-content .rec{position:absolute;top:4cqw;right:4cqw;display:flex;align-items:center;gap:1.6cqw;font:500 2.8cqw 'DM Mono',monospace}
.hv-content .rec i{width:2.4cqw;height:2.4cqw;border-radius:50%;background:var(--red);animation:hvBlink 1s steps(2) infinite}
@keyframes hvBlink{50%{opacity:0}}
.hv-content .play{position:absolute;left:50%;top:50%;width:13cqw;height:13cqw;transform:translate(-50%,-50%);border-radius:50%;background:rgba(244,239,230,.9);display:grid;place-items:center;color:var(--ink);font-size:5cqw;animation:hvBeat 2s ease-in-out infinite}
@keyframes hvBeat{50%{transform:translate(-50%,-50%) scale(1.1)}}
.hv-content .tl{position:absolute;left:0;right:0;bottom:0;height:38%;padding:3cqw;display:grid;gap:2.4cqw}
.hv-content .trk{display:flex;gap:1.4cqw;align-items:center}
.hv-content .trk>b{width:5cqw;font-size:3cqw;font-weight:500;opacity:.7}
.hv-content .trk span{height:6cqw;border-radius:1.6cqw;background:var(--red)}
.hv-content .trk:nth-child(2) span{background:var(--brick)}.hv-content .trk:nth-child(3) span{background:rgba(244,239,230,.35)}
.hv-content .head{position:absolute;top:2cqw;bottom:2cqw;left:10cqw;width:2px;background:var(--cream);animation:hvHead 5s linear infinite}
.hv-content .head::before{content:"";position:absolute;top:-1.6cqw;left:-1.6cqw;border:1.7cqw solid transparent;border-top-color:var(--cream)}
@keyframes hvHead{to{left:100%}}

/* identité visuelle */
.hv-brand .ring{position:absolute;left:4%;top:4%;width:56%;aspect-ratio:1;border:1px dashed rgba(244,239,230,.3);border-radius:50%;animation:hvSpin 18s linear infinite}
.hv-brand .ring.r2{left:22%;top:16%;width:36%;border-style:solid;border-color:rgba(232,96,60,.5);animation-direction:reverse;animation-duration:12s}
.hv-brand .ring::after{content:"";position:absolute;top:-1.4cqw;left:50%;width:2.8cqw;height:2.8cqw;border-radius:50%;background:var(--brick)}
@keyframes hvSpin{to{transform:rotate(360deg)}}
.hv-brand .aa{position:absolute;left:12%;top:8%;font-family:'Fraunces',Georgia,serif;font-style:italic;font-weight:300;font-size:30cqw;line-height:1;color:var(--cream)}
.hv-brand .logo{position:absolute;right:0;top:30%;font-size:9cqw;font-weight:700;letter-spacing:-.03em}
.hv-brand .logo span{display:inline-block}
.hv-brand .sw{position:absolute;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(4,1fr);gap:3cqw}
.hv-brand .sw span{aspect-ratio:1/1.15;border-radius:3.4cqw;border:1px solid rgba(244,239,230,.15);display:flex;align-items:flex-end;padding:2cqw;font:500 2.4cqw 'DM Mono',monospace}
.hv-brand .sw span:nth-child(1){background:var(--red)}.hv-brand .sw span:nth-child(2){background:var(--brick);color:var(--ink)}.hv-brand .sw span:nth-child(3){background:var(--cream);color:var(--ink)}.hv-brand .sw span:nth-child(4){background:#1d1a19}

/* site web */
.hv-web .br{position:absolute;inset:0;overflow:hidden;background:var(--cream);color:var(--ink);border-radius:4cqw}
.hv-web .bar{display:flex;align-items:center;gap:1.4cqw;padding:2.6cqw 3cqw;background:#e6ddcf}
.hv-web .bar i{width:2.2cqw;height:2.2cqw;border-radius:50%;background:var(--red)}.hv-web .bar i:nth-child(2){background:var(--brick)}.hv-web .bar i:nth-child(3){background:#bfb3a2}
.hv-web .bar span{margin-left:2cqw;flex:1;font:500 2.6cqw 'DM Mono',monospace;background:var(--white);border-radius:99px;padding:1cqw 3cqw;color:var(--muted)}
.hv-web .pg{padding:4cqw;display:grid;gap:3.4cqw}
.hv-web .nav{display:flex;justify-content:space-between;align-items:center}.hv-web .nav b{font-weight:700;font-size:4cqw}.hv-web .nav span{display:flex;gap:2cqw}.hv-web .nav span i{width:8cqw;height:1.6cqw;border-radius:2cqw;background:#cfc4b4}
.hv-web .hb .t{height:4.4cqw;border-radius:2cqw;background:var(--ink);width:80%;margin-bottom:2cqw}.hv-web .hb .t2{width:55%;background:var(--red)}
.hv-web .hb .bt{display:inline-block;margin-top:2cqw;padding:2.2cqw 5cqw;border-radius:99px;background:var(--red);color:var(--cream);font-size:3cqw;font-weight:600;position:relative}
.hv-web .cards{display:grid;grid-template-columns:repeat(3,1fr);gap:2.4cqw}.hv-web .cards span{aspect-ratio:1/1.1;border-radius:2.6cqw;background:var(--white);border:1px solid var(--line);position:relative}
.hv-web .cards span::before{content:"";position:absolute;left:2cqw;top:2cqw;width:5cqw;height:5cqw;border-radius:1.4cqw;background:var(--brick)}
.hv-web .cur{position:absolute;z-index:4;left:70%;top:85%;font-size:6cqw;color:var(--ink);text-shadow:0 0 2px var(--cream);animation:hvCur 9s var(--ease) infinite}
@keyframes hvCur{0%,45%{left:80%;top:92%}62%,80%{left:22%;top:56%}66%{transform:scale(.8)}70%{transform:none}100%{left:80%;top:92%}}

/* stratégie & conseil */
.hv-strat svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.hv-strat .path{fill:none;stroke:var(--brick);stroke-width:2.5;stroke-linecap:round;stroke-dasharray:100;animation:hvDraw 9s var(--ease) infinite}
.hv-strat .base{fill:none;stroke:rgba(244,239,230,.15);stroke-width:2.5;stroke-dasharray:2 5}
@keyframes hvDraw{0%,4%{stroke-dashoffset:100}70%,90%{stroke-dashoffset:0}100%{stroke-dashoffset:0;opacity:0}}
.hv-strat .ms{position:absolute;transform:translate(-50%,-30%)}.hv-strat .ms>div{display:flex;flex-direction:column;align-items:center;gap:1.6cqw}
.hv-strat .ms b{width:9cqw;height:9cqw;border-radius:50%;display:grid;place-items:center;background:var(--red);font:500 3.4cqw 'DM Mono',monospace;box-shadow:0 0 0 2cqw rgba(163,0,30,.25)}
.hv-strat .ms span{font-size:3.3cqw;font-weight:600;white-space:nowrap}
.hv-strat .flag{position:absolute;right:0;top:0}

/* SEO */
.hv-seo .q{display:flex;align-items:center;gap:2.4cqw;background:var(--cream);color:var(--ink);border-radius:99px;padding:3cqw 4cqw;font:500 3.3cqw 'DM Mono',monospace}
.hv-seo .q .ty{display:inline-block;overflow:hidden;white-space:nowrap;width:0;border-right:2px solid var(--red);animation:hvType 9s steps(var(--n)) infinite}
@keyframes hvType{0%,4%{width:0}30%,92%{width:calc(var(--n) * 1ch)}100%{width:0}}
.hv-seo .res{position:relative;margin-top:4cqw;height:56cqw}
.hv-seo .r{position:absolute;left:0;right:0;height:16cqw;padding:3cqw 4cqw;display:flex;flex-direction:column;justify-content:center;gap:1.8cqw}
.hv-seo .r .ln:first-child{width:70%;height:2.6cqw;background:rgba(244,239,230,.4)}.hv-seo .r .ln:last-child{width:45%;height:1.8cqw}
.hv-seo .r.a{animation:hvRa 9s var(--ease) infinite}.hv-seo .r.b{animation:hvRb 9s var(--ease) infinite}
.hv-seo .r.me{background:var(--red);border-color:var(--red);animation:hvMe 9s var(--ease) infinite;flex-direction:row;align-items:center;justify-content:space-between}
.hv-seo .r.me b{font-size:3.8cqw}.hv-seo .r.me em{font-style:normal;font:500 2.8cqw 'DM Mono',monospace;background:var(--cream);color:var(--red);padding:1.2cqw 2.4cqw;border-radius:99px}
@keyframes hvRa{0%,38%{top:0}55%,100%{top:19cqw}}
@keyframes hvRb{0%,38%{top:19cqw}55%,100%{top:38cqw}}
@keyframes hvMe{0%,38%{top:38cqw}55%,100%{top:0}}

/* publicité */
.hv-ads .kp{display:grid;grid-template-columns:repeat(3,1fr);gap:2.6cqw}
.hv-ads .kp .card{padding:3cqw;font-size:2.9cqw;font-weight:500;color:rgba(244,239,230,.75)}.hv-ads .kp b{display:block;color:var(--brick);font-size:5cqw;line-height:1;margin-top:1.4cqw}
.hv-ads .ch{position:absolute;left:0;right:0;bottom:0;height:56%;display:flex;align-items:flex-end;gap:2.6cqw;padding:4cqw}
.hv-ads .ch span{flex:1;height:var(--h);border-radius:2cqw 2cqw 0 0;background:linear-gradient(var(--brick),var(--red));transform-origin:bottom;animation:hvBar 4.5s var(--ease) infinite;animation-delay:var(--dl)}
@keyframes hvBar{0%{transform:scaleY(.15)}45%,80%{transform:scaleY(1)}100%{transform:scaleY(.15)}}
.hv-ads .ch svg{position:absolute;inset:4cqw;width:calc(100% - 8cqw);height:calc(100% - 8cqw);overflow:visible}
.hv-ads .ch polyline{fill:none;stroke:var(--cream);stroke-width:2;stroke-dasharray:100;animation:hvDraw 4.5s var(--ease) infinite}

/* événements */
.hv-event .beam{position:absolute;bottom:-10%;width:40%;height:120%;background:linear-gradient(to top,rgba(232,96,60,.35),transparent 80%);clip-path:polygon(45% 100%,55% 100%,100% 0,0 0);transform-origin:bottom center;animation:hvBeam 5s ease-in-out infinite;z-index:0}
.hv-event .beam.l{left:-5%}.hv-event .beam.r{right:-5%;animation-delay:-2.5s}
@keyframes hvBeam{0%,100%{transform:rotate(-18deg)}50%{transform:rotate(18deg)}}
.hv-event .tk{position:absolute;left:50%;top:50%;width:76%;transform:translate(-50%,-50%) rotate(-4deg);background:var(--cream);color:var(--ink);border-radius:4cqw;padding:5cqw;display:grid;grid-template-columns:1fr auto;gap:3cqw;align-items:center;z-index:2;animation:hvTk 4s ease-in-out infinite}
@keyframes hvTk{50%{transform:translate(-50%,-53%) rotate(-2deg)}}
.hv-event .tk small{display:block;font:500 2.6cqw 'DM Mono',monospace;color:var(--red);letter-spacing:.08em;text-transform:uppercase}.hv-event .tk strong{display:block;font-size:6.4cqw;line-height:1.05;margin-top:1.4cqw}
.hv-event .cd{position:relative;width:17cqw;height:17cqw;border-radius:3cqw;background:var(--red);color:var(--cream);overflow:hidden;font-weight:700;font-size:5cqw}
.hv-event .cd span{position:absolute;inset:0;display:grid;place-items:center;opacity:0;animation:hvCd 8s infinite}
.hv-event .cd span:nth-child(2){animation-delay:2s}.hv-event .cd span:nth-child(3){animation-delay:4s}.hv-event .cd span:nth-child(4){animation-delay:6s;font-size:4cqw;background:var(--brick);color:var(--ink)}
@keyframes hvCd{0%{opacity:0;transform:translateY(100%)}5%,22%{opacity:1;transform:none}27%,100%{opacity:0;transform:translateY(-100%)}}
.hv-event .cf i{position:absolute;top:-4%;width:1.8cqw;height:3.4cqw;background:var(--brick);border-radius:1px;animation:hvCf 4s linear infinite;z-index:1}
@keyframes hvCf{to{transform:translateY(95cqw) rotate(540deg)}}

/* chat */
.hv-chat .cw{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;gap:2.6cqw}
.hv-chat .m{max-width:80%;padding:3cqw 3.6cqw;border-radius:4cqw;font-size:3.5cqw;line-height:1.35}
.hv-chat .u{align-self:flex-end;background:var(--red);border-bottom-right-radius:1cqw}
.hv-chat .b{align-self:flex-start;background:rgba(244,239,230,.1);border:1px solid rgba(244,239,230,.14);border-bottom-left-radius:1cqw}
.hv-chat .b::before{content:"🤖";margin-right:1.6cqw}
.hv-chat .ty{position:absolute;left:0;bottom:30cqw;color:var(--brick);padding:3cqw 4cqw;border-radius:4cqw;background:rgba(244,239,230,.08)}
.hv-chat .inp{margin-top:2cqw;display:flex;align-items:center;justify-content:space-between;padding:2.6cqw 3.6cqw;border-radius:99px;border:1px solid rgba(244,239,230,.18);font-size:3cqw;color:rgba(244,239,230,.5)}.hv-chat .inp b{width:6cqw;height:6cqw;border-radius:50%;background:var(--brick);display:grid;place-items:center;color:var(--ink);font-size:3cqw}

/* référencement IA */
.hv-ai .qq{margin-left:auto;width:max-content;max-width:86%;background:var(--red);padding:3cqw 4cqw;border-radius:4cqw 4cqw 1cqw 4cqw;font-size:3.5cqw}
.hv-ai .thk{display:flex;align-items:center;gap:2cqw;margin-top:4cqw;font:500 2.8cqw 'DM Mono',monospace;color:var(--brick)}
.hv-ai .ans{position:absolute;left:0;right:0;bottom:0;padding:4.4cqw;display:grid;gap:2.6cqw}
.hv-ai .ans>b{font-size:3.4cqw;display:flex;gap:1.6cqw;align-items:center}
.hv-ai .ans .ln{transform-origin:left}.hv-ai .ans .ln:nth-of-type(2){width:80%}.hv-ai .ans .ln:nth-of-type(3){width:62%}
.hv-ai .src{display:flex;gap:2cqw;flex-wrap:wrap}
.hv-ai .src span{font:500 2.7cqw 'DM Mono',monospace;padding:1.6cqw 2.8cqw;border-radius:99px;border:1px solid rgba(244,239,230,.2);color:rgba(244,239,230,.6)}
.hv-ai .src span.me{background:var(--cream);color:var(--red);border-color:var(--cream);font-weight:700;box-shadow:0 0 0 0 rgba(244,239,230,.6)}
.hv-ai .src span.me.k5{animation:hk5 var(--T,9s) var(--ease) infinite both,hvGlowPill 1.8s 5.4s infinite}
@keyframes hvGlowPill{70%{box-shadow:0 0 0 3cqw rgba(244,239,230,0)}100%{box-shadow:0 0 0 0 rgba(244,239,230,0)}}

/* automatisation / agents / intégration */
.hv-flow svg{position:absolute;inset:0;width:100%;height:100%}
.hv-flow .lk{fill:none;stroke:rgba(244,239,230,.18);stroke-width:2;vector-effect:non-scaling-stroke}
.hv-flow .lk2{fill:none;stroke:var(--brick);stroke-width:2.4;stroke-dasharray:3 9;vector-effect:non-scaling-stroke;animation:hvFlow .9s linear infinite}
@keyframes hvFlow{to{stroke-dashoffset:-12}}
.hv-flow .nd{position:absolute;width:38%;height:24%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.4cqw;font-size:3.4cqw;font-weight:600;text-align:center;transform:translate(-50%,-50%)}
.hv-flow .nd i{font-style:normal;font-size:7cqw;line-height:1}
.hv-flow .nd.on{animation:hvNode 9s infinite;animation-delay:var(--dl)}
@keyframes hvNode{0%,8%{border-color:rgba(244,239,230,.13);box-shadow:none}12%,22%{border-color:var(--brick);box-shadow:0 0 0 1.4cqw rgba(232,96,60,.2)}30%,100%{border-color:rgba(244,239,230,.13);box-shadow:none}}
.hv-flow .done{left:50%;bottom:-2%;transform:translateX(-50%)}
.hv-flow .done.k6{animation-name:hvDone}
@keyframes hvDone{0%,69%{opacity:0;transform:translate(-50%,3cqw)}75%,90%{opacity:1;transform:translate(-50%,0)}96%,100%{opacity:0;transform:translate(-50%,0)}}

/* audit */
.hv-audit .lst{display:grid;gap:2cqw;position:relative}
.hv-audit .it{display:flex;align-items:center;justify-content:space-between;padding:2.2cqw 3.6cqw;font-size:3.4cqw;font-weight:500}
.hv-audit .it b{width:6cqw;height:6cqw;border-radius:50%;display:grid;place-items:center;background:var(--brick);color:var(--ink);font-size:3.2cqw}
.hv-audit .scan{position:absolute;left:-2cqw;right:-2cqw;height:12cqw;background:linear-gradient(to bottom,transparent,rgba(232,96,60,.35),transparent);border-bottom:2px solid var(--brick);animation:hvScan 3s ease-in-out infinite alternate;pointer-events:none}
@keyframes hvScan{from{top:-6cqw}to{top:calc(100% - 6cqw)}}
.hv-audit .gg{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;gap:4cqw;padding:2.6cqw 4cqw}
.hv-audit .gg svg{width:14cqw;height:14cqw;transform:rotate(-90deg)}
.hv-audit .gg circle{fill:none;stroke-width:4}
.hv-audit .gg .bg{stroke:rgba(244,239,230,.15)}.hv-audit .gg .fg{stroke:var(--brick);stroke-linecap:round;stroke-dasharray:100;animation:hvGauge 9s var(--ease) infinite}
@keyframes hvGauge{0%,10%{stroke-dashoffset:100}60%,90%{stroke-dashoffset:22}100%{stroke-dashoffset:100}}
.hv-audit .gg span{font-size:3.4cqw;font-weight:600;line-height:1.3}.hv-audit .gg small{display:block;font:500 2.6cqw 'DM Mono',monospace;color:var(--brick);text-transform:uppercase;letter-spacing:.06em}

/* ateliers */
.hv-work .scr{padding:4cqw;display:grid;gap:3cqw}
.hv-work .scr small{font:500 2.6cqw 'DM Mono',monospace;color:var(--brick);text-transform:uppercase;letter-spacing:.08em}
.hv-work .pr{font:500 3.2cqw 'DM Mono',monospace;background:rgba(10,10,10,.5);border-radius:2.4cqw;padding:3cqw}
.hv-work .pr .ty{display:inline-block;vertical-align:bottom;overflow:hidden;white-space:nowrap;width:0;border-right:2px solid var(--brick);animation:hvType 9s steps(var(--n)) infinite}
.hv-work .ppl{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;align-items:flex-end}
.hv-work .pp{position:relative;width:15cqw;display:flex;flex-direction:column;align-items:center}
.hv-work .pp::before{content:"";width:9cqw;height:9cqw;border-radius:50%;background:var(--c,var(--brick))}
.hv-work .pp::after{content:"";width:15cqw;height:8cqw;margin-top:1cqw;border-radius:8cqw 8cqw 1cqw 1cqw;background:var(--c,var(--brick));opacity:.75}
.hv-work .pp i{position:absolute;top:-9cqw;font-style:normal;font-size:6cqw}

/* industrie */
.hv-industry .line{position:absolute;left:0;right:0;top:0;height:54%;overflow:hidden}
.hv-industry .lbl{position:absolute;left:3.6cqw;top:3.2cqw;display:flex;align-items:center;gap:1.6cqw;font:500 2.5cqw 'DM Mono',monospace;color:rgba(244,239,230,.65);text-transform:uppercase;letter-spacing:.06em}
.hv-industry .lbl i{width:1.6cqw;height:1.6cqw;border-radius:50%;background:#4ade80;box-shadow:0 0 0 0 rgba(74,222,128,.6);animation:hvPulseG 1.6s infinite}
@keyframes hvPulseG{100%{box-shadow:0 0 0 2cqw rgba(74,222,128,0)}}
.hv-industry .belt{position:absolute;z-index:1;left:0;right:0;bottom:14%;height:3.4cqw;background:repeating-linear-gradient(90deg,#2b2726 0 3cqw,#3a3433 3cqw 6cqw);border-top:1px solid rgba(244,239,230,.25);animation:hvBeltBg .6s linear infinite}
@keyframes hvBeltBg{to{background-position:6cqw 0}}
.hv-industry .rol{position:absolute;left:0;right:0;bottom:calc(14% - 3.6cqw);height:3.6cqw;background:radial-gradient(circle at 50% 50%,rgba(244,239,230,.35) 0 1cqw,transparent 1.1cqw) 0 0/9cqw 3.6cqw repeat-x}
.hv-industry .bx{position:absolute;z-index:2;bottom:100%;left:-14%;width:12cqw;height:10.5cqw;border-radius:1.4cqw;background:linear-gradient(#e9dfcf,#cbbba5);box-shadow:inset 0 -1.2cqw 0 rgba(0,0,0,.08);animation:hvBox 6s linear infinite}
.hv-industry .bx::before{content:"";position:absolute;left:44%;top:0;width:12%;height:100%;background:rgba(163,0,30,.35)}
.hv-industry .bx:nth-child(2){animation-delay:-2s}
.hv-industry .bx.ko{animation:hvBox 6s linear infinite -4s,hvKo 6s linear infinite -4s}
.hv-industry .bx.ko::after{content:"!";position:absolute;inset:0;display:grid;place-items:center;font-weight:800;font-size:5cqw;color:var(--cream);opacity:0;animation:hvKoTxt 6s linear infinite -4s}
@keyframes hvBox{from{left:-16%}to{left:108%}}
@keyframes hvKo{0%,49%{background:linear-gradient(#e9dfcf,#cbbba5)}52%,100%{background:var(--red);box-shadow:0 0 0 1.2cqw rgba(163,0,30,.3)}}
@keyframes hvKoTxt{0%,49%{opacity:0}52%,100%{opacity:1}}
.hv-industry .gate{position:absolute;z-index:3;left:56%;top:24%;bottom:14%;width:22cqw;transform:translateX(-50%);border:2px solid rgba(244,239,230,.3);border-bottom:none;border-radius:3cqw 3cqw 0 0}
.hv-industry .gate b{position:absolute;top:-1px;left:50%;transform:translate(-50%,-50%);font:500 2.4cqw 'DM Mono',monospace;letter-spacing:.06em;background:var(--brick);color:var(--ink);padding:1cqw 2.2cqw;border-radius:99px;white-space:nowrap}
.hv-industry .beam{position:absolute;left:8%;right:8%;top:6%;bottom:0;background:linear-gradient(rgba(232,96,60,.55),rgba(232,96,60,0));clip-path:polygon(40% 0,60% 0,100% 100%,0 100%);animation:hvScanB 2s ease-in-out infinite}
@keyframes hvScanB{0%,30%,70%,100%{opacity:.18}50%{opacity:1}}
.hv-industry .alert{right:3cqw;top:3cqw;font-size:2.8cqw;padding:1.6cqw 2.8cqw;opacity:0;animation:hvAlert 6s linear infinite -4s}
@keyframes hvAlert{0%,49%{opacity:0;transform:translateY(-2cqw)}53%,82%{opacity:1;transform:none}88%,100%{opacity:0}}
.hv-industry .row{position:absolute;left:0;right:0;bottom:0;height:40%;display:grid;grid-template-columns:1.25fr 1fr;gap:3cqw}
.hv-industry .row .card{position:relative;overflow:hidden;padding:3.2cqw}
.hv-industry .row small{display:block;font:500 2.3cqw 'DM Mono',monospace;color:rgba(244,239,230,.6);text-transform:uppercase;letter-spacing:.05em}
.hv-industry .sp{position:absolute;left:0;right:0;top:34%;height:30%;overflow:hidden}
.hv-industry .wave{position:absolute;left:0;top:0;width:200%;height:100%;animation:hvWave 4s linear infinite}
@keyframes hvWave{to{transform:translateX(-50%)}}
.hv-industry .wave path{fill:none;stroke:var(--brick);stroke-width:2;vector-effect:non-scaling-stroke}
.hv-industry .st{position:absolute;left:3.2cqw;right:3.2cqw;bottom:3cqw;height:6.4cqw}
.hv-industry .st span{position:absolute;inset:0;display:flex;align-items:center;gap:1.4cqw;font-size:2.9cqw;font-weight:600;padding:0 2.4cqw;border-radius:99px;opacity:0;animation:hvSt 9s infinite}
.hv-industry .st span:nth-child(1){background:rgba(74,222,128,.14);color:#86efac}
.hv-industry .st span:nth-child(2){background:rgba(232,96,60,.2);color:var(--brick);animation-delay:3s}
.hv-industry .st span:nth-child(3){background:var(--red);color:var(--cream);animation-delay:6s}
@keyframes hvSt{0%{opacity:0;transform:translateY(60%)}4%,30%{opacity:1;transform:none}34%,100%{opacity:0;transform:translateY(-60%)}}
.hv-industry .qc{display:flex;flex-direction:column;justify-content:space-between}
.hv-industry .ring{position:relative;width:15cqw;height:15cqw;align-self:center}
.hv-industry .ring svg{width:100%;height:100%;transform:rotate(-90deg)}
.hv-industry .ring circle{fill:none;stroke-width:3.4}
.hv-industry .ring .bg{stroke:rgba(244,239,230,.14)}
.hv-industry .ring .fg{stroke:#4ade80;stroke-linecap:round;stroke-dasharray:100;animation:hvRing 6s var(--ease) infinite}
@keyframes hvRing{0%{stroke-dashoffset:100}55%,90%{stroke-dashoffset:0}100%{stroke-dashoffset:0;opacity:0}}
.hv-industry .ring b{position:absolute;inset:0;display:grid;place-items:center;font-size:5.4cqw;color:#86efac}
.hv-industry .qc em{font-style:normal;font-size:2.9cqw;font-weight:600;text-align:center}

/* hub / agence */
.hv-orbit .core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:30cqw;height:30cqw;border-radius:50%;background:var(--red);display:grid;place-items:center;font-size:6.4cqw;font-weight:700;letter-spacing:-.03em;box-shadow:0 0 0 4cqw rgba(163,0,30,.2),0 0 0 9cqw rgba(163,0,30,.08);animation:hvBeatC 3s ease-in-out infinite}
@keyframes hvBeatC{50%{box-shadow:0 0 0 6cqw rgba(163,0,30,.16),0 0 0 12cqw rgba(163,0,30,.05)}}
.hv-orbit .orb{position:absolute;left:50%;top:50%;width:74cqw;height:74cqw;margin:-37cqw 0 0 -37cqw;border:1px dashed rgba(244,239,230,.25);border-radius:50%;animation:hvSpin 24s linear infinite}
.hv-orbit .orb.o2{width:52cqw;height:52cqw;margin:-26cqw 0 0 -26cqw;border-style:solid;border-color:rgba(232,96,60,.35);animation-direction:reverse;animation-duration:14s}
.hv-orbit .orb::after{content:"";position:absolute;top:-1.4cqw;left:50%;width:2.8cqw;height:2.8cqw;border-radius:50%;background:var(--brick)}
.hv-orbit .hvp{animation:hvFloat 4s ease-in-out infinite;z-index:2}
.hv-orbit .oa{left:4%;top:2%}.hv-orbit .ob{right:0;top:44%;animation-delay:-1.3s}.hv-orbit .oc{left:6%;bottom:2%;animation-delay:-2.6s}
@keyframes hvFloat{50%{transform:translateY(-3cqw)}}

@media(max-width:980px){
  .d-hero-grid{grid-template-columns:1fr;gap:36px}
  .hv{margin:0 auto;max-width:380px}
}
@media(max-width:560px){.hv{max-width:330px;border-radius:22px}}
@media(prefers-reduced-motion:reduce){.hv{opacity:1;transform:none}.hv .k1,.hv .k2,.hv .k3,.hv .k4,.hv .k5,.hv .k6{opacity:1}.hv .kt{opacity:0}.hv-seo .q .ty,.hv-work .pr .ty{width:auto}.hv-strat .path{stroke-dashoffset:0}}

/* ===== MENU : design ===== */
.menu>li:not(.menu-foot)>a,.menu>li>button{position:relative;background:none!important;font-weight:500;padding:10px 12px}
.menu>li:not(.menu-foot)>a::after,.menu>li>button::after{content:"";position:absolute;left:12px;right:12px;bottom:4px;height:2px;background:var(--brick);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.menu>li>a:hover::after,.menu>li>button:hover::after,.menu>li.open>button::after{transform:scaleX(1)}
.menu>li.open>button{color:var(--red)}
.menu .chev{display:inline-block;width:7px;height:7px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .35s var(--ease);font-size:0}
.menu li.open .chev{transform:translateY(1px) rotate(-135deg)}
.badge-new{background:var(--brick);animation:none;font-size:.56rem;padding:3px 7px}
.mega{border-radius:20px;padding:22px;gap:10px 18px;box-shadow:0 30px 70px rgba(10,10,10,.16),0 2px 6px rgba(10,10,10,.05)}
.mega .mega-h{display:flex;align-items:center;gap:8px;color:var(--red);margin:0 0 6px 8px}
.mega .mega-h::before{content:"";width:14px;height:2px;background:var(--brick)}
.mega a{display:grid;grid-template-columns:38px 1fr;column-gap:12px;align-items:center;padding:9px 10px;border-radius:12px;position:relative}
.mega a .mi{grid-row:span 2;width:38px;height:38px;border-radius:10px;background:var(--paper);display:grid;place-items:center;font-style:normal;font-size:1.1rem;transition:transform .4s cubic-bezier(.34,1.56,.64,1),background .25s}
.mega a strong{grid-column:2}
.mega a span{grid-column:2}
.mega a::after{content:"→";position:absolute;right:12px;top:50%;transform:translate(-6px,-50%);opacity:0;color:var(--red);font-weight:700;transition:opacity .25s,transform .3s var(--ease)}
.mega a:hover{background:var(--paper);transform:none}
.mega a:hover .mi{background:var(--white);transform:scale(1.1) rotate(-6deg)}
.mega a:hover::after{opacity:1;transform:translate(0,-50%)}
.mega a:hover strong{color:var(--red)}
.mega a:not(:has(.mi)){display:block}
.mega.cols-3{grid-template-columns:repeat(3,272px)}
.mega.cols-2{grid-template-columns:repeat(2,290px)}
.mega-foot{margin-top:6px;background:var(--paper);border:none;border-radius:14px;padding:14px 18px}
.mega-foot a{display:inline-flex;grid-template-columns:none}
.mega-foot a::after{display:none}
.menu-foot{display:none}
.nav-backdrop{display:none}
.burger{position:relative;width:46px;height:46px;border-radius:50%;background:var(--white);border:1px solid var(--line);font-size:0;cursor:pointer}
.burger span{position:absolute;left:14px;right:14px;height:2px;border-radius:2px;background:var(--ink);transition:transform .4s var(--ease),top .4s var(--ease)}
.burger span:first-child{top:18px}
.burger span:last-child{top:26px}
.burger[aria-expanded="true"]{background:var(--ink);border-color:var(--ink)}
.burger[aria-expanded="true"] span{background:var(--cream);top:22px}
.burger[aria-expanded="true"] span:first-child{transform:rotate(45deg)}
.burger[aria-expanded="true"] span:last-child{transform:rotate(-45deg)}

@media(max-width:1240px){
  .burger{display:block}
  html.nav-open,html.nav-open body{overflow:hidden}
  html.nav-open header{animation:none;transform:none;backdrop-filter:none;-webkit-backdrop-filter:none;background:var(--paper);border-color:var(--line)}
  header #menu{display:flex;flex-direction:column;align-items:stretch;gap:0;position:fixed;top:72px;right:0;bottom:0;width:min(460px,100%);left:auto;max-height:none;margin:0;padding:18px 22px 24px;background:var(--paper);border-left:1px solid var(--line);overflow-y:auto;overscroll-behavior:contain;z-index:60;clip-path:inset(0 0 0 100%);opacity:0;pointer-events:none;visibility:hidden;transition:clip-path .5s var(--ease),opacity .3s,visibility 0s linear .5s;box-shadow:-30px 0 60px rgba(10,10,10,.12)}
  header #menu.show{clip-path:inset(0 0 0 0);opacity:1;pointer-events:auto;visibility:visible;transition:clip-path .5s var(--ease),opacity .3s,visibility 0s}
  header #menu>li{border-bottom:1px solid var(--line);opacity:0;transform:translateY(10px);transition:opacity .45s var(--ease),transform .45s var(--ease)}
  header #menu.show>li{opacity:1;transform:none}
  header #menu.show>li:nth-child(1){transition-delay:.08s}header #menu.show>li:nth-child(2){transition-delay:.12s}header #menu.show>li:nth-child(3){transition-delay:.16s}header #menu.show>li:nth-child(4){transition-delay:.2s}header #menu.show>li:nth-child(5){transition-delay:.24s}header #menu.show>li:nth-child(6){transition-delay:.28s}header #menu.show>li:nth-child(7){transition-delay:.32s}header #menu.show>li:nth-child(8){transition-delay:.36s}
  header #menu>li:not(.menu-foot)>a,header #menu>li>button{width:100%;justify-content:space-between;padding:18px 4px;font-size:1.35rem;font-weight:800;letter-spacing:-.03em;border-radius:0}
  header #menu>li>a::after,header #menu>li>button::after{display:none}
  header #menu>li:not(.menu-foot)>a{display:flex;align-items:center;gap:10px}
  header #menu>li:not(.menu-foot)>a:not(:has(.badge-new))::before{content:"";order:2;margin-left:auto;width:8px;height:8px;border-right:1.8px solid currentColor;border-top:1.8px solid currentColor;transform:rotate(45deg);opacity:.5}
  header #menu>li:not(.menu-foot)>a:has(.badge-new){justify-content:flex-start}
  header #menu .chev{width:9px;height:9px}
  header #menu .mega,header #menu.show .mega{position:static;display:block;opacity:1;visibility:visible;transform:none;box-shadow:none;border:none;border-radius:0;background:none;padding:0;max-height:0;overflow:hidden;transition:max-height .5s var(--ease)}
  header #menu.show li.open .mega{max-height:1400px;display:block}
  header #menu .mega>div{padding:0 0 10px}
  header #menu .mega .mega-h{margin:14px 0 6px 4px}
  header #menu .mega a{padding:10px 6px}
  header #menu .mega a::after{display:none}
  header #menu .mega-foot{margin:4px 0 16px}
  header #menu .menu-foot{display:flex;flex-direction:column;gap:12px;border-bottom:none;margin-top:auto;padding-top:24px}
  header #menu .menu-foot .btn{justify-content:center;padding:16px 22px;font-size:1rem}
  header #menu .menu-mail{text-align:center;font-size:.9rem;color:var(--muted);text-decoration:underline;text-underline-offset:3px}
  html.nav-open .mbar{display:none}
  header #menu .menu-foot .btn-red{background:var(--red);color:#fff}
  .nav-backdrop{display:block;position:fixed;inset:72px 0 0 0;background:rgba(10,10,10,.42);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);opacity:0;visibility:hidden;transition:opacity .4s,visibility 0s linear .4s;z-index:45}
  html.nav-open .nav-backdrop{opacity:1;visibility:visible;transition:opacity .4s,visibility 0s}
}
@media(max-width:680px){
  header #menu{width:100%;border-left:none;padding:12px 18px 22px}
  header #menu>li>a,header #menu>li>button{font-size:1.25rem;padding:16px 2px}
  .nav-cta .btn-red{display:none}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  .rv,.line>span,.fade-in,.assistant li,.mf .w>i,.mf-it{opacity:1!important;transform:none!important;filter:none!important}
  .blk::before{transform:scaleX(1)!important}
  .tile{opacity:1!important;transform:none!important}.liv-ok,.liv-bar{transform:none!important}.blk .w>i{color:var(--cream)}
  .rot b{opacity:0}.rot b.on{opacity:1;transform:none}
  .h1-hero .rot b.on .ch{transform:none!important}
}
