/* ==========================================================================
   Maxelik, page « Valoriser mon image de marque » : fiche de marque simulée,
   anatomie des résultats sur votre nom, leviers en mosaïque, méthode des avis
   ========================================================================== */
/* ---------- HERO ---------- */
.im-hero{position:relative;overflow:hidden;isolation:isolate;background:#141d22;color:#c8d3d9;
  min-height:min(640px,calc(100svh - var(--head-top) - var(--head-bar)));display:flex;align-items:center}
.im-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% 35%;z-index:-3;animation:imZoom 22s var(--ease) both}
@keyframes imZoom{from{transform:scale(1.1)}to{transform:none}}
.im-hero::before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(20,24,38,.95) 0%,rgba(20,24,38,.88) 45%,rgba(28,40,78,.62) 75%,rgba(28,40,78,.5) 100%),linear-gradient(0deg,rgba(10,30,70,.55),transparent 45%)}
.im-hero .houle{z-index:-1}
.im-hero .houle-p>use:nth-child(4){fill:#fff}
.im-hero .wrap{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:clamp(28px,4vw,64px);align-items:center;padding-block:clamp(20px,3.4svh,40px) calc(clamp(20px,3.4svh,40px) + 34px)}
.im-k{display:inline-flex;align-items:center;gap:8px;font-weight:800;color:#9fe0ff;font-size:.95rem}
.im-k .ico{width:24px;height:24px}
.im-k .ico .s{stroke:#e9f0f3}.im-k .ico .fs{fill:rgba(255,255,255,.1)}
.im-hero h1{margin-top:8px;color:#fff}
.im-lead{margin-top:clamp(10px,1.8svh,16px);font-size:clamp(1rem,.95rem + .2vw,1.1rem);color:#d3dde2}
.im-proofs{list-style:none;margin:clamp(14px,2.4svh,22px) 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.im-proofs li{padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.07);font-size:.9rem;color:#dbe4e8}
.im-proofs b{color:#fff}
.im-acts{display:flex;flex-wrap:wrap;gap:12px;margin-top:clamp(16px,2.8svh,26px)}
.btn-ghost-w{background:transparent;color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.45)}
.btn-ghost-w:hover{box-shadow:inset 0 0 0 1.5px #fff}
@media (prefers-reduced-motion:reduce){.im-hero-bg{animation:none}}

/* fiche de marque simulée : étoiles qui se remplissent, avis qui défilent */
.im-kp{position:relative;justify-self:end;width:100%;max-width:400px;padding:16px;border-radius:var(--r);background:#fff;color:var(--ink);box-shadow:0 50px 100px -40px rgba(0,0,0,.85)}
.im-kp::before{content:"";position:absolute;inset:-2px;z-index:-1;border-radius:inherit;background:conic-gradient(from var(--ang,0deg),#0083FF,#00BAFF,transparent 40%,transparent 60%,#0083FF);animation:imSpin 6s linear infinite;filter:blur(12px);opacity:.65}
@property --ang{syntax:"<angle>";inherits:false;initial-value:0deg}
@keyframes imSpin{to{--ang:360deg}}
.im-kp-bar{display:flex;align-items:center;gap:10px;padding:9px 16px;border-radius:999px;background:var(--soft);font-weight:700;font-size:.9rem;color:var(--slate)}
.im-kp-bar .g{font-weight:900;background:linear-gradient(90deg,#4285f4,#ea4335 40%,#fbbc05 65%,#34a853);-webkit-background-clip:text;background-clip:text;color:transparent}
.im-kp-card{margin-top:12px;padding:16px;border-radius:var(--r);background:var(--soft)}
.im-kp-n{font-size:1.2rem;font-weight:900;color:var(--slate)}
.im-kp-r{display:flex;align-items:center;gap:8px;margin-top:4px;font-size:.9rem}
.im-kp-r b{color:var(--slate)}
.im-kp-r small{color:#1a4fb4;font-size:.82rem}
.im-stars{position:relative;display:inline-block;font-size:1rem;letter-spacing:1px;color:#dfe5ea;line-height:1}
.im-stars::before{content:"★★★★★"}
.im-stars i{position:absolute;inset:0;overflow:hidden;width:98%;color:#fbbc05;animation:imFill 2.4s var(--ease) .4s both}
.im-stars i::before{content:"★★★★★"}
@keyframes imFill{from{width:0}}
.im-kp-c{margin-top:2px;font-size:.84rem;color:var(--ink-2)}
.im-kp-b{display:flex;gap:6px;margin-top:10px}
.im-kp-b span{padding:5px 10px;border-radius:999px;background:var(--soft);font-size:.76rem;font-weight:800;color:#1a4fb4}
.im-kp-rev{position:relative;height:62px;margin-top:12px;border-top:1px solid #eef3f7}
.im-kp-rev p{position:absolute;inset:10px 0 0;font-size:.84rem;color:var(--ink-2);line-height:1.4;opacity:0;animation:imRev 12s infinite}
.im-kp-rev p:nth-child(2){animation-delay:4s}.im-kp-rev p:nth-child(3){animation-delay:8s}
.im-kp-rev b{display:block;color:var(--slate);font-size:.82rem}
@keyframes imRev{0%{opacity:0;transform:translateY(8px)}5%,30%{opacity:1;transform:none}36%,100%{opacity:0;transform:translateY(-6px)}}
.im-kp-ia{display:flex;align-items:center;gap:8px;margin-top:10px;padding:10px 12px;border-radius:var(--r);background:linear-gradient(100deg,#e3f0ff,#e6f8ff);font-size:.8rem;font-weight:700;color:var(--slate);line-height:1.35}
.im-kp-ia span{flex:none;width:18px;height:18px;border-radius:50%;background:var(--grad)}
.im-kp-ill{margin-top:4px;font-size:.72rem;color:var(--gray);text-align:right}
@media (prefers-reduced-motion:reduce){
  .im-kp::before,.im-stars i{animation:none}
  .im-kp-rev p{animation:none}.im-kp-rev p:first-child{opacity:1}
}
html:not(.js) .im-kp-rev p:first-child{opacity:1;animation:none}

/* ---------- ANATOMIE : la page de résultats sur votre nom ---------- */
.im-ana{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,5vw,80px);align-items:center}
.im-ana-mock{position:relative;padding:20px;border-radius:var(--r);background:var(--soft);display:grid;gap:12px}
.im-ana-mock span,.im-ana-mock i{display:block;border-radius:var(--r);background:#dbe5ee}
.im-am-bar{height:36px;border-radius:999px;background:#fff;box-shadow:0 22px 46px -34px rgba(19,40,60,.42)}
.im-am-ia,.im-am-res,.im-am-kp,.im-am-oth{position:relative;padding:14px;border-radius:var(--r);background:#fff;display:grid;gap:7px}
.im-am-ia{background:linear-gradient(100deg,#e3f0ff,#e6f8ff)}
.im-am-ads{position:relative;padding:12px 14px;border-radius:var(--r);background:#fff;display:grid;gap:6px}
.im-am-ads em{justify-self:start;padding:2px 8px;border-radius:999px;background:#eef3f7;font-style:normal;font-size:.66rem;font-weight:900;color:var(--slate)}
.im-am-vid{position:relative;padding:12px;border-radius:var(--r);background:#fff;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.im-am-vid i{position:relative;aspect-ratio:16/9;height:auto;border-radius:var(--r);background:linear-gradient(135deg,#1b2a36,#0a4a91)}
.im-am-vid i::after{content:"";position:absolute;left:50%;top:50%;translate:-40% -50%;border-left:11px solid #fff;border-top:7px solid transparent;border-bottom:7px solid transparent}
.im-am-ads .pt{animation-delay:2.4s}.im-am-vid .pt{animation-delay:3s}
.im-am-ia i{height:8px}.im-am-ia i.c{width:60%}
.im-am-row{display:grid;grid-template-columns:1.3fr 1fr;gap:12px}
.im-ana-mock .t{height:12px;width:70%;background:#9cc3ea}
.im-ana-mock .l{height:8px}.im-ana-mock .l.c{width:55%}
.im-am-res .sl{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:4px}
.im-am-res .sl i{height:8px;background:#c4daf0}
.im-am-kp .st{background:none;color:#fbbc05;font-size:.9rem;letter-spacing:1px;height:auto}
.im-am-kp .rv2{display:grid;gap:6px;margin-top:4px}
.im-am-kp .rv2 i{height:20px;background:#eef3f7}
.im-ana .pt{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--grad);color:#fff;font-weight:900;font-size:.85rem;box-shadow:0 0 0 4px rgba(0,131,255,.18)}
.im-ana-mock .pt{position:absolute;top:-12px;right:-12px;z-index:1;animation:imPulse 2.6s ease-in-out infinite}
.im-am-res .pt{animation-delay:.6s}.im-am-oth .pt{animation-delay:1.2s}.im-am-ia .pt{animation-delay:1.8s}
@keyframes imPulse{50%{box-shadow:0 0 0 10px rgba(0,131,255,0)}}
.im-ana-l{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.im-ana-l li{display:grid;grid-template-columns:30px minmax(0,1fr);gap:16px;align-items:start;padding:18px 20px;border-radius:var(--r);background:#fff;box-shadow:0 22px 46px -34px rgba(19,40,60,.42);transition:transform .35s var(--ease),box-shadow .35s}
.im-ana-l li:hover{transform:translateX(6px);box-shadow:0 20px 36px -26px rgba(19,40,60,.55)}
.im-ana-l h3{font-size:1.08rem}
.im-ana-l p{margin-top:4px;color:var(--ink-2);font-size:.95rem}
@media (prefers-reduced-motion:reduce){.im-ana-mock .pt{animation:none}}

/* ---------- MÉTHODE : quatre étapes sur fond sombre, ligne lumineuse ---------- */
.im-meth-s{position:relative;overflow:hidden;isolation:isolate;background:radial-gradient(90% 120% at 0% 0%,#14456f 0%,#16293a 45%,#141d22 100%)}
.im-meth-s::before{content:"";position:absolute;z-index:-1;right:-160px;bottom:-200px;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(0,186,255,.2),transparent 65%)}
.im-meth-s .lead{color:#cfdbe1}
.im-meth{position:relative;list-style:none;margin:0;padding:22px 0 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.im-meth::before,.im-meth::after{content:"";position:absolute;left:0;right:0;top:0;height:3px;border-radius:var(--r);background:rgba(255,255,255,.12)}
.im-meth::after{background:linear-gradient(90deg,#00BAFF,#0083FF,#7fd8ff);box-shadow:0 0 18px rgba(0,186,255,.7);transform-origin:0 50%}
html.js .im-meth.rv{opacity:1;transform:none}
html.js .im-meth.rv::after{transform:scaleX(0);transition:transform 2.2s var(--ease) .2s}
html.js .im-meth.rv.is-in::after{transform:none}
.im-meth>li{position:relative;display:flex;flex-direction:column;gap:12px;padding:30px 22px 24px;border-radius:var(--r);background:rgba(255,255,255,.04);transition:background-color .4s,border-color .4s,transform .4s var(--ease)}
.im-meth>li::before{content:"";position:absolute;left:22px;top:-28.5px;width:14px;height:14px;border-radius:50%;background:#7fd8ff;box-shadow:0 0 0 5px rgba(0,186,255,.25),0 0 18px rgba(0,186,255,.9)}
.im-meth>li:hover{background:rgba(255,255,255,.08);border-color:rgba(127,216,255,.45);transform:translateY(-6px)}
html.js .im-meth.rv>li{opacity:0;transform:translateY(20px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
html.js .im-meth.rv.is-in>li{opacity:1;transform:none}
html.js .im-meth.rv.is-in>li:nth-child(2){transition-delay:.45s}
html.js .im-meth.rv.is-in>li:nth-child(3){transition-delay:.9s}
html.js .im-meth.rv.is-in>li:nth-child(4){transition-delay:1.35s}
.im-meth-n{font-size:3.4rem;font-weight:300;line-height:1;color:transparent;-webkit-text-stroke:1px rgba(127,216,255,.7);transition:color .4s}
.im-meth>li:hover .im-meth-n{color:#7fd8ff;-webkit-text-stroke-color:transparent}
.im-meth h3{color:#fff;font-size:1.1rem}
.im-meth p{color:#cfdbe1;font-size:.95rem}
.im-meth a{color:#7fd8ff;font-weight:700}
.im-meth .im-meth-l{min-height:5.6em;margin-top:auto;padding-top:14px;border-top:1px solid rgba(255,255,255,.12);color:#fff;font-weight:700;font-size:.9rem}
.im-meth-l span{display:block;margin-bottom:2px;font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#7fd8ff}
@media (prefers-reduced-motion:reduce){html.js .im-meth.rv::after,html.js .im-meth.rv>li{transition:none;transform:none;opacity:1}}

/* ---------- LEVIERS : mosaïque lumineuse ---------- */
.im-lev-s{position:relative;overflow:hidden;isolation:isolate;background:linear-gradient(180deg,#eef6ff 0%,#f7fbff 55%,#ecf5ff 100%)}
.im-lev-s::before{content:"";position:absolute;z-index:-1;right:-10%;top:10%;width:640px;height:640px;border-radius:50%;background:radial-gradient(circle,rgba(0,186,255,.24),transparent 65%);filter:blur(20px)}
.im-bento{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.im-b{position:relative;display:flex;flex-direction:column;gap:10px;padding:24px 22px 26px;border-radius:var(--r);background:rgba(255,255,255,.8);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 30px 60px -45px rgba(0,83,170,.6);transition:transform .45s var(--ease),box-shadow .45s var(--ease)}
.im-b.wide{grid-column:span 2}
.im-b.big{grid-column:span 2;background:radial-gradient(120% 140% at 100% 0%,#0a4a91 0%,#112a40 55%,#141d22 100%);box-shadow:0 40px 70px -40px rgba(10,40,80,.8)}
.im-b:hover{transform:translateY(-6px);box-shadow:0 34px 60px -32px rgba(0,83,170,.55)}
.im-b .ico{width:46px;height:46px;color:var(--slate)}
.im-b h3{font-size:1.08rem}
.im-b p{color:var(--ink-2);font-size:.94rem}
.im-b a{font-weight:700}
.im-b .lnk{margin-top:auto}
.im-b.big h3{color:#fff;font-size:1.25rem}
.im-b.big p{color:#cfdbe1;font-size:1rem}
.im-b.big a{color:#7fd8ff}
.im-b.big .ico{width:54px;height:54px;padding:8px;border-radius:var(--r);background:var(--grad);box-shadow:0 14px 26px -12px rgba(0,131,255,.8)}
.im-b.big .ico .s,.im-b.big .ico .a{stroke:#fff}.im-b.big .ico .f{fill:#fff}.im-b.big .ico .fs{fill:rgba(255,255,255,.2)}

/* ---------- AVIS : quatre règles et une réponse type ---------- */
.im-avis-s{position:relative;background:#141d22;overflow:clip;isolation:isolate}
.im-avis-bg{position:absolute;left:0;top:-15%;width:100%;height:130%;object-fit:cover;object-position:50% 40%;z-index:-3}
.im-avis-s::after{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(100deg,rgba(20,29,34,.95) 0%,rgba(20,29,34,.88) 50%,rgba(13,58,102,.8) 100%)}
@supports (animation-timeline:view()){
  .im-avis-bg{animation:imPar linear both;animation-timeline:view()}
  @keyframes imPar{from{transform:translateY(-10%)}to{transform:translateY(10%)}}
}
@media (prefers-reduced-motion:reduce){.im-avis-bg{animation:none!important}}
.im-avis-s::before{content:"";position:absolute;z-index:-1;right:-120px;top:-120px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(0,186,255,.22),transparent 65%)}
.im-avis-g{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(32px,5vw,80px);align-items:center}
.im-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px;counter-reset:st}
.im-steps li{counter-increment:st;position:relative;padding:20px 20px 22px;border-radius:var(--r);background:rgba(255,255,255,.05);transition:background-color .35s,border-color .35s}
.im-steps li:hover{background:rgba(255,255,255,.09);border-color:rgba(127,216,255,.45)}
.im-steps li::before{content:counter(st,decimal-leading-zero);display:grid;place-items:center;width:34px;height:34px;margin-bottom:12px;border-radius:50%;background:var(--grad);color:#fff;font-weight:900;font-size:.82rem}
.im-steps h3{color:#fff;font-size:1.06rem}
.im-steps p{margin-top:6px;color:#cfdbe1;font-size:.94rem}
.im-rep{display:grid;gap:12px}
.im-rep-a,.im-rep-b{padding:18px;border-radius:var(--r);background:#fff;color:var(--ink-2);font-size:.94rem;box-shadow:0 30px 60px -36px rgba(0,0,0,.8)}
.im-rep-b{margin-left:12%;background:linear-gradient(100deg,#e3f0ff,#f2f9ff)}
.im-rep .who{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.im-rep .who span{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#e4ebf0;color:var(--slate);font-weight:900;font-size:.75rem}
.im-rep .who span.me{background:var(--grad);color:#fff}
.im-rep .who b{color:var(--slate)}
.im-rep .s2{margin-left:auto;font-style:normal;color:#fbbc05;letter-spacing:1px}
html.js .im-rep.rv .im-rep-b{opacity:0;transform:translateY(16px);transition:opacity .7s var(--ease) .9s,transform .7s var(--ease) .9s}
html.js .im-rep.rv.is-in .im-rep-b{opacity:1;transform:none}
.im-rep-ill{font-size:.72rem;color:#9fb2bd;text-align:right}
@media (prefers-reduced-motion:reduce){html.js .im-rep.rv .im-rep-b{opacity:1;transform:none;transition:none}}

/* ---------- VISIBILITÉ IA : cité, puis recommandé ---------- */
.im-ia-s{position:relative;overflow:clip;isolation:isolate;background:#fff}
.im-ia-s::before{content:"";position:absolute;z-index:-1;left:50%;top:30%;width:900px;height:600px;translate:-50% 0;border-radius:50%;background:radial-gradient(closest-side,rgba(0,186,255,.12),transparent)}
.im-ia{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.im-ia-p{display:flex;flex-direction:column;gap:14px;padding:clamp(24px,2.6vw,36px);border-radius:var(--r);background:linear-gradient(180deg,#f4f9ff,#fff);box-shadow:0 40px 70px -55px rgba(0,83,170,.6);transition:transform .45s var(--ease),box-shadow .45s var(--ease)}
.im-ia-p:hover{transform:translateY(-6px);box-shadow:0 44px 70px -45px rgba(0,83,170,.6)}
.im-ia-tag{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;padding:6px 14px 6px 8px;border-radius:999px;background:var(--grad);color:#fff;font-size:.82rem;font-weight:900}
.im-ia-tag .ico{width:24px;height:24px}
.im-ia-tag .ico .s,.im-ia-tag .ico .a{stroke:#fff}.im-ia-tag .ico .f{fill:#fff}.im-ia-tag .ico .fs{fill:rgba(255,255,255,.2)}
.im-ia-p h3{font-size:clamp(1.25rem,1.1rem + .5vw,1.5rem)}
.im-ia-p>p:last-child{color:var(--ink-2);font-size:.98rem}
.im-ia-mock{padding:16px;border-radius:var(--r);background:#fff;box-shadow:0 24px 40px -30px rgba(19,40,60,.45)}
.im-ia-mock .q{margin-left:auto;width:fit-content;max-width:92%;padding:10px 14px;border-radius:var(--r);background:var(--slate);color:#fff;font-size:.88rem;font-weight:600}
.im-ia-mock .aio{margin-top:12px;padding:12px;border-radius:var(--r);background:linear-gradient(100deg,#e8f2ff,#eef9ff)}
.im-ia-mock .aio .h{display:flex;align-items:center;gap:8px;font-size:.78rem;font-weight:900;color:var(--slate)}
.im-ia-mock .aio .h span{width:16px;height:16px;border-radius:50%;background:conic-gradient(#4285f4,#ea4335,#fbbc05,#34a853,#4285f4)}
.im-ia-mock .aio i{display:block;height:8px;margin-top:7px;border-radius:var(--r);background:#cfdeec}
.im-ia-mock .aio i.c{width:60%}
.im-ia-mock .aio ul{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.im-ia-mock .aio li{padding:4px 10px;border-radius:999px;background:#fff;font-size:.74rem;font-weight:800;color:var(--ink-2);box-shadow:0 22px 46px -34px rgba(19,40,60,.42)}
.im-ia-mock .aio li.me{background:var(--grad);color:#fff;box-shadow:0 8px 16px -8px rgba(0,131,255,.8);animation:imLueur 3s ease-in-out infinite}
@keyframes imLueur{50%{box-shadow:0 0 0 6px rgba(0,131,255,.15),0 8px 16px -8px rgba(0,131,255,.8)}}
.im-ia-mock .reco{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:6px;counter-reset:r}
.im-ia-mock .reco li{counter-increment:r;display:grid;grid-template-columns:24px minmax(0,1fr) auto;column-gap:10px;align-items:center;padding:8px 10px;border-radius:var(--r);background:#f6f9fb;font-size:.8rem;color:var(--ink-2)}
.im-ia-mock .reco li::before{content:counter(r);grid-row:span 2;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#e4ebf0;font-weight:900;font-size:.75rem}
.im-ia-mock .reco b{color:var(--slate);font-size:.88rem}
.im-ia-mock .reco small{grid-column:2}
.im-ia-mock .reco em{grid-column:3;grid-row:1/3;font-style:normal;padding:3px 9px;border-radius:999px;background:var(--grad);color:#fff;font-size:.7rem;font-weight:900}
.im-ia-mock .reco li.me{background:linear-gradient(100deg,#e3f0ff,#e6f8ff);box-shadow:0 0 0 1.5px #7cc4ff;animation:imLueur 3s ease-in-out 1.5s infinite}
.im-ia-mock .reco li.me::before{background:var(--grad);color:#fff}
/* parcours : un point lumineux parcourt les quatre étapes */
.im-ia-path{position:relative;list-style:none;margin:clamp(28px,3vw,40px) 0 0;padding:30px 0 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.im-ia-path::before{content:"";position:absolute;left:0;right:0;top:8px;height:3px;border-radius:var(--r);background:linear-gradient(90deg,#7fd8ff 0 50%,#0083FF 50% 100%);opacity:.45}
.im-ia-path::after{content:"";position:absolute;top:2px;left:0;width:15px;height:15px;border-radius:50%;background:#fff;box-shadow:0 0 0 4px #0083FF,0 0 18px 4px rgba(0,186,255,.8);animation:imTrajet 8s var(--ease) infinite}
@keyframes imTrajet{0%{left:0}90%,100%{left:calc(100% - 15px)}}
.im-ia-path li{display:flex;flex-direction:column;gap:4px;padding:16px 16px 18px;border-radius:var(--r);background:#f6f9fc}
.im-ia-path b{font-size:1.02rem;color:var(--slate)}
.im-ia-path span{font-size:.88rem;color:var(--ink-2)}
.im-ia-path em{align-self:flex-start;margin-top:6px;font-style:normal;padding:3px 10px;border-radius:999px;font-size:.72rem;font-weight:900}
.im-ia-path em.c{background:var(--soft-b);color:var(--blue)}
.im-ia-path em.r{background:var(--grad);color:#fff}
.im-ia-do{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:clamp(24px,4vw,56px);align-items:center;margin-top:clamp(28px,3vw,40px)}
.im-ia-k{font-size:.8rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--blue)}
.im-ia-chips{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.im-ia-chips li{padding:7px 13px;border-radius:999px;background:#fff;box-shadow:0 22px 46px -34px rgba(19,40,60,.42);font-size:.86rem;font-weight:700;color:var(--slate)}
.im-ia-proof{padding:20px 22px;border-radius:var(--r);background:radial-gradient(120% 140% at 100% 0%,#0a4a91 0%,#112a40 55%,#141d22 100%);color:#dbe4e8;font-size:.97rem}
.im-ia-proof a{color:#7fd8ff;font-weight:800}
@media (prefers-reduced-motion:reduce){.im-ia-path::after,.im-ia-mock .aio li.me,.im-ia-mock .reco li.me{animation:none}}

/* ---------- CAS CLIENT : Celesta Spectacles ---------- */
.im-cas-s{position:relative;overflow:clip;isolation:isolate;background:linear-gradient(180deg,#eef6ff 0%,#f7fbff 60%,#eaf4ff 100%)}
.im-cas-s::before{content:"";position:absolute;z-index:-1;left:-10%;bottom:-20%;width:620px;height:620px;border-radius:50%;background:radial-gradient(circle,rgba(0,186,255,.22),transparent 65%);filter:blur(20px)}
.im-cas{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(36px,5vw,72px);align-items:start}
.im-cas-vis{position:sticky;top:calc(var(--head-bar) + 30px);padding:0 9% 12% 0}
.im-cas-nav{border-radius:var(--r);overflow:hidden;background:#fff;box-shadow:0 50px 90px -45px rgba(19,40,60,.65)}
.im-cas-bar{display:flex;align-items:center;gap:6px;padding:10px 14px;background:#eef3f7}
.im-cas-bar i{width:10px;height:10px;border-radius:50%;background:#c9d6df}
.im-cas-bar i:first-child{background:#ff6b5e}.im-cas-bar i:nth-child(2){background:#ffbd2e}.im-cas-bar i:nth-child(3){background:#28c840}
.im-cas-bar span{margin-left:12px;padding:3px 14px;border-radius:999px;background:#fff;font-size:.78rem;font-weight:700;color:var(--ink-2)}
.im-cas-screen{position:relative;overflow:hidden;aspect-ratio:16/10}
.im-cas-screen img{display:block;width:100%;height:auto;animation:imDefile 36s ease-in-out infinite alternate}
.im-cas-tel{position:absolute;right:0;bottom:0;width:27%;padding:7px;border-radius:var(--r);background:var(--slate);box-shadow:0 40px 70px -30px rgba(19,40,60,.7)}
.im-cas-tel .im-cas-screen{aspect-ratio:390/844;border-radius:var(--r)}
.im-cas-tel img{animation-name:imDefileTel;animation-duration:28s}
.im-cas-vis:hover img{animation-play-state:paused}
@keyframes imDefile{0%,8%{transform:none}92%,100%{transform:translateY(-75%)}}
@keyframes imDefileTel{0%,8%{transform:none}92%,100%{transform:translateY(-66%)}}
.im-cas-k{font-size:.8rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--blue)}
.im-cas-k+ul{margin-top:12px}
.im-cas-done+.im-cas-k{margin-top:26px}
.im-cas-done{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.im-cas-done li{padding:7px 13px;border-radius:999px;background:#fff;box-shadow:0 22px 46px -34px rgba(19,40,60,.42);font-size:.88rem;font-weight:800;color:var(--slate)}
.im-cas-done a{font-weight:900}
.im-cas-res{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.im-cas-res li{display:flex;flex-direction:column;justify-content:center;gap:4px;padding:18px 20px;border-radius:var(--r);background:radial-gradient(120% 140% at 100% 0%,#0a4a91 0%,#112a40 55%,#141d22 100%);color:#cfdbe1;box-shadow:0 30px 50px -36px rgba(10,40,80,.8)}
.im-cas-res b{font-size:2.6rem;font-weight:900;line-height:1;background:linear-gradient(90deg,#fff,#7fd8ff);-webkit-background-clip:text;background-clip:text;color:transparent}
.im-cas-res span{font-size:.92rem}
.im-cas-res li.wide{grid-column:1/-1;flex-direction:row;align-items:center;gap:16px;padding:14px 18px;background:rgba(255,255,255,.85);color:var(--ink-2);transition:transform .35s var(--ease),box-shadow .35s}
.im-cas-res li.wide:hover{transform:translateX(6px);box-shadow:0 20px 36px -26px rgba(19,40,60,.5)}
.im-cas-res li.wide .ico{flex:none;width:40px;height:40px;color:var(--slate)}
.im-cas-res li.wide strong{color:var(--slate)}
.im-cas-txt .lnk{margin-top:20px}
@media (prefers-reduced-motion:reduce){.im-cas-screen img{animation:none}}

/* ---------- ZONE : Normandie et Île-de-France ---------- */
.im-loc-s{position:relative;overflow:clip;isolation:isolate;background:radial-gradient(90% 120% at 100% 0%,#0a4a91 0%,#112a40 50%,#141d22 100%)}
.im-loc-s::before{content:"";position:absolute;z-index:-1;inset:0;background-image:radial-gradient(rgba(255,255,255,.07) 1px,transparent 1.2px);background-size:26px 26px;-webkit-mask-image:radial-gradient(60% 80% at 80% 50%,#000,transparent);mask-image:radial-gradient(60% 80% at 80% 50%,#000,transparent)}
.im-loc{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(32px,5vw,80px);align-items:center}
.im-loc h2{color:#fff}
.im-loc>div:first-child>p+p{margin-top:16px}
.im-loc>div:first-child>p{color:#cfdbe1;font-size:1.03rem}
.im-loc-g{display:grid;gap:14px}
.im-loc-b{padding:22px 24px;border-radius:var(--r);background:rgba(255,255,255,.05);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.im-loc-k{display:flex;align-items:center;gap:8px;color:#fff;font-weight:900;font-size:1.05rem}
.im-loc-k .ico{width:26px;height:26px}
.im-loc-k .ico .s,.im-loc-k .ico .a{stroke:#7fd8ff}.im-loc-k .ico .f{fill:#7fd8ff}.im-loc-k .ico .fs{fill:rgba(127,216,255,.15)}
.im-loc-l{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.im-loc-l a{display:block;padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.08);color:#fff;font-weight:700;font-size:.9rem;text-decoration:none;transition:background-color .25s,transform .25s var(--ease)}
.im-loc-l a:hover{background:var(--grad);transform:translateY(-2px)}
.im-loc-n{margin-top:12px;color:#cfdbe1;font-size:.92rem}

.im-loc-map{margin:0;padding:18px;border-radius:var(--r);background:rgba(255,255,255,.04)}
.zc{display:block;width:100%;height:auto}
.zc-nor path{fill:rgba(0,131,255,.2);stroke:#5fb1ff;stroke-width:2}
.zc-idf path{fill:rgba(127,216,255,.1);stroke:rgba(127,216,255,.6);stroke-width:1.6}
.zc path:hover{fill-opacity:1}
.zc-a13{fill:none;stroke:#00BAFF;stroke-width:4;stroke-dasharray:10 10;stroke-linecap:round;animation:vlDashZ 1.4s linear infinite}
@keyframes vlDashZ{to{stroke-dashoffset:-40}}
.zc-route{font:900 24px "Nunito Sans",sans-serif;fill:#7fd8ff}
.zc-reg{font:900 24px "Nunito Sans",sans-serif;letter-spacing:.16em;fill:rgba(255,255,255,.35)}
.zc text{paint-order:stroke;stroke:#13222e;stroke-width:6px;stroke-linejoin:round}
.zc-v circle{fill:#fff;stroke:#0083FF;stroke-width:4;transition:r .25s}
.zc-v text{font:800 30px "Nunito Sans",sans-serif;fill:#fff}
.zc-v:hover circle,.zc-v:focus-visible circle{r:13;fill:#00BAFF}
.zc-v:hover text,.zc-v:focus-visible text{fill:#7fd8ff}
.zc-dot{fill:#0083FF}
.zc-ag text{font:900 32px "Nunito Sans",sans-serif;fill:#fff}
.zc-ag text.s{font:800 22px "Nunito Sans",sans-serif;fill:#7fd8ff}
.zc-rip{fill:none;stroke:#00BAFF;stroke-width:3;opacity:0;animation:zcRip 3s ease-out infinite}
.zc-rip+.zc-rip{animation-delay:1.5s}
@keyframes zcRip{0%{r:14;opacity:.9}100%{r:60;opacity:0}}
.im-loc-map figcaption{display:flex;flex-wrap:wrap;align-items:center;gap:6px 18px;margin-top:10px;font-size:.84rem;color:#cfdbe1}
.im-loc-map figcaption span{display:inline-flex;align-items:center;gap:8px}
.im-loc-map .lg{display:inline-block;width:14px;height:14px;border-radius:var(--r)}
.im-loc-map .lg.n{background:rgba(0,131,255,.45);box-shadow:inset 0 0 0 2px #5fb1ff}
.im-loc-map .lg.i{background:rgba(127,216,255,.18);box-shadow:inset 0 0 0 2px rgba(127,216,255,.6)}
.im-loc-map .lg.r{height:4px;border-radius:var(--r);background:#00BAFF}
@media (prefers-reduced-motion:reduce){.zc-a13,.zc-rip{animation:none}}

/* ---------- RÉSEAUX SOCIAUX ET INFLUENCE ---------- */
.im-soc-s{position:relative;overflow:clip;isolation:isolate;background:#fff}
.im-soc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(36px,5vw,80px);align-items:center}
.im-soc-vis{position:relative;display:grid;grid-template-columns:1.25fr 1fr;grid-template-rows:auto auto;gap:14px}
.im-soc-vis figure{margin:0;overflow:hidden;border-radius:var(--r);box-shadow:0 40px 70px -45px rgba(19,40,60,.7)}
.im-soc-vis img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.2s var(--ease)}
.im-soc-vis figure:hover img{transform:scale(1.06)}
.im-soc-1{grid-row:1/3;aspect-ratio:4/5}
.im-soc-1 img{object-position:62% 50%}
.im-soc-2,.im-soc-3{aspect-ratio:1}
.im-soc-badge{position:absolute;display:flex;align-items:center;gap:8px;padding:9px 14px 9px 9px;border-radius:999px;background:#fff;box-shadow:0 18px 36px -16px rgba(19,40,60,.55);font-size:.84rem;font-weight:800;color:var(--slate);animation:vlFloat 6s ease-in-out infinite}
.im-soc-badge span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--grad);color:#fff;font-size:.75rem}
.im-soc-badge.b1{left:-14px;top:12%}
.im-soc-badge.b2{right:-10px;bottom:8%;animation-delay:-3s}
.im-soc-k{font-size:.8rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--blue)}
.im-soc-k+h2{margin-top:8px}
.im-soc-txt>p+p{margin-top:16px}
.im-soc-txt>p:not(.im-soc-n){color:var(--ink-2);font-size:1.03rem}
.im-soc-txt a{font-weight:700}
.im-soc-l{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:10px}
.im-soc-l li{display:grid;grid-template-columns:42px minmax(0,1fr);gap:14px;align-items:start;padding:14px 16px;border-radius:var(--r);background:var(--soft);transition:transform .35s var(--ease),background-color .35s}
.im-soc-l li:hover{transform:translateX(6px);background:#eaf3fd}
.im-soc-l .ico{width:40px;height:40px;color:var(--slate)}
.im-soc-l span{font-size:.93rem;color:var(--ink-2);line-height:1.5}
.im-soc-l b{display:block;color:var(--slate);font-size:1rem}
.im-soc-n{margin-top:18px;padding-left:0;color:var(--slate);font-weight:700;font-size:.97rem}
@media (prefers-reduced-motion:reduce){.im-soc-badge{animation:none}}

/* ---------- RESPONSIVE ---------- */
@media (max-width:1100px){
  .im-bento,.im-meth{grid-template-columns:1fr 1fr}
  .im-meth{row-gap:44px}
  .im-ana,.im-avis-g,.im-cas,.im-ia,.im-ia-do,.im-loc,.im-soc{grid-template-columns:1fr}
  .im-soc-vis{max-width:600px}
  .im-ia-path{grid-template-columns:1fr 1fr}
  .im-ia-path::before,.im-ia-path::after{display:none}
  .im-ia-path{padding-top:0}
  .im-cas-vis{position:static;max-width:640px}
  .im-ana-mock{max-width:560px}
}
@media (max-width:900px){
  .im-hero{min-height:0}
  .im-hero .wrap{grid-template-columns:1fr;padding-block:28px 84px}
  .im-kp{justify-self:start}
}
@media (max-width:640px){
  .im-kp{display:none}
  .im-bento,.im-steps,.im-meth{grid-template-columns:1fr}
  .im-b.big,.im-b.wide{grid-column:auto}
  .im-rep-b{margin-left:0}
  .im-cas-res,.im-ia-path{grid-template-columns:1fr}
  .im-soc-badge.b1{left:6px}.im-soc-badge.b2{right:6px}
}
