
/* Concept : on plonge dans le logo. Photos plein cadre, orange en rideau, lettres-fenêtres.
   Charte PDF : orange / lavande / crème / encre, League Spartan + Open Sauce One. */
:root{
  --orange:#FF632E; --lav:#C4C0FF; --cream:#FDF8ED; --ink:#1F1A17; --white:#FFFFFF;
  --bg:var(--cream); --fg:var(--ink);
  --display:'League Spartan','Arial Narrow','Helvetica Neue',Arial,sans-serif;
  --body:'Open Sauce One','Helvetica Neue',Arial,sans-serif;
  --t1:clamp(3rem,8.6vw,8rem); --t2:clamp(2rem,4.8vw,4rem); --t3:clamp(1.2rem,2vw,1.6rem);
  --gl:max(16px,env(safe-area-inset-left,0px)); --gr:max(16px,env(safe-area-inset-right,0px));
  color-scheme:light;
}
*{box-sizing:border-box}
html{overflow-x:clip}
body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--body);font-weight:300;font-size:1.0625rem;line-height:1.5;overflow-x:clip;-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);background:var(--cream);z-index:90}
body::after{content:"";position:fixed;inset:0;z-index:95;pointer-events:none;opacity:.07;mix-blend-mode:multiply;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0 0 0 .9 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-family:var(--display);font-weight:700;line-height:1;text-wrap:balance}
a{color:inherit}
img{display:block;max-width:100%}
.wrap{padding-left:var(--gl);padding-right:var(--gr);max-width:1440px;margin-inline:auto;width:100%}
.eyebrow{font-family:var(--body);font-weight:500;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase}
:focus-visible{outline:3px solid currentColor;outline-offset:3px;border-radius:4px}
.skip{position:absolute;left:var(--gl);top:-80px;background:var(--ink);color:var(--cream);padding:.6rem 1rem;border-radius:999px;z-index:300}
.skip:focus{top:calc(env(safe-area-inset-top,0px) + 8px)}
.btn{display:inline-flex;align-items:center;gap:.6rem;min-height:48px;padding:.8rem 1.5rem;border-radius:999px;font-family:var(--body);font-weight:500;font-size:1rem;text-decoration:none;border:2px solid var(--ink);background:var(--ink);color:var(--cream);cursor:pointer;transition:transform .25s cubic-bezier(.2,.8,.2,1),background .2s,color .2s}
.btn:hover{transform:translateY(-2px)}
.btn.ghost{background:transparent;color:var(--ink)}
.btn.ghost:hover{background:var(--ink);color:var(--cream)}
.btn.light{background:var(--cream);color:var(--ink);border-color:var(--cream)}
.btn.light-ghost{background:transparent;color:var(--cream);border-color:var(--cream)}
.btn.light-ghost:hover{background:var(--cream);color:var(--ink)}
.btn.orange{background:var(--orange);border-color:var(--orange);color:var(--ink)}
.ln{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}
.ln>span{display:inline-block}
.lw{display:block;fill:currentColor;width:100%;height:auto}

/* ---------- loader ---------- */
.loader{display:none;position:fixed;inset:0;z-index:200;background:var(--orange);color:var(--cream)}
.is-anim-on .loader{display:block}
.loader svg.lsvg{position:absolute;inset:0;width:100%;height:100%}
.loader-count{position:absolute;right:var(--gr);bottom:calc(env(safe-area-inset-bottom,0px) + 1.2rem);font-family:var(--display);font-weight:700;font-size:clamp(2.4rem,6vw,5rem);line-height:1;color:var(--ink);font-variant-numeric:tabular-nums}
.loader-label{position:absolute;left:var(--gl);bottom:calc(env(safe-area-inset-bottom,0px) + 1.6rem);font-weight:500;letter-spacing:.2em;text-transform:uppercase;font-size:.78rem;color:var(--ink)}

/* ---------- progress + nav ---------- */
.progress{position:fixed;left:0;right:0;top:0;height:4px;background:var(--orange);transform-origin:0 50%;transform:scaleX(0);z-index:120}
.nav{position:fixed;left:0;right:0;top:0;z-index:100;padding:calc(env(safe-area-inset-top,0px) + 12px) var(--gr) 0 var(--gl);display:flex;justify-content:flex-end;pointer-events:none}

.nav-pill{pointer-events:auto;display:flex;align-items:center;gap:1.25rem;background:rgba(253,248,237,.94);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1.5px solid var(--ink);border-radius:999px;padding:.35rem .4rem .35rem 1.2rem;max-width:100%}
.nav-logo{display:block;width:0;overflow:hidden;opacity:0;color:var(--orange);transition:width .5s cubic-bezier(.2,.8,.2,1),opacity .4s;margin-right:0}
.nav.logo .nav-logo{width:84px;opacity:1}
.nav-links{display:flex;gap:1.25rem;list-style:none;margin:0;padding:0}
.nav-links a{font-weight:500;font-size:.92rem;text-decoration:none;padding:.5rem .1rem;position:relative}
.nav-links a::after{content:"";position:absolute;left:0;right:0;bottom:.3rem;height:2px;background:var(--orange);transform:scaleX(0);transform-origin:0 50%;transition:transform .3s}
.nav-links a:hover::after{transform:scaleX(1)}
.nav-cta{min-height:42px;padding:.5rem 1.1rem;font-size:.92rem}
.menu-btn{display:none;min-height:44px;min-width:44px;border-radius:50%;border:0;background:var(--ink);color:var(--cream);cursor:pointer;align-items:center;justify-content:center}
.menu-btn svg{width:20px;height:20px}
.overlay{position:fixed;inset:0;z-index:99;background:var(--orange);color:var(--ink);padding:calc(env(safe-area-inset-top,0px) + 96px) var(--gr) calc(env(safe-area-inset-bottom,0px) + 32px) var(--gl);display:flex;flex-direction:column;justify-content:space-between;clip-path:circle(0% at calc(100% - 44px) 44px);visibility:hidden;transition:clip-path .7s cubic-bezier(.7,0,.2,1),visibility 0s .7s}
.overlay.open{clip-path:circle(150% at calc(100% - 44px) 44px);visibility:visible;transition:clip-path .7s cubic-bezier(.7,0,.2,1),visibility 0s}
.overlay ul{list-style:none;margin:0;padding:0;display:grid;gap:.4rem}
.overlay li a{font-family:var(--display);font-weight:700;font-size:clamp(2.6rem,12vw,4.5rem);line-height:1.02;text-decoration:none;display:block}
.overlay small{font-weight:500;letter-spacing:.14em;text-transform:uppercase;font-size:.78rem}

/* ---------- hero : plongée dans le logo ---------- */
.hero{position:relative;background:var(--orange);color:var(--cream);height:100svh;min-height:560px;overflow:hidden}
.reel,.reel img{position:absolute;inset:0;width:100%;height:100%}
.reel img{object-fit:cover;object-position:50% var(--oy,30%);opacity:0;will-change:transform,opacity}
.reel img:first-child{opacity:1}
.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(31,26,23,.25) 0%,rgba(31,26,23,0) 35%,rgba(31,26,23,.78) 100%);opacity:1}
.is-anim-on .hero-shade{opacity:0}
.dive{display:none;position:absolute;inset:0;width:100%;height:100%;z-index:3}
.is-anim-on .dive{display:block}
.hero-copy{position:absolute;left:0;right:0;bottom:0;z-index:4;padding-bottom:calc(env(safe-area-inset-bottom,0px) + clamp(1.5rem,5vh,3.5rem))}
.hero-copy h1{font-size:var(--t1);letter-spacing:-.02em;color:var(--cream);max-width:13em}
.hero-copy h1 em{font-style:normal;color:var(--orange)}
.hero-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1.5rem;margin-top:1.4rem}
.hero-sub{font-weight:400;font-size:var(--t3);max-width:30rem;line-height:1.4}
.hero-cta{display:flex;flex-wrap:wrap;gap:.8rem}
.scroll-hint{display:none;position:absolute;left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 1.4rem);transform:translateX(-50%);z-index:5;flex-direction:column;align-items:center;gap:.4rem;font-weight:500;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--ink)}
.is-anim-on .scroll-hint{display:flex}
.scroll-hint i{display:block;width:2px;height:34px;background:var(--ink);transform-origin:50% 0;animation:drip 1.8s cubic-bezier(.6,0,.2,1) infinite}
@keyframes drip{0%{transform:scaleY(0)}60%{transform:scaleY(1);opacity:1}100%{transform:scaleY(1);opacity:0}}

/* ---------- manifeste ---------- */
.mani{min-height:100svh;display:flex;align-items:center;padding-block:7rem;background:var(--cream)}
.mani .eyebrow{display:block;margin-bottom:1.6rem}
.mani-text{font-family:var(--display);font-weight:700;font-size:clamp(2rem,5.4vw,4.9rem);line-height:1.04;letter-spacing:-.015em;max-width:21em}
.hl{background:linear-gradient(transparent 64%,var(--lav) 64%)}
.mani-sub{margin-top:2.2rem;max-width:34rem;font-size:1.15rem;font-weight:400}

/* ---------- immersion ---------- */
.imm{background:var(--ink);color:var(--cream)}
.imm-stage{position:relative}
.slide{position:relative;min-height:100svh;overflow:hidden;display:flex;align-items:flex-end}
.slide img.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% var(--oy,30%)}
.slide .shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(31,26,23,.2) 0%,rgba(31,26,23,0) 40%,rgba(31,26,23,.82) 100%)}
.cap{position:relative;z-index:2;padding-bottom:calc(env(safe-area-inset-bottom,0px) + clamp(2rem,7vh,5rem))}
.cap .eyebrow{display:block;margin-bottom:1rem;color:var(--cream)}
.cap h2{font-size:clamp(4rem,15vw,15rem);letter-spacing:-.04em;line-height:.88}
.cap p{margin-top:1.2rem;max-width:30rem;font-size:var(--t3);font-weight:400;line-height:1.4}
.imm-dots{display:none;position:absolute;right:var(--gr);top:50%;transform:translateY(-50%);z-index:5;flex-direction:column;gap:.7rem}
.imm-dots i{display:block;width:10px;height:10px;border-radius:50%;border:2px solid var(--cream);opacity:.6}
.imm-dots i.on{background:var(--cream);opacity:1}
.imm.is-anim .imm-stage{height:100svh}
.imm.is-anim .slide{position:absolute;inset:0;min-height:0}
.imm.is-anim .imm-dots{display:flex}

/* ---------- ouverture : photo de la fille → volets → photo du mec → TALENTS → BRAND (texte géant) ---------- */
.op{position:relative;z-index:3;overflow:hidden;background:#17131f;color:var(--ink)}
.op-stage{--sw:100vw;--n:7;position:relative;height:100svh;min-height:520px;overflow:hidden;isolation:isolate;background:#d84a0a}
.op-bigs{display:none;position:absolute;inset:0;z-index:3;place-items:center;padding-bottom:8vh;pointer-events:none}
.is-anim .op-bigs{display:grid}
.op-bigs .op-big{grid-area:1/1;display:block;margin:0;overflow:visible;white-space:nowrap;color:var(--cream);font-size:clamp(3rem,min(15.5vw,30vh),18rem);visibility:hidden;will-change:transform}
.op-w{display:none;position:absolute;inset:0;z-index:6;flex-direction:column;justify-content:flex-end;padding:calc(env(safe-area-inset-top,0px) + 5.5rem) var(--gr) calc(env(safe-area-inset-bottom,0px) + clamp(1.4rem,5vh,3rem)) var(--gl);color:var(--ink);visibility:hidden;pointer-events:none}
.is-anim .op-w{display:flex}
.op-w{color:var(--cream)}
.op-w .eyebrow{color:var(--cream)}
.op-w .st-cap h3{text-shadow:0 2px 24px rgba(90,20,0,.35)}
.op-w .btn,.op-w a{pointer-events:auto}
.op-big{display:flex;overflow:hidden;margin:0 0 clamp(1.2rem,3vh,2.2rem);padding-block:.05em .08em;font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:clamp(3.6rem,min(19.5vw,36vh),24rem);line-height:.84;letter-spacing:-.045em}
.op-big .ch{display:inline-block;will-change:transform}
.st-cap{max-width:30rem}
.st-cap .eyebrow{display:block;margin-bottom:.7rem}
.st-cap h3{font-size:clamp(1.4rem,2.4vw,2.2rem);letter-spacing:-.015em}
.st-cap p{margin-top:.7rem;font-weight:400}
.st-cap .btn{margin-top:1.1rem}
.is-anim .st-static{display:none}
.panel{position:relative;padding:clamp(3rem,10vh,6rem) var(--gr) clamp(3rem,10vh,6rem) var(--gl);background:var(--orange);color:var(--ink)}
.panel+.panel{background:var(--orange)}
.panel{overflow:hidden;isolation:isolate;color:var(--cream)}
.panel::before{content:"";position:absolute;inset:-24px;z-index:-1;background:url(img/hero_guy.webp) 52% 38%/cover;filter:blur(16px)}
.panel .eyebrow{color:var(--cream)}
.panel .op-big{font-size:clamp(3.6rem,19vw,14rem)}
@media (max-width:900px){
  .op-bigs{padding:24vh 0 0}
  .op-bigs .op-big{font-size:clamp(3rem,19.5vw,9rem)}
  .st-cap{max-width:none}
  .st-cap h3{font-size:1.5rem}
  .st-cap p{font-size:.95rem}
}

/* ---------- ouverture vidéo : mur de collabs qui défile + team ---------- */
.op-stage{--wg:clamp(.5rem,1vw,.9rem)}
.op-wall{position:absolute;inset:-14% -10%;z-index:0;will-change:transform}
.ow-in{position:absolute;inset:0;display:flex;gap:var(--wg);justify-content:center;transform:rotate(-4deg)}
.wc{flex:0 0 calc((100% - 3*var(--wg))/4);min-width:0}
.wc2{margin-top:-9%}.wc3{margin-top:-3%}.wc4{margin-top:-14%}
.wc-t{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--wg);will-change:transform}
.wt{position:relative;flex:0 0 auto;aspect-ratio:9/16;border-radius:clamp(14px,1.5vw,24px);overflow:hidden;background:#8a2d05;transform:translateZ(0)}
.wt img,.wt video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.wt-l{position:absolute;left:.7rem;bottom:.7rem;z-index:2;padding:.28rem .7rem;border-radius:99px;background:rgba(253,248,237,.94);color:var(--ink);font-weight:600;font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;line-height:1.2;max-width:calc(100% - 1.4rem);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@keyframes wcUp{from{transform:translateY(0)}to{transform:translateY(calc(-50% - var(--wg)/2))}}
.is-anim .wc-t{animation:wcUp 78s linear infinite}
.is-anim .wc2 .wc-t{animation-duration:92s;animation-direction:reverse}
.is-anim .wc3 .wc-t{animation-duration:70s;animation-delay:-18s}
.is-anim .wc4 .wc-t{animation-duration:84s;animation-direction:reverse;animation-delay:-30s}
.op-tint{position:absolute;inset:0;z-index:2;opacity:.3;pointer-events:none;background:radial-gradient(58% 44% at 50% 48%,rgba(24,19,38,.62) 0%,rgba(24,19,38,.3) 55%,rgba(24,19,38,0) 100%),linear-gradient(180deg,rgba(24,19,38,.5) 0%,rgba(24,19,38,.08) 28%,rgba(24,19,38,.12) 62%,rgba(24,19,38,.62) 100%)}
.op-shade{position:absolute;inset:0;z-index:1;pointer-events:none;background:rgb(24,19,38);opacity:0}
.op-hg{position:absolute;z-index:6;left:var(--gl);right:var(--gr);top:0;bottom:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:clamp(3rem,8vh,5rem) 0 clamp(4rem,12vh,7rem);color:var(--cream);pointer-events:none}
.op-k{display:block;margin:0 0 clamp(.7rem,1.6vh,1.2rem);color:var(--cream);text-shadow:0 2px 18px rgba(20,14,34,.7)}
.op-h{margin:0;font-size:clamp(3.2rem,min(9.4vw,17vh),10.5rem);line-height:.9;letter-spacing:-.035em;color:var(--cream);text-shadow:0 4px 44px rgba(20,14,34,.6),0 1px 3px rgba(20,14,34,.35)}
.op-h .ln{padding-bottom:.1em;margin-bottom:-.1em}
.op-ici{color:var(--orange)}
.op-tint::after{content:"";position:absolute;inset:0;opacity:.2;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 .9 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}
.op-team{display:none;position:absolute;inset:0;z-index:7;visibility:hidden;pointer-events:none;align-items:center;justify-content:flex-end;padding:calc(env(safe-area-inset-top,0px) + 4.6rem) var(--gr) calc(env(safe-area-inset-bottom,0px) + 2rem) var(--gl)}
.is-anim .op-team{display:flex}
.ot-card{position:relative;height:min(78svh,calc(44vw*1.7778));aspect-ratio:9/16;border-radius:clamp(18px,2vw,30px);overflow:hidden;background:#8a2d05;box-shadow:0 40px 90px -30px rgba(40,8,0,.7);will-change:transform}
.ot-card video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.ot-cap{position:absolute;left:var(--gl);bottom:calc(env(safe-area-inset-bottom,0px) + clamp(1.4rem,5vh,3rem));color:var(--cream);pointer-events:auto}
.ot-cap .eyebrow{color:var(--cream)}
.ot-cap h3{text-shadow:0 2px 24px rgba(90,20,0,.35)}
@media (max-width:900px){
  .wc{flex-basis:calc((100% - 2*var(--wg))/3)}
  .wc4{display:none}
  .wc2{margin-top:-12%}.wc3{margin-top:-5%}
  .op-team{justify-content:center;align-items:flex-start;padding-top:calc(env(safe-area-inset-top,0px) + 4.8rem)}
  .ot-card{height:min(50svh,calc(62vw*1.7778))}
  .wt-l{font-size:.6rem;padding:.22rem .55rem;left:.45rem;bottom:.45rem}
  .op-h{font-size:clamp(2.9rem,15.2vw,6rem)}
}
@media (prefers-reduced-motion:reduce){.wc-t{animation:none!important}}
.op-logo{opacity:0;position:absolute;z-index:5;left:50%;top:calc(env(safe-area-inset-top,0px) + 18px);transform:translateX(-50%);width:clamp(118px,11vw,170px);color:var(--cream);filter:drop-shadow(0 6px 24px rgba(60,10,0,.4));will-change:transform,opacity}
.op-logo svg{display:block;width:100%;height:auto}
.tv{background:var(--orange);color:var(--ink);position:relative}
.tv-st{position:relative;height:100svh;min-height:520px;overflow:hidden;display:grid;place-items:center;isolation:isolate}
.tv-cols{--tvw:13.5vw;--tvg:1.1vw;position:absolute;inset:0;display:flex;justify-content:space-between;padding-inline:3vw;will-change:transform,opacity}
.tvgp{display:flex;gap:var(--tvg);flex:none}
.tvc{flex:none;width:var(--tvw);height:100%;overflow:hidden}
.tvc-in{display:flex;flex-direction:column;gap:var(--tvg);padding-bottom:var(--tvg);animation:zdrift 40s linear infinite;will-change:transform}
.tvc-r .tvc-in{animation-direction:reverse}
.tvt{position:relative;flex:none;width:100%;aspect-ratio:9/16;border-radius:calc(var(--tvw)*.08);overflow:hidden;background:rgba(31,26,23,.2)}
.tvt img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.tv-card{position:relative;z-index:2;height:100svh;min-height:520px;width:calc(max(100svh,520px)*9/16);overflow:hidden;background:var(--ink);will-change:transform;box-shadow:0 50px 110px -40px rgba(31,26,23,.6)}
.tv-v{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.tv-sh{position:absolute;inset:0;background:linear-gradient(180deg,rgba(31,26,23,0) 45%,rgba(31,26,23,.82) 100%);pointer-events:none}
.tv-cap{position:absolute;left:0;right:0;bottom:0;padding:0 clamp(1.4rem,3vw,2.2rem) clamp(2rem,5vh,3.2rem);color:var(--cream)}
.tv-cap .eyebrow{display:block;margin-bottom:.8rem;color:var(--cream)}
.tv-cap h2{font-size:clamp(1.7rem,2.5vw,2.5rem);line-height:1;letter-spacing:-.02em;margin:0 0 1.3rem}
@media (max-width:700px){
  .tv-card{width:100vw;height:100svh}
  .tv-cols{--tvw:28vw;--tvg:1.6vw;justify-content:center;padding-inline:0}
}
@media (prefers-reduced-motion:reduce){.tvc-in{animation:none}}
.op-hint{position:absolute;z-index:6;left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 1.2rem);transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:.5rem;font-weight:500;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--cream);text-shadow:0 2px 12px rgba(60,10,0,.6)}
.op-hint i{display:block;width:1px;height:38px;background:linear-gradient(var(--cream),transparent);animation:hint 1.8s ease-in-out infinite}
@keyframes hint{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}



/* ---------- accueil v2 : ouverture vidéo + deux métiers + team ---------- */
.hv-wrap{position:absolute;inset:0;z-index:0;overflow:hidden;background:#241f3d}
.hv-v{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;will-change:transform}
.op-stage{background:#17131f;height:100svh;min-height:520px}
.op-stage .marq{position:absolute;left:0;right:0;bottom:0;z-index:7;background:transparent;color:var(--cream);padding-block:clamp(.9rem,1.6vw,1.3rem) clamp(1rem,2vw,1.5rem);pointer-events:none}
.op-stage .marq>.wrap{display:none}
.op-stage .marq .lg img{filter:brightness(0) invert(1) sepia(.1) drop-shadow(0 1px 8px rgba(20,14,34,.5));opacity:.92}
.op-hg{bottom:var(--mqh,7.4rem)}
.op-hint{bottom:calc(var(--mqh,7.4rem) + .6rem)}
/* ouverture : vidéo de montage en fond (rendue en amont : coupes, whip pans, zooms, flashs) */
.op-vid{position:absolute;inset:0;z-index:0;overflow:hidden;background:#17131f}
.op-vid picture,.op-vid img,.op-vid video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.op-vid video{opacity:0;transition:opacity .8s ease}
.op-vid.on video{opacity:1}
.op-rule{display:block;width:clamp(2.6rem,4vw,3.6rem);height:3px;border-radius:2px;background:var(--orange);margin:0 auto clamp(.8rem,1.8vh,1.2rem);transform-origin:left center}
@media (max-width:700px){.op-hint{display:none}}

/* ===== curseur like + notifications ===== */
.cursor{transition:width .25s cubic-bezier(.2,.8,.2,1),height .25s cubic-bezier(.2,.8,.2,1),margin .25s cubic-bezier(.2,.8,.2,1),background-color .2s}
.cursor.like{width:64px;height:64px;margin:-32px 0 0 -32px;background:var(--orange) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%231F1A17' d='M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z'/></svg>") center/44% no-repeat}
.lk-layer{position:fixed;inset:0;z-index:300;pointer-events:none;overflow:hidden}
.lk-n,.lk-i{position:absolute;left:0;top:0;display:inline-flex;align-items:center;justify-content:center;will-change:transform,opacity}
.lk-n{gap:.4rem;padding:.4rem .8rem .4rem .55rem;border-radius:999px;background:#fff;color:var(--ink);font-weight:700;font-size:.82rem;white-space:nowrap;box-shadow:0 16px 32px -14px rgba(31,26,23,.5)}
.lk-n svg{width:20px;height:20px;color:var(--orange)}
.lk-i{width:46px;height:46px;border-radius:50%;box-shadow:0 14px 26px -12px rgba(31,26,23,.5)}
.lk-i svg{width:22px;height:22px}
.lk-h{background:var(--orange);color:var(--ink)}
.lk-t{background:var(--lav);color:var(--ink)}


/* ===== v168 : bandes « Ce que Futures fait pour vous » ===== */
.stp .stp-in p{max-width:40rem}
.stp .stp-w{font-size:clamp(2.8rem,9.8vw,10.5rem);line-height:.92}
@media(max-width:600px){.stp .stp-w{font-size:clamp(2.4rem,12.4vw,3.8rem)}}
.stp-k{display:inline-block;margin:0 0 1.1rem;padding:.45rem 1rem;border:1.5px solid currentColor;border-radius:999px;font-weight:600;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase}
.stp-a{display:inline-flex;align-items:center;gap:.7rem;margin-top:1.6rem;padding:.8rem 1.4rem;border-radius:999px;background:var(--cream);color:var(--ink);font-weight:500;text-decoration:none;transition:transform .3s cubic-bezier(.2,.8,.2,1),background .25s,color .25s}
.stp.o .stp-a{background:var(--ink);color:var(--cream)}
.stp-a svg{width:16px;height:16px;transition:transform .3s}
.stp-a:hover{transform:translateY(-3px)}
.stp-a:hover svg{transform:translateX(4px)}


/* ===== v168 : toutes les parties colorées deviennent des blocs arrondis posés sur la page crème / noire ===== */
:root{--bm:clamp(8px,1.2vw,18px);--br:clamp(24px,3vw,44px)}
.crea,.stats,.stp.o,.tz.bm-camp,.about,.foot,.tm-acad,.tm-cta,.fi-stats,.fi-col,.tm-num,.tm-wd,.bm-met,.cs-kpi,.vb{margin:var(--bm);border-radius:var(--br);overflow:clip}
.steps{padding-block:var(--bm)}
.stp.o{margin-block:clamp(.4rem,1vw,1rem)}
.crea{margin-top:0}
.foot{margin-top:var(--bm);margin-bottom:var(--bm)}
.bm-hero{padding:var(--bm) var(--bm) 0}
.bm-hero .camp-hero{border-radius:var(--br);min-height:calc(100svh - var(--bm))}

/* ===== v168 : ouverture façon « classe » — titre géant calé à gauche, vidéo sur fond crème ===== */
.op{background:var(--cream)}
.op-stage,.op-vid{background:var(--cream)}
.op-tint{opacity:1!important;background:linear-gradient(90deg,rgba(24,18,15,.7) 0%,rgba(24,18,15,.38) 44%,rgba(24,18,15,.04) 100%),linear-gradient(180deg,rgba(24,18,15,.3) 0%,rgba(24,18,15,0) 22%,rgba(24,18,15,0) 64%,rgba(24,18,15,.6) 100%)}
.op-vid video,.op-vid img{filter:saturate(1.18) contrast(1.05)}
.op-tint::after{display:none}
.op-logo{color:var(--ink);filter:none}
.op-hg{left:max(var(--gl),calc((100vw - 1360px)/2 + 1.5rem));right:var(--gr);align-items:flex-start;justify-content:flex-end;text-align:left;color:var(--ink);padding:clamp(5.5rem,13vh,8rem) 0 clamp(.6rem,1.6vh,1.2rem)}
.op-pill{display:inline-flex;align-items:center;gap:.7rem;padding:.55rem 1.05rem;border:1.5px solid rgba(31,26,23,.6);border-radius:999px;font-weight:600;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;margin:0 0 clamp(.9rem,2.2vh,1.6rem);background:rgba(253,248,237,.6);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.op-pill i{width:.55rem;height:.55rem;border-radius:50%;background:var(--orange);flex:none}
.op-pill b{font-weight:600}
.op-pill em{font-style:normal;color:var(--orange)}
.op-h{font-size:clamp(3.1rem,8.8vw,14rem);line-height:.9;letter-spacing:-.03em;text-transform:uppercase;color:var(--ink);text-shadow:none;text-align:left}
.op-ici{color:var(--orange)}
.op-lead{max-width:30rem;margin:clamp(.9rem,2.2vh,1.5rem) 0 clamp(.9rem,2.2vh,1.4rem);font-size:clamp(.98rem,1.25vw,1.2rem);line-height:1.45;font-weight:500;color:var(--ink);pointer-events:auto}
.op-ctas{display:flex;flex-wrap:wrap;gap:.7rem;pointer-events:auto}
.op-ctas .btn{min-height:50px}
.op-ctas .btn.orange{background:var(--orange);color:var(--ink);border-color:var(--orange)}
.op-ctas .btn.ghost{border-color:var(--ink);background:transparent;color:var(--ink)}
.op-ctas .btn.ghost:hover{background:var(--ink);color:var(--cream)}
.op-stage .marq{color:var(--ink);background:linear-gradient(180deg,rgba(253,248,237,0),rgba(253,248,237,.9) 38%)}
.op-stage .marq .lg img{filter:brightness(0) opacity(.78);opacity:1}
.op-hint{left:auto;right:max(var(--gr),calc((100vw - 1360px)/2 + 1.5rem));transform:none;align-items:flex-end;color:var(--ink);text-shadow:none;bottom:calc(var(--mqh,7.4rem) + .6rem)}
.op-hint i{background:linear-gradient(var(--ink),transparent)}
@media (min-width:701px){.op-hint{display:flex}.op-stage{height:max(100svh,calc(8.8vw*2.75 + 25rem))}.op-lead{font-size:clamp(1.05rem,1.3vw,1.4rem);max-width:34rem}}
@media (max-width:700px){
  .op-hg{padding-top:calc(env(safe-area-inset-top,0px) + 5.2rem);justify-content:flex-start}
  .op-h{font-size:clamp(2.6rem,13.6vw,5rem)}
  .op-lead{font-size:.95rem;max-width:22rem}
  .op-ctas .btn{min-height:46px;padding:.65rem 1.15rem;font-size:.92rem}
  .op-tint{background:linear-gradient(180deg,rgba(253,248,237,.55) 0%,rgba(253,248,237,0) 55%)}
}

.duo{color:var(--ink)}
.dband{overflow:hidden;padding-block:clamp(2.6rem,6vw,5.5rem) clamp(2.2rem,4.5vw,4rem)}
.dband.dt{background:var(--orange);color:var(--ink)}
.dband.db{background:var(--cream);color:var(--ink)}
.dw{margin:0;font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:clamp(3.4rem,12.6vw,14rem);line-height:.86;letter-spacing:-.04em;display:flex;flex-direction:column}
.dw-i{display:block;overflow:hidden;padding-block:.04em .07em}
.dw-t{display:flex;width:max-content;white-space:nowrap;will-change:transform}
.dw-i .ch{display:inline-block;will-change:transform}
.dband.db .dw-i{color:var(--orange)}
.dband.dt .dw-o{color:var(--ink)}
.dband.db .dw-o{color:var(--orange)}
.dband.dt .dw-o,.dband.db .dw-o{-webkit-text-stroke:0}
.dcap{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1.4rem 3rem;margin-top:clamp(1.4rem,3vw,2.4rem)}
.dcap .eyebrow{display:block;margin-bottom:.8rem}
.dcap h3{font-size:clamp(1.5rem,2.6vw,2.5rem);letter-spacing:-.015em;max-width:15em}
.hteam{background:var(--cream);color:var(--ink);padding-block:clamp(4.5rem,8vw,7rem)}
.hteam-in{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,4fr);gap:clamp(2rem,6vw,6rem);align-items:center}
.hteam .eyebrow{display:block;margin-bottom:1.2rem}
.hteam h2{font-size:clamp(2.4rem,5.2vw,5.2rem);line-height:.96;letter-spacing:-.03em;max-width:11em}
.hteam p{margin-top:1.4rem;max-width:26rem;font-weight:400;font-size:1.04rem}
.hteam .btn{margin-top:1.8rem}
.hteam-card{position:relative;justify-self:center;width:min(100%,380px);aspect-ratio:9/16;border-radius:clamp(20px,2.4vw,32px);overflow:hidden;background:var(--ink);box-shadow:0 40px 80px -40px rgba(31,26,23,.55)}
.ht-v{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
@media (max-width:900px){
  .duo-grid{grid-template-columns:1fr}
  .dc{aspect-ratio:5/6}
  .hteam-in{grid-template-columns:1fr}
  .hteam-card{width:min(78%,320px)}
}

/* ---------- expertises ---------- */
.expe{background:var(--cream);color:var(--ink);padding-block:clamp(5rem,9vw,8rem) clamp(3.5rem,7vw,6rem)}
.ex-head{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:1.2rem clamp(2rem,5vw,5rem);align-items:end}
.ex-head .eyebrow{grid-column:1/-1}
.ex-head h2{font-size:clamp(2.8rem,6vw,6.2rem);line-height:.94;letter-spacing:-.03em;max-width:11em}
.ex-head h2 .dim{color:var(--orange)}
.ex-head p{max-width:26rem;font-weight:400;font-size:1.04rem}
.ex-list{list-style:none;margin:clamp(2.4rem,5vw,4rem) 0 0;padding:0}
.ex-r{position:relative;border-top:2px solid var(--ink)}
.ex-r:last-child{border-bottom:2px solid var(--ink)}
.ex-r a{position:relative;z-index:1;display:grid;grid-template-columns:3.2rem minmax(0,5fr) minmax(0,5fr) 3.2rem;gap:1rem clamp(1.2rem,3vw,3rem);align-items:center;padding:clamp(1.3rem,2.4vw,2.2rem) 0;text-decoration:none;color:inherit;transition:padding .45s cubic-bezier(.2,.8,.2,1),color .3s}
.ex-r::before{content:"";position:absolute;inset:0;background:var(--orange);transform:scaleY(0);transform-origin:50% 100%;transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.ex-n{font-family:var(--display);font-weight:700;font-size:1.05rem;color:var(--orange);transition:color .3s}
.ex-t{display:block}
.ex-k{display:block;font-weight:500;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;margin-bottom:.55rem}
.ex-t b{display:block;font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:clamp(1.4rem,2.4vw,2.3rem);line-height:1;letter-spacing:-.02em}
.ex-d{display:block;font-weight:400;font-size:1rem;max-width:34rem}
.ex-p{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.9rem}
.ex-p i{font-style:normal;font-weight:500;font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;padding:.3rem .7rem;border-radius:99px;border:1.5px solid currentColor}
.ex-go{display:grid;place-items:center;width:3.2rem;height:3.2rem;border-radius:50%;background:var(--ink);color:var(--cream);transition:transform .45s cubic-bezier(.2,.8,.2,1),background .3s,color .3s;justify-self:end}
@media (hover:hover){
  .ex-r:hover::before,.ex-r:focus-within::before{transform:scaleY(1)}
  .ex-r:hover a,.ex-r a:focus-visible{padding-inline:clamp(.8rem,1.6vw,1.6rem)}
  .ex-r:hover .ex-n,.ex-r:hover .ex-go{color:var(--ink)}
  .ex-r:hover .ex-go{background:var(--cream);transform:rotate(45deg)}
}
@media (max-width:900px){
  .ex-head{grid-template-columns:1fr}
  .ex-r a{grid-template-columns:2.4rem minmax(0,1fr) 2.8rem;grid-template-areas:"n t g" ". d d"}
  .ex-n{grid-area:n}.ex-t{grid-area:t}.ex-d{grid-area:d}.ex-go{grid-area:g;width:2.8rem;height:2.8rem}
}

/* ---------- chiffres ---------- */
.stats{position:relative;background:var(--ink);color:var(--cream);padding-block:clamp(4rem,8vw,7rem) clamp(2.4rem,5vw,4.6rem);overflow:hidden;isolation:isolate}
.stats>img{position:absolute;inset:-8% 0;width:100%;height:116%;object-fit:cover;object-position:50% 25%;z-index:-2}
.stats::before{display:none}
.stats .eyebrow{display:block;margin-bottom:1.3rem;color:var(--lav)}
.stats h2{font-size:var(--t2);max-width:15em}
.stats-grid{margin-top:clamp(2.5rem,6vw,5rem);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(1.2rem,3vw,2.5rem)}
.stat{border-top:2px solid var(--cream);padding-top:1.1rem}
.stat b{display:block;font-family:var(--display);font-weight:700;font-size:clamp(3.2rem,7.4vw,7rem);line-height:.95;letter-spacing:-.03em;color:var(--orange);font-variant-numeric:tabular-nums;white-space:nowrap}
.stat>span{display:block;margin-top:.7rem;font-weight:500;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase}

/* ---------- créateurs (anneau 3D) ---------- */
.crea{background:var(--lav);padding-block:clamp(7rem,12vw,11rem) clamp(5rem,9vw,8rem);overflow:clip;position:relative;z-index:1}
.crea-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:2rem}
.crea h2{font-size:var(--t2);max-width:14em;margin-top:1.2rem}
.crea-head p{max-width:24rem;font-weight:400}
.ring-stage{--cw:clamp(210px,24vw,300px);position:relative;height:clamp(470px,54vw,600px);perspective:1800px;display:grid;place-items:center;margin-top:1rem;touch-action:pan-y;cursor:grab;user-select:none}
.ring-stage:active{cursor:grabbing}
.ring{position:relative;width:var(--cw);height:clamp(360px,38vw,440px);transform-style:preserve-3d;--R:calc(var(--cw)*.86 + 40px)}
.rc{position:absolute;inset:0;transform:rotateY(calc(var(--i)*72deg)) translateZ(var(--R));backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:26px;overflow:hidden;background:var(--ink)}
.rc img{width:100%;height:100%;object-fit:cover;object-position:50% 25%;pointer-events:none}
.rc::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(31,26,23,.25) 0%,rgba(31,26,23,0) 25%,rgba(31,26,23,.92) 100%)}
.rc .lw{position:absolute;left:1rem;top:1rem;width:64px;color:var(--cream);z-index:2}
.rc figcaption{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:1rem 1.1rem 1.1rem;color:var(--cream)}
.rc h3{font-size:1.55rem;letter-spacing:-.01em}
.rc figcaption p{margin-top:.35rem;font-size:.86rem;font-weight:400;line-height:1.35}
.rc .aud{display:block;margin-top:.6rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;color:var(--lav)}
.ring-ctrl{display:flex;gap:.7rem;justify-content:center;margin-top:1.4rem}
.round{width:52px;height:52px;border-radius:50%;border:2px solid var(--ink);background:transparent;color:var(--ink);display:grid;place-items:center;cursor:pointer;transition:background .2s,color .2s}
.round:hover{background:var(--ink);color:var(--lav)}
.round svg{width:20px;height:20px}
.crea-cta{display:flex;justify-content:center;margin-top:1.8rem}


/* split talents : texte à gauche, anneau à droite */
.crea-split{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(1.5rem,4vw,4rem);align-items:center}
.crea-left .crea-head{display:block}
.crea-left .crea h2,.crea-left h2{max-width:11em}
.crea-left .crea-head p{max-width:30rem;margin-top:1.6rem}
.crea-left .ring-ctrl{justify-content:flex-start;margin-top:2rem}
.crea-left .crea-tag{text-align:left!important;margin-top:1.8rem}
.crea-left .crea-cta{justify-content:flex-start}
.crea-right .ring-stage{--cw:clamp(170px,17vw,250px);height:clamp(420px,40vw,560px);margin-top:0}
.crea-right .ring{height:clamp(300px,29vw,400px);--R:calc(var(--cw)*.86 + 30px)}
@media(max-width:900px){.crea-split{grid-template-columns:1fr}.crea-right .ring-stage{--cw:clamp(210px,50vw,280px);height:clamp(440px,100vw,560px)}.crea-right .ring{height:clamp(340px,70vw,420px)}}


/* ---------- v11 : titres centrés + rangées de cartes (talents / academy) ---------- */
.center-head{text-align:center;max-width:62rem;margin:0 auto}
.center-head h2{font-size:var(--t2);max-width:none;margin:1.1rem auto 0;line-height:.98}
.center-head .dim{opacity:.38}
.center-head p{max-width:40rem;margin:1.4rem auto 0;font-weight:400;font-size:1.02rem}
.crea .ring-ctrl{justify-content:center;margin-top:1.6rem}
.tc-view{margin-top:clamp(2rem,4vw,3.2rem);overflow:hidden;padding-block:2.2rem 1rem;touch-action:pan-y;cursor:grab;user-select:none}
.tc-view:active{cursor:grabbing}
.tc-track{display:flex;gap:clamp(.9rem,1.8vw,1.6rem);width:max-content;will-change:transform}
.tc{position:relative;flex:0 0 auto;width:clamp(210px,24vw,340px);aspect-ratio:3/4;border-radius:26px;overflow:hidden;background:var(--ink);color:var(--cream);margin:0;transform-origin:50% 100%}
.tc img{width:100%;height:100%;object-fit:cover;object-position:50% 25%;pointer-events:none;display:block}
.tc::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(31,26,23,.25) 0%,rgba(31,26,23,0) 25%,rgba(31,26,23,.92) 100%)}
.tc .lw{position:absolute;left:1rem;top:1rem;width:64px;color:var(--cream);z-index:2}
.tc figcaption{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:1rem 1.1rem 1.1rem}
.tc h3{font-size:1.55rem;letter-spacing:-.01em}
.tc figcaption p{margin-top:.35rem;font-size:.86rem;font-weight:400;line-height:1.35}
.tc .aud{display:block;margin-top:.6rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;color:var(--lav)}
.acad .acad-cards{align-items:start}
.acad .acad-cards>*:nth-child(even){transform:translateY(-1.6rem)}
.camp-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(1.5rem,5vw,5rem);align-items:end}
.camp-side p{max-width:30rem;font-weight:400;font-size:1.02rem;margin-bottom:1.4rem}
@media(max-width:900px){.camp-head{grid-template-columns:1fr}.acad .acad-cards>*:nth-child(even){transform:none}}

.acad .acad-cards{grid-template-columns:repeat(5,minmax(0,1fr))}
.acad-cta{display:flex;flex-direction:column;align-items:center;gap:1.2rem;text-align:center;margin-top:clamp(2rem,4vw,3rem)}
.acad-cta p{font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:var(--t3);max-width:30rem;line-height:1.1}
@media(max-width:900px){.acad .acad-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ---------- campagnes ---------- */
.camp{background:var(--ink);color:var(--cream);padding:0;position:relative}
.camp-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1.5rem;margin-bottom:clamp(1.8rem,4vw,3rem)}
.camp h2{font-size:var(--t2);max-width:13em;margin-top:1.2rem}
.camp-view{overflow-x:auto;scroll-snap-type:x mandatory;padding:0 var(--gr) 1.2rem var(--gl);scrollbar-width:thin;scrollbar-color:var(--cream) transparent}
.camp-track{display:flex;gap:clamp(1rem,2vw,1.8rem);width:max-content}
.camp-stage.is-pinned{min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding-block:4.5rem 2.5rem}
.camp-stage.is-pinned .camp-view{overflow:visible;scroll-snap-type:none}
.cc{scroll-snap-align:start;flex:0 0 auto;width:clamp(270px,36vw,500px);height:clamp(360px,34vw,500px);border-radius:32px;padding:clamp(1.3rem,2vw,2rem);display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;color:var(--ink)}
.cc .tag{font-weight:500;letter-spacing:.14em;text-transform:uppercase;font-size:.72rem;position:relative;z-index:2}
.cc h3{font-size:clamp(2.4rem,4.4vw,4rem);letter-spacing:-.02em;position:relative;z-index:2}
.cc p{font-weight:400;font-size:1.12rem;max-width:20rem;position:relative;z-index:2;margin-top:.6rem}
.cc .big{position:absolute;right:-.06em;top:-.12em;font-family:var(--display);font-weight:700;font-size:clamp(10rem,19vw,18rem);line-height:1;letter-spacing:-.06em;opacity:.18;z-index:1;pointer-events:none}
.cc.a{background:var(--orange)} .cc.b{background:var(--lav)} .cc.d{background:var(--cream)}
.camp-bar{margin-top:1.4rem;height:4px;background:rgba(253,248,237,.2);border-radius:4px;overflow:hidden;display:none}
.camp-stage.is-pinned .camp-bar{display:block}
.camp-bar i{display:block;height:100%;background:var(--orange);transform-origin:0 50%;transform:scaleX(0)}

/* ---------- marquee ---------- */
.marq{background:var(--orange);color:var(--ink);padding-block:clamp(2.2rem,4vw,3.4rem);overflow:hidden}
.marq .eyebrow{display:block;margin-bottom:1.2rem}
.marq-row{display:flex;width:max-content;animation:marq 38s linear infinite}
.marq-row span{font-family:var(--display);font-weight:700;font-size:clamp(2.4rem,6vw,5rem);letter-spacing:-.02em;line-height:1;padding-right:clamp(1.6rem,3vw,3rem);white-space:nowrap}
.marq-row span:nth-child(even){color:var(--cream)}
.marq-row span::after{content:"";display:inline-block;width:.36em;height:.36em;border-radius:50%;background:var(--ink);margin-left:clamp(1.6rem,3vw,3rem);vertical-align:middle}
@keyframes marq{to{transform:translateX(-50%)}}

/* ---------- faq ---------- */
.faq{background:var(--cream);padding-block:clamp(5rem,9vw,8rem)}
.faq-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(2rem,5vw,5rem);align-items:start}
.faq h2{font-size:var(--t2);margin-top:1.2rem}
.faq details{border-top:2px solid var(--ink);padding-block:1.1rem}
.faq details:last-child{border-bottom:2px solid var(--ink)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1.5rem;font-family:var(--display);font-weight:700;font-size:clamp(1.25rem,2.2vw,1.7rem);line-height:1.1;min-height:44px}
.faq summary::-webkit-details-marker{display:none}
.faq summary i{flex:0 0 auto;width:40px;height:40px;border-radius:50%;background:var(--orange);display:grid;place-items:center;transition:transform .35s cubic-bezier(.2,.8,.2,1),background .2s}
.faq summary i svg{width:18px;height:18px}
.faq details[open] summary i{transform:rotate(45deg);background:var(--lav)}
.faq details p{margin-top:.9rem;max-width:36rem;font-weight:400}

/* ---------- contact ---------- */
.contact{background:var(--lav);padding-block:clamp(5rem,9vw,8rem)}
.contact-grid{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:clamp(2rem,5vw,5rem);align-items:start}
.contact h2{font-size:clamp(2.8rem,6.4vw,5.8rem);letter-spacing:-.02em;margin-top:1.2rem}
.contact-info{margin-top:2rem;display:grid;gap:.5rem;font-weight:400;font-size:1.1rem}
.contact-info b{font-weight:500}
.social{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1.4rem}
.social a{min-height:44px;display:inline-flex;align-items:center;padding:.5rem 1.1rem;border:2px solid var(--ink);border-radius:999px;font-weight:500;text-decoration:none;font-size:.95rem;transition:background .2s,color .2s}
.social a:hover{background:var(--ink);color:var(--lav)}
form{display:grid;gap:1rem;background:var(--cream);border:2px solid var(--ink);border-radius:32px;padding:clamp(1.4rem,3vw,2.4rem)}
.row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
label{display:grid;gap:.4rem;font-weight:500;font-size:.9rem}
input,select,textarea{font:inherit;font-weight:400;color:var(--ink);background:var(--white);border:2px solid var(--ink);border-radius:14px;padding:.75rem .9rem;min-height:48px;width:100%;min-width:0}
textarea{min-height:120px;resize:vertical}
input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--orange);outline-offset:2px}
.form-note{font-size:.88rem;font-weight:400;min-height:1.3em}

/* ---------- footer ---------- */
.foot{background:var(--ink);color:var(--cream);padding-block:clamp(3rem,6vw,5rem) calc(env(safe-area-inset-bottom,0px) + 2rem);overflow:hidden}
.foot .lw{color:var(--cream)}
.foot-row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;margin-top:2rem;font-weight:400;font-size:.95rem}
.foot-row a{text-decoration:none;border-bottom:1px solid currentColor}

/* ---------- cursor ---------- */
.cursor{position:fixed;left:0;top:0;width:20px;height:20px;margin:-10px 0 0 -10px;border-radius:50%;background:var(--orange);border:2px solid var(--cream);pointer-events:none;z-index:250;display:none}
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .cursor{display:block}
  body.has-cursor,body.has-cursor a,body.has-cursor button,body.has-cursor summary,body.has-cursor .ring-stage,body.has-cursor .tc-view{cursor:none}
  body.has-cursor input,body.has-cursor textarea,body.has-cursor select{cursor:text}
}

/* ---------- responsive ---------- */
@media (max-width:900px){
  .nav-links,.nav-cta{display:none}
  .menu-btn{display:inline-flex}
  .nav-pill{padding-left:1rem;gap:.8rem}
  .faq-grid,.contact-grid{grid-template-columns:minmax(0,1fr)}
  .row{grid-template-columns:1fr}
  .imm-dots{right:12px}
}
@media (max-width:520px){
  .hero-cta .btn{width:100%;justify-content:center}
}
@media (prefers-reduced-motion:reduce){
  .marq-row{animation:none;flex-wrap:wrap;width:auto}
  .scroll-hint i{animation:none}
  .btn,.faq summary i,.overlay{transition:none}
}

/* ===== v6 : menu, titres, chiffres, academy, pied ===== */
h1,h2,h3{text-transform:uppercase}
.menu-btn svg{width:22px;height:22px}
.overlay li a{text-transform:uppercase}
/* chiffres : fond noir, les chiffres arrivent un par un au centre puis se rangent en ligne */
.stats>img,.stats::before{display:none}
.stats{background:var(--ink);color:var(--cream)}
.stats-head{display:block;text-align:center}
.stats .stats-head h2,.stats.is-pinned .stats-head h2{font-size:clamp(1.5rem,6.2vw,2.2rem)!important;max-width:none!important;line-height:1.08;letter-spacing:-.02em}
.st-l{display:block}
@media (min-width:700px){.stats .stats-head h2,.stats.is-pinned .stats-head h2{font-size:clamp(1.3rem,2.55vw,3rem)!important}}
.stats-sub{margin:1rem auto 0;font-family:var(--display);font-weight:700;font-size:clamp(.78rem,1.05vw,1rem);letter-spacing:.16em;text-transform:uppercase}
.stats h2{margin-inline:auto}
.stats-grid{margin-top:clamp(2.5rem,6vw,5rem);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(1rem,3vw,2.5rem)}
.stat{border:0;padding:0;text-align:center}
.stat b{font-size:clamp(2.8rem,7vw,6.6rem)}
.stat>span{margin-top:1rem;color:var(--cream);font-size:clamp(.72rem,1vw,.95rem)}
.stats.is-pinned{height:100svh;min-height:100svh;padding:0;display:flex;align-items:stretch}
.stats.is-pinned .wrap{position:relative;height:100%}
.stats.is-pinned .stats-head{position:absolute;left:var(--gl);right:var(--gr);top:clamp(5.5rem,22vh,12rem);text-align:center}
.stats.is-pinned .stats-head h2{margin-inline:auto;font-size:clamp(1.5rem,3.6vw,3.2rem);max-width:20em}
.stats.is-pinned .stats-grid{position:absolute;left:var(--gl);right:var(--gr);top:45%;margin:0}
/* talents / academy */
.crea-tag{margin-top:1.4rem;font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:var(--t3)}
.acad{background:var(--cream);color:var(--ink);padding-block:clamp(5rem,9vw,8rem)}
.acad-head{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(2rem,5vw,5rem);align-items:end}
.acad h2{font-size:var(--t2);margin-top:1.2rem;max-width:11em}
.acad-sub{font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:var(--t3);margin-top:1.1rem;line-height:1.1}
.acad-head p{font-weight:400;max-width:34rem;font-size:1.08rem}
.acad-head p+p{margin-top:.9rem}
.acad-cards{margin-top:clamp(2.2rem,5vw,4rem);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.8rem,2vw,1.5rem)}
.ac{position:relative;border-radius:22px;overflow:hidden;aspect-ratio:3/4;background:var(--ink);color:var(--cream);margin:0}
.ac img{width:100%;height:100%;object-fit:cover;object-position:50% 25%;display:block}
.ac::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(31,26,23,0) 45%,rgba(31,26,23,.9) 100%)}
.ac figcaption{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:1rem 1.1rem 1.1rem}
.ac h3{font-size:1.2rem}
.ac figcaption span{display:block;margin-top:.45rem;font-size:.68rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--lav)}
.ac.cta{background:var(--orange);color:var(--ink);display:flex;flex-direction:column;justify-content:space-between;padding:1.4rem}
.ac.cta::after{display:none}
.ac.cta h3{font-size:clamp(1.6rem,2.8vw,2.6rem);line-height:1}
.ac.cta p{font-weight:400;margin-top:.8rem;font-size:.95rem}
/* confiance : plus de gros points */
.marq-row span::after{display:none}
/* pied : texte de présentation, réseaux, logo */
.foot{padding-block:clamp(4rem,8vw,7rem) calc(env(safe-area-inset-bottom,0px) + 2rem)}
.foot-pres{font-family:var(--display);font-weight:700;font-size:clamp(1.5rem,3.4vw,3rem);line-height:1.1;letter-spacing:-.01em;max-width:22em}
.foot-pres em{font-style:normal;color:var(--orange)}
.foot-soc{list-style:none;display:flex;gap:.8rem;margin:clamp(1.8rem,3vw,2.6rem) 0 clamp(2.4rem,5vw,4.5rem);padding:0}
.foot-soc a{display:grid;place-items:center;width:54px;height:54px;border-radius:50%;border:2px solid var(--cream);color:var(--cream);transition:background .25s,color .25s,transform .25s;border-bottom-width:2px}
.foot-soc a:hover{background:var(--orange);border-color:var(--orange);color:var(--ink);transform:translateY(-3px)}
.foot-soc svg{width:24px;height:24px}
.foot .lw{width:100%;height:auto;display:block}
@media (max-width:900px){.acad-head{grid-template-columns:minmax(0,1fr)}.acad-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-grid{gap:.4rem}.stat b{font-size:clamp(1.45rem,6.4vw,3.2rem);white-space:nowrap}.stat>span{font-size:.52rem;letter-spacing:.06em;margin-top:.6rem}.stats.is-pinned .stats-grid{top:42%}.stats.is-pinned .stats-head{top:clamp(5rem,20vh,9rem)}}
.marq-row .lg{display:flex;align-items:center;padding-right:clamp(2.6rem,5.5vw,5rem)}
.marq-row .lg img{height:calc(var(--h)*1px*var(--ls,1));width:auto;display:block}
.marq-row{animation-duration:70s}
@media (max-width:600px){.marq-row{--ls:.72}}

/* ===== v7 ===== */
.contact{padding-block:clamp(4rem,8vw,7rem);text-align:center;min-height:calc(100vh - var(--fh,8rem));min-height:calc(100svh - var(--fh,8rem));display:flex;flex-direction:column;justify-content:center}
.contact-min{display:flex;flex-direction:column;align-items:center;gap:1.4rem}
.contact h2{font-size:clamp(2.6rem,7vw,6.4rem);margin-top:0;max-width:12em}
.contact-min p{font-weight:400;font-size:1.2rem;max-width:30rem}
.about{background:var(--orange);color:var(--ink);padding-block:clamp(4rem,8vw,7rem) 0;overflow:hidden}
.about .eyebrow{display:block;margin-bottom:1.4rem}
.about-pres{font-family:var(--display);font-weight:700;font-size:clamp(1.6rem,3.8vw,3.4rem);line-height:1.08;letter-spacing:-.01em;max-width:22em}
.about-soc{list-style:none;display:flex;gap:.8rem;margin:clamp(1.8rem,3vw,2.6rem) 0 clamp(2.4rem,5vw,4.5rem);padding:0}
.about-soc a{display:grid;place-items:center;width:54px;height:54px;border-radius:50%;border:2px solid var(--ink);color:var(--ink);transition:background .25s,color .25s,transform .25s}
.about-soc a:hover{background:var(--ink);color:var(--cream);transform:translateY(-3px)}
.about-soc svg{width:24px;height:24px}
.about .lw{width:100%;height:auto;display:block;color:var(--ink);margin-bottom:-.6%}
.foot{padding-block:1.4rem calc(env(safe-area-inset-bottom,0px) + 1.4rem)}
.foot-row{margin-top:0}
/* v12 : cartes campagnes décalées (haut / bas) */
.camp-track{align-items:flex-start;gap:clamp(.8rem,1.4vw,1.3rem)}
.cc{--h:clamp(340px,31vw,450px);width:clamp(240px,23vw,330px);height:var(--h);border-radius:28px;padding:clamp(1.1rem,1.5vw,1.5rem)}
.cc:nth-child(even){height:calc(var(--h)*.84);margin-top:calc(var(--h)*.2)}
.cc h3{font-size:clamp(1.7rem,2.5vw,2.4rem);line-height:1}
.cc p{font-size:.95rem;max-width:16rem}
.cc .big{font-size:clamp(7rem,12vw,11rem)}
@media(max-width:900px){.cc{--h:clamp(320px,88vw,420px);width:clamp(250px,72vw,320px)}}
/* v13 : vidéos de campagne en illustration */
.cc.has-media{color:var(--cream)}
.cc-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;pointer-events:none}
.cc.has-media::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(31,26,23,.35) 0%,rgba(31,26,23,0) 28%,rgba(31,26,23,.88) 100%);pointer-events:none}
.cc.has-media .tag{align-self:flex-start;padding:.38rem .8rem;border-radius:99px;background:rgba(253,248,237,.92);color:var(--ink)}
.cc.has-media h3,.cc.has-media p{color:var(--cream)}
/* v14 : fonds = noir / beige / orange ; lavande en touches seulement */
.crea{background:var(--cream)}
.crea .center-head .dim{color:var(--orange);opacity:1}
.crea .eyebrow{color:var(--ink)}
.contact{background:var(--cream)}
.btn.lav{background:var(--lav);border-color:var(--lav);color:var(--ink)}
.btn.lav:hover{background:var(--ink);border-color:var(--ink);color:var(--lav)}
.hl{padding-inline:.08em;background:linear-gradient(transparent 58%,var(--lav) 58%)}
/* v15 : à propos centré + bloc team */
.about{padding-block:clamp(4rem,8vw,7rem) clamp(3rem,6vw,5rem)}
.about-c{display:flex;flex-direction:column;align-items:center;text-align:center}
.about-c .lw{width:min(78vw,860px);margin:0 auto clamp(1.8rem,4vw,3.2rem);transform-origin:50% 50%}
.about-c .about-pres{max-width:24em;margin-inline:auto}
.about-c .about-soc{justify-content:center;margin:clamp(1.6rem,3vw,2.4rem) 0 clamp(2.6rem,5vw,4rem)}
.team-block{width:100%;background:var(--cream);color:var(--ink);border-radius:36px;padding:clamp(1.6rem,4vw,3.2rem) 0 clamp(1.6rem,3vw,2.4rem);overflow:hidden;text-align:center}
.team-head{padding-inline:clamp(1.2rem,4vw,3rem);display:flex;flex-direction:column;align-items:center;gap:.9rem}
.team-head .eyebrow{margin:0}
.team-head h3{font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:var(--t2);line-height:.98;letter-spacing:-.02em}
.team-head p{max-width:30rem;font-weight:400;font-size:1.02rem}
.team-view{margin-top:clamp(1.6rem,3vw,2.4rem);overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.team-row{display:flex;gap:clamp(.7rem,1.4vw,1.2rem);width:max-content;animation:teamslide 55s linear infinite}
.team-view:hover .team-row{animation-play-state:paused}
.tm{flex:0 0 auto;width:clamp(120px,13vw,190px);margin:0;text-align:left}
.tm img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:20px;display:block;background:var(--lav)}
.tm figcaption{margin-top:.55rem;font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:.85rem;letter-spacing:.04em}
@keyframes teamslide{to{transform:translateX(calc(-50% - clamp(.35rem,.7vw,.6rem)))}}
@media (prefers-reduced-motion:reduce){.team-row{animation:none}}
/* v16 : Brand management — mur de vidéos + voile noir */
.camp-hero{position:relative;min-height:100svh;overflow:hidden;display:flex;align-items:center;background:#000;isolation:isolate}
.camp-wall{position:absolute;inset:-28% -18%;display:flex;gap:clamp(10px,1.2vw,16px);justify-content:center;transform:rotate(-9deg);z-index:0}
.wcol{flex:0 0 clamp(150px,19vw,300px);display:flex;flex-direction:column;gap:clamp(10px,1.2vw,16px);animation:wdrift 46s ease-in-out infinite alternate}
.wcol:nth-child(1){margin-top:-6%}.wcol:nth-child(2){margin-top:10%;animation-direction:alternate-reverse;animation-duration:52s}.wcol:nth-child(3){margin-top:-2%;animation-duration:40s}.wcol:nth-child(4){margin-top:14%;animation-direction:alternate-reverse}.wcol:nth-child(5){margin-top:-10%;animation-duration:58s}
@keyframes wdrift{from{transform:translateY(-4%)}to{transform:translateY(5%)}}
.wt{aspect-ratio:9/16;border-radius:clamp(14px,1.7vw,24px);overflow:hidden;background:#111}
.wt video,.wt img{width:100%;height:100%;object-fit:cover;display:block}
.camp-veil{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(31,26,23,.9) 0%,rgba(31,26,23,.62) 55%,rgba(31,26,23,.78) 100%),linear-gradient(180deg,rgba(31,26,23,.35) 0%,rgba(31,26,23,0) 30%,rgba(31,26,23,1) 100%)}
.camp-hero-in{position:relative;z-index:2;padding-block:7rem 6rem}
.camp-hero-in .eyebrow{display:block;margin-bottom:1.4rem}
.camp-hero h2{font-size:clamp(3.2rem,8.6vw,9rem);line-height:.92;letter-spacing:-.03em;max-width:8.5em;margin:0}
.camp-hero p{max-width:30rem;margin:clamp(1.4rem,2.6vw,2.2rem) 0 1.8rem;font-weight:400;font-size:1.06rem}
@media (prefers-reduced-motion:reduce){.wcol{animation:none}}
@media(max-width:900px){.camp-wall{inset:-10% -40%;transform:rotate(-9deg)}.camp-hero-in{padding-block:6rem 4rem}}
/* v17 : cartes campagnes plus proches du bouton, plus d'air avant les logos */
.camp-hero{min-height:84svh}
.camp-hero-in{padding-block:7rem 3rem}
.camp-stage.is-pinned{justify-content:center;min-height:max(660px,100svh);padding-block:5.5rem 3rem}
.camp-stage .camp-bar{margin-top:2rem}
.marq{margin-top:0}
/* v18 : plus de cartes campagnes, seul le mur + bouton */
.camp-hero{min-height:100svh}
.camp-hero-in{padding-block:7rem 6rem}
/* ====== v19 : Talents + Academy refondus (motion design) ====== */
.crea{background:var(--cream);color:var(--ink);padding-block:clamp(5rem,9vw,8rem) 0;overflow:visible}
.crea-intro{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:clamp(2rem,5vw,5rem);align-items:end}
.crea-intro .eyebrow{display:block;margin-bottom:1.3rem}
.crea h2,.acad h2{font-size:clamp(3rem,7.4vw,7.6rem);line-height:.92;letter-spacing:-.03em;max-width:9em;margin:0;text-align:left}
.crea h2 .dim{color:var(--orange);opacity:1}
.crea-intro-r p{max-width:28rem;font-weight:400;font-size:1.04rem;margin:0 0 1.6rem}
.sw{display:inline-block;overflow:hidden;vertical-align:top;padding:.14em 0 .06em;margin:-.14em 0 -.06em}
.swi{display:inline-block;will-change:transform}
.crea-split2{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(2rem,5vw,6rem);align-items:start;padding-bottom:clamp(5rem,9vw,8rem)}
.crea-l{position:sticky;top:clamp(5.5rem,13vh,8.5rem)}
.crea-l .eyebrow{display:block;margin-bottom:1.3rem}
.crea .crea-l h2{font-size:clamp(2.7rem,5.4vw,5.6rem);max-width:7em}
.crea-l p{max-width:27rem;font-weight:400;font-size:1.04rem;margin:1.8rem 0 1.8rem}
.crea-btns{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.6rem}
.crea-btns .btn{margin-top:0}
.crea-rail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(12px,1.6vw,24px);align-items:start}
.cw-col{display:flex;flex-direction:column;gap:clamp(12px,1.6vw,24px);will-change:transform}
.cw-col:nth-child(2){margin-top:clamp(3rem,8vw,7rem)}
.tk{position:relative;display:block;aspect-ratio:4/5;border-radius:clamp(16px,1.8vw,26px);overflow:hidden;background:var(--ink);color:var(--cream);text-decoration:none;border:0;isolation:isolate;transition:transform .5s cubic-bezier(.2,.8,.2,1),box-shadow .5s}
.tk img{width:100%;height:100%;object-fit:cover;object-position:50% 22%;display:block;transition:transform 1.1s cubic-bezier(.2,.8,.2,1)}
.tk:hover img,.tk:focus-visible img{transform:scale(1.07)}
.tk:hover,.tk:focus-visible{box-shadow:0 26px 60px -22px rgba(31,26,23,.6)}
.tk::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(31,26,23,0) 38%,rgba(31,26,23,.9) 100%);z-index:1}
.tk .go{position:absolute;right:.9rem;top:.9rem;z-index:2;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--cream);color:var(--ink);transition:transform .45s cubic-bezier(.2,.8,.2,1),background .25s,color .25s}
.tk:hover .go,.tk:focus-visible .go{background:var(--lav);transform:rotate(45deg) scale(1.08)}
.tk .cap{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:1.2rem 1.3rem 1.3rem;display:block}
.tk .role{display:block;font-weight:500;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--lav)}
.tk h3{font-size:clamp(1.3rem,1.8vw,1.9rem);margin-top:.35rem;letter-spacing:-.01em;color:var(--cream)}
.tk .aud{display:block;margin-top:.55rem;padding-top:.55rem;border-top:1px solid rgba(253,248,237,.35);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;font-weight:500}
@media(max-width:900px){
  .crea-split2{grid-template-columns:1fr;gap:2.4rem;padding-bottom:4.5rem}
  .crea-l{position:static}
  .crea-rail{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:calc(var(--gl) * -1) calc(var(--gr) * -1);padding:0 var(--gr) 1rem var(--gl);scrollbar-width:none}
  .crea-rail::-webkit-scrollbar{display:none}
  .cw-col{display:contents}
  .cw-col:nth-child(2){margin-top:0}
  .tk{flex:0 0 72vw;scroll-snap-align:center}
}
/* academy */
.acad{background:var(--cream);color:var(--ink);padding-block:clamp(5rem,9vw,8rem)}
.acad-top{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(2rem,5vw,5rem);align-items:end}
.acad-top .eyebrow{display:block;margin-bottom:1.3rem}
.acad .acad-sub{font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:var(--t3);margin-top:1.4rem;line-height:1.1}
.acad-steps{list-style:none;margin:0;padding:0}
.acad-steps li{position:relative;display:grid;grid-template-columns:3rem minmax(0,1fr);gap:.8rem;padding:1.3rem 0}
.acad-steps li:last-child{padding-bottom:0}
.acad-steps .rule{position:absolute;left:0;right:0;top:0;height:2px;background:var(--ink);transform-origin:0 50%}
.acad-steps .n{font-family:var(--display);font-weight:700;font-size:1.05rem;color:var(--orange);padding-top:.15rem}
.acad-steps h3{font-size:1.35rem;text-transform:uppercase;letter-spacing:-.005em}
.acad-steps p{margin-top:.35rem;font-weight:400;font-size:.98rem;max-width:26rem}
.acad .acad-deck{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(.7rem,1.5vw,1.3rem);margin-top:clamp(3rem,6vw,5rem)}
.acad .ac{aspect-ratio:3/4;border-radius:clamp(14px,1.6vw,22px);transform:none}
.acad .ac img{transition:transform 1.1s cubic-bezier(.2,.8,.2,1)}
.acad .ac:hover img{transform:scale(1.06)}
.acad .ac figcaption{padding:1rem 1rem 1.05rem}
.acad .ac h3{font-size:1.05rem;letter-spacing:0}
.acad .ac .pill{display:inline-block;margin-top:.5rem;padding:.28rem .7rem;border-radius:99px;border:1px solid rgba(253,248,237,.55);font-size:.64rem;font-weight:500;letter-spacing:.06em;text-transform:none;color:var(--cream)}
.acad-cta2{margin-top:clamp(1.6rem,3vw,2.4rem);background:var(--ink);color:var(--cream);border-radius:clamp(20px,2.4vw,32px);padding:clamp(1.6rem,4vw,3.4rem);display:flex;justify-content:space-between;align-items:center;gap:1.6rem 2rem;flex-wrap:wrap}
.acad-cta2 h3{font-size:clamp(2rem,4.6vw,4.2rem);line-height:.95;letter-spacing:-.025em;text-transform:uppercase}
.acad-cta2 p{margin-top:.8rem;font-weight:400;max-width:34rem}
@media(max-width:900px){.acad-top{grid-template-columns:1fr}.acad .acad-deck{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v23 : academy en split + bandes de méthode */
.acad .crea-l h2{font-size:clamp(2.7rem,5.4vw,5.6rem);max-width:7em;margin:0;line-height:.92}
.acad .crea-l .acad-sub{margin:1.5rem 0 0;font-size:clamp(1rem,1.5vw,1.35rem);max-width:20em}
.acad .crea-l p:not(.acad-sub){margin:1.2rem 0 1.8rem}
.acad .tk::after{background:linear-gradient(180deg,rgba(31,26,23,0) 45%,rgba(31,26,23,.88) 100%)}
.acad .tk .go{background:var(--cream)}
.acad .tk:hover .go,.acad .tk:focus-visible .go{background:var(--orange)}
.acad .tk .aud{border-top-color:rgba(253,248,237,.35);color:var(--cream);text-transform:none;letter-spacing:.02em;font-size:.8rem}
.steps{display:block}
.stp{position:relative;overflow:hidden;padding-block:clamp(2.6rem,5vw,4.4rem) clamp(2.2rem,4vw,3.6rem)}
.stp.o{background:var(--orange);color:var(--ink)}
.stp.k{background:var(--cream);color:var(--ink)}
.stp .wrap{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem 3rem;flex-wrap:wrap}
.stp-t{font-family:var(--body);font-weight:500;font-size:.78rem;letter-spacing:.2em;text-transform:uppercase;margin:0}
.stp .wrap p{max-width:26rem;font-weight:400;font-size:1.04rem;margin:0}
.stp-row{margin-top:clamp(1rem,2.4vw,2rem);overflow:hidden}
.stp-track{display:flex;width:max-content;will-change:transform}
.stp-track span{display:flex;align-items:center;flex:0 0 auto;font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:clamp(4.4rem,16vw,16rem);letter-spacing:-.04em;line-height:1;padding-bottom:.06em;white-space:nowrap}
.stp-track span::after{content:"";display:block;width:.2em;height:.2em;border-radius:50%;background:var(--lav);margin:0 .32em}
.stp-track span:nth-child(even){opacity:.4}
@media(max-width:900px){.acad .crea-l h2{font-size:clamp(2.7rem,12vw,4.4rem)}}

/* v24 : mots-clés immersion sur une ligne + méthode décalée */
.cap p{margin-top:.55rem;max-width:34rem}
@media(min-width:601px){.cap p{max-width:none;white-space:nowrap;font-size:min(var(--t3),calc((100vw - 2rem)/39))}}
.acad h2 .hl{background:none}
.stp{padding-block:clamp(1.6rem,3.4vw,3.2rem)}
.steps .stp:first-child{padding-top:clamp(2rem,4.2vw,4rem)}
.stp .wrap{display:block}
.stp-in{display:flex;flex-direction:column;width:min(100%,1440px);margin-inline:auto;padding-inline:var(--gl) var(--gr)}
.stp.l .stp-in{align-items:flex-start;text-align:left;padding-left:max(var(--gl),6vw)}
.stp.r .stp-in{align-items:flex-end;text-align:right;padding-right:max(var(--gr),6vw)}
.stp-w{font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:clamp(3.2rem,12.5vw,12.5rem);letter-spacing:-.04em;line-height:.9;margin:0;will-change:transform;font-size:clamp(3rem,12.5vw,12.5rem);color:inherit}
.stp .stp-in p{margin:.9rem 0 0;max-width:none;font-weight:400;font-size:1.04rem;will-change:transform}
@media(min-width:601px){.stp .stp-in p{white-space:nowrap}}
@media(max-width:600px){.stp-w{font-size:clamp(2.6rem,13vw,4rem)}.stp.l .stp-in{padding-left:var(--gl)}.stp.r .stp-in{padding-right:var(--gr)}}

/* v25 : confiance plus fine et plus rapide, réseaux sous Nous contacter */
.marq{padding-block:clamp(1.1rem,2vw,1.6rem)}
.marq .eyebrow{margin-bottom:.7rem}
.marq-row{animation-duration:26s}
.marq-row{--ls:.72}
.marq-row .lg{padding-right:clamp(2rem,4vw,3.6rem)}
@media (max-width:600px){.marq-row{--ls:.6}}
.contact-soc{justify-content:center;margin:.4rem 0 0}
.hl,.contact .hl{background:none!important;padding-inline:0}

/* v28 : menu en petite carte flottante */
.overlay{background:rgba(31,26,23,0);padding:0;display:block;clip-path:none;opacity:0;visibility:hidden;transition:opacity .3s,background .3s,visibility 0s .3s}
.overlay.open{clip-path:none;opacity:1;visibility:visible;background:rgba(31,26,23,.2);transition:opacity .3s,background .3s,visibility 0s}
.overlay .mc{position:absolute;top:calc(env(safe-area-inset-top,0px) + 12px);right:var(--gr);width:min(calc(100vw - 2rem),320px);background:var(--cream);color:var(--ink);border-radius:28px;padding:.9rem 1.3rem 1.2rem 1.5rem;box-shadow:0 30px 80px -24px rgba(31,26,23,.55);transform-origin:calc(100% - 26px) 26px;transform:scale(.4);opacity:0;transition:transform .5s cubic-bezier(.2,.9,.2,1),opacity .25s}
.overlay.open .mc{transform:none;opacity:1}
.mc-h{display:flex;justify-content:space-between;align-items:center;min-height:44px;margin-right:-.4rem}
.mc-h span{font-weight:500;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;opacity:.6}
.mc-x{display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:50%;background:transparent;color:var(--ink);cursor:pointer;transition:background .2s,transform .3s}
.mc-x:hover{background:rgba(31,26,23,.08);transform:rotate(90deg)}
.mc-x svg{width:22px;height:22px}
.overlay .mc ul{list-style:none;margin:.4rem 0 0;padding:0;display:block}
.overlay .mc li a{display:flex;align-items:center;justify-content:space-between;font-family:var(--body);font-weight:500;font-size:1.45rem;line-height:1.15;letter-spacing:-.015em;text-transform:none;padding:.42rem 0;text-decoration:none;color:var(--ink);transition:color .2s,transform .35s cubic-bezier(.2,.8,.2,1)}
.overlay .mc li a::after{content:"";width:8px;height:8px;border-radius:50%;background:var(--orange);transform:scale(0);transition:transform .3s cubic-bezier(.2,.8,.2,1)}
.overlay .mc li a:hover,.overlay .mc li a:focus-visible{transform:translateX(4px)}
.overlay .mc li a:hover::after,.overlay .mc li a:focus-visible::after{transform:scale(1)}
.overlay .mc li a.cur{color:rgba(31,26,23,.4)}
.overlay .mc li a.cur::after{transform:scale(1);background:rgba(31,26,23,.4)}
.overlay .mc li{opacity:0;transform:translateY(8px);transition:opacity .3s,transform .4s cubic-bezier(.2,.8,.2,1)}
.overlay.open .mc li{opacity:1;transform:none}
.overlay.open .mc li:nth-child(1){transition-delay:.12s}.overlay.open .mc li:nth-child(2){transition-delay:.16s}.overlay.open .mc li:nth-child(3){transition-delay:.2s}.overlay.open .mc li:nth-child(4){transition-delay:.24s}.overlay.open .mc li:nth-child(5){transition-delay:.28s}.overlay.open .mc li:nth-child(6){transition-delay:.32s}
@media(prefers-reduced-motion:reduce){.overlay .mc,.overlay .mc li{transition:none}}
.overlay{z-index:120}
.btn svg{width:16px;height:16px;flex:none}

/* ===== v7 : barre de menu flottante, translucide, sur toutes les pages ===== */
.nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:calc(env(safe-area-inset-top,0px) + 12px) clamp(10px,2vw,28px) 0;display:block;pointer-events:none}
.nav-bar{pointer-events:auto;max-width:1360px;margin:0 auto;display:flex;align-items:center;gap:1.4rem;height:62px;padding:0 .55rem 0 1.5rem;border-radius:999px;background:rgba(253,248,237,.7);-webkit-backdrop-filter:blur(18px) saturate(1.5);backdrop-filter:blur(18px) saturate(1.5);border:1px solid rgba(253,248,237,.55);box-shadow:0 12px 40px -20px rgba(31,26,23,.55),inset 0 0 0 1px rgba(31,26,23,.06);transition:background .4s,box-shadow .4s}
.nav-logo{display:block!important;flex:none;width:92px!important;opacity:1!important;overflow:visible!important;margin:0!important;color:var(--ink);transition:color .3s,transform .4s cubic-bezier(.2,.8,.2,1)}

/* accueil : logo et liens en blanc sur les zones sombres, en foncé sur les zones claires */
.nav-bar,.nav-logo,.nav-links a{transition:background .4s,box-shadow .4s,border-color .4s,color .35s,transform .4s cubic-bezier(.2,.8,.2,1)}
.nav.on-dark .nav-bar{background:rgba(31,26,23,.34);border-color:rgba(253,248,237,.16);box-shadow:0 12px 40px -22px rgba(0,0,0,.5);-webkit-backdrop-filter:blur(16px) saturate(1.3);backdrop-filter:blur(16px) saturate(1.3)}
.nav.on-dark .nav-logo,.nav.on-dark .nav-links a:not(.cur){color:var(--cream)}
.nav.on-dark .nav-logo:hover{color:var(--orange)}
.nav-logo svg{display:block;width:100%;height:auto;fill:currentColor}
.nav-logo:hover{color:var(--orange);transform:scale(1.04)}
.nav-links{display:flex!important;gap:clamp(.9rem,2vw,2rem);margin:0 auto!important;padding:0;list-style:none}
.nav-links a{font-weight:500;font-size:.92rem;text-decoration:none;padding:.5rem .1rem;position:relative;color:var(--ink);white-space:nowrap}
.nav-links a.cur{color:var(--orange)}
.nav-links a.cur::after{transform:scaleX(1)}
.nav-cta{display:inline-flex!important;min-height:46px;padding:.55rem 1.3rem;font-size:.92rem;white-space:nowrap}
.menu-btn{display:none!important;margin-left:auto;min-height:46px;min-width:46px;border:0!important;box-shadow:none!important;border-radius:50%;background:var(--ink);color:var(--cream)}
.menu-btn svg{width:22px;height:22px}
@media (max-width:1020px){
  .nav-links,.nav-cta{display:none!important}
  .menu-btn{display:inline-flex!important}
  .nav-bar{height:58px;padding:0 .5rem 0 1.2rem}
  .nav-logo{width:80px!important}
}
/* ---------- campagnes : même présentation que la page Brand management ---------- */
.tz.bm-camp{background:#000;color:var(--cream);position:relative;overflow:hidden;isolation:isolate}
.tz.bm-camp .camp-veil{background:linear-gradient(90deg,rgba(31,26,23,.88) 0%,rgba(31,26,23,.5) 28%,rgba(12,10,9,.78) 46%,rgba(6,5,4,.96) 62%,#030202 80%,#000 100%),linear-gradient(180deg,rgba(31,26,23,.55) 0%,rgba(31,26,23,.12) 22%,rgba(31,26,23,.12) 78%,rgba(31,26,23,.9) 100%)}
.tz.bm-camp .tz-grid{position:relative;z-index:2}
.tmh-sec{position:relative;min-height:84svh;display:flex;align-items:center;overflow:hidden;padding:clamp(6.5rem,12vh,8rem) 0 clamp(2rem,5vh,3.5rem)}
.tmh-in{position:relative;z-index:3}
.tmh-in .eyebrow{display:block;margin-bottom:1.2rem}
.tmh{font-size:clamp(2.6rem,8.6vw,9.4rem);line-height:.9;letter-spacing:-.04em;text-transform:uppercase;text-align:left;max-width:none}
.tmh-l{display:block;will-change:transform}
.tmh .o{color:var(--orange)}
.tmh-row{display:flex;justify-content:space-between;align-items:flex-end;gap:1.6rem 3rem;flex-wrap:wrap;margin-top:clamp(1.6rem,4vh,3rem)}
.tmh-row p{max-width:34rem;font-weight:400;font-size:1.06rem}
.tmh-go{display:inline-flex;align-items:center;gap:.8rem;text-decoration:none;font-weight:500;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase}
.tmh-go i{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--ink);color:var(--cream);transition:transform .4s cubic-bezier(.2,.8,.2,1),background .25s,color .25s}
.tmh-go:hover i{transform:translateY(5px);background:var(--orange);color:var(--ink)}
.tmh-go svg{width:20px;height:20px}
.tmh-f{position:absolute;z-index:1;border-radius:clamp(14px,1.8vw,26px);overflow:hidden;box-shadow:0 30px 60px -28px rgba(31,26,23,.55);will-change:transform;background:var(--ink)}
.tmh-f img{width:100%;height:100%;object-fit:cover;object-position:50% 20%}
.tmh-f.f1{width:clamp(120px,15vw,230px);aspect-ratio:4/5;right:7vw;top:15vh;transform:rotate(6deg)}
.tmh-f.f2{width:clamp(110px,13vw,200px);aspect-ratio:4/5;right:27vw;bottom:10vh;transform:rotate(-5deg);z-index:1}
.tmh-f.f3{width:clamp(100px,11vw,170px);aspect-ratio:4/5;left:46vw;top:9vh;transform:rotate(-3deg)}
@media(max-width:900px){.tmh-sec{align-items:flex-start;padding-top:7.4rem}
.tmh-f.f1{right:-2vw;top:auto;bottom:6vh;width:34vw}
.tmh-f.f2{right:30vw;bottom:2vh;width:28vw}
.tmh-f.f3{display:none}
.tmh{font-size:clamp(2.6rem,13.4vw,5rem)}
}
.tmh-f{display:none}
.tz{position:relative}
.tz-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:clamp(2rem,5vw,6rem);align-items:start}
.tz-l{align-self:stretch}
.tz-l-in{position:sticky;top:0;height:100svh;display:flex;flex-direction:column;justify-content:center;padding:clamp(6rem,12vh,8rem) 0 clamp(2rem,5vh,3rem)}
.tz-l .eyebrow{display:block;margin-bottom:1.2rem}
.tz .tmh{font-size:clamp(2.5rem,5.9vw,6.8rem);line-height:.92}
.tz-l p{max-width:30rem;font-weight:400;font-size:1.02rem;margin-top:clamp(1.4rem,3.5vh,2.4rem)}
.tz-cnt{display:flex;align-items:center;gap:1.2rem;margin-top:clamp(1.6rem,4vh,2.8rem);font-family:var(--display);font-weight:700;font-size:1.05rem;letter-spacing:.04em}
.tz-cnt b{font-size:1.9rem;letter-spacing:-.02em;color:var(--orange)}
.tz-cnt i{flex:1;max-width:14rem;height:2px;background:rgba(31,26,23,.16);position:relative;overflow:hidden}
.tz-cnt u{position:absolute;inset:0;background:var(--ink);transform:scaleX(.1667);transform-origin:0 50%;transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.tz-r{list-style:none;margin:0;padding:clamp(5.5rem,11vh,7rem) 0 clamp(2rem,5vh,4rem);display:flex;flex-direction:column;gap:clamp(1.2rem,3vh,2.4rem)}
.tz-c{position:relative;height:min(86svh,calc(.9 * 42vw * 1.25));min-height:420px;border-radius:clamp(20px,2.4vw,36px);overflow:hidden;background:var(--ink);clip-path:inset(0 round clamp(20px,2.4vw,36px))}
.tz-ph{position:absolute;inset:0;display:block}
.tz-ph img{width:100%;height:116%;object-fit:cover;object-position:50% 20%;display:block;will-change:transform}
.tz-c::after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(to top,rgba(31,26,23,.88),rgba(31,26,23,0));pointer-events:none}
.tz-in{position:absolute;left:0;right:0;bottom:0;z-index:2;display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;padding:clamp(1.1rem,2.2vw,2rem);color:var(--cream)}
.tz-n{display:block;font-weight:500;font-size:.78rem;letter-spacing:.16em;opacity:.8;margin-bottom:.5rem}
.tz-name{font-size:clamp(1.8rem,3.4vw,3.6rem);line-height:.95;letter-spacing:-.03em;margin:0}
.tz-role{display:block;margin-top:.55rem;font-weight:500;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;opacity:.85}
.tz-btn{flex:none;white-space:nowrap}
.tz-btn svg{width:16px;height:16px}
@media(max-width:900px){.tz-grid{grid-template-columns:1fr;gap:0}
.tz-l-in{position:static;height:auto;padding:7.2rem 0 1.6rem}
.tz .tmh{font-size:clamp(2.6rem,13.4vw,5rem)}
.tz-cnt{display:none}
.tz-r{padding-top:.4rem}
.tz-c{height:auto;aspect-ratio:4/5;min-height:0}
.tz-in{flex-direction:column;align-items:flex-start}
}
.sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.tz-post{align-self:flex-start;margin-top:clamp(1.2rem,3vh,2rem)}
.bm-camp{background:var(--ink);color:var(--cream);margin-top:0}
.bm-camp .tz-grid{align-items:center;min-height:100svh;padding-block:clamp(4.5rem,9vh,6.5rem)}
.bm-camp .tz-l{align-self:center}
.bm-camp .tz-l-in{position:static;height:auto;padding:0}
.bm-rail{display:flex;flex-direction:column;align-items:center;gap:.9rem;min-width:0}
.bm-vp{--ch:min(64svh,40rem);width:100%;height:var(--ch);overflow-y:auto;overflow-x:hidden;scroll-snap-type:y mandatory;scrollbar-width:none;-ms-overflow-style:none;overscroll-behavior-y:auto;border-radius:clamp(20px,2.4vw,36px);outline-offset:6px}
.bm-vp::-webkit-scrollbar{display:none}
.bm-vp:focus-visible{outline:2px solid var(--lav)}
.bm-camp .bm-vp .tz-r{padding:0;gap:1rem}
.bm-camp .bm-vp .tz-c{height:var(--ch);min-height:0;flex:none;scroll-snap-align:start;scroll-snap-stop:always}
.bm-ar{flex:none;width:3rem;height:3rem;border-radius:50%;border:1.5px solid rgba(253,248,237,.4);background:transparent;color:var(--cream);display:grid;place-items:center;cursor:pointer;transition:background .25s,color .25s,border-color .25s,opacity .25s,transform .25s}
.bm-ar svg{width:20px;height:20px}
.bm-ar:hover:not([disabled]){background:var(--orange);border-color:var(--orange);color:var(--ink);transform:scale(1.06)}
.bm-ar:focus-visible{outline:2px solid var(--lav);outline-offset:3px}
.bm-ar[disabled]{opacity:.28;cursor:default}
@media(max-width:900px){.bm-camp .tz-grid{min-height:0;padding-block:5rem 3rem}
.bm-camp .tz-l{align-self:stretch}
.bm-camp .tz-l-in{padding:0 0 1.6rem}
.bm-vp{--ch:min(74svh,calc((100vw - 2rem) * 1.25))}
}
.bm-camp .eyebrow{color:var(--lav)}
.bm-camp .tz-cnt i{background:rgba(253,248,237,.2)}
.bm-camp .tz-cnt u{background:var(--cream)}
.bm-camp .tz-c{background:#2a2420}
.tz-ph video{width:100%;height:116%;object-fit:cover;display:block;will-change:transform}
.tz-tx{min-width:0}
.tz-k{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.9rem}
.tz-k span{padding:.32rem .75rem;border-radius:999px;background:rgba(253,248,237,.92);color:var(--ink);font-weight:700;font-size:.76rem;letter-spacing:.02em}
.tt-hero .tmh{font-size:clamp(3.4rem,10.5vw,12rem);line-height:.88;margin:.4rem 0 0}
.tt-eq-h .tmh{font-size:clamp(2.6rem,6.4vw,7rem);line-height:.92;margin-top:.8rem;max-width:12ch}
.bl-hero .tmh{font-size:clamp(3.2rem,9.6vw,11rem);line-height:.88;margin:.4rem 0 0}
.bm-camp .tz-l,.bm-camp .tz-l-in{min-width:0}
.tz-ph .tz-pi{position:absolute;left:0;top:0;width:100%;height:116%;object-fit:cover;object-position:50% 50%;display:block;will-change:transform}
.tz-ph .tz-pi + video{position:relative;opacity:0;transition:opacity .35s ease;background:transparent}
.tz-ph .tz-pi + video.on{opacity:1}
.bm-lg{position:absolute;z-index:3;left:clamp(.9rem,1.6vw,1.4rem);top:clamp(.9rem,1.6vw,1.4rem);display:inline-flex;align-items:center;gap:.6rem;padding:.55rem .9rem;background:rgba(253,248,237,.96);border-radius:16px;box-shadow:0 6px 22px rgba(31,26,23,.28)}
.bm-lg img{height:clamp(2.4rem,4vw,3.4rem);width:auto;display:block}
.bm-lg i{font-style:normal;font-family:"League Spartan",sans-serif;font-weight:700;color:var(--ink);opacity:.55;font-size:1.1rem}
@media(max-width:600px){.bm-lg{padding:.45rem .7rem;border-radius:13px}
.bm-lg img{height:1.9rem}
}
/* v255 — campagnes : fil vertical 9:16 façon Reels, sans téléphone */
.bm-vf .bm-rail{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:1fr 1fr;column-gap:clamp(.7rem,1.6vw,1.4rem);row-gap:.8rem;align-items:center;justify-items:center;width:100%}
.bm-vf .bm-vp{--ph:min(69svh,44rem);--pk:clamp(3rem,9svh,5rem);grid-column:1;grid-row:1/3;height:calc(var(--ph) + 2*var(--pk));border-radius:0;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 calc(var(--pk)*.55),#000 calc(100% - var(--pk)*.55),transparent 100%);mask-image:linear-gradient(180deg,transparent 0,#000 calc(var(--pk)*.55),#000 calc(100% - var(--pk)*.55),transparent 100%)}
.bm-vf .bm-up{grid-column:2;grid-row:1;align-self:end}
.bm-vf .bm-dn{grid-column:2;grid-row:2;align-self:start}
.bm-vf .bm-vp .tz-r{padding:var(--pk) 0;gap:1.1rem;align-items:center}
.bm-vf .bm-vp .tz-c{--k:0;width:calc(var(--ph)*9/16);max-width:100%;height:var(--ph);aspect-ratio:auto;flex:none;scroll-snap-align:center;scroll-snap-stop:always;border-radius:clamp(22px,2.2vw,32px);clip-path:inset(0 round clamp(22px,2.2vw,32px));transform:scale(calc(.86 + .14*var(--k)));opacity:calc(.4 + .6*var(--k));box-shadow:0 30px 60px -28px rgba(0,0,0,.7);will-change:transform,opacity}
.bm-vf .tz-c::after{inset:38% 0 0;background:linear-gradient(to top,rgba(14,11,9,.92),rgba(14,11,9,.55) 45%,rgba(14,11,9,0))}
.bm-vf .tz-ph img,.bm-vf .tz-ph video,.bm-vf .tz-ph .tz-pi{height:100%;object-position:50% 50%}
.bm-vf .tz-in{flex-direction:column;align-items:flex-start;gap:.9rem;padding:clamp(1rem,1.6vw,1.35rem)}
.bm-vf .tz-name{font-size:clamp(1.55rem,2.3vw,2.2rem);line-height:.98}
.bm-vf .tz-role{margin-top:.5rem;font-size:.66rem;letter-spacing:.12em;line-height:1.35}
.bm-vf .tz-k{margin-top:.7rem}
.bm-vf .tz-k span{padding:.26rem .62rem;font-size:.7rem}
.bm-vf .tz-btn{font-size:.82rem;padding:.7rem 1.1rem}
.bm-vf .bm-lg{left:.8rem;top:.8rem;padding:.4rem .65rem;border-radius:13px}
.bm-vf .bm-lg img{height:1.9rem;max-width:7.4rem;object-fit:contain}
.bm-vf .tz-tc{font-size:1.4rem}
@media(max-width:900px){
.bm-vf .bm-vp{--ph:min(66svh,calc((100vw - 5.6rem)*16/9));--pk:clamp(2.6rem,8svh,4rem);height:calc(var(--ph) + 2*var(--pk))}
.bm-vf .bm-ar{width:2.6rem;height:2.6rem}
}
@media(prefers-reduced-motion:reduce){.bm-vf .bm-vp .tz-c{transition:none}}
/* v255b — interface Reels : profil, actions, disque, progression */
.bm-vf .tz-top,.bm-vf .rl-top{position:absolute;z-index:3;left:0;right:0;top:0;display:flex;justify-content:space-between;align-items:center;padding:.9rem 1rem;color:#fff;background:linear-gradient(to bottom,rgba(14,11,9,.55),rgba(14,11,9,0));pointer-events:none}
.bm-vf .rl-top b{font-family:"League Spartan",sans-serif;font-weight:700;font-size:1.05rem;letter-spacing:.01em}
.bm-vf .rl-top svg{width:22px;height:22px}
.bm-vf .tz-bm-lg{display:none}
.bm-vf .bm-lg{display:none}
.bm-vf .tz-in{flex-direction:column;align-items:stretch;gap:.8rem;padding:1.1rem 1rem 1.15rem}
.bm-vf .tz-tx{padding-right:3.4rem}
.bm-vf .rl-hd{display:flex;align-items:center;gap:.6rem;min-width:0}
.bm-vf .rl-av{flex:none;display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:50%;background:#fff;box-shadow:0 0 0 2px #fff,0 0 0 3.5px var(--orange);overflow:hidden;padding:.42rem}
.bm-vf .rl-av img{max-width:100%;max-height:100%;object-fit:contain;display:block}
.bm-vf .rl-av.two{width:auto;border-radius:999px;gap:.3rem;padding:.4rem .6rem}
.bm-vf .rl-av.two img{height:1.5rem;width:auto;max-width:2.8rem}
.bm-vf .rl-av.ini,.bm-vf .rl-disc.ini{background:var(--lav);color:var(--ink);font-family:"League Spartan",sans-serif;font-weight:700;font-size:.9rem;letter-spacing:.02em;padding:0}
.bm-vf .tz-name{font-family:"Open Sauce One",system-ui,sans-serif;font-weight:700;font-size:.98rem;letter-spacing:0;line-height:1.15;text-transform:none;margin:0}
.bm-vf .tz-role{margin-top:.1rem;font-size:.82rem;letter-spacing:0;text-transform:none;font-weight:400;line-height:1.35;opacity:.95}
.bm-vf .tz-k{margin-top:.55rem}
.bm-vf .tz-btn{align-self:flex-start;padding:.55rem .95rem;font-size:.76rem;gap:.4rem}
.bm-vf .tz-btn svg{width:13px;height:13px}
.bm-vf .rl-side{position:absolute;z-index:3;right:.7rem;bottom:1.15rem;display:flex;flex-direction:column;align-items:center;gap:1rem;color:#fff;pointer-events:auto}
.bm-vf .rl-b{display:grid;place-items:center;width:2.3rem;height:2.3rem;padding:0;border:0;background:none;color:#fff;cursor:pointer;filter:drop-shadow(0 1px 4px rgba(0,0,0,.45));transition:transform .25s cubic-bezier(.3,1.4,.5,1)}
.bm-vf .rl-b svg{width:26px;height:26px}
.bm-vf .rl-like:hover{transform:scale(1.12)}
.bm-vf .rl-like.on{color:#ff3b5c}
.bm-vf .rl-like.on svg{fill:currentColor;animation:rlpop .45s cubic-bezier(.3,1.5,.5,1)}
@keyframes rlpop{0%{transform:scale(.6)}60%{transform:scale(1.28)}100%{transform:scale(1)}}
.bm-vf .rl-disc{display:grid;place-items:center;width:2.1rem;height:2.1rem;border-radius:8px;background:#fff;border:2px solid rgba(255,255,255,.9);overflow:hidden;padding:.25rem;margin-top:.15rem;animation:rlspin 7s linear infinite}
.bm-vf .rl-disc img{max-width:100%;max-height:100%;object-fit:contain}
@keyframes rlspin{to{transform:rotate(360deg)}}
.bm-vf .rl-pg{position:absolute;z-index:4;left:0;right:0;bottom:0;height:3px;background:rgba(255,255,255,.28);pointer-events:none}
.bm-vf .rl-pg u{position:absolute;inset:0;background:#fff;transform:scaleX(var(--p,0));transform-origin:0 50%}
@media(prefers-reduced-motion:reduce){.bm-vf .rl-disc{animation:none}.bm-vf .rl-like.on svg{animation:none}}
.tz-tc{position:absolute;inset:0;display:flex;align-items:flex-end;padding:clamp(1.4rem,3vw,2.6rem);background:var(--lav);color:var(--ink)}
.tz-tc b{font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:clamp(3.4rem,9vw,9rem);line-height:.84;letter-spacing:-.04em}
.bm-all{margin-top:clamp(1.2rem,2.4vw,1.8rem);align-self:flex-start}
.cl-m .tz-tc{border-radius:0}
.cs-nx-i .tz-tc{position:absolute}
.cl-m .bm-lg img{position:static;inset:auto;width:auto;height:clamp(2.2rem,3.4vw,3rem);object-fit:contain;transform:none!important;transition:none}
@media (hover:hover) and (pointer:fine){.cs-nx-i .tz-tc{width:100%;height:100%;object-fit:cover;display:block;border-radius:inherit;box-shadow:0 30px 60px -28px rgba(31,26,23,.6)}
}

/* ===== v170 : hero plus grand, interlignes serrés, sans boutons (desktop) ; menu translucide plus voyant ===== */
.op-h{font-size:clamp(3.1rem,11.6vw,19rem);line-height:.8}
.op-h .ln{padding-block:.07em .1em;margin-block:-.07em -.1em}
@media (min-width:701px){
  .op-ctas{display:none}
  .op-hg{padding-top:clamp(4.6rem,9vh,6rem);padding-bottom:clamp(1.4rem,4vh,2.6rem)}
  .op-stage{height:max(100svh,calc(11.6vw*2.4 + 27rem))}
  .op-lead{font-size:clamp(1.1rem,1.5vw,1.6rem);max-width:52rem;margin-bottom:0}
}
.nav-bar{background:rgba(253,248,237,.82)!important;border:1px solid rgba(31,26,23,.16)!important;box-shadow:0 14px 40px -18px rgba(31,26,23,.6),0 0 0 1px rgba(253,248,237,.5) inset!important}
.nav.on-dark .nav-bar{background:rgba(31,26,23,.5)!important;border-color:rgba(253,248,237,.28)!important}

/* ===== v173 : bloc contact en bloc de couleur arrondi ===== */
.contact{background:var(--orange)!important;color:var(--ink);margin:0 clamp(.6rem,1.4vw,1.2rem) clamp(.6rem,1.4vw,1.2rem);border-radius:clamp(26px,3.4vw,48px)}
.contact .eyebrow{color:var(--ink)}
.contact h2{color:var(--ink)}
.contact h2 .hl{color:var(--cream)}
.contact .btn.lav{background:var(--ink);color:var(--cream);border-color:var(--ink)}
.contact .btn.lav:hover{background:var(--cream);color:var(--ink);border-color:var(--cream)}
.contact .about-soc a{border-color:var(--ink);color:var(--ink)}
.contact .about-soc a:hover{background:var(--ink);color:var(--cream)}

/* ===== v174 : texte des bandes plus grand, équilibré avec le gros titre ===== */
@media(min-width:601px){.stp .stp-in p{white-space:normal;font-size:clamp(1.25rem,2vw,2.3rem);line-height:1.28;font-weight:500;max-width:min(54vw,62rem);text-wrap:balance;margin-top:clamp(1rem,2vw,1.8rem)}}
@media(max-width:600px){.stp .stp-in p{font-size:1.12rem;line-height:1.35;font-weight:500}}

/* ===== v174 : bloc contact compact ===== */
.contact{min-height:0!important;padding-block:clamp(3rem,5.2vw,5rem)!important}
.contact-min{gap:1.1rem}
.contact h2{font-size:clamp(2.4rem,6vw,5.6rem)}
body.pg-contact .contact{min-height:calc(100svh - var(--fh,8rem))!important;padding-block:clamp(4rem,8vw,7rem)!important}

/* ===== v176 : contact en noir, dans le même bandeau que le pied de page ===== */
.contact{background:var(--ink)!important;color:var(--cream);margin-bottom:0!important;border-radius:var(--br) var(--br) 0 0!important}
.contact .eyebrow{color:var(--lav)}
.contact h2{color:var(--cream)}
.contact h2 .hl{color:var(--orange)}
.contact p{color:var(--cream)}
.contact .btn.lav{background:var(--orange);color:var(--ink);border-color:var(--orange)}
.contact .btn.lav:hover{background:var(--cream);color:var(--ink);border-color:var(--cream)}
.contact .about-soc a{border-color:rgba(253,248,237,.5);color:var(--cream)}
.contact .about-soc a:hover{background:var(--cream);color:var(--ink);border-color:var(--cream)}
main:has(>.contact:last-child)+.foot{margin-top:0;border-radius:0 0 var(--br) var(--br);box-shadow:inset 0 1px 0 rgba(253,248,237,.16)}

/* v187 — talents : anneau 3D qui tourne au scroll */
.crea.rg{--cw:clamp(150px,16vw,270px);--R:calc(var(--cw)*2.28);background:var(--cream);color:var(--ink);margin:var(--bm);border-radius:var(--br);padding:0;overflow:clip;position:relative;isolation:isolate;box-shadow:inset 0 0 0 2px var(--ink)}
.crea.rg .eyebrow{color:var(--ink);display:block;margin-bottom:1.1rem}
.crea.rg h2{font-size:clamp(2.6rem,min(5.6vw,11svh),6.4rem);line-height:.92;letter-spacing:-.03em;max-width:7em;margin:0;text-align:left}
.crea.rg h2 .dim{color:var(--orange);opacity:1}
.crea.rg h2{font-size:clamp(2rem,min(3.7vw,7.6svh),4rem)!important;line-height:1!important;max-width:11em!important}
.bm-camp.bm-vf .tz-l h2{font-size:clamp(2rem,min(3.9vw,8svh),4.2rem)!important;line-height:1!important;max-width:12em!important}
.bm-camp.bm-vf .tz-l h2 .dim{color:var(--orange);opacity:1}
@media (max-width:900px){.crea.rg h2{font-size:clamp(1.7rem,min(7.4vw,5svh),2.5rem)!important}.bm-camp.bm-vf .tz-l h2{font-size:clamp(1.8rem,8vw,2.8rem)!important}}
.rg-l p{max-width:26rem;font-weight:500;font-size:clamp(1rem,1.25vw,1.2rem);line-height:1.4;margin:1.4rem 0 0}
.rg-l .crea-btns{margin-top:1.4rem}
.rg-pin{position:relative;height:100%;display:grid;grid-template-columns:minmax(0,1fr);align-items:center;padding:clamp(4.4rem,9vh,6rem) max(var(--gl),4vw) clamp(1rem,3vh,2rem)}
.rg-l{position:relative;z-index:4;max-width:min(30rem,40vw)}
.rg-stage{touch-action:pan-y;cursor:grab;outline:none;position:absolute;inset:0;z-index:2;display:grid;place-items:center;perspective:1700px;perspective-origin:50% 42%;-webkit-mask-image:linear-gradient(90deg,transparent 0,transparent 38%,#000 55%);mask-image:linear-gradient(90deg,transparent 0,transparent 38%,#000 55%)}
.rg-tilt{transform-style:preserve-3d;transform:translateX(18vw) rotateX(calc(var(--tx,5)*1deg)) rotateY(calc(var(--ty,0)*1deg));will-change:transform}
.rg-ring{position:relative;width:var(--cw);height:calc(var(--cw)*1.78);transform-style:preserve-3d;transform:translateZ(calc(var(--R)*-1)) rotateY(var(--ry,0deg));will-change:transform}
.rg-c{position:absolute;inset:0;border-radius:clamp(16px,1.8vw,26px);overflow:hidden;background:var(--ink);color:#fff;text-decoration:none;backface-visibility:hidden;-webkit-backface-visibility:hidden;transform:rotateY(calc(var(--i)*32.7273deg)) translateZ(calc(var(--R) - var(--zb,0px))) scale(var(--sc,1));box-shadow:0 0 0 2px var(--cream),0 0 0 3.5px rgba(31,26,23,.9),0 30px 60px -28px rgba(31,26,23,.6);pointer-events:none;outline-offset:6px}
.rg-c.front{pointer-events:auto}
.rg-bg,.rg-v{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 22%;display:block}
.rg-c.front .rg-bg{animation:rgkb 9s ease-in-out infinite alternate}
@keyframes rgkb{from{transform:scale(1)}to{transform:scale(1.09) translateY(-1.5%)}}
.rg-v{opacity:0;transition:opacity .5s ease}
.rg-c.vplay .rg-v{opacity:1}
.rg-c::before{content:"";position:absolute;inset:0;z-index:6;background:var(--cream);opacity:var(--dk,0);pointer-events:none}
.rg-c::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(31,26,23,.55) 0,rgba(31,26,23,0) 22%,rgba(31,26,23,0) 58%,rgba(31,26,23,.82) 100%);pointer-events:none}
.rg-bars{position:absolute;z-index:3;left:.6rem;right:.6rem;top:.55rem;display:flex;gap:4px}
.rg-bars i{position:relative;flex:1;height:3px;border-radius:3px;background:rgba(255,255,255,.38);overflow:hidden}
.rg-bars i::after{content:"";position:absolute;inset:0;background:#fff;transform:scaleX(0);transform-origin:0 50%}
.rg-c.front .rg-bars i::after{animation:rgbar 12s linear infinite}
.rg-c.front .rg-bars i:nth-child(1)::after{animation-name:rgb1}
.rg-c.front .rg-bars i:nth-child(2)::after{animation-name:rgb2}
.rg-c.front .rg-bars i:nth-child(3)::after{animation-name:rgb3}
@keyframes rgb1{0%{transform:scaleX(0)}33.3%,100%{transform:scaleX(1)}}
@keyframes rgb2{0%,33.3%{transform:scaleX(0)}66.6%,100%{transform:scaleX(1)}}
@keyframes rgb3{0%,66.6%{transform:scaleX(0)}99.9%{transform:scaleX(1)}100%{transform:scaleX(0)}}
.rg-top{position:absolute;z-index:3;left:.6rem;right:.6rem;top:1.2rem;display:flex;align-items:center;gap:.6rem}
.rg-av{flex:none;width:clamp(26px,2.1vw,34px);aspect-ratio:1;border-radius:50%;padding:2.5px;background:conic-gradient(from 210deg,var(--orange),#FF9F6B,var(--lav),var(--orange));box-shadow:0 2px 10px rgba(0,0,0,.25)}
.rg-av img{display:block;width:100%;height:100%;border-radius:50%;object-fit:cover;object-position:50% 12%;border:2px solid var(--ink);box-sizing:border-box;transform:none}
.rg-id{min-width:0;display:flex;flex-direction:column;line-height:1.15;text-shadow:0 1px 8px rgba(0,0,0,.55)}
.rg-id b{font-family:var(--display);font-weight:700;font-size:clamp(.72rem,.8vw,.88rem);letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rg-id small{font-weight:500;font-size:clamp(.56rem,.58vw,.64rem);opacity:.9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rg-go{margin-left:auto;flex:none;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:rgba(255,255,255,.2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;transition:transform .45s cubic-bezier(.2,.8,.2,1),background .25s}
.rg-c:hover .rg-go{background:var(--orange);transform:rotate(45deg) scale(1.08)}
.rg-cap{position:absolute;left:0;right:0;bottom:0;z-index:3;padding:.8rem .65rem .65rem;display:flex;flex-direction:column;align-items:flex-start;gap:.5rem}
.rg-cap em{display:inline-block;padding:.24rem .6rem;border-radius:999px;background:var(--orange);color:var(--ink);font-style:normal;font-weight:600;font-size:.64rem;letter-spacing:.03em}
.rg-reply{white-space:nowrap;display:flex;align-items:center;justify-content:space-between;width:100%;min-height:34px;padding:.4rem .45rem .4rem .85rem;border-radius:999px;border:1.5px solid rgba(255,255,255,.7);font-weight:500;font-size:.7rem;color:#fff;transition:background .3s,color .3s,border-color .3s}
.rg-c:hover .rg-reply{background:#fff;color:var(--ink);border-color:#fff}
.rg-ui{display:none!important}
.rg-ui{position:absolute;z-index:5;left:max(var(--gl),4vw);bottom:clamp(1.1rem,3.4vh,2.2rem);display:flex;align-items:center;gap:1.4rem}
.rg-ui .crea-nav{display:flex;gap:.7rem}
.rg-ui .crea-ar{color:var(--ink);border-color:rgba(31,26,23,.4)}
.rg-ui .crea-ar:hover:not([disabled]){background:var(--ink);color:var(--cream);border-color:var(--ink)}
.rg-count{margin:0;display:flex;align-items:baseline;gap:.4rem;white-space:nowrap;font-weight:500;font-size:.9rem}
.rg-count b{font-family:var(--display);font-weight:700;font-size:1.8rem;letter-spacing:-.02em}
.rg-count em{font-style:normal;margin-left:.6rem;font-weight:600;white-space:nowrap}
@media(max-width:900px){.rg-count em{display:none}}
@media(min-width:901px){.crea.rg{height:calc(100svh - 2*var(--bm));min-height:560px}}
@media(max-width:900px){
  .crea.rg{--cw:clamp(120px,40vw,190px);height:auto;min-height:0}
  .rg-pin{height:auto;align-items:start;align-content:start;padding:clamp(4.4rem,10svh,5.2rem) var(--gl) 1.2rem}
  .rg-l{max-width:none}
  .rg-reply{font-size:.62rem;padding-left:.7rem;min-height:30px}
  .rg-reply svg{width:13px;height:13px}
  .crea.rg h2{font-size:clamp(2.3rem,min(11vw,6.4svh),3.6rem)}
  .rg-l p{font-size:.92rem;margin-top:.8rem;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
  .rg-l .crea-btns{display:none}
  .rg-stage{position:relative;inset:auto;top:auto;height:calc(var(--cw)*1.78 + 3.4rem);margin-top:1rem;-webkit-mask-image:none;mask-image:none}
  .rg-tilt{transform:rotateX(calc(var(--tx,4)*1deg)) rotateY(calc(var(--ty,0)*1deg))}
  .rg-ui{left:50%;transform:translateX(-50%);bottom:.9rem}
}
/* repli : sans animation, simple rangée à faire défiler */
.crea.rg:not(.rg-on) .rg-pin{height:auto;padding-bottom:5rem}
.crea.rg:not(.rg-on){height:auto;min-height:0}
.crea.rg:not(.rg-on) .rg-stage{position:relative;inset:auto;display:block;perspective:none;mask-image:none;-webkit-mask-image:none;margin-top:2rem;overflow-x:auto;scroll-snap-type:x mandatory}
.crea.rg:not(.rg-on) .rg-tilt{transform:none;display:block}
.crea.rg:not(.rg-on) .rg-ring{display:flex;gap:1rem;width:max-content;height:auto;transform:none}
.crea.rg:not(.rg-on) .rg-c{position:relative;width:var(--cw);height:calc(var(--cw)*1.78);transform:none;pointer-events:auto;flex:none;scroll-snap-align:center}
.crea.rg:not(.rg-on) .rg-ui{position:relative;left:auto;bottom:auto;transform:none;margin-top:1rem;justify-content:flex-start}
.crea.rg:not(.rg-on) .rg-ui .crea-nav{display:none}

/* v183 — méthode : bloc épinglé, texte + écosystème qui changent de couleur au scroll */
.ms{--es:min(46vw,52rem,74svh);--eu:calc(var(--es)/100);position:relative;margin:var(--bm);border-radius:var(--br);overflow:clip;background:var(--cream);color:var(--ink);isolation:isolate}
.ms-bg{position:absolute;inset:0;z-index:0;pointer-events:none}
.ms-bg i{position:absolute;inset:0;display:block;clip-path:circle(0% at 50% 50%);will-change:clip-path}
.ms-bg .b1{background:var(--orange)}.ms-bg .b2{background:var(--lav)}
.ms-bg .r{inset:auto;left:0;top:0;width:140px;height:140px;margin:-70px 0 0 -70px;border-radius:50%;border:4px solid rgba(255,255,255,.75);clip-path:none;opacity:0;transform:scale(0)}
.ms-pin{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr);gap:1.4rem;padding:clamp(2rem,5vw,4rem) max(var(--gl),4vw)}
.ms-t+.ms-t,.ms-e+.ms-e{margin-top:3rem}
.ms-w{font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:clamp(2.6rem,min(6.6vw,13svh),8rem);letter-spacing:-.04em;line-height:.9;margin:0;color:inherit;white-space:nowrap}
.ms-t p{margin:clamp(.9rem,2vh,1.6rem) 0 0;max-width:min(36rem,100%);font-weight:500;font-size:clamp(1.2rem,min(2vw,3.8svh),2.2rem);line-height:1.28;text-wrap:balance}
.ms-e{position:relative;width:var(--es);height:var(--es);margin-inline:auto}
.eo{position:absolute;left:50%;top:50%;border:1.5px dashed rgba(31,26,23,.16);border-radius:50%;transform:translate(-50%,-50%)}
.eo.o1{width:44%;aspect-ratio:1}.eo.o2{width:76%;aspect-ratio:1;border-color:rgba(255,99,46,.4)}.eo.o3{width:104%;aspect-ratio:1;border-color:rgba(196,192,255,.9)}
.e2 .eo{border-color:rgba(253,248,237,.5)}.e3 .eo{border-color:rgba(31,26,23,.2)}
.eb{position:absolute;width:calc(var(--s)*var(--eu));aspect-ratio:1}
.eb-i{display:block;width:100%;height:100%;border-radius:50%;padding:3px;animation:ebF 8s ease-in-out infinite alternate}
.eb.c0 .eb-i{background:var(--orange)}.eb.c1 .eb-i{background:var(--lav)}.eb.c2 .eb-i{background:conic-gradient(var(--orange),var(--lav),var(--orange))}
.e3 .eb.c1 .eb-i{background:var(--ink)}
.eb img{display:block;width:100%;height:100%;border-radius:50%;object-fit:cover;object-position:50% 22%;border:3px solid var(--cream);background:#ddd5cd}
.e3 .eb img{border-color:var(--lav)}
@keyframes ebF{from{transform:translate(-5px,6px)}to{transform:translate(6px,-7px)}}
.ei{position:absolute;display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .8rem .4rem .6rem;border-radius:999px;font-weight:600;font-size:clamp(.68rem,.9vw,.86rem);line-height:1;color:var(--ink);opacity:0;animation:eiP 7.5s ease-in-out infinite;white-space:nowrap;box-shadow:0 8px 20px -10px rgba(31,26,23,.45);z-index:3}
.ei svg{width:1.05em;height:1.05em;fill:currentColor;flex:none}
.ei.o{background:var(--orange)}.ei.l{background:var(--lav)}.ei.k{background:var(--ink);color:var(--cream)}
.e2 .ei.o{background:var(--cream)}.e2 .ei.l{background:var(--lav)}.e3 .ei.l{background:var(--cream)}
@keyframes eiP{0%{opacity:0;transform:translateY(14px) scale(.6)}10%{opacity:1;transform:translateY(0) scale(1.06)}16%{transform:scale(1)}70%{opacity:1;transform:translateY(-16px) scale(1)}85%,100%{opacity:0;transform:translateY(-34px) scale(.9)}}
/* campagnes */
.ec{position:absolute;display:block}
.ec-i{display:block;animation:ecF 9s ease-in-out infinite alternate}
@keyframes ecF{from{transform:rotate(var(--r,0deg)) translate(-4px,5px)}to{transform:rotate(var(--r,0deg)) translate(5px,-6px)}}
.ecp{width:calc(var(--w)*var(--eu))}
.ecp .ec-i{aspect-ratio:4/5;border-radius:clamp(10px,1.2vw,18px);overflow:hidden;background:#fff;box-shadow:0 18px 36px -18px rgba(31,26,23,.55);border:3px solid var(--cream)}
.ecp img{display:block;width:100%;height:100%;object-fit:cover}
.ecb{width:calc(var(--w)*var(--eu));z-index:2}
.ecb .ec-i{aspect-ratio:1;border-radius:50%;background:#fff;padding:14%;box-shadow:0 10px 24px -12px rgba(31,26,23,.5);display:grid;place-items:center}
.ecb img{width:100%;height:100%;object-fit:contain;display:block}
.ecl{z-index:3}
.ecl .ec-i{display:inline-flex;align-items:center;gap:.45rem;padding:.55rem 1rem .55rem .7rem;border-radius:999px;background:var(--ink);color:var(--cream);font-weight:600;font-size:clamp(.74rem,1.05vw,1rem);white-space:nowrap;box-shadow:0 10px 24px -12px rgba(31,26,23,.6)}
.ecl svg{width:1.1em;height:1.1em;padding:.18em;border-radius:50%;background:var(--orange);color:var(--ink);flex:none}
/* résultats */
.ecg{left:24%;top:22%;width:calc(52*var(--eu))}
.ecg .ec-i{position:relative;aspect-ratio:1;border-radius:50%;background:var(--cream);box-shadow:0 24px 50px -24px rgba(31,26,23,.55);display:grid;place-items:center}
.ecg svg{position:absolute;inset:5%;width:90%;height:90%;transform:rotate(-90deg)}
.ecg circle{fill:none;stroke-width:5}.ecg .g0{stroke:rgba(31,26,23,.1)}.ecg .g1{stroke:var(--orange);stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:100}
.gt{position:relative;text-align:center;line-height:1}
.gt b{display:block;font-family:var(--display);font-weight:700;font-size:calc(11*var(--eu));letter-spacing:-.03em}
.gt em{display:block;margin-top:.4em;font-style:normal;font-weight:500;font-size:clamp(.8rem,1.1vw,1.1rem)}
.ect{width:calc(var(--w)*var(--eu))}
.ect .ec-i{display:block;padding:clamp(.8rem,1.4vw,1.3rem) clamp(1rem,1.6vw,1.5rem);border-radius:clamp(14px,1.6vw,24px);background:var(--cream);box-shadow:0 16px 34px -18px rgba(31,26,23,.5)}
.ect.t2 .ec-i,.ect.t4 .ec-i{background:var(--ink);color:var(--cream)}
.ect b{display:block;font-family:var(--display);font-weight:700;font-size:calc(9.5*var(--eu));line-height:.95;letter-spacing:-.03em}
.ect em{display:block;margin-top:.35rem;font-style:normal;font-weight:500;font-size:clamp(.72rem,1vw,.95rem);line-height:1.2}
.ect.t4 .ec-i{display:flex;align-items:center;justify-content:space-between;gap:.8rem}
.ect .tk{display:grid;place-items:center;width:2rem;height:2rem;border-radius:50%;background:var(--orange);flex:none}
.ect .tk svg{width:55%;height:55%;color:var(--ink)}
.bars{display:flex;align-items:flex-end;gap:.28rem;height:clamp(2.6rem,5vw,4.4rem)}
.bars i{flex:1;height:calc(var(--h)*1%);background:var(--ink);border-radius:4px 4px 0 0;transform-origin:50% 100%}
.bars i:last-child{background:var(--orange)}
@media(min-width:901px){
  .ms{height:calc(100svh - 2*var(--bm));min-height:560px}
  .ms-pin{height:100%;grid-template-columns:minmax(0,1.04fr) minmax(0,1fr);align-items:center;gap:clamp(1rem,3vw,3rem);padding-block:clamp(4.6rem,9vh,6rem) clamp(1rem,3vh,2rem)}
  .ms.ms-on .ms-l,.ms.ms-on .ms-r{display:grid;align-items:center}
  .ms.ms-on .ms-t,.ms.ms-on .ms-e{grid-area:1/1;margin-top:0}
  .ms.ms-on .ms-e{justify-self:center}
}
@media(max-width:900px){
  .ms{--es:min(calc(100vw - 2*var(--bm) - 2rem),43svh);height:calc(100svh - 2*var(--bm));min-height:540px}
  .ms-pin{height:100%;grid-template-rows:auto 1fr;padding:clamp(4.6rem,10svh,5.4rem) var(--gl) 1rem;gap:.6rem}
  .ms.ms-on .ms-l,.ms.ms-on .ms-r{display:grid;align-items:start}
  .ms.ms-on .ms-r{align-items:center;justify-items:center}
  .ms.ms-on .ms-t,.ms.ms-on .ms-e{grid-area:1/1;margin-top:0}
  .ms-w{font-size:clamp(2.3rem,min(11.6vw,7svh),4rem)}
  .ms-t p{font-size:clamp(.98rem,2.5svh,1.2rem)}
  .ecl .ec-i{font-size:.66rem;padding:.4rem .7rem .4rem .5rem}
}
@media (prefers-reduced-motion:reduce){.eb-i,.ec-i,.ei{animation:none}.ei{opacity:1}.ecg .g1{stroke-dashoffset:0}}

/* v184 — contact : titre en machine à écrire */
.tw-w{display:inline-block;white-space:nowrap}
.tw-ch{opacity:0}.tw-ch.on{opacity:1}
.tw-caret{display:inline-block;width:.07em;height:.82em;margin:0 -.07em 0 .03em;background:var(--orange);vertical-align:-.04em;animation:twB .72s steps(1) infinite}
.tw-caret.end{animation:twB .72s steps(1) 4,twO .3s linear 2.9s forwards}
@keyframes twB{50%{opacity:0}}@keyframes twO{to{opacity:0}}
.contact.tw-pre .contact-min>:not(h2):not(.eyebrow){opacity:0;transform:translateY(16px)}
.contact-min>:not(h2):not(.eyebrow){transition:opacity .7s ease,transform .7s cubic-bezier(.2,.8,.2,1)}
.contact.tw-done .contact-min>:not(h2):not(.eyebrow){opacity:1;transform:none}
.contact.tw-done .contact-min>p{transition-delay:0s}.contact.tw-done .contact-min>.btn{transition-delay:.15s}.contact.tw-done .contact-min>ul{transition-delay:.3s}

/* v185 — héro : le paragraphe fait équilibre avec le gros titre */
@media(min-width:701px){.op-lead{font-size:clamp(1.35rem,2.15vw,2.5rem);font-weight:600;line-height:1.22;letter-spacing:-.012em;max-width:min(46vw,44rem);text-wrap:balance;margin-top:clamp(1.1rem,2.6vh,2rem)}}
@media(max-width:700px){.op-lead{font-size:1.12rem;font-weight:600;line-height:1.3;max-width:24rem}}

/* v221 — ouverture : voile sombre (plus de filtre crème), texte crème */
.op,.op-stage,.op-vid{background:#17120f}
.op-hg{color:var(--cream)}
.op-pill{border-color:rgba(253,248,237,.7);background:rgba(24,18,15,.32);color:var(--cream)}
.op-h{color:var(--cream);text-shadow:0 4px 40px rgba(18,12,9,.35)}
.op-lead{color:var(--cream);text-shadow:0 1px 18px rgba(18,12,9,.5)}
.op-ctas .btn.ghost{border-color:var(--cream);color:var(--cream)}
.op-ctas .btn.ghost:hover{background:var(--cream);color:var(--ink)}
.op-stage .marq{color:var(--cream);background:linear-gradient(180deg,rgba(24,18,15,0),rgba(24,18,15,.62) 45%)}
.op-stage .marq .lg img{filter:brightness(0) invert(1);opacity:.88}
.op-hint{color:var(--cream)}
.op-hint i{background:linear-gradient(var(--cream),transparent)}
@media (max-width:700px){.op-tint{background:linear-gradient(180deg,rgba(24,18,15,.62) 0%,rgba(24,18,15,.3) 55%,rgba(24,18,15,.62) 100%)}}

/* v222 — talents : pas de cadre ni de bloc, simple fond beige ; classement non affiché */
.crea.rg{margin:0;border-radius:0;box-shadow:none;background:transparent;overflow:visible}
@media(min-width:901px){.crea.rg{height:100svh}}


/* v253 — chiffres : le noir plein devient un verre fumé translucide devant les portraits floutés des talents */
.stats{background:#1a1411}
.st-bg{position:absolute;inset:0;z-index:-2;display:flex;overflow:hidden;pointer-events:none}
.st-bg img{flex:1 1 0;min-width:0;height:100%;object-fit:cover;object-position:50% 25%;filter:blur(30px) saturate(1.35);transform:scale(1.4);opacity:.6}
.stats::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,rgba(23,18,15,.62) 0%,rgba(23,18,15,.38) 48%,rgba(23,18,15,.7) 100%)}

/* ===== indications de scroll par zone ===== */
.sh{position:absolute;z-index:6;display:inline-flex;align-items:center;gap:.65rem;padding:.55rem 1.05rem .55rem .8rem;border-radius:999px;background:rgba(31,26,23,.9);color:var(--cream);font-size:.7rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;line-height:1;white-space:nowrap;pointer-events:none;opacity:0;transform:translateY(10px);transition:opacity .5s ease,transform .6s cubic-bezier(.22,1,.36,1);box-shadow:0 14px 28px -14px rgba(31,26,23,.6)}
.sh.on{opacity:1;transform:none}
.sh.gone{opacity:0;transform:translateY(6px);transition-duration:.35s}
.sh .t{display:none}
@media(pointer:coarse){.sh .d{display:none}.sh .t{display:inline}}
.sh-i{display:block;flex:none;width:28px;height:16px;color:var(--cream)}
.sh-i svg{display:block;width:100%;height:100%;overflow:visible}
.sh-i .l{animation:shL 1.5s ease-in-out infinite}
.sh-i .r{animation:shR 1.5s ease-in-out infinite}
@keyframes shL{0%,100%{transform:translateX(0)}50%{transform:translateX(-3px)}}
@keyframes shR{0%,100%{transform:translateX(0)}50%{transform:translateX(3px)}}
.sh-m{position:relative;width:14px;height:22px;border:1.6px solid var(--cream);border-radius:8px}
.sh-m::after{content:"";position:absolute;left:50%;top:4px;width:2.5px;height:5px;margin-left:-1.25px;border-radius:2px;background:var(--orange);animation:shWh 1.7s ease-in-out infinite}
@keyframes shWh{0%{transform:translateY(0);opacity:1}70%{transform:translateY(7px);opacity:0}100%{transform:translateY(7px);opacity:0}}
.sh-rg{left:68%;bottom:4.5vh;translate:-50% 0}
.sh-ms{left:50%;bottom:clamp(1rem,3.4vh,2rem);translate:-50% 0}
.bm-vf .bm-rail{position:relative;--ph:min(69svh,44rem)}
.sh-bm{left:calc((100% - 3.4rem)/2);top:50%;margin-top:calc(var(--ph)/2 + .8rem);translate:-50% 0;background:rgba(253,248,237,.95);color:var(--ink)}
.sh-bm .sh-m{border-color:var(--ink)}
@media(max-width:900px){
  .sh{font-size:.64rem;letter-spacing:.08em;padding:.5rem .9rem .5rem .7rem}
  .sh-rg{position:relative;left:auto;bottom:auto;translate:none;margin:.2rem auto 0;display:flex;width:max-content;max-width:calc(100% - 2rem)}
}
@media(prefers-reduced-motion:reduce){.sh{display:none}}
/* ===== V294 · optimisation mobile uniquement (≤700px) — le desktop n'est pas touché ===== */
@media(max-width:700px){
  html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
  a,button,summary,label,[role="button"]{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
  .foot-row a,.foot a[href="#top"]{position:relative}
  .foot-row a::after,.foot a[href="#top"]::after{content:"";position:absolute;inset:-.8rem -.5rem}
  .rg-id small{font-size:.66rem}
  .rg-cap em{font-size:.66rem}
  .ms-e .ei{font-size:.72rem}
}
/* ===== V295 · mobile uniquement (≤700px) : anneau des talents plus petit, espaces haut/bas équilibrés ===== */
@media(max-width:700px){
  .crea.rg{--cw:clamp(104px,32vw,132px)}
  .rg-pin{padding-bottom:.8rem}
  .rg-stage{margin-top:.8rem;height:calc(var(--cw)*1.78*1.5 + 3.2rem)}
}

/* ===== pages Talent management + fiches ===== */
.tm-logo{position:absolute;z-index:60;left:var(--gl);top:calc(env(safe-area-inset-top,0px) + 22px);width:clamp(96px,9vw,128px);color:var(--ink);display:block}
.tm-logo svg{width:100%;height:auto;display:block;fill:currentColor}
.nav{z-index:100}
.pg h1,.pg h2,.pg h3{text-transform:uppercase}
.tm-hero{padding:clamp(7.4rem,15vh,10rem) 0 clamp(2.4rem,5vw,4rem)}
.tm-hero .eyebrow{display:block;margin-bottom:1.3rem}
.tm-hero h1{font-size:clamp(2.7rem,7.6vw,8rem);line-height:.92;letter-spacing:-.03em;max-width:none;text-align:left}
.tm-hero h1 .o{color:var(--orange)}
.tm-hero h1 .l2{display:block}
.tm-hero-row{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:1.4rem 3rem;margin-top:clamp(1.6rem,3vw,2.6rem)}
.tm-hero p{max-width:34rem;font-weight:400;font-size:1.08rem}
.tm-hint{font-weight:500;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;opacity:.55}
.lu-sec{padding-bottom:clamp(3.5rem,7vw,6rem)}
.lu{--H:clamp(380px,58vh,540px);list-style:none;margin:0 auto;display:flex;align-items:flex-end;gap:clamp(8px,1.1vw,16px);width:min(100%,1440px);padding:0 var(--gr) 0 var(--gl)}
.lu-i{position:relative;flex:1 1 0;min-width:0;transition:flex-grow .7s cubic-bezier(.2,.8,.2,1)}
.lu-i.on{flex-grow:1.9}
.lu-card{position:relative;height:calc(var(--H)*.82);border-radius:clamp(18px,2.2vw,32px);overflow:hidden;background:var(--ink);transition:height .7s cubic-bezier(.2,.8,.2,1)}
.lu-i.on .lu-card{height:var(--H)}
.lu-card img{width:100%;height:100%;object-fit:cover;object-position:50% 20%;filter:grayscale(1) contrast(1.03);transform:scale(1.05);transition:filter .6s,transform 1.1s cubic-bezier(.2,.8,.2,1)}
.lu-i.on .lu-card img{filter:none;transform:scale(1)}
.lu-soc{position:absolute;left:50%;bottom:1rem;z-index:3;display:flex;gap:.45rem;opacity:0;transform:translate(-50%,14px);transition:opacity .4s,transform .5s cubic-bezier(.2,.8,.2,1);pointer-events:none}
.lu-i.on .lu-soc{opacity:1;transform:translate(-50%,0);pointer-events:auto}
.lu-soc a{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:rgba(253,248,237,.86);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--ink);text-decoration:none;transition:background .25s,transform .3s}
.lu-soc a:hover{background:var(--orange);transform:translateY(-2px)}
.lu-soc svg{width:20px;height:20px}
.lu-name{display:block;text-align:center;margin-top:1rem;min-height:3.2rem}
.lu-name a{font-family:var(--display);font-weight:700;text-transform:uppercase;text-decoration:none;font-size:clamp(.78rem,1vw,.95rem);letter-spacing:.02em;line-height:1.05;display:block;transition:font-size .5s cubic-bezier(.2,.8,.2,1),color .3s;color:rgba(31,26,23,.62)}
.lu-i.on .lu-name a{font-size:clamp(1.15rem,1.7vw,1.6rem);color:var(--ink)}
.lu-name a::after{content:"";position:absolute;inset:0;z-index:2}
.lu-role{display:block;font-size:.8rem;font-weight:400;opacity:0;max-height:0;overflow:hidden;margin-top:0;transition:opacity .4s,max-height .5s}
.lu-i.on .lu-role{opacity:.7;max-height:3rem;margin-top:.35rem}
.lu-ctl{display:flex;align-items:center;gap:clamp(1rem,3vw,2.4rem);width:min(100%,1440px);margin:clamp(1.6rem,3vw,2.4rem) auto 0;padding:0 var(--gr) 0 var(--gl)}
.lu-prog{position:relative;flex:1;height:2px;background:rgba(31,26,23,.14);border-radius:2px;overflow:hidden}
.lu-prog i{position:absolute;left:0;top:0;bottom:0;width:100%;transform-origin:0 50%;transform:scaleX(.16);background:linear-gradient(90deg,var(--lav),var(--orange));transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.lu-btns{display:flex;gap:.5rem}
.lu-btns button{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:0;background:var(--ink);color:var(--cream);cursor:pointer;transition:transform .25s,background .25s}
.lu-btns button:hover{transform:scale(1.08);background:var(--orange);color:var(--ink)}
.lu-btns svg{width:18px;height:18px}
@media(max-width:900px){
  .lu{overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding:0 calc((100vw - 70vw)/2);scrollbar-width:none;align-items:flex-start}
  .lu::-webkit-scrollbar{display:none}
  .lu-i,.lu-i.on{flex:0 0 70vw;scroll-snap-align:center;transition:transform .5s cubic-bezier(.2,.8,.2,1)}
  .lu-i{transform:scale(.92);transform-origin:50% 0}
  .lu-i.on{transform:none}
  .lu-card,.lu-i.on .lu-card{height:auto;aspect-ratio:4/5}
  .lu-name a{font-size:1rem}
  .lu-i.on .lu-name a{font-size:1.3rem}
}
/* teaser Academy */
.tm-acad{background:var(--orange);color:var(--ink);padding-block:clamp(4rem,8vw,7rem)}
.tm-acad-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(2rem,5vw,5rem);align-items:center}
.tm-acad .eyebrow{display:block;margin-bottom:1.2rem}
.tm-acad h2{font-size:clamp(2.7rem,5.6vw,5.8rem);line-height:.92;letter-spacing:-.03em}
.tm-acad .sub{font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:clamp(1rem,1.5vw,1.35rem);margin-top:1.4rem;line-height:1.1;max-width:20em}
.tm-acad p.t{font-weight:400;margin:1.1rem 0 1.8rem;max-width:26rem}
.tm-ac-row{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(8px,1.2vw,16px)}
.tm-ac-row a{position:relative;display:block;aspect-ratio:3/4;border-radius:clamp(14px,1.6vw,22px);overflow:hidden;background:var(--ink);color:var(--cream);text-decoration:none;transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.tm-ac-row li:nth-child(even) a{transform:translateY(1.6rem)}
.tm-ac-row a:hover{transform:translateY(-6px)}
.tm-ac-row li:nth-child(even) a:hover{transform:translateY(1rem)}
.tm-ac-row img{width:100%;height:100%;object-fit:cover}
.tm-ac-row a::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(31,26,23,0) 50%,rgba(31,26,23,.85) 100%)}
.tm-ac-row span{position:absolute;left:.7rem;right:.7rem;bottom:.7rem;z-index:2;font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:clamp(.7rem,1vw,.9rem);line-height:1.05}
@media(max-width:900px){.tm-acad-grid{grid-template-columns:1fr}.tm-ac-row{grid-template-columns:repeat(2,minmax(0,1fr))}.tm-ac-row li:nth-child(even) a{transform:none}.tm-ac-row li:nth-child(5){grid-column:1/-1}.tm-ac-row li:nth-child(5) a{aspect-ratio:16/9}}
/* CTA */
.tm-cta{background:var(--ink);color:var(--cream);padding-block:clamp(4rem,9vw,8rem)}
.tm-cta .wrap{display:flex;flex-direction:column;align-items:flex-start;gap:1.6rem}
.tm-cta h2{font-size:clamp(2.7rem,8vw,8.4rem);line-height:.92;letter-spacing:-.03em;max-width:10em}
.tm-cta h2 .o{color:var(--orange)}
.tm-cta p{max-width:30rem;font-weight:400}
/* fiche */
.fi-hero{padding:clamp(7rem,13vh,9rem) 0 clamp(3rem,6vw,5rem)}
.fi-back{display:inline-flex;align-items:center;gap:.5rem;font-weight:500;font-size:.9rem;text-decoration:none;margin-bottom:clamp(1.4rem,3vw,2.4rem);padding:.5rem 0}
.fi-back svg{width:18px;height:18px;transition:transform .3s}
.fi-back:hover svg{transform:translateX(-4px)}
.fi-grid{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(2rem,5vw,6rem);align-items:start}
.fi-role{display:block;margin-bottom:1.2rem}
.fi-name{font-size:clamp(2.8rem,7.2vw,7.4rem);line-height:.9;letter-spacing:-.03em}
.fi-name .o{color:var(--orange)}
.fi-bio p{max-width:34rem;font-weight:400;margin-top:1.2rem}
.fi-bio p:first-child{margin-top:clamp(1.4rem,3vw,2.2rem)}
.fi-tags{list-style:none;display:grid;gap:.7rem;margin:1.8rem 0 2rem;padding:0;max-width:36rem}
.fi-tags li{display:flex;gap:.8rem;align-items:flex-start;font-weight:500;font-size:.82rem;letter-spacing:.06em;text-transform:uppercase;line-height:1.35}
.fi-tags li::before{content:"";flex:0 0 .8rem;height:.8rem;margin-top:.12rem;background:var(--lav);clip-path:polygon(0 0,100% 50%,0 100%)}
.fi-cta{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.6rem}
.fi-photo{position:sticky;top:5.5rem;aspect-ratio:4/5;border-radius:clamp(22px,2.6vw,38px);overflow:hidden;background:var(--ink)}
.fi-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 20%}
.fi-badges{position:absolute;left:1rem;right:1rem;bottom:1rem;display:flex;flex-wrap:wrap;gap:.5rem;z-index:2}
.fi-badges span{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .9rem;border-radius:99px;background:rgba(253,248,237,.9);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--ink);font-weight:500;font-size:.8rem;letter-spacing:.04em}
.fi-badges b{font-family:var(--display);font-weight:700;font-size:1rem}
.fi-stats{background:var(--ink);color:var(--cream);padding-block:clamp(4rem,8vw,7rem)}
.fi-stats h2{font-size:clamp(2.4rem,5.4vw,5.4rem);line-height:.92;letter-spacing:-.03em;margin:1rem 0 clamp(2rem,4vw,3.4rem)}
.fi-pls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(2rem,5vw,5rem)}
.fi-pl{border-top:2px solid var(--cream);padding-top:1.2rem}
.fi-pl-h{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}
.fi-pl-h .eyebrow{display:block}
.fi-pl-f{font-family:var(--display);font-weight:700;font-size:clamp(3rem,6vw,5.6rem);line-height:.9;letter-spacing:-.03em}
.fi-pl-f small{display:block;font-family:var(--body);font-weight:500;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;opacity:.65;margin-top:.5rem}
.fi-kv{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:1.8rem 0 2rem;padding:0}
.fi-kv div{border-left:2px solid var(--orange);padding-left:.9rem}
.fi-kv dt{font-weight:400;font-size:.78rem;opacity:.75;line-height:1.25;min-height:2em}
.fi-kv dd{margin:.35rem 0 0;font-family:var(--display);font-weight:700;font-size:clamp(1.3rem,2.2vw,2rem);line-height:1;letter-spacing:-.01em}
.fi-sub{font-weight:500;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;opacity:.65;margin:1.6rem 0 .8rem}
.fi-bar{display:grid;grid-template-columns:5.2rem 1fr 3.2rem;align-items:center;gap:.8rem;font-size:.85rem;margin-bottom:.55rem}
.fi-bar .t{height:10px;border-radius:99px;background:rgba(253,248,237,.14);overflow:hidden}
.fi-bar .t i{display:block;height:100%;width:var(--v);background:var(--orange);border-radius:inherit;transform-origin:0 50%}
.fi-bar b{font-weight:500;text-align:right}
.fi-gen{display:flex;height:14px;border-radius:99px;overflow:hidden;gap:3px}
.fi-gen i{display:block;height:100%;transform-origin:0 50%}
.fi-gen .f{background:var(--orange)}.fi-gen .h{background:var(--lav)}
.fi-gl{display:flex;justify-content:space-between;font-size:.85rem;margin-top:.5rem}
.fi-note{margin-top:clamp(2rem,4vw,3rem);font-size:.78rem;opacity:.6;max-width:44rem;font-weight:400}
.fi-col{background:var(--orange);color:var(--ink);padding-block:clamp(2.6rem,5vw,4.4rem) clamp(2.2rem,4vw,3.6rem);overflow:hidden}
.fi-col .eyebrow{display:block}
.fi-mq{margin-top:clamp(1rem,2.4vw,2rem);overflow:hidden}
.fi-mq-t{display:flex;width:max-content;will-change:transform}
.fi-mq-t span{display:flex;align-items:center;flex:0 0 auto;font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:clamp(3.6rem,11vw,10.5rem);letter-spacing:-.035em;line-height:1;padding-bottom:.06em;white-space:nowrap}
.fi-mq-t span::after{content:"";display:block;width:.2em;height:.2em;border-radius:50%;background:var(--lav);margin:0 .34em}
.fi-mq-t span:nth-child(even){opacity:.4}
.fi-oth{padding-block:clamp(4rem,8vw,7rem)}
.fi-oth h2{font-size:clamp(2.2rem,4.6vw,4.4rem);line-height:.95;letter-spacing:-.03em;margin:1rem 0 clamp(1.6rem,3vw,2.6rem)}
.fi-oth-row{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(8px,1.2vw,16px)}
.fi-oth-row a{position:relative;display:block;aspect-ratio:4/5;border-radius:clamp(14px,1.6vw,24px);overflow:hidden;background:var(--ink);color:var(--cream);text-decoration:none}
.fi-oth-row img{width:100%;height:100%;object-fit:cover;object-position:50% 20%;filter:grayscale(1);transition:filter .5s,transform 1s cubic-bezier(.2,.8,.2,1)}
.fi-oth-row a:hover img,.fi-oth-row a:focus-visible img{filter:none;transform:scale(1.06)}
.fi-oth-row a::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(31,26,23,0) 55%,rgba(31,26,23,.85) 100%)}
.fi-oth-row span{position:absolute;left:.8rem;right:.8rem;bottom:.8rem;z-index:2;font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:clamp(.8rem,1.1vw,1rem);line-height:1.05}
@media(max-width:900px){
  .fi-grid{grid-template-columns:1fr}
  .fi-photo{position:relative;top:0;order:-1;aspect-ratio:4/5}
  .fi-pls{grid-template-columns:1fr}
  .fi-kv{grid-template-columns:repeat(3,minmax(0,1fr))}
  .fi-oth-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fi-oth-row li:nth-child(5){grid-column:1/-1}
  .fi-oth-row li:nth-child(5) a{aspect-ratio:16/9}
}
@media(max-width:520px){.fi-kv{grid-template-columns:1fr}.fi-kv dt{min-height:0}}
@media(prefers-reduced-motion:reduce){.lu-i,.lu-card,.lu-card img,.lu-soc,.lu-name a,.lu-prog i{transition:none}}
.btn svg{width:16px;height:16px;flex:none}

/* ===== v2 : page Talent management, motion & couleurs de la home ===== */
.tmh-sec{position:relative;min-height:84svh;display:flex;align-items:center;overflow:hidden;padding:clamp(6.5rem,12vh,8rem) 0 clamp(2rem,5vh,3.5rem)}
.tmh-in{position:relative;z-index:3}
.tmh-in .eyebrow{display:block;margin-bottom:1.2rem}
.tmh{font-size:clamp(2.6rem,8.6vw,9.4rem);line-height:.9;letter-spacing:-.04em;text-transform:uppercase;text-align:left;max-width:none}
.tmh-l{display:block;will-change:transform}
.tmh .o{color:var(--orange)}
.tmh-row{display:flex;justify-content:space-between;align-items:flex-end;gap:1.6rem 3rem;flex-wrap:wrap;margin-top:clamp(1.6rem,4vh,3rem)}
.tmh-row p{max-width:34rem;font-weight:400;font-size:1.06rem}
.tmh-go{display:inline-flex;align-items:center;gap:.8rem;text-decoration:none;font-weight:500;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase}
.tmh-go i{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--ink);color:var(--cream);transition:transform .4s cubic-bezier(.2,.8,.2,1),background .25s,color .25s}
.tmh-go:hover i{transform:translateY(5px);background:var(--orange);color:var(--ink)}
.tmh-go svg{width:20px;height:20px}
.tmh-f{position:absolute;z-index:1;border-radius:clamp(14px,1.8vw,26px);overflow:hidden;box-shadow:0 30px 60px -28px rgba(31,26,23,.55);will-change:transform;background:var(--ink)}
.tmh-f img{width:100%;height:100%;object-fit:cover;object-position:50% 20%}
.tmh-f.f1{width:clamp(120px,15vw,230px);aspect-ratio:4/5;right:7vw;top:15vh;transform:rotate(6deg)}
.tmh-f.f2{width:clamp(110px,13vw,200px);aspect-ratio:4/5;right:27vw;bottom:10vh;transform:rotate(-5deg);z-index:1}
.tmh-f.f3{width:clamp(100px,11vw,170px);aspect-ratio:4/5;left:46vw;top:9vh;transform:rotate(-3deg)}
@media(max-width:900px){.tmh-sec{align-items:flex-start;padding-top:7.4rem}.tmh-f.f1{right:-2vw;top:auto;bottom:6vh;width:34vw}.tmh-f.f2{right:30vw;bottom:2vh;width:28vw}.tmh-f.f3{display:none}.tmh{font-size:clamp(2.6rem,13.4vw,5rem)}}
.lu-sec{position:relative;overflow:hidden;padding-top:clamp(1rem,3vw,2rem)}
.lu-bg{position:absolute;inset:0 0 auto;top:clamp(2rem,6vw,5rem);z-index:0;pointer-events:none;overflow:hidden}
.lu-bg-t{display:flex;width:max-content;will-change:transform}
.lu-bg-t span{font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:clamp(9rem,26vw,28rem);line-height:.9;letter-spacing:-.05em;color:rgba(31,26,23,.07);padding-right:.3em}
.lu,.lu-ctl{position:relative;z-index:2}
.lu-ctl .tm-hint{display:none}
@media(min-width:901px){.lu-ctl .tm-hint{display:block;white-space:nowrap}}
.tm-num{background:var(--ink);color:var(--cream);padding-block:clamp(2.6rem,5vw,4.4rem) clamp(1.8rem,3vw,2.6rem);overflow:hidden}
.tm-num .eyebrow{display:block}
.tm-num .fi-mq{margin-block:clamp(1.2rem,3vw,2.4rem)}
.tm-num .fi-mq-t span{flex-direction:column;align-items:flex-start;justify-content:center;position:relative;padding-right:clamp(3rem,7vw,7rem);font-size:clamp(4.6rem,15vw,15rem)}
.tm-num .fi-mq-t span::after{display:none}
.tm-num .fi-mq-t span b{font-weight:700;line-height:.9}
.tm-num .fi-mq-t span:nth-child(even) b{opacity:.4}
.tm-num .fi-mq-t span i{font-style:normal;font-family:var(--body);font-weight:500;font-size:clamp(.7rem,1.1vw,.95rem);letter-spacing:.14em;text-transform:uppercase;color:var(--lav);margin-top:.6rem;line-height:1}
.tm-num-n{font-size:.78rem;opacity:.6;font-weight:400}
.tm-wd{background:var(--orange);color:var(--ink);padding-block:clamp(2.6rem,5vw,4.4rem) clamp(2.2rem,4vw,3.6rem);overflow:hidden}
.tm-wd-in{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:1rem 3rem}
.tm-wd .eyebrow{display:block}
.tm-wd p{max-width:30rem;font-weight:400;font-size:1.04rem}
.tm-wd .fi-mq-t span{font-size:clamp(3.6rem,12vw,12rem)}
.tm-wd .fi-mq-t span:nth-child(even){opacity:.4}
.tm-acad{background:var(--cream)}

/* ===== v3 : index des talents ===== */
.tmh-f{display:none}
.ix-sec{position:relative;padding-bottom:clamp(3rem,6vw,5rem)}
.ix-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:clamp(.8rem,2vw,1.4rem)}
.ix-head .tm-hint{display:none}
@media(min-width:901px){.ix-head .tm-hint{display:block}}
.ix{list-style:none;margin:0;padding:0;border-bottom:1.5px solid var(--ink)}
.ix-r{border-top:1.5px solid var(--ink);position:relative}
.ix-r a{position:relative;display:grid;grid-template-columns:3.2rem 1fr auto auto;align-items:center;gap:0 clamp(1rem,2.4vw,2.4rem);padding:clamp(1rem,2.2vw,1.9rem) var(--gr) clamp(1rem,2.2vw,1.9rem) var(--gl);max-width:1440px;margin-inline:auto;text-decoration:none;color:var(--ink);transition:color .45s cubic-bezier(.2,.8,.2,1),padding .55s cubic-bezier(.2,.8,.2,1)}
.ix-r::before{content:"";position:absolute;inset:0;background:var(--ink);transform:scaleY(0);transform-origin:50% 100%;transition:transform .55s cubic-bezier(.2,.8,.2,1)}
.ix-r>a{z-index:1}
.ix-n{font-weight:500;font-size:.8rem;letter-spacing:.16em;opacity:.55;align-self:start;padding-top:.9em}
.ix-name{font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:clamp(2.3rem,7.6vw,8.4rem);line-height:.95;letter-spacing:-.04em;white-space:nowrap;transition:transform .55s cubic-bezier(.2,.8,.2,1)}
.ix-name i{font-style:normal;transition:color .35s}
.ix-role{font-weight:500;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;text-align:right;opacity:.7;max-width:11rem}
.ix-go{display:grid;place-items:center;width:clamp(44px,4.4vw,64px);height:clamp(44px,4.4vw,64px);border-radius:50%;border:1.5px solid currentColor;transition:background .35s,color .35s,border-color .35s,transform .5s cubic-bezier(.2,.8,.2,1)}
.ix-go svg{width:42%;height:42%}
.ix-th{display:none}
@media(hover:hover) and (pointer:fine){
  .ix-r:hover::before,.ix-r:focus-within::before{transform:scaleY(1)}
  .ix-r:hover>a,.ix-r:focus-within>a{color:var(--cream);padding-left:calc(var(--gl) + clamp(.6rem,1.6vw,1.6rem))}
  .ix-r:hover .ix-name i,.ix-r:focus-within .ix-name i{color:var(--orange)}
  .ix-r:hover .ix-go,.ix-r:focus-within .ix-go{background:var(--orange);border-color:var(--orange);color:var(--ink);transform:rotate(0)}
  .ix:hover .ix-r:not(:hover) .ix-name{opacity:.28}
  .ix-name{transition:transform .55s cubic-bezier(.2,.8,.2,1),opacity .4s}
}
.ix-pv{position:fixed;left:0;top:0;z-index:50;width:clamp(180px,17vw,270px);aspect-ratio:4/5;margin:calc(clamp(180px,17vw,270px)*-.625) 0 0 calc(clamp(180px,17vw,270px)*-.5);border-radius:clamp(16px,1.8vw,26px);overflow:hidden;pointer-events:none;opacity:0;transform:scale(.7);background:var(--ink);box-shadow:0 36px 70px -30px rgba(31,26,23,.6);will-change:transform}
.ix-pv img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 20%;opacity:0;transition:opacity .25s}
.ix-pv img.on{opacity:1}
@media(max-width:900px){
  .ix-r a{grid-template-columns:1fr auto;grid-template-areas:"n th" "name th" "role th";gap:.2rem 1rem;padding-block:1.2rem}
  .ix-n{grid-area:n;padding:0}
  .ix-name{grid-area:name;font-size:clamp(2.1rem,10.4vw,4rem);white-space:normal}
  .ix-role{grid-area:role;text-align:left;max-width:none;margin-top:.5rem}
  .ix-th{display:block;grid-area:th;width:clamp(86px,24vw,130px);aspect-ratio:4/5;object-fit:cover;object-position:50% 20%;border-radius:16px}
  .ix-go{display:none}
  .ix-pv{display:none}
}

/* ===== v4 : titre à gauche, talents un par un à droite ===== */
.tz{position:relative}
.tz-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:clamp(2rem,5vw,6rem);align-items:start}
.tz-l{align-self:stretch}
.tz-l-in{position:sticky;top:0;height:100svh;display:flex;flex-direction:column;justify-content:center;padding:clamp(6rem,12vh,8rem) 0 clamp(2rem,5vh,3rem)}
.tz-l .eyebrow{display:block;margin-bottom:1.2rem}
.tz .tmh{font-size:clamp(2.5rem,5.9vw,6.8rem);line-height:.92}
.tz-l p{max-width:30rem;font-weight:400;font-size:1.02rem;margin-top:clamp(1.4rem,3.5vh,2.4rem)}
.tz-cnt{display:flex;align-items:center;gap:1.2rem;margin-top:clamp(1.6rem,4vh,2.8rem);font-family:var(--display);font-weight:700;font-size:1.05rem;letter-spacing:.04em}
.tz-cnt b{font-size:1.9rem;letter-spacing:-.02em;color:var(--orange)}
.tz-cnt i{flex:1;max-width:14rem;height:2px;background:rgba(31,26,23,.16);position:relative;overflow:hidden}
.tz-cnt u{position:absolute;inset:0;background:var(--ink);transform:scaleX(.1667);transform-origin:0 50%;transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.tz-r{list-style:none;margin:0;padding:clamp(5.5rem,11vh,7rem) 0 clamp(2rem,5vh,4rem);display:flex;flex-direction:column;gap:clamp(1.2rem,3vh,2.4rem)}
.tz-c{position:relative;height:min(86svh,calc(.9 * 42vw * 1.25));min-height:420px;border-radius:clamp(20px,2.4vw,36px);overflow:hidden;background:var(--ink);clip-path:inset(0 round clamp(20px,2.4vw,36px))}
.tz-ph{position:absolute;inset:0;display:block}
.tz-ph img{width:100%;height:116%;object-fit:cover;object-position:50% 20%;display:block;will-change:transform}
.tz-c::after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(to top,rgba(31,26,23,.88),rgba(31,26,23,0));pointer-events:none}
.tz-in{position:absolute;left:0;right:0;bottom:0;z-index:2;display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;padding:clamp(1.1rem,2.2vw,2rem);color:var(--cream)}
.tz-n{display:block;font-weight:500;font-size:.78rem;letter-spacing:.16em;opacity:.8;margin-bottom:.5rem}
.tz-name{font-size:clamp(1.8rem,3.4vw,3.6rem);line-height:.95;letter-spacing:-.03em;margin:0}
.tz-role{display:block;margin-top:.55rem;font-weight:500;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;opacity:.85}
.tz-btn{flex:none;white-space:nowrap}
.tz-btn svg{width:16px;height:16px}
@media(max-width:900px){
  .tz-grid{grid-template-columns:1fr;gap:0}
  .tz-l-in{position:static;height:auto;padding:7.2rem 0 1.6rem}
  .tz .tmh{font-size:clamp(2.6rem,13.4vw,5rem)}
  .tz-cnt{display:none}
  .tz-r{padding-top:.4rem}
  .tz-c{height:auto;aspect-ratio:4/5;min-height:0}
  .tz-in{flex-direction:column;align-items:flex-start}
}
.sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* academy en split */
.tz-ac{padding-block:clamp(1rem,3vw,3rem) 0}
.tz-ac .tz-sub{font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:clamp(1rem,1.5vw,1.4rem);line-height:1.1;margin-top:clamp(1rem,2.5vh,1.8rem);max-width:26rem}
.tz-ac .tz-l p:not(.tz-sub){margin-top:.8rem}
.tz-post{align-self:flex-start;margin-top:clamp(1.2rem,3vh,2rem)}
.tz-ac .tz-c{clip-path:inset(0 round clamp(20px,2.4vw,36px))}
.tz-ac .tz-r{overflow:visible}

/* ===== fiches : réseaux + vidéos ===== */
.fi-soc{list-style:none;margin:clamp(1.4rem,3vw,2.2rem) 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.7rem}
.fi-soc a{display:flex;align-items:center;gap:.7rem;padding:.55rem 1.1rem .55rem .6rem;border-radius:999px;border:1.5px solid var(--ink);color:var(--ink);text-decoration:none;transition:background .3s,color .3s,transform .35s cubic-bezier(.2,.8,.2,1)}
.fi-soc a svg{flex:none;width:38px;height:38px;padding:9px;border-radius:50%;background:var(--ink);color:var(--cream);transition:background .3s,color .3s}
.fi-soc a span{display:flex;flex-direction:column;line-height:1.15}
.fi-soc b{font-family:var(--display);font-weight:700;font-size:.92rem;text-transform:uppercase;letter-spacing:.02em}
.fi-soc i{font-style:normal;font-weight:400;font-size:.76rem;opacity:.7;max-width:13rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fi-soc a:hover{background:var(--ink);color:var(--cream);transform:translateY(-2px)}
.fi-soc a:hover svg{background:var(--orange);color:var(--ink)}
.fi-vid{padding:clamp(3rem,6vw,5.5rem) 0 clamp(3.5rem,7vw,6rem)}
.fi-vid-h{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:1.4rem 2rem;margin-bottom:clamp(1.6rem,3.5vw,3rem)}
.fi-vid-h .eyebrow{display:block;margin-bottom:1rem}
.fi-vid-h h2{font-size:clamp(2.2rem,5vw,5rem);line-height:.95;letter-spacing:-.03em;margin:0}
.fi-soc-s{margin:0}
.fi-vids{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.8rem,2vw,2rem);max-width:1040px;margin-inline:auto}
.fi-v{position:relative;aspect-ratio:9/16;border-radius:clamp(18px,2.2vw,32px);overflow:hidden;background:var(--ink);box-shadow:0 30px 60px -34px rgba(31,26,23,.55)}
.fi-v:nth-child(2){margin-top:clamp(1.5rem,5vw,4rem)}
.fi-v video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.fi-v-n{position:absolute;left:1rem;top:1rem;z-index:2;padding:.3rem .7rem;border-radius:999px;background:rgba(253,248,237,.88);color:var(--ink);font-weight:500;font-size:.72rem;letter-spacing:.14em}
@media(min-width:901px){.fi-vids.x2{grid-template-columns:repeat(2,minmax(0,300px));justify-content:center}.fi-vids.x1{grid-template-columns:minmax(0,340px);justify-content:center}.fi-vids.x4{grid-template-columns:repeat(4,minmax(0,1fr));max-width:1200px}.fi-vids.x4 .fi-v:nth-child(2){margin-top:0}.fi-vids.x4 .fi-v:nth-child(even){margin-top:clamp(1.5rem,4vw,3.5rem)}}
@media(max-width:900px){
  .fi-vids{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:.8rem;margin-inline:calc(var(--gl) * -1);padding-inline:var(--gl);scrollbar-width:none;max-width:none}
  .fi-vids::-webkit-scrollbar{display:none}
  .fi-v{flex:0 0 68vw;scroll-snap-align:center}
  .fi-v:nth-child(2){margin-top:0}
  .fi-vids.x1{justify-content:center}.fi-vids.x1 .fi-v{flex-basis:68vw}
}

/* description façon kit média : accroche + texte */
.fi-bio p:first-child{font-family:var(--display);font-weight:700;font-size:clamp(1.25rem,1.9vw,1.75rem);line-height:1.15;letter-spacing:-.01em;max-width:30rem;color:var(--ink)}
.fi-bio p:nth-child(2){margin-top:1rem}

/* ===== page Brand management ===== */
.pg-bm .tm-logo{color:var(--cream)}
.bm-hero{padding:0}
.bm-hero .camp-hero{min-height:100svh}
.bm-hero .camp-hero h1{font-size:clamp(2.8rem,6.2vw,6.8rem);line-height:.92;letter-spacing:-.035em;max-width:9.5em;margin:0}
.bm-hero .camp-hero-in{padding-block:7rem 2.6rem}
.bm-hero-cta{display:flex;flex-wrap:wrap;gap:.8rem}
.bm-hero .camp-hero p{margin-block:1.4rem 1.6rem}
.bm-hs{display:flex;flex-wrap:wrap;gap:clamp(1.4rem,4vw,4.5rem);margin-top:clamp(1.6rem,4vh,2.6rem);padding-top:1.1rem;border-top:1px solid rgba(253,248,237,.32);max-width:46rem}
.bm-st b{display:block;font-family:var(--display);font-weight:700;font-size:clamp(2rem,3.6vw,3.6rem);line-height:.95;letter-spacing:-.03em;font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--cream)}
.bm-st small{font-size:.5em;letter-spacing:0;color:var(--orange);margin-left:.1em}
.bm-st>span{display:block;margin-top:.5rem;font-weight:500;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;opacity:.75}
.bm-exp{padding-top:clamp(1rem,3vw,3rem)}
.bm-c{height:auto;min-height:min(52svh,28rem);display:flex;flex-direction:column;justify-content:center;gap:2.4rem;padding:clamp(1.5rem,3vw,2.8rem);background:var(--ink);color:var(--cream)}
.bm-c::after{display:none}
.bm-c.o{background:var(--orange);color:var(--ink)}
.bm-no{display:block;font-family:var(--display);font-weight:700;font-size:clamp(5rem,11vw,10rem);line-height:.8;letter-spacing:-.05em;color:currentColor}
.bm-c h3{font-size:clamp(1.8rem,3.2vw,3.2rem);line-height:.95;letter-spacing:-.03em;margin:0}
.bm-c p{max-width:32rem;font-weight:400;margin-top:1rem}
.bm-chips{list-style:none;display:flex;flex-wrap:wrap;gap:.5rem;margin:1.5rem 0 0;padding:0}
.bm-chips li{padding:.45rem .95rem;border:1.5px solid currentColor;border-radius:999px;font-weight:500;font-size:.74rem;letter-spacing:.1em;text-transform:uppercase}
.bm-c:not(.o) .bm-chips li{border-color:var(--lav);color:var(--lav)}
.bm-camp{background:var(--ink);color:var(--cream);margin-top:0}
.bm-camp .tz-grid{align-items:center;min-height:100svh;padding-block:clamp(4.5rem,9vh,6.5rem)}
.bm-camp .tz-l{align-self:center}
.bm-camp .tz-l-in{position:static;height:auto;padding:0}
.bm-rail{display:flex;flex-direction:column;align-items:center;gap:.9rem;min-width:0}
.bm-vp{--ch:min(64svh,40rem);width:100%;height:var(--ch);overflow-y:auto;overflow-x:hidden;scroll-snap-type:y mandatory;scrollbar-width:none;-ms-overflow-style:none;overscroll-behavior-y:auto;border-radius:clamp(20px,2.4vw,36px);outline-offset:6px}
.bm-vp::-webkit-scrollbar{display:none}
.bm-vp:focus-visible{outline:2px solid var(--lav)}
.bm-camp .bm-vp .tz-r{padding:0;gap:1rem}
.bm-camp .bm-vp .tz-c{height:var(--ch);min-height:0;flex:none;scroll-snap-align:start;scroll-snap-stop:always}
.bm-ar{flex:none;width:3rem;height:3rem;border-radius:50%;border:1.5px solid rgba(253,248,237,.4);background:transparent;color:var(--cream);display:grid;place-items:center;cursor:pointer;transition:background .25s,color .25s,border-color .25s,opacity .25s,transform .25s}
.bm-ar svg{width:20px;height:20px}
.bm-ar:hover:not([disabled]){background:var(--orange);border-color:var(--orange);color:var(--ink);transform:scale(1.06)}
.bm-ar:focus-visible{outline:2px solid var(--lav);outline-offset:3px}
.bm-ar[disabled]{opacity:.28;cursor:default}
@media(max-width:900px){
  .bm-camp .tz-grid{min-height:0;padding-block:5rem 3rem}
  .bm-camp .tz-l{align-self:stretch}
  .bm-camp .tz-l-in{padding:0 0 1.6rem}
  .bm-vp{--ch:min(74svh,calc((100vw - 2rem) * 1.25))}
}
.bm-camp .eyebrow{color:var(--lav)}
.bm-camp .tz-cnt i{background:rgba(253,248,237,.2)}
.bm-camp .tz-cnt u{background:var(--cream)}
.bm-camp .tz-c{background:#2a2420}
.tz-ph video{width:100%;height:116%;object-fit:cover;display:block;will-change:transform}
.tz-tx{min-width:0}
.bm-tal{padding-block:clamp(4rem,8vw,7rem)}
.bm-tal-h{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:1.4rem 2rem;margin-bottom:clamp(1.6rem,3vw,2.6rem)}
.bm-tal-h .eyebrow{display:block}
.bm-tal h2{margin:1rem 0 0;max-width:14em}
.bm-tal .fi-oth-row{grid-template-columns:repeat(6,minmax(0,1fr))}
.bm-tal .btn svg{width:16px;height:16px}
@media(max-width:900px){
  .bm-hs{flex-wrap:nowrap;gap:1.1rem}
  .bm-st b{font-size:clamp(1.7rem,8vw,2.4rem)}
  .bm-st>span{font-size:.6rem;letter-spacing:.1em}
  .bm-c{min-height:0}
  .bm-tal .fi-oth-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bm-tal .fi-oth-row li:nth-child(5){grid-column:auto}
  .bm-tal .fi-oth-row li:nth-child(5) a{aspect-ratio:4/5}
  .bm-hero .camp-hero-in{padding-block:7rem 3.5rem}
}

/* ===== Brand v2 : méthode, pastilles, étude de cas, réseaux ===== */
.bm-hs{max-width:62rem;gap:clamp(1.2rem,3.4vw,3.6rem)}
.bm-ideal{margin-top:1.5rem;padding-top:1rem;border-top:1.5px dashed currentColor;font-weight:500;font-size:.95rem;max-width:30rem}
.bm-ideal span{display:block;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;opacity:.7;margin-bottom:.35rem}
.bm-c:not(.o) .bm-ideal span{color:var(--lav);opacity:1}
.bm-ideal{opacity:1}
.tz-k{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.9rem}
.tz-k span{padding:.32rem .75rem;border-radius:999px;background:rgba(253,248,237,.92);color:var(--ink);font-weight:700;font-size:.76rem;letter-spacing:.02em}
.bm-met{background:var(--orange);color:var(--ink);padding-block:clamp(4rem,8vw,7rem)}
.bm-met-h{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:1.4rem 3rem;margin-bottom:clamp(2.2rem,4.5vw,4rem)}
.bm-met-h .eyebrow{display:block}
.bm-met h2{font-size:clamp(2.6rem,6.2vw,6.6rem);line-height:.92;letter-spacing:-.03em;margin:1rem 0 0}
.bm-met-h p{max-width:24rem;font-weight:500}
.bm-steps{--g:clamp(1.2rem,2.4vw,2.6rem);list-style:none;margin:0;padding:0;position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--g)}
.bm-steps.cs-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.bm-line{position:absolute;left:31px;width:calc((100% + var(--g)) * .75);top:31px;height:3px;background:rgba(31,26,23,.2);border-radius:3px}
.bm-line i{position:absolute;inset:0;background:var(--ink);border-radius:inherit;transform-origin:0 50%}
.bm-steps li{position:relative}
.bm-sn{display:grid;place-items:center;width:62px;height:62px;border-radius:50%;background:var(--cream);border:3px solid var(--ink);font-family:var(--display);font-weight:700;font-size:1.6rem;position:relative;z-index:1;transition:background .3s,transform .4s cubic-bezier(.2,.8,.2,1)}
.bm-steps li:hover .bm-sn{background:var(--ink);color:var(--cream);transform:scale(1.08)}
.bm-steps h3{font-size:clamp(1.5rem,2.3vw,2.2rem);line-height:.95;letter-spacing:-.02em;margin:1.2rem 0 .7rem}
.bm-steps p{font-weight:500;max-width:19rem}
@media(max-width:900px){.bm-steps,.bm-steps.cs-3{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:2.4rem}.bm-line{display:none}.bm-hs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.4rem 1rem}}
@media(max-width:520px){.bm-steps,.bm-steps.cs-3{grid-template-columns:1fr}}
/* réseaux dans le contact */
.fi-soc-l{margin-top:clamp(1rem,2vw,1.6rem)}
.tm-cta .fi-soc a{border-color:var(--cream);color:var(--cream)}
.tm-cta .fi-soc a svg{background:var(--cream);color:var(--ink)}
.tm-cta .fi-soc a:hover{background:var(--cream);color:var(--ink)}
.tm-cta .fi-soc a:hover svg{background:var(--orange)}
.tm-cta .fi-soc i{opacity:.75}
.bm-cta-r{display:flex;flex-wrap:wrap;gap:.8rem}
/* étude de cas */
.fi-photo video{width:100%;height:100%;object-fit:cover;display:block}
.cs-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 2rem;margin:clamp(1.4rem,3vw,2.2rem) 0 0;padding:0;max-width:34rem}
.cs-meta div{border-top:1.5px solid var(--ink);padding-top:.7rem}
.cs-meta dt{font-weight:500;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;opacity:.65}
.cs-meta dd{margin:.35rem 0 0;font-family:var(--display);font-weight:700;font-size:clamp(1.1rem,1.6vw,1.5rem);line-height:1.05;text-transform:uppercase;letter-spacing:-.01em}
.cs-kpi{background:var(--ink);color:var(--cream);padding-block:clamp(3rem,6vw,5.5rem)}
.cs-kpi .eyebrow{display:block;color:var(--lav)}
.cs-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1.2rem,4vw,4rem);margin-top:clamp(1.4rem,3vw,2.2rem)}
.cs-kpis .bm-st{border-top:1px solid rgba(253,248,237,.32);padding-top:1rem}
.cs-kpis .bm-st b{font-size:clamp(3rem,7vw,7rem)}
.cs-kpis .bm-st>span{font-size:.74rem}
.cs-note{margin-top:clamp(1.6rem,3vw,2.4rem);max-width:34rem;font-weight:400;opacity:.8}
.cs-bref{padding-block:clamp(4rem,8vw,7rem)}
.cs-bref .eyebrow{display:block}
.cs-bref h2{font-size:clamp(2.2rem,5vw,5rem);line-height:.95;letter-spacing:-.03em;margin:1rem 0 clamp(1.6rem,3vw,2.6rem)}
.cs-tiles{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(.7rem,1.2vw,1.1rem)}
.cs-t{grid-column:span 2;display:flex;flex-direction:column;gap:.8rem;justify-content:space-between;min-height:12rem;padding:clamp(1.2rem,2vw,1.8rem);border-radius:clamp(18px,2.2vw,30px);border:1.5px solid var(--ink)}
.cs-t.w3{grid-column:span 3;min-height:14rem}
.cs-t span{font-weight:500;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;opacity:.7}
.cs-t p{margin:0;font-family:var(--display);font-weight:700;font-size:clamp(1.15rem,1.8vw,1.7rem);line-height:1.08;letter-spacing:-.01em}
.cs-t.ink{background:var(--ink);color:var(--cream);border-color:var(--ink)}
.cs-t.ink span{color:var(--lav);opacity:1}
.cs-t.hot{background:var(--orange);border-color:var(--orange)}
.cs-t.hot p{font-size:clamp(2.2rem,4.4vw,4.4rem);letter-spacing:-.03em}
.cs-cast .cs-cast-p{max-width:32rem;font-weight:400;margin:-.6rem 0 clamp(1.4rem,3vw,2.2rem)}
.cs-cast .fi-oth-row{grid-template-columns:repeat(3,minmax(0,1fr));max-width:56rem}
.cs-lv{display:block;margin-top:1.1rem;font-weight:500;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase}
.cs-lev .bm-steps h3{margin-top:.5rem}
.cs-k{display:block;margin-top:1.1rem;font-family:var(--display);font-weight:700;font-size:clamp(1.8rem,3vw,3rem);letter-spacing:-.03em;line-height:1}
.cs-k small{font-family:var(--body);font-weight:500;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase}
.cs-next{padding-block:clamp(2rem,4vw,3.4rem)}
.cs-next .btn svg{width:16px;height:16px}
@media(max-width:900px){
  .cs-kpis{grid-template-columns:1fr}
  .cs-tiles{grid-template-columns:1fr}
  .cs-t,.cs-t.w3{grid-column:auto;min-height:0}
  .cs-cast .fi-oth-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cs-cast .fi-oth-row li:nth-child(5){grid-column:auto}
  .cs-media{aspect-ratio:9/14}
}

/* ===== Talent management : profil façon réseau social + stories ===== */
.pf{padding:clamp(6.5rem,12vh,8rem) 0 clamp(1.6rem,3vw,3rem)}
.pf .eyebrow{display:block;margin-bottom:1.1rem}
.pf .tmh{font-size:clamp(2.6rem,6.6vw,7.4rem);line-height:.92;max-width:11em}
.pf .tmh .o{color:var(--orange)}
.pf-card{margin-top:clamp(1.6rem,3.4vw,3rem);background:var(--ink);color:var(--cream);border-radius:clamp(26px,3vw,44px);padding:clamp(1.3rem,3vw,2.8rem)}
.pf-top{display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(1.2rem,3.4vw,3.4rem);align-items:center}
.pf-av{position:relative;width:clamp(92px,11vw,150px);aspect-ratio:1;display:grid;place-items:center}
.pf-av::before{content:"";position:absolute;inset:0;border-radius:50%;border:3px dashed var(--orange);animation:pfspin 22s linear infinite}
@keyframes pfspin{to{transform:rotate(360deg)}}
.pf-av-in{display:grid;place-items:center;width:80%;aspect-ratio:1;border-radius:50%;background:var(--orange);color:var(--ink)}
.pf-av-in svg{width:68%;height:auto;fill:currentColor;display:block}
.pf-id{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1rem}
.pf-hd{font-family:var(--display);font-weight:700;font-size:clamp(1.4rem,2.2vw,2.1rem);letter-spacing:-.01em}
.pf-bd{padding:.3rem .8rem;border-radius:999px;background:var(--lav);color:var(--ink);font-weight:500;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase}
.pf-st{display:flex;flex-wrap:wrap;gap:.6rem clamp(1.4rem,3vw,2.8rem);margin-top:1rem}
.pf-st b{display:block;font-family:var(--display);font-weight:700;font-size:clamp(1.4rem,2.2vw,2rem);line-height:1;color:var(--orange)}
.pf-st span{display:block;font-size:.78rem;opacity:.8;margin-top:.25rem}
.pf-bio{max-width:40rem;margin:1rem 0 0;font-weight:400;opacity:.92}
.pf-stories{display:flex;gap:clamp(1.4rem,3vw,3rem);margin-top:clamp(1.6rem,3.2vw,2.8rem);padding-top:clamp(1.2rem,2.4vw,2rem);border-top:1px solid rgba(253,248,237,.18);overflow-x:auto;scrollbar-width:none}
.pf-stories::-webkit-scrollbar{display:none}
.pf-g{flex:0 0 auto}
.pf-g+.pf-g{padding-left:clamp(1.4rem,3vw,3rem);border-left:1px solid rgba(253,248,237,.18)}
.pf-gl{display:block;font-weight:500;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--lav);margin-bottom:.9rem}
.pf-row{list-style:none;margin:0;padding:0;display:flex;gap:clamp(.8rem,1.6vw,1.5rem)}
.pf-b{--bs:clamp(68px,6.4vw,92px);display:flex;flex-direction:column;align-items:center;gap:.6rem;width:clamp(68px,6.4vw,92px);color:var(--cream);text-decoration:none}
.pf-r{display:block;box-sizing:border-box;width:var(--bs);height:var(--bs);flex:none;padding:3px;border-radius:50%;background:conic-gradient(from 200deg,var(--orange),var(--lav),var(--orange));transition:transform .45s cubic-bezier(.2,.8,.2,1)}
.pf-b.pf-ac .pf-r{background:none;border:2px dashed var(--orange);padding:3px}
.pf-i{position:relative;display:block;box-sizing:border-box;width:100%;height:100%;border-radius:50%;overflow:hidden;border:3px solid var(--ink);background:var(--ink)}
.pf-i img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 22%;display:block}
.pf-n{font-size:.72rem;font-weight:500;line-height:1.15;text-align:center;max-width:6.2rem;opacity:.9;transition:color .3s}
.pf-b:hover .pf-r,.pf-b:focus-visible .pf-r{transform:scale(1.1) rotate(-8deg)}
.pf-b:hover .pf-n{color:var(--orange)}
@media(max-width:900px){
  .pf-top{grid-template-columns:1fr;justify-items:start}
  .pf-stories{margin-inline:calc(clamp(1.3rem,3vw,2.8rem) * -1);padding-inline:clamp(1.3rem,3vw,2.8rem)}
}
@media(prefers-reduced-motion:reduce){.pf-av::before{animation:none}}
/* le bloc Talents démarre sous le profil */
.pf+.tz .tz-l-in{padding-top:clamp(5rem,10vh,6.5rem)}

/* fiches Academy */
.ac-oth .fi-oth-row{grid-template-columns:repeat(4,minmax(0,1fr))}
.ac-oth .fi-oth-row img{object-position:50% 25%}
@media(max-width:900px){.ac-oth .fi-oth-row{grid-template-columns:repeat(2,minmax(0,1fr))}.ac-oth .fi-oth-row li:nth-child(5){grid-column:auto}.ac-oth .fi-oth-row li:nth-child(5) a{aspect-ratio:4/5}}

/* cadrage Academy : photos d'origine (fond conservé), HD, visage toujours visible */
.tz-cut .tz-ph img{height:100%;object-fit:cover;object-position:50% 0}
.tz-cut .tz-ph[href^=bellyn] img{object-position:50% 30%}
.tz-cut .tz-ph[href^=camille] img{object-position:50% 12%}

/* 2 stories : Talents / Academy, chaque story ouvre sa catégorie */
.pf-stories{overflow:visible;border-top:1px solid rgba(253,248,237,.18)}
.pf-row{gap:clamp(1.6rem,4vw,3.4rem)}
.pf-big{--bs:clamp(104px,10vw,148px);width:auto;min-width:var(--bs);gap:.8rem}
.pf-big .pf-n{font-size:.92rem;font-weight:500;letter-spacing:.04em;max-width:none;opacity:1}
.pf-big .pf-i img{opacity:0;transform:scale(1);animation-duration:15.6s;animation-iteration-count:infinite;animation-timing-function:ease-in-out}
.pf-x6 .pf-i img{animation-name:pfx6}
.pf-x5 .pf-i img{animation-name:pfx5;animation-duration:13s}
.pf-big .pf-i img:first-child{opacity:1}
@keyframes pfx6{0%{opacity:0}4%,16.6%{opacity:1}21%,100%{opacity:0}}
@keyframes pfx5{0%{opacity:0}4%,20%{opacity:1}24.5%,100%{opacity:0}}
.pf-big .pf-r{box-shadow:0 0 0 0 rgba(255,99,46,.45);animation:pfpulse 2.8s ease-out infinite}
@keyframes pfpulse{0%{box-shadow:0 0 0 0 rgba(255,99,46,.45)}70%,100%{box-shadow:0 0 0 18px rgba(255,99,46,0)}}
@media(prefers-reduced-motion:reduce){.pf-big .pf-i img{animation:none}.pf-big .pf-i img:not(:first-child){display:none}.pf-big .pf-r{animation:none}}
/* réseaux : icônes seules, épurées */
.tm-cta .fi-soc{gap:.8rem}
.tm-cta .fi-soc a{width:56px;height:56px;padding:0;gap:0;justify-content:center;border-radius:50%}
.tm-cta .fi-soc a span{display:none}
.tm-cta .fi-soc a svg{width:56px;height:56px;padding:15px;background:none;color:var(--cream)}
.tm-cta .fi-soc a:hover{background:var(--orange);border-color:var(--orange);color:var(--ink);transform:translateY(-3px) rotate(-6deg)}
.tm-cta .fi-soc a:hover svg{background:none;color:var(--ink)}

/* ===== page Team ===== */
.tt-hero{padding:clamp(7.5rem,15vh,10rem) 0 clamp(2rem,5vw,4rem);overflow:hidden}
.tt-hero .tmh{font-size:clamp(3.4rem,10.5vw,12rem);line-height:.88;margin:.4rem 0 0}
.tt-lead{max-width:44rem;margin:clamp(1.4rem,3vw,2.4rem) 0 0;font-size:clamp(1.05rem,1.5vw,1.3rem);line-height:1.5;font-weight:400}
.tt-faces{margin-top:clamp(2.2rem,5vw,4.5rem);display:grid;gap:clamp(.7rem,1.2vw,1.1rem)}
.tt-row{display:flex;gap:clamp(.7rem,1.2vw,1.1rem);width:max-content;will-change:transform}
.tt-fc{flex:0 0 auto;width:clamp(120px,15vw,220px);aspect-ratio:4/5;border-radius:clamp(16px,2vw,28px);overflow:hidden;background:#d9d3cc}
.tt-fc img{width:100%;height:100%;object-fit:cover;object-position:50% 18%;display:block}
.tt-row[data-dir="1"] .tt-fc:nth-child(odd){transform:translateY(0)}
.tt-man{background:var(--ink);color:var(--cream);padding:clamp(4rem,10vw,9rem) 0;border-radius:clamp(24px,3vw,44px);margin-inline:clamp(8px,1.2vw,18px)}
.tt-man .eyebrow{color:var(--lav)}
.tt-stmt{font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:clamp(2.2rem,6.4vw,7.2rem);line-height:.95;letter-spacing:-.03em;margin:1.2rem 0 clamp(2.4rem,5vw,4.6rem);max-width:20ch}
.tt-stmt em{font-style:normal;color:var(--orange)}
.tt-man-g{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1.4rem,3vw,3rem);border-top:1px solid rgba(253,248,237,.2);padding-top:clamp(1.4rem,3vw,2.4rem)}
.tt-man-g h3{font-family:var(--body);font-weight:500;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--lav);margin:0 0 .8rem}
.tt-man-g p{margin:0;font-size:1.02rem;line-height:1.55;font-weight:400;max-width:24rem}
.tt-fnd{padding:clamp(4rem,9vw,8rem) 0 clamp(2rem,4vw,4rem)}
.tt-fl{list-style:none;margin:clamp(1.6rem,3vw,2.6rem) 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.6rem,4vw,4rem);align-items:start}
.tt-f:nth-child(2){margin-top:clamp(2rem,8vw,7rem)}
.tt-fp{aspect-ratio:4/5;border-radius:clamp(22px,2.6vw,38px);overflow:hidden;background:#ddd5cd;clip-path:inset(0 round clamp(22px,2.6vw,38px))}
.tt-fp img{width:100%;height:112%;object-fit:cover;object-position:50% 12%;display:block;will-change:transform}
.tt-ft{padding-top:1.4rem}
.tt-chip{display:inline-block;padding:.32rem .85rem;border-radius:999px;background:var(--orange);color:var(--ink);font-weight:500;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase}
.tt-f:nth-child(2) .tt-chip{background:var(--lav)}
.tt-ft h3{font-size:clamp(3rem,7vw,7.4rem);line-height:.9;letter-spacing:-.035em;margin:.7rem 0 0}
.tt-tag{font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:clamp(1rem,1.6vw,1.45rem);line-height:1.1;margin:.9rem 0 1rem!important}
.tt-ft p{margin:0 0 .8rem;max-width:34rem;line-height:1.55;font-weight:400}
.tt-ft .tt-b{font-weight:700}
.tt-eq{padding:clamp(3rem,7vw,6rem) 0 clamp(4rem,9vw,8rem)}
.tt-eq-h{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1.6rem}
.tt-eq-h .tmh{font-size:clamp(2.6rem,6.4vw,7rem);line-height:.92;margin-top:.8rem;max-width:12ch}
.tt-chs{display:flex;flex-wrap:wrap;gap:.5rem}
.tt-ch{font:inherit;font-weight:500;font-size:.86rem;padding:.65rem 1.1rem;min-height:44px;border-radius:999px;border:1.5px solid var(--ink);background:transparent;color:var(--ink);cursor:pointer;transition:background .3s,color .3s,transform .3s}
.tt-ch:hover{transform:translateY(-2px)}
.tt-ch.on{background:var(--ink);color:var(--cream)}
.tt-grid{list-style:none;margin:clamp(1.6rem,3vw,2.8rem) 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(1rem,2vw,1.8rem) clamp(.8rem,1.6vw,1.4rem)}
.tt-m[hidden]{display:none}
.tt-mp{position:relative;aspect-ratio:4/5;border-radius:clamp(18px,2vw,28px);overflow:hidden;background:#ddd5cd;clip-path:inset(0 round clamp(18px,2vw,28px))}
.tt-mp img{width:100%;height:100%;object-fit:cover;object-position:50% 14%;display:block;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.tt-m:hover .tt-mp img{transform:scale(1.06)}
.tt-mono{position:absolute;inset:0;display:grid;place-items:center;background:var(--lav);font-family:var(--display);font-weight:700;font-size:clamp(6rem,12vw,10rem);color:var(--ink)}
.tt-mb{position:absolute;left:0;right:0;bottom:0;margin:0;padding:3rem 1.1rem 1.1rem;background:linear-gradient(to top,rgba(31,26,23,.92) 55%,rgba(31,26,23,0));color:var(--cream);font-size:.86rem;line-height:1.45;transform:translateY(101%);transition:transform .55s cubic-bezier(.2,.8,.2,1)}
.tt-m:hover .tt-mb,.tt-m:focus-within .tt-mb{transform:none}
.tt-mi{padding:.9rem .2rem 0}
.tt-mi h3{font-size:clamp(1.6rem,2.4vw,2.4rem);line-height:.95;margin:0}
.tt-role{display:block;margin-top:.4rem;font-weight:500;font-size:.88rem;line-height:1.25}
.tt-pole{display:inline-block;margin-top:.6rem;padding:.22rem .7rem;border-radius:999px;border:1.5px solid var(--ink);font-weight:500;font-size:.62rem;letter-spacing:.14em;text-transform:uppercase}
.tt-m[data-p="talents"] .tt-pole{background:var(--orange);border-color:var(--orange)}
.tt-m[data-p="marques"] .tt-pole{background:var(--lav);border-color:var(--lav)}
.tt-m[data-p="direction"] .tt-pole{background:var(--ink);border-color:var(--ink);color:var(--cream)}
.tt-m[data-p="com"] .tt-pole{background:transparent;border-color:var(--ink)}
.tt-cta{margin-top:0}
@media(max-width:1020px){.tt-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){
  .tt-man-g{grid-template-columns:1fr}
  .tt-fl{grid-template-columns:1fr}.tt-f:nth-child(2){margin-top:0}
  .tt-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tt-mi h3{font-size:1.5rem}
}
@media(hover:none){.tt-mb{position:static;transform:none;background:none;color:inherit;padding:.5rem .2rem 0;font-size:.82rem;opacity:.8}.tt-mp{overflow:visible;clip-path:none;aspect-ratio:auto;background:none}.tt-mp img{aspect-ratio:4/5;border-radius:18px;height:auto}.tt-mono{position:relative;aspect-ratio:4/5;border-radius:18px;font-size:6rem}}

/* ===== Blog ===== */
.bl-hero{padding:clamp(7.5rem,15vh,10rem) 0 clamp(1.6rem,4vw,3rem)}
.bl-hero .tmh{font-size:clamp(3.2rem,9.6vw,11rem);line-height:.88;margin:.4rem 0 0}
.bl-lead{max-width:40rem;margin:clamp(1.2rem,2.6vw,2rem) 0 0;font-size:clamp(1.05rem,1.5vw,1.3rem);line-height:1.5;font-weight:400}
.bl-feat{padding:clamp(1.2rem,3vw,2.4rem) 0 clamp(1rem,2vw,1.6rem)}
.bl-fc{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:0;background:var(--ink);color:var(--cream);border-radius:clamp(24px,3vw,44px);overflow:hidden;text-decoration:none;position:relative}
.bl-fc .bl-im{aspect-ratio:auto;border-radius:0;min-height:clamp(300px,36vw,520px)}
.bl-fc .bl-tx{padding:clamp(1.6rem,3.6vw,3.6rem);display:flex;flex-direction:column;justify-content:center;gap:1.2rem}
.bl-fc h2{font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:clamp(1.7rem,3.4vw,3.4rem);line-height:.98;letter-spacing:-.02em;margin:0}
.bl-fc p{margin:0;font-weight:400;max-width:30rem;opacity:.85}
.bl-im{position:relative;overflow:hidden;aspect-ratio:4/3;border-radius:clamp(18px,2vw,28px);background:#d9d3cc}
.bl-im img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .9s cubic-bezier(.2,.8,.2,1)}
a:hover>.bl-im img,.bl-fc:hover .bl-im img{transform:scale(1.05)}
.bl-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;font-weight:500;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase}
.bl-chip{display:inline-block;padding:.28rem .8rem;border-radius:999px;background:var(--lav);color:var(--ink)}
.bl-more{display:inline-flex;align-items:center;gap:.7rem;font-weight:500;font-size:.95rem;margin-top:.4rem}
.bl-more i{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--orange);color:var(--ink);transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.bl-more i svg{width:20px;height:20px}
a:hover .bl-more i{transform:rotate(45deg) scale(1.06)}
.bl-list{padding:clamp(1rem,2vw,1.6rem) 0 clamp(3.5rem,8vw,7rem)}
.bl-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.2rem,2.4vw,2.2rem)}
.bl-card{display:flex;flex-direction:column;gap:1.1rem;text-decoration:none;color:var(--ink)}
.bl-card h3{font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:clamp(1.35rem,2.3vw,2.1rem);line-height:1;letter-spacing:-.02em;margin:0}
.bl-card .bl-im{aspect-ratio:16/10}
.bl-card .bl-chip{background:var(--ink);color:var(--cream)}
@media(max-width:820px){.bl-fc{grid-template-columns:minmax(0,1fr)}.bl-fc .bl-im{min-height:0;aspect-ratio:4/3}.bl-grid{grid-template-columns:minmax(0,1fr)}}
/* article */
.ba-hero{padding:clamp(7.5rem,15vh,10rem) 0 clamp(1.4rem,3vw,2.4rem)}
.ba-hero .wrap{max-width:74rem}
.ba-hero h1{max-width:18em}
.ba-hero .eyebrow{display:block;margin-bottom:1.1rem;color:var(--orange)}
.ba-hero h1{font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:clamp(2.2rem,6vw,5.6rem);line-height:.95;letter-spacing:-.03em;margin:0 0 1.4rem}
.ba-cover{padding:0 0 clamp(2rem,4vw,3.4rem)}
.ba-cover .wrap{max-width:74rem}
.ba-cv{position:relative;overflow:hidden;border-radius:clamp(20px,2.6vw,36px);aspect-ratio:12/5;background:#d9d3cc}
.ba-cv img{position:absolute;left:0;top:-8%;width:100%;height:116%;object-fit:cover;display:block}
.ba-body{padding:0 0 clamp(2.4rem,5vw,4.4rem)}
.ba-body .wrap{max-width:46rem}
.ba-body p{font-size:clamp(1.04rem,1.2vw,1.16rem);line-height:1.72;font-weight:400;margin:0 0 1.25rem}
.ba-body p.ba-lead{font-size:clamp(1.2rem,1.7vw,1.5rem);line-height:1.5;font-weight:500}
.ba-body h2{font-family:var(--display);font-weight:700;font-size:clamp(1.55rem,2.8vw,2.3rem);line-height:1.05;letter-spacing:-.02em;margin:clamp(2rem,4vw,3.2rem) 0 1rem}
.ba-body figure{margin:clamp(1.6rem,3vw,2.4rem) 0}
.ba-body figure .ba-cv{aspect-ratio:12/5}
.ba-body figure img{top:0;height:100%}
.ba-body strong{font-weight:700}
.ba-end{margin-top:clamp(2.4rem,5vw,4rem);background:var(--ink);color:var(--cream);border-radius:clamp(22px,2.6vw,36px);padding:clamp(1.6rem,3.6vw,3rem);display:flex;flex-direction:column;align-items:flex-start;gap:1rem}
.ba-end h2{margin:0;color:var(--cream)}
.ba-end h2 .o{color:var(--orange)}
.ba-end p{margin:0;opacity:.86}
.ba-end .bl-btns{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:.4rem}
.ba-more{background:var(--cream);padding:0 0 clamp(3.5rem,8vw,7rem)}
.ba-more .wrap{max-width:74rem}
.ba-more h2{font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:clamp(1.8rem,4vw,3.4rem);letter-spacing:-.03em;line-height:.95;margin:0 0 clamp(1.2rem,2.4vw,2rem)}

/* ===== Talent management v2 : intro allégée, grille globale, bandeau vidéos, séminaire ===== */
.ti{padding:clamp(7.4rem,15vh,10rem) 0 clamp(2rem,4vw,3.2rem)}
.ti .eyebrow{display:block;margin-bottom:1.2rem}
.ti-row{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:1.6rem 3rem;margin-top:clamp(1.6rem,3.4vw,2.8rem);padding-top:clamp(1.2rem,2.4vw,1.8rem);border-top:2px solid var(--ink)}
.ti-bio{max-width:34rem;font-weight:400;font-size:1.08rem}
.ti-st{display:flex;gap:clamp(1.6rem,4vw,3.6rem);margin:0}
.ti-st>div{display:flex;flex-direction:column-reverse;gap:.2rem}
.ti-st dd{margin:0;font-family:var(--display);font-weight:700;font-size:clamp(2.4rem,5vw,4.4rem);line-height:.95;letter-spacing:-.03em;color:var(--orange)}
.ti-st dt{font-weight:500;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase}
.tg{padding-block:clamp(1rem,3vw,2rem) clamp(4rem,8vw,7rem)}
.tg-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.7rem,1.4vw,1.3rem)}
.tg-join a{position:relative;display:block;aspect-ratio:4/5;border-radius:clamp(14px,1.6vw,24px);overflow:hidden;background:var(--ink);color:var(--cream);text-decoration:none;isolation:isolate;transition:transform .5s cubic-bezier(.2,.8,.2,1),box-shadow .5s}
.tg-join a:hover,.tg-join a:focus-visible{transform:translateY(-6px);box-shadow:0 28px 54px -26px rgba(31,26,23,.6)}
.tg-join img{width:100%;height:100%;object-fit:cover;object-position:50% 22%;display:block;transition:transform 1.1s cubic-bezier(.2,.8,.2,1)}
.tg-join a:hover img{transform:scale(1.06)}
.tg-join a::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(31,26,23,0) 50%,rgba(31,26,23,.88) 100%)}
.tg-t{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:1rem 1.1rem 1.15rem;display:block}
.tg-n{display:block;font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:clamp(1.05rem,1.7vw,1.6rem);line-height:1;letter-spacing:-.005em}
.tg-r{display:block;margin-top:.45rem;font-weight:600;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--lav)}
.tg-go{position:absolute;right:.8rem;top:.8rem;z-index:2;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--cream);color:var(--ink);opacity:0;transform:scale(.7) rotate(-45deg);transition:opacity .35s,transform .5s cubic-bezier(.2,.8,.2,1)}
.tg-go svg{width:18px;height:18px}
.tg-join a:hover .tg-go{opacity:1;transform:none}
.tg-join a{background:var(--orange);color:var(--ink);display:flex;flex-direction:column;justify-content:flex-end;gap:.5rem;padding:1.2rem 1.2rem 1.3rem}
.tg-join a::after{display:none}
.tg-jt{font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:clamp(2.2rem,4.4vw,4.2rem);line-height:.9;letter-spacing:-.03em}
.tg-jp{display:inline-flex;align-items:center;gap:.5rem;font-weight:500;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase}
.tg-jp svg{width:18px;height:18px;transition:transform .4s}
.tg-join a:hover .tg-jp svg{transform:translate(3px,-3px)}
.vb{background:var(--ink);color:var(--cream);padding-block:clamp(3.6rem,7vw,6.4rem);overflow:hidden}
.vb-h{margin-bottom:clamp(1.6rem,3.4vw,2.8rem)}
.vb-h .eyebrow{display:block;margin-bottom:1.1rem;color:var(--lav)}
.vb h2{font-size:clamp(2.4rem,6.4vw,6.4rem);line-height:.92;letter-spacing:-.03em;max-width:12em;text-align:left;text-transform:uppercase}
.vb h2 .o{color:var(--orange)}
.vb-row{overflow:hidden;margin-top:clamp(.7rem,1.2vw,1.1rem)}
.vb-track{--g:clamp(.7rem,1.2vw,1.1rem);display:flex;width:max-content;list-style:none;margin:0;padding:0;will-change:transform;animation:vbL 70s linear infinite}
.vb-r .vb-track{animation-name:vbR}
.vb-row:hover .vb-track{animation-play-state:paused}
@keyframes vbL{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
@keyframes vbR{from{transform:translate3d(-50%,0,0)}to{transform:translate3d(0,0,0)}}
.vb-v{position:relative;flex:0 0 auto;margin-right:var(--g);height:clamp(250px,34vh,350px);aspect-ratio:9/16;border-radius:clamp(14px,1.6vw,22px);overflow:hidden;background:#000}
.vb-v video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.vb-n{position:absolute;left:.7rem;bottom:.7rem;z-index:2;padding:.28rem .65rem;border-radius:999px;background:rgba(253,248,237,.9);color:var(--ink);font-weight:500;font-size:.66rem;letter-spacing:.12em;text-transform:uppercase}
@media (prefers-reduced-motion:reduce){.vb-row{overflow-x:auto;scrollbar-width:none}.vb-row::-webkit-scrollbar{display:none}.vb-track{animation:none;padding-inline:var(--gl)}.vb-v[aria-hidden=true]{display:none}}
.sm{padding-block:clamp(4rem,9vw,8rem);background:var(--cream);color:var(--ink);overflow:hidden}
.sm-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(2rem,6vw,6rem);align-items:center}
.sm-l .eyebrow{display:block;margin-bottom:1.2rem}
.sm h2{font-size:clamp(2.5rem,6vw,6.2rem);line-height:.92;letter-spacing:-.03em;text-transform:uppercase;text-align:left;max-width:9em}
.sm h2 .o{color:var(--orange)}
.sm-l p{margin-top:1.3rem;max-width:30rem;font-weight:400;font-size:1.06rem}
.sm-l .btn{margin-top:1.8rem}
.sm-r{position:relative;min-height:clamp(560px,49vw,720px)}
.sm-phone{position:absolute;width:clamp(165px,17vw,250px);aspect-ratio:9/16;border-radius:clamp(22px,2.4vw,34px);overflow:hidden;background:#000;z-index:2;box-shadow:0 40px 80px -36px rgba(31,26,23,.7)}
.sm-phone video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.sm-ph{position:absolute;margin:0;z-index:1;border-radius:clamp(14px,1.6vw,22px);overflow:hidden;box-shadow:0 26px 50px -30px rgba(31,26,23,.6);will-change:transform}
.sm-ph img{display:block;width:100%;height:100%;object-fit:cover}
.sm-v1{left:20%;top:30%}
.sm-v2{left:62%;top:0}
.sm-p1{left:0;top:0;width:clamp(150px,17vw,240px);aspect-ratio:3/4;transform:rotate(-4deg)}
.sm-p2{right:0;bottom:0;width:clamp(140px,16vw,230px);aspect-ratio:4/5;transform:rotate(4deg)}
.sm-p3{left:4%;bottom:0;width:clamp(110px,12vw,170px);aspect-ratio:1/1;transform:rotate(6deg)}
@media (max-width:900px){
  .ti-st{width:100%}
  .tg-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tg-go{opacity:1;transform:none;width:36px;height:36px}
  .vb-v{height:210px}
  .sm-grid{grid-template-columns:minmax(0,1fr)}
  .sm-r{min-height:148vw}
  .sm-phone{width:44vw}
  .sm-v1{left:2%;top:34%}
  .sm-v2{left:auto;right:2%;top:22%}
  .sm-p1{left:0;top:0;width:40vw}
  .sm-p2{right:0;bottom:0;width:38vw}
  .sm-p3{left:2%;bottom:2%;width:30vw}
}
@media (min-width:901px) and (max-width:1100px){.tg-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}

.ti-bio{max-width:44rem;font-family:var(--display);font-weight:700;font-size:clamp(1.35rem,2.4vw,2.2rem);line-height:1.1;letter-spacing:-.01em}
.acp{padding-block:clamp(2rem,5vw,4rem) clamp(4rem,8vw,7rem);background:var(--cream);color:var(--ink)}
.ac-h{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:1.4rem 3rem}
.ac-h .eyebrow{display:block;margin-bottom:1.1rem;color:var(--orange)}
.acp h2{font-size:clamp(2rem,9.2vw,7rem);line-height:.92;letter-spacing:-.03em;text-transform:uppercase;text-align:left;max-width:none}
.ac-h p{max-width:26rem;font-weight:400;font-size:1.06rem}
.ac-grid{list-style:none;margin:clamp(2rem,4vw,3.4rem) 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.8rem,1.4vw,1.3rem);align-items:stretch}
.ac-c{display:flex;flex-direction:column;gap:.9rem;background:#fff;border-radius:clamp(18px,2vw,28px);padding:clamp(1.3rem,2vw,2rem);min-height:21rem}
.ac-c h3{font-size:clamp(1.3rem,1.8vw,1.75rem);line-height:1;letter-spacing:-.01em;text-transform:uppercase}
.ac-c p{font-weight:400;font-size:1rem;line-height:1.4}
.ac-pills{list-style:none;margin:auto 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.45rem}
.ac-pills li{padding:.45rem .9rem;border-radius:999px;background:var(--cream);font-weight:500;font-size:.84rem}
.ac-main{background:var(--orange)}
.ac-main .ac-pills li{background:rgba(253,248,237,.8)}
.ac-badge{align-self:flex-start;padding:.38rem .8rem;border-radius:999px;background:var(--ink);color:var(--cream);font-weight:500;font-size:.66rem;letter-spacing:.14em;text-transform:uppercase}
@media (max-width:1100px){.ac-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.ac-grid{grid-template-columns:minmax(0,1fr)}.ac-c{min-height:0}}

/* logos flottants détourés sous l'intro des campagnes */
.bm-lgs{margin-top:clamp(1.8rem,3.4vw,3rem);display:grid;gap:clamp(.9rem,1.8vw,1.5rem);overflow:hidden;max-width:100%;-webkit-mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent);mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent)}
.bm-lgs-r{display:flex;width:max-content;animation:bmLgL 52s linear infinite}
.bm-lgs-r.r{animation-name:bmLgR;animation-duration:60s}
.bm-lgs .lgf{display:flex;align-items:center;padding-right:clamp(2rem,3.4vw,3.2rem)}
.bm-lgs img{height:calc(var(--h)*.56px);width:auto;display:block;filter:brightness(0) invert(1);opacity:.96;animation:bmLgF 4.8s ease-in-out infinite alternate;animation-delay:calc(var(--i)*-.65s)}
@keyframes bmLgL{to{transform:translateX(-50%)}}
@keyframes bmLgR{from{transform:translateX(-50%)}to{transform:translateX(0)}}
@keyframes bmLgF{from{transform:translateY(-7px)}to{transform:translateY(7px)}}
@media(max-width:600px){.bm-lgs img{height:calc(var(--h)*.46px)}}
@media(prefers-reduced-motion:reduce){.bm-lgs-r,.bm-lgs img{animation:none}.bm-lgs-r{flex-wrap:wrap;width:auto}.bm-lgs .lgf[aria-hidden]{display:none}}
.bm-camp .tz-l,.bm-camp .tz-l-in{min-width:0}
.bm-lgs{width:100%;contain:inline-size}
.cs-ex{list-style:none;margin:clamp(1.4rem,3vw,2.2rem) 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.7rem 2.4rem}
.cs-ex li{display:flex;flex-direction:column;gap:.15rem}
.cs-ex b{font-family:var(--display);font-weight:700;font-size:clamp(1.4rem,2.4vw,2rem);letter-spacing:-.02em;line-height:1}
.cs-ex span{font-size:.82rem;letter-spacing:.1em;text-transform:uppercase;opacity:.7}
.cs-media img{width:100%;height:100%;object-fit:cover;display:block}

/* cartes campagnes : l'aperçu reste visible tant que la vidéo n'a pas sa 1re image (plus d'écran noir) */
.tz-ph .tz-pi{position:absolute;left:0;top:0;width:100%;height:116%;object-fit:cover;object-position:50% 50%;display:block;will-change:transform}
.tz-ph .tz-pi + video{position:relative;opacity:0;transition:opacity .35s ease;background:transparent}
.tz-ph .tz-pi + video.on{opacity:1}

/* logo de la marque, en face de chaque carte campagne */
.bm-lg{position:absolute;z-index:3;left:clamp(.9rem,1.6vw,1.4rem);top:clamp(.9rem,1.6vw,1.4rem);display:inline-flex;align-items:center;gap:.6rem;padding:.55rem .9rem;background:rgba(253,248,237,.96);border-radius:16px;box-shadow:0 6px 22px rgba(31,26,23,.28)}
.bm-lg img{height:clamp(2.4rem,4vw,3.4rem);width:auto;display:block}
.bm-lg i{font-style:normal;font-family:"League Spartan",sans-serif;font-weight:700;color:var(--ink);opacity:.55;font-size:1.1rem}
@media(max-width:600px){.bm-lg{padding:.45rem .7rem;border-radius:13px}.bm-lg img{height:1.9rem}}

/* pastilles marques : toujours au-dessus des vidéos (Safari place parfois la couche vidéo par-dessus) */
.vb-v,.fi-v,.sm-phone{isolation:isolate;transform:translateZ(0)}
.vb-v video,.fi-v video{z-index:0}
.vb-n,.fi-v-n{z-index:3;-webkit-transform:translateZ(0);transform:translateZ(0)}

/* CTA sur fond crème (brand management + études de cas) */
.tm-cta-c{background:var(--cream);color:var(--ink)}
.tm-cta-c .eyebrow{color:var(--ink)}
.tm-cta-c .fi-soc a{border-color:var(--ink);color:var(--ink)}
.tm-cta-c .fi-soc a svg{background:none;color:var(--ink)}
.tm-cta-c .fi-soc a:hover{background:var(--orange);border-color:var(--orange);color:var(--ink)}
.tm-cta-c .fi-soc a:hover svg{background:none;color:var(--ink)}
.tm-cta-c .fi-soc i{opacity:.75}

/* talent management : talents et Academy séparés */
.tg-h{margin-bottom:clamp(1.4rem,3vw,2.4rem);max-width:44rem}
.tg-h h2{font-size:clamp(1.9rem,4vw,3.6rem);line-height:.95;letter-spacing:-.03em;margin-top:.5rem}
.tg-h p{margin-top:1rem;font-weight:400;max-width:30rem}
.tg-ac{padding-top:0}
.tg-grid.t3{grid-template-columns:repeat(3,minmax(0,1fr))}
.tg-grid.t5{grid-template-columns:repeat(5,minmax(0,1fr))}
.tg-grid.t5 .tg-n{font-size:clamp(1.05rem,1.5vw,1.5rem)}
@media (min-width:901px) and (max-width:1100px){.tg-grid.t5{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:900px){
  .tg-grid.t3,.tg-grid.t5{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tg-grid.t5 .tg-join{grid-column:1/-1}
  .tg-grid.t5 .tg-join a{aspect-ratio:auto;min-height:9rem}
}

/* études de cas — v2 (structure reprise de la version d'Enzo) */
.cs-bc{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:0 0 clamp(1rem,2vw,1.6rem);font-weight:500;font-size:.85rem}
.cs-bc a{text-decoration:none;font-weight:700}
.cs-bc a:hover{text-decoration:underline}
.cs-bc i{font-style:normal;opacity:.5}
.cs-bc span{opacity:.6}
.cs-t.lav{background:var(--lav);border-color:var(--lav)}
.cs-t.lav .cs-big{font-size:clamp(2.6rem,5vw,4.6rem);letter-spacing:-.03em;line-height:.95}
.cs-go{display:inline-flex;align-items:center;gap:.4rem;font-weight:700;font-size:.95rem;text-decoration:none}
.cs-go svg{width:16px;height:16px;transition:transform .25s}
.cs-go:hover svg{transform:translateY(3px)}
.cs-t.w2 p{font-size:clamp(1.05rem,1.5vw,1.4rem)}
.cs-t.hot p{font-size:clamp(2.2rem,4.4vw,4.4rem)}
.cs-cast2{background:#EFE7D4;padding-block:clamp(3.4rem,7vw,6rem);border-radius:clamp(22px,3vw,40px);margin-inline:clamp(.5rem,1vw,1rem)}
.cs-cast2 .eyebrow{display:block;color:var(--orange)}
.cs-cast2 h2{font-size:clamp(2.2rem,5vw,5rem);line-height:.95;letter-spacing:-.03em;margin:1rem 0 1.2rem}
.cs-cast2 .cs-cast-p{max-width:34rem;font-weight:400;margin:0 0 clamp(1.4rem,3vw,2.2rem)}
.cs-cards{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.8rem,1.4vw,1.2rem)}
.cs-card{position:relative;background:var(--white);border-radius:clamp(20px,2.4vw,30px);padding:clamp(1.2rem,2vw,1.7rem);display:flex;flex-direction:column;gap:.15rem;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s}
.cs-card:hover{transform:translateY(-5px);box-shadow:0 18px 40px -22px rgba(31,26,23,.45)}
.cs-av{display:block;width:clamp(56px,5vw,72px);aspect-ratio:1;border-radius:50%;overflow:hidden;border:3px solid var(--lav);margin-bottom:.7rem;flex:none;background:var(--lav)}
.cs-card.tal .cs-av{border-color:var(--orange)}
.cs-av img{width:100%;height:100%;object-fit:cover;display:block}
.cs-ini{display:grid;place-items:center;font-family:var(--display);font-weight:700;font-size:1.5rem;color:var(--ink)}
.cs-bd{position:absolute;top:clamp(1.2rem,2vw,1.7rem);right:clamp(1.2rem,2vw,1.7rem);padding:.3rem .75rem;border-radius:999px;background:#EFE7D4;font-weight:700;font-size:.66rem;letter-spacing:.14em;text-transform:uppercase}
.cs-bd.hot{background:var(--orange);color:var(--ink)}
.cs-h{font-family:var(--body);font-weight:700;font-size:1.1rem}
.cs-s{font-style:normal;font-weight:500;font-size:.85rem;opacity:.62}
.cs-kv{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(31,26,23,.16);display:flex;flex-direction:column;gap:.2rem}
.cs-kv strong{font-family:var(--display);font-weight:700;font-size:clamp(2.2rem,3.6vw,3.2rem);line-height:.95;letter-spacing:-.02em;color:var(--orange)}
.cs-kv span{font-weight:700;font-size:.88rem}
.cs-also{margin:clamp(1.8rem,3.4vw,2.8rem) 0 1rem;font-family:var(--body);font-weight:700;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase}
.cs-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.6rem}
.cs-chip{display:inline-flex;align-items:center;gap:.6rem;background:var(--white);border-radius:999px;padding:.4rem 1.1rem .4rem .4rem;transition:background .2s,color .2s,transform .25s}
.cs-chip:hover{background:var(--ink);color:var(--cream);transform:translateY(-2px)}
.cs-chip .cs-av{width:34px;border-width:2px;margin:0;font-size:.95rem}
.cs-chip span{display:flex;flex-direction:column;line-height:1.15}
.cs-chip b{font-weight:700;font-size:.9rem}
.cs-chip i{font-style:normal;font-weight:500;font-size:.72rem;opacity:.65}
.cs-chip.more{background:var(--orange);padding:.7rem 1.2rem;font-weight:700}
.cs-lev .bm-steps li{background:var(--white);border-radius:clamp(20px,2.4vw,30px);padding:clamp(1.2rem,2vw,1.7rem)}
.cs-nx{padding-block:clamp(2.5rem,5vw,4.5rem) clamp(1.5rem,3vw,2.4rem)}
.cs-nx-c{display:grid;grid-template-columns:1.1fr .9fr;align-items:stretch;background:var(--white);border-radius:clamp(22px,3vw,40px);overflow:hidden;text-decoration:none;color:inherit;transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s}
.cs-nx-c:hover{transform:translateY(-4px);box-shadow:0 26px 60px -34px rgba(31,26,23,.5)}
.cs-nx-t{padding:clamp(1.6rem,3.4vw,3.2rem);display:flex;flex-direction:column;gap:1.2rem;justify-content:center;align-items:flex-start}
.cs-nx-t .eyebrow{color:var(--orange)}
.cs-nx-t h2{margin:0;font-size:clamp(1.8rem,4vw,3.6rem);line-height:.98;letter-spacing:-.03em}
.cs-nx-c:hover .btn{background:var(--ink);color:var(--cream)}
.cs-nx-i{min-height:14rem;overflow:hidden}
.cs-nx-i img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.cs-nx-c:hover .cs-nx-i img{transform:scale(1.05)}
.cs-all{margin-top:clamp(1.2rem,2.4vw,2rem)}
@media(max-width:900px){.cs-cards{grid-template-columns:1fr 1fr}.cs-cards.x3 .cs-card:last-child{grid-column:1/-1}.cs-nx-c{grid-template-columns:1fr}.cs-nx-i{order:-1;aspect-ratio:16/9;min-height:0}}
@media(max-width:560px){.cs-cards{grid-template-columns:1fr}.cs-cast2{margin-inline:.3rem}.cs-bd{position:static;align-self:flex-start;margin-bottom:.6rem}}
@media(prefers-reduced-motion:reduce){.cs-card,.cs-chip,.cs-nx-c,.cs-nx-i img{transition:none}}
/* corrections études de cas v2 */
.cs-chip>span:not(.cs-av){display:flex;flex-direction:column;line-height:1.15}
.cs-chip .cs-av{display:grid;width:34px;height:34px;border-width:2px;margin:0;font-size:.95rem}
.cs-tiles{grid-template-columns:repeat(12,minmax(0,1fr))}
.cs-t,.cs-t.w2{grid-column:span 3}
.cs-t.w3{grid-column:span 6}
.cs-t.hot p{font-size:clamp(2rem,3.4vw,3.4rem);line-height:.95}
.cs-nx-c{align-items:center}
.cs-nx-i{height:clamp(15rem,26vw,23rem);min-height:0}
@media(max-width:900px){.cs-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.cs-t,.cs-t.w2{grid-column:auto}.cs-t.w3{grid-column:1/-1}.cs-nx-i{height:auto}}
@media(max-width:560px){.cs-tiles{grid-template-columns:1fr}.cs-t.w3{grid-column:auto}}
/* carte campagne sans média (en attente de la vidéo) */
.tz-tc{position:absolute;inset:0;display:flex;align-items:flex-end;padding:clamp(1.4rem,3vw,2.6rem);background:var(--lav);color:var(--ink)}
.tz-tc b{font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:clamp(3.4rem,9vw,9rem);line-height:.84;letter-spacing:-.04em}

/* page « Toutes les campagnes » + bouton sous le texte */
.bm-all{margin-top:clamp(1.2rem,2.4vw,1.8rem);align-self:flex-start}
.cl-hero{padding:clamp(7rem,13vw,10rem) 0 clamp(2rem,4vw,3rem)}
.cl-hero .eyebrow{display:block;color:var(--orange);margin-bottom:1rem}
.cl-hero h1{font-size:clamp(3rem,9vw,9rem);line-height:.9;letter-spacing:-.04em;text-transform:uppercase;margin:0}
.cl-hero p{max-width:36rem;margin-top:clamp(1.2rem,2.4vw,2rem);font-weight:400}
.cl-sec{padding-block:clamp(1.5rem,3vw,2.5rem) clamp(3rem,6vw,5rem)}
.cl-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,2vw,1.6rem)}
.cl-c a{display:flex;flex-direction:column;height:100%;text-decoration:none;color:inherit;background:var(--white);border-radius:clamp(20px,2.4vw,30px);overflow:hidden;transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s}
.cl-c a:hover,.cl-c a:focus-visible{transform:translateY(-6px);box-shadow:0 26px 54px -30px rgba(31,26,23,.5)}
.cl-m{position:relative;aspect-ratio:4/5;overflow:hidden;background:var(--lav)}
.cl-m img,.cl-m video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.cl-m video{opacity:0;transition:opacity .35s ease,transform .8s cubic-bezier(.2,.8,.2,1)}
.cl-m video.on{opacity:1}
.cl-c a:hover .cl-m img,.cl-c a:hover .cl-m video{transform:scale(1.05)}
.cl-m .tz-tc{border-radius:0}
.cl-b{position:absolute;left:1rem;top:1rem;z-index:2;padding:.35rem .85rem;border-radius:999px;background:var(--cream);color:var(--ink);font-weight:700;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase}
.cl-t{display:flex;flex-direction:column;gap:.9rem;padding:clamp(1.1rem,2vw,1.6rem);flex:1}
.cl-t h2{font-size:clamp(1.3rem,2vw,1.8rem);line-height:1;letter-spacing:-.02em;text-transform:uppercase;margin:0}
.cl-k{display:flex;flex-wrap:wrap;gap:.5rem}
.cl-k span{padding:.35rem .8rem;border-radius:999px;background:#EFE7D4;font-weight:500;font-size:.8rem}
.cl-go{margin-top:auto;display:inline-flex;align-items:center;gap:.5rem;font-weight:700;font-size:.92rem}
.cl-go svg{width:16px;height:16px;transition:transform .25s}
.cl-c a:hover .cl-go svg{transform:translate(3px,-3px)}
@media(max-width:900px){.cl-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.cl-grid{grid-template-columns:1fr}.cl-m{aspect-ratio:4/4.4}}
@media(prefers-reduced-motion:reduce){.cl-c a,.cl-m img,.cl-m video{transition:none}}
.cs-nx-i{position:relative}
.cs-av img{object-position:50% 18%}
.cs-nx-i .tz-tc{position:absolute}
.cl-m .bm-lg img{position:static;inset:auto;width:auto;height:clamp(2.2rem,3.4vw,3rem);object-fit:contain;transform:none!important;transition:none}

/* talent management : grille en feed Instagram */
@property --ra{syntax:"<angle>";inherits:false;initial-value:0deg}
.ig-st{list-style:none;margin:0 0 clamp(1.6rem,3.4vw,2.8rem);padding:.4rem 0 .6rem;display:flex;gap:clamp(.9rem,1.8vw,1.6rem);overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.ig-st::-webkit-scrollbar{display:none}
.ig-st li{flex:0 0 auto}
.ig-st a{display:flex;flex-direction:column;align-items:center;gap:.55rem;text-decoration:none;color:var(--ink);width:clamp(68px,8vw,96px)}
.ig-ring{position:relative;display:block;border-radius:50%;padding:3px;background:conic-gradient(from var(--ra),var(--orange),var(--lav),var(--orange));animation:igSpin 5s linear infinite;flex:0 0 auto}
.ig-ring::before{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--cream)}
.ig-ring img{position:relative;display:block;width:100%;height:100%;border-radius:50%;object-fit:cover;object-position:50% 18%;border:3px solid var(--cream);aspect-ratio:1;background:var(--lav)}
.ig-st .ig-ring{width:clamp(68px,8vw,96px)}
.ig-st .ig-acr{background:conic-gradient(from var(--ra),var(--lav),#fff,var(--lav))}
.ig-st a:hover .ig-ring{animation-duration:1.4s;transform:scale(1.06)}
.ig-ring{transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.ig-sn{font-weight:500;font-size:.78rem;line-height:1.1;text-align:center;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@keyframes igSpin{to{--ra:360deg}}
.ig-p article{display:flex;flex-direction:column;background:#fff;border-radius:clamp(16px,1.8vw,26px);overflow:hidden;border:1px solid rgba(31,26,23,.08);box-shadow:0 22px 50px -34px rgba(31,26,23,.55);height:100%;transition:box-shadow .5s,transform .6s cubic-bezier(.2,.8,.2,1);will-change:transform}
.ig-p:hover article{box-shadow:0 34px 70px -34px rgba(31,26,23,.6)}
.ig-hd{display:flex;align-items:center;gap:.75rem;padding:.85rem 1rem}
.ig-hd .ig-ring{width:46px}
.ig-av{display:block;flex:0 0 auto}
.ig-id{display:flex;flex-direction:column;min-width:0;flex:1}
.ig-hn{font-weight:700;font-size:.92rem;line-height:1.15;color:var(--ink);text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ig-hn:hover{color:var(--orange)}
.ig-sub{font-size:.74rem;line-height:1.2;opacity:.62;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ig-more{display:flex;gap:3px;padding:.4rem}
.ig-more i{width:4px;height:4px;border-radius:50%;background:var(--ink);opacity:.7}
.ig-ph{position:relative;display:block;aspect-ratio:4/5;overflow:hidden;background:var(--ink);isolation:isolate;color:var(--cream)}
.ig-ph>img{position:absolute;left:0;top:-6%;width:100%;height:112%;object-fit:cover;object-position:50% 24%;display:block;transition:scale 1s cubic-bezier(.2,.8,.2,1)}
.ig-ph:hover>img,.ig-ph:focus-visible>img{scale:1.05}
.ig-ph .tg-go{right:.8rem;top:.8rem;z-index:3;opacity:0;transform:scale(.7) rotate(-45deg);transition:opacity .35s,transform .5s cubic-bezier(.2,.8,.2,1)}
.ig-ph:hover .tg-go,.ig-ph:focus-visible .tg-go{opacity:1;transform:none}
.ig-bh{position:absolute;left:50%;top:50%;z-index:2;width:34%;margin:-17% 0 0 -17%;color:#fff;opacity:0;pointer-events:none;filter:drop-shadow(0 8px 26px rgba(31,26,23,.5));transform:scale(0)}
.ig-bh svg,.ig-fx svg{display:block;width:100%;height:100%;fill:currentColor}
.ig-fx{position:absolute;z-index:2;width:22px;height:22px;pointer-events:none;color:var(--orange);left:50%;top:50%;margin:-11px 0 0 -11px}
.ig-fx:nth-child(even){color:var(--lav)}
.ig-ac{display:flex;align-items:center;gap:.9rem;padding:.8rem 1rem .2rem}
.ig-ac svg{display:block;width:26px;height:26px;fill:none;stroke:var(--ink);stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.ig-lk{all:unset;cursor:pointer;display:grid;place-items:center;width:34px;height:34px;margin:-4px;border-radius:50%;transition:transform .3s cubic-bezier(.3,1.6,.5,1)}
.ig-lk:focus-visible{outline:2px solid var(--orange);outline-offset:2px}
.ig-lk:hover{transform:scale(1.15)}
.ig-lk:active{transform:scale(.88)}
.ig-lk[aria-pressed=true] svg{fill:var(--orange);stroke:var(--orange)}
.ig-ic{display:grid;place-items:center}
.ig-bk{margin-left:auto}
.ig-fl{margin:0;padding:.35rem 1rem 0;font-size:.9rem;font-weight:400}
.ig-fl b{font-weight:700}
.ig-cp{margin:0;padding:.3rem 1rem 1.1rem;font-size:.9rem;line-height:1.38;font-weight:400}
.ig-cp b{font-weight:700;margin-right:.2rem}
.ig-cp a{color:var(--orange);font-weight:600;text-decoration:none;white-space:nowrap}
.ig-cp a:hover{text-decoration:underline}
.ig-fl:last-child,.ig-s .ig-fl{padding-bottom:1rem}
.tg-grid.t3{align-items:start}
.tg-grid.t5{align-items:stretch}
.ig-s .ig-hd{padding:.7rem .75rem;gap:.6rem}
.ig-s .ig-hd .ig-ring{width:36px}
.ig-s .ig-hn{font-size:.8rem}
.ig-s .ig-sub{font-size:.68rem}
.ig-s .ig-ac{padding:.65rem .75rem .1rem;gap:.7rem}
.ig-s .ig-ac svg{width:22px;height:22px}
.ig-s .ig-fl{padding:.3rem .75rem 0;font-size:.82rem}
.tg-grid.t5 .tg-join a{aspect-ratio:auto;height:100%;min-height:100%}
.tg-grid.t5 .tg-join{display:flex}
.tg-grid.t5 .tg-join a{flex:1;border-radius:clamp(16px,1.8vw,26px)}
@media (max-width:900px){
  .ig-ph .tg-go{opacity:1;transform:none;width:34px;height:34px}
  .tg-grid.t5 .tg-join a{min-height:9rem}
}
@media (max-width:600px){
  .tg-grid.t3{grid-template-columns:minmax(0,1fr);max-width:30rem;margin-inline:auto;gap:1.4rem}
}
@media (prefers-reduced-motion:reduce){.ig-ring{animation:none}.ig-p article{will-change:auto}}

/* campagne suivante : l'image apparaît au survol et suit le curseur (souris uniquement) */
.cs-nx-v{display:none}
@media (hover:hover) and (pointer:fine){
  .cs-nx-c{display:block;position:relative;overflow:hidden;min-height:clamp(15rem,24vw,21rem)}
  .cs-nx-t{min-height:inherit;padding-right:clamp(1.6rem,34vw,34rem)}
  .cs-nx-t h2{max-width:11em}
  .cs-nx-i{overflow:visible;position:absolute;left:0;top:0;z-index:2;width:clamp(190px,18vw,270px);height:auto;aspect-ratio:4/5;border-radius:clamp(14px,1.6vw,22px);opacity:0;pointer-events:none;will-change:transform;}
  .cs-nx-i img,.cs-nx-i video,.cs-nx-i .tz-tc{width:100%;height:100%;object-fit:cover;display:block;border-radius:inherit;box-shadow:0 30px 60px -28px rgba(31,26,23,.6)}
  .cs-nx-c:hover .cs-nx-i img{transform:none}
  .cs-nx-v{display:grid;place-items:center;position:absolute;right:-22px;bottom:-22px;width:68px;height:68px;border-radius:50%;background:var(--orange);color:var(--ink);font-weight:600;font-size:.84rem;letter-spacing:.04em;box-shadow:0 10px 24px -10px rgba(31,26,23,.5)}
  .cs-nx-c:hover,.cs-nx-c:focus-visible{transform:none}
  .cs-nx-c:focus-visible .cs-nx-i{opacity:1;left:auto;right:2rem;top:50%;margin-top:-170px}
}
/* logos dans la bande vidéo Brand */
.vb-n.vb-lg{padding:.42rem .8rem;background:rgba(253,248,237,.96);display:grid;place-items:center;line-height:0}
.vb-n.vb-lg img{display:block;height:26px;width:auto;max-width:96px;object-fit:contain}
@media(max-width:640px){.vb-n.vb-lg img{height:20px;max-width:76px}}
/* marque sous la vidéo (hors de la couche vidéo : toujours visible) */
.vb-i{flex:0 0 auto;margin-right:var(--g);list-style:none}
.vb-i .vb-v{margin-right:0}
.vb-cap{display:flex;align-items:center;min-height:calc(42px + .7rem);padding-top:.7rem}
.vb-i .vb-n{position:static;display:inline-flex;align-items:center;height:42px;padding:0 1.05rem;border-radius:999px;background:var(--cream);color:var(--ink);font-size:.7rem;line-height:1}
.vb-i .vb-n.vb-lg{padding:0 .85rem}
.vb-i .vb-n.vb-lg img{height:28px;max-width:110px}
@media(max-width:900px){.vb-cap{min-height:calc(30px + .6rem);padding-top:.6rem}.vb-i .vb-n{height:30px;font-size:.64rem}.vb-i .vb-n.vb-lg img{height:19px;max-width:76px}}

/* expertises (page) + bloc team vidéo sur la page team */
.expe-pg{padding-top:clamp(7.5rem,15vh,10rem)}
.expe-pg .ex-head h1{font-size:clamp(3rem,8vw,8.4rem);line-height:.9;margin:0;max-width:9em}
.expe-pg .ex-head{grid-template-columns:minmax(0,7fr) minmax(0,4fr)}
@media(max-width:900px){.expe-pg .ex-head{grid-template-columns:1fr}}
.pg-team .hteam{background:var(--cream)}


/* page contact */
.pg-contact{background:var(--cream)}
.ct{min-height:100vh;min-height:100svh;display:flex;align-items:center;padding-block:clamp(7rem,14vh,9rem) clamp(3rem,7vh,5rem);background:var(--cream)}
.ct-in{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(2rem,6vw,7rem);align-items:center;width:100%}
.ct-l h1{font-size:clamp(3rem,7.4vw,7.6rem);line-height:.92;margin:1.1rem 0 0;max-width:7em}
.ct-lead{max-width:30rem;font-weight:400;font-size:1.1rem;margin:1.8rem 0 0}
.ct-mail{display:inline-block;margin-top:1.8rem;font-family:var(--display);font-weight:700;font-size:clamp(1.3rem,2.4vw,2rem);letter-spacing:-.01em;color:var(--ink);text-decoration:none;border-bottom:3px solid var(--orange);padding-bottom:.1rem;transition:color .2s}
.ct-mail:hover{color:var(--orange)}
.ct-soc{display:flex;gap:.7rem;list-style:none;padding:0;margin:1.8rem 0 0}
.ct-soc a{width:52px;height:52px;border-radius:50%;border:2px solid var(--ink);display:grid;place-items:center;color:var(--ink);transition:background .2s,color .2s}
.ct-soc a:hover{background:var(--ink);color:var(--cream)}
.ct-soc svg{width:20px;height:20px}
.ct-f{background:var(--lav);border-radius:clamp(20px,2.4vw,32px);padding:clamp(1.4rem,3vw,2.4rem);display:flex;flex-direction:column;gap:1.1rem;color:var(--ink)}
.ct-who{border:0;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.ct-who legend{float:left;margin-right:.8rem;padding:0;font-weight:500;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;line-height:42px}
.ct-who label{cursor:pointer}
.ct-who input{position:absolute;opacity:0;pointer-events:none}
.ct-who span{display:inline-flex;align-items:center;min-height:42px;padding:0 1.1rem;border-radius:999px;border:2px solid var(--ink);font-weight:500;font-size:.92rem;transition:background .2s,color .2s}
.ct-who input:checked+span{background:var(--ink);color:var(--lav)}
.ct-who input:focus-visible+span{outline:3px solid var(--orange);outline-offset:2px}
.ct-row{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem}
.ct-fld{display:flex;flex-direction:column;gap:.45rem}
.ct-fld>span{font-weight:500;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase}
.ct-fld i{font-style:normal;text-transform:none;letter-spacing:0;opacity:.65}
.ct-fld input,.ct-fld textarea{font:inherit;font-weight:400;font-size:1rem;color:var(--ink);background:var(--cream);border:2px solid transparent;border-radius:16px;padding:.85rem 1rem;width:100%;transition:border-color .2s}
.ct-fld textarea{resize:vertical;min-height:130px}
.ct-fld input:focus,.ct-fld textarea:focus{outline:0;border-color:var(--ink)}
.ct-err{margin:0;font-weight:500;font-size:.9rem;color:#8a1f00}
.ct-send{align-self:flex-start;cursor:pointer}
.ct-note{margin:0;font-size:.84rem;font-weight:400;opacity:.75}
@media(max-width:900px){.ct{align-items:flex-start}.ct-in{grid-template-columns:1fr}.ct-row{grid-template-columns:1fr}}

/* « Toutes nos campagnes » intégré à la page Brand management, à la suite de De A à Z */
.cl-in-bm{padding:clamp(4rem,8vw,7rem) 0 clamp(1.4rem,3vw,2.4rem)}
.cl-in-bm h2{font-size:clamp(3rem,9vw,9rem);line-height:.9;letter-spacing:-.04em;text-transform:uppercase;margin:0}
.cl-in-bm .o{color:var(--orange)}
.pg-bm .cl-sec{padding-block:clamp(1.5rem,3vw,2.5rem) clamp(4rem,8vw,6.5rem)}

/* CTA contact : la phrase d'accroche tient sur une ligne (desktop) */
@media(min-width:700px){.tm-cta-c p{max-width:none;white-space:nowrap}}

/* logos / marques posés sur la vidéo, coin supérieur gauche */
.vb-i .vb-n{position:absolute;left:.7rem;bottom:.7rem;top:auto;display:inline-flex;align-items:center;justify-content:center;height:36px;padding:0 .85rem;border-radius:999px;background:rgba(253,248,237,.94);color:var(--ink);font-size:.64rem;letter-spacing:.12em;line-height:1;z-index:3}
.vb-i .vb-n.vb-lg{padding:0 .7rem}
.vb-i .vb-n.vb-lg img{height:22px;max-width:84px}
@media(max-width:900px){.vb-i .vb-n{height:30px;left:.55rem;bottom:.55rem;top:auto;font-size:.58rem;padding:0 .7rem}.vb-i .vb-n.vb-lg img{height:18px;max-width:68px}}

/* contact : les radios masqués restent dans leur pastille (évite un débordement horizontal) */
.ct-who label{position:relative}

/* ===== v168 : Brand management — hero logos, Nos formules, grille de campagnes animée ===== */
.bm-lgv{position:absolute;right:calc(17vw - clamp(52px,6vw,95px));top:0;bottom:0;width:clamp(104px,12vw,190px);z-index:1;overflow:hidden;pointer-events:none;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 16%,#000 84%,transparent 100%);mask-image:linear-gradient(180deg,transparent 0,#000 16%,#000 84%,transparent 100%)}
.bm-lgv-in{display:flex;flex-direction:column;align-items:center;width:100%;animation:lgvdown 80s linear infinite;will-change:transform}
.lgv{display:flex;align-items:center;justify-content:center;padding-block:clamp(1.1rem,2.2vw,1.9rem);flex:none}
.lgv img{height:calc(var(--h)*.82px);max-width:100%;width:auto;object-fit:contain;display:block;filter:brightness(0) invert(.97) sepia(.14);opacity:.92}
@keyframes lgvdown{from{transform:translateY(-50%)}to{transform:translateY(0)}}
@media(max-width:700px){.bm-lgv{width:20vw;right:.4rem;opacity:.5}.lgv img{height:calc(var(--h)*.6px)}}
@media(prefers-reduced-motion:reduce){.bm-lgv-in{animation:none}}

.fm{background:var(--cream);color:var(--ink);padding-block:clamp(4rem,8vw,7.5rem) clamp(3rem,6vw,5.5rem)}
.fm-top{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:1.6rem 4rem;margin-bottom:clamp(2rem,4vw,3.4rem)}
.fm-eye{display:inline-flex;align-items:center;gap:.7rem;font-weight:700;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:#C2410C;margin-bottom:.9rem}
.fm-eye b{display:grid;place-items:center;width:2rem;height:2rem;border-radius:50%;background:var(--orange);color:var(--ink);font-family:var(--display);font-size:1rem;letter-spacing:0}
.fm-h{font-size:clamp(3.4rem,10vw,10rem);line-height:.86;letter-spacing:-.045em;text-transform:uppercase;margin:0}
.fm-top>p{max-width:23rem;font-weight:500;font-size:1.05rem;line-height:1.5;margin-bottom:.6rem}
.fm-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.8rem,1.4vw,1.2rem)}
.fm-c{display:flex;flex-direction:column;background:var(--white);border-radius:clamp(22px,2.6vw,34px);padding:clamp(1.3rem,2.2vw,2rem);transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s;position:relative}
.fm-c:hover{transform:translateY(-8px);box-shadow:0 34px 60px -34px rgba(31,26,23,.45)}
.fm-tag{align-self:flex-start;padding:.38rem .85rem;border-radius:999px;background:var(--lav);color:var(--ink);font-weight:700;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;transition:background .3s}
.fm-c:hover .fm-tag{background:var(--orange)}
.fm-c h3{font-size:clamp(1.7rem,2.5vw,2.5rem);line-height:.92;letter-spacing:-.035em;text-transform:uppercase;margin:1.2rem 0 .9rem;min-height:2.0em}
.fm-c p{font-weight:400;font-size:.98rem;line-height:1.5}
.fm-id{margin-top:auto;padding-top:1rem;border-top:1.5px dashed rgba(31,26,23,.28)}
.fm-c p{margin-bottom:1.4rem}
.fm-id span{display:block;font-weight:700;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:#C2410C;margin-bottom:.4rem}
.fm-id b{display:block;font-weight:700;font-size:.92rem;line-height:1.3}
@media(max-width:1100px){.fm-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.fm-grid{grid-template-columns:1fr}.fm-c h3{min-height:0}}

/* grille de campagnes : colonnes qui dérivent, entrée en perspective, tilt 3D au survol */
.cl-grid{perspective:1400px;align-items:start}
.cl-c{will-change:transform}
.cl-c a{--rx:0deg;--ry:0deg;transform:perspective(900px) rotateX(var(--rx)) rotateY(var(--ry));transform-style:preserve-3d;position:relative;transition:transform .5s cubic-bezier(.2,.8,.2,1),box-shadow .4s;will-change:transform}
.cl-c a.tilt{transition:transform .08s linear,box-shadow .4s}
.cl-c a:hover,.cl-c a:focus-visible{transform:perspective(900px) rotateX(var(--rx)) rotateY(var(--ry)) translateY(-8px) scale(1.012)}
.cl-c a::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .4s;background:radial-gradient(420px circle at var(--mx,50%) var(--my,30%),rgba(255,255,255,.35),transparent 55%);mix-blend-mode:soft-light}
.cl-c a:hover::after{opacity:1}
.cl-c .cl-go{transition:gap .3s,color .3s}
.cl-c a:hover .cl-go{gap:.9rem;color:#C2410C}
@media(min-width:901px){.cl-grid{padding-bottom:5rem}.cl-c:nth-child(3n+2){margin-top:clamp(2.4rem,5vw,4.5rem)}}
@media(max-width:900px),(hover:none){.cl-c a{transform:none!important}}

/* ===== v168 : Talent management — titre, accompagnement 3D, collab compacte ===== */
.ti2{padding:clamp(7.2rem,15vh,9.6rem) 0 clamp(2rem,4vw,3.4rem);overflow:clip}
.ti2-k{display:inline-flex;align-items:center;gap:.7rem;padding:.55rem 1.05rem;border:1.5px solid var(--ink);border-radius:999px;font-weight:600;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;margin-bottom:clamp(1rem,2.4vw,1.8rem)}
.ti2-k i{width:.55rem;height:.55rem;border-radius:50%;background:var(--orange);flex:none}
.ti2-h{margin:0;font-size:clamp(3rem,min(10.6vw,22vh),14rem);line-height:.86;letter-spacing:-.05em;text-transform:uppercase;display:flex;flex-direction:column;align-items:flex-start;text-align:left;max-width:none}
.ti2-l{display:flex;align-items:center;gap:.16em;white-space:nowrap;will-change:transform}
.ti2-t{display:inline-block;overflow:hidden;padding:.05em .06em .12em 0;margin-bottom:-.12em}
.ti2-t>span{display:inline-block;will-change:transform}
.ti2-t em{font-style:normal;color:var(--orange)}
.ti2-pill{position:relative;display:inline-block;width:1.7em;height:.7em;border-radius:999px;overflow:hidden;flex:none;background:var(--lav);transform-origin:left center;margin-bottom:.04em}
.ti2-pill img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 22%;opacity:0;transform:scale(1.18);transition:opacity .7s ease,transform 1.6s cubic-bezier(.2,.8,.2,1)}
.ti2-pill img.on{opacity:1;transform:scale(1)}
.ti2-row{display:flex;justify-content:space-between;align-items:flex-end;gap:1.6rem 3rem;flex-wrap:wrap;margin-top:clamp(1.4rem,3vw,2.4rem);padding-top:clamp(1.1rem,2vw,1.6rem);border-top:2px solid var(--ink)}
.ti2-st{display:flex;gap:clamp(1.4rem,4vw,3.6rem);margin:0;flex-wrap:wrap}
.ti2-st>div{display:flex;flex-direction:column-reverse;gap:.2rem}
.ti2-st dd{margin:0;font-family:var(--display);font-weight:700;font-size:clamp(2.2rem,4.4vw,4rem);line-height:.95;letter-spacing:-.03em;color:var(--orange);font-variant-numeric:tabular-nums}
.ti2-st dt{font-weight:500;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase}
@media(max-width:700px){.ti2-h{font-size:13vw}.ti2-l2 .ti2-pill{display:none}.ti2-st{width:100%;justify-content:space-between;gap:1rem}.ti2-st dd{font-size:clamp(1.7rem,8vw,2.4rem)}.ti2-st dt{font-size:.6rem;letter-spacing:.08em}}

.ac-grid{perspective:1500px;perspective-origin:50% 40%}
.ac-c{transform-style:preserve-3d;will-change:transform;transition:box-shadow .4s,background .3s}
.ac-c:hover{box-shadow:0 36px 60px -34px rgba(31,26,23,.5)}
.ac-c h3{transition:color .3s}
.ac-c:hover h3{color:#C2410C}
.ac-main:hover h3{color:var(--ink)}

.vb-s{margin:0 clamp(.6rem,1.4vw,1.2rem) clamp(.6rem,1.4vw,1.2rem);border-radius:clamp(26px,3.4vw,48px);padding-block:clamp(1.8rem,3.2vw,2.8rem)}
.vb-s .vb-h{display:flex;align-items:baseline;gap:.6rem 2rem;flex-wrap:wrap;margin-bottom:1.2rem}
.vb-s .vb-h .eyebrow{margin:0}
.vb-s h2{font-size:clamp(1.6rem,3.2vw,3rem);max-width:none}
.vb-s .vb-v{height:clamp(170px,24vh,230px)}
.ac-grid{position:relative}

/* ===== v168 : Team — photo de groupe dans le bloc noir, fondateurs, équipe sans catégories ===== */
.tt-man-top{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:clamp(1.6rem,4vw,4.5rem);align-items:center;margin-bottom:clamp(2rem,4.4vw,4rem)}
.tt-man-top .tt-stmt{font-size:clamp(2rem,4.7vw,5.6rem);margin:1.2rem 0 0;max-width:15ch}
.tt-man-ph{margin:0;position:relative;aspect-ratio:3/4;border-radius:clamp(20px,2.4vw,34px);overflow:hidden;transform:rotate(2.2deg);box-shadow:0 40px 70px -34px rgba(0,0,0,.7);transition:transform .8s cubic-bezier(.2,.8,.2,1);background:#2a2420}
.tt-man-ph:hover{transform:rotate(0deg) scale(1.02)}
.tt-man-ph img{position:absolute;left:0;top:-4%;width:100%;height:108%;object-fit:cover;object-position:50% 40%;display:block}
.tt-fnd-h{font-size:clamp(2.3rem,5.6vw,6.2rem);line-height:.92;margin:1rem 0 0;max-width:12ch}
.tt-eq-p{max-width:24rem;font-weight:400;font-size:1.04rem}
.tt-mi .tt-role{margin-top:.5rem}
@media(max-width:900px){.tt-man-top{grid-template-columns:1fr}.tt-man-ph{max-width:420px;justify-self:center;width:88%}}
.fm-top{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:1.6rem 4rem}
.fm-h{font-size:clamp(3rem,8.6vw,9rem)}
@media(max-width:900px){.fm-top{grid-template-columns:1fr}.fm-h{font-size:clamp(3rem,15vw,6rem)}}
.tt-man-ph{margin-right:clamp(.4rem,1.2vw,1.2rem)}

/* ===== v173 : Nos formules — les cartes arrivent une par une, le fond explose en couleur ===== */
.fm{position:relative;overflow:hidden;isolation:isolate;--fmfg:#1F1A17;--fmb:#FF632E;--fmbt:#1F1A17}
.fm-bg{position:absolute;inset:0;z-index:0;pointer-events:none}
.fm-bg i{position:absolute;inset:0;display:block;clip-path:circle(0% at 50% 50%);will-change:clip-path}
.fm-bg .b1{background:#C4C0FF}
.fm-bg .b2{background:#FF632E}
.fm-bg .b3{background:#1F1A17}
.fm-bg .b4{background:#FDF8ED}
.fm-bg .r{inset:auto;left:0;top:0;width:140px;height:140px;margin:-70px 0 0 -70px;border-radius:50%;border:4px solid rgba(255,255,255,.75);clip-path:none;opacity:0;transform:scale(0)}
.fm-w{position:relative;z-index:1}
.fm-eye,.fm-h,.fm-top>p{color:var(--fmfg)}
.fm-eye b{background:var(--fmb);color:var(--fmbt)}
.fm-c{box-shadow:0 24px 50px -32px rgba(31,26,23,.5)}
@media(min-width:1101px){.fm{min-height:100svh;display:flex;align-items:center;padding-block:clamp(5.5rem,10vh,7rem) clamp(1.5rem,4vh,3rem)}.fm-w{width:100%}.fm-h{font-size:clamp(3rem,min(8.6vw,17vh),9rem)}.fm-top{margin-bottom:clamp(1.4rem,3.4vh,3rem)}}

/* ===== v174 : pastilles à icône animée + résultats en bloc orange avec icônes flottantes ===== */
.ki{width:1.05em;height:1.05em;flex:none;color:var(--orange);display:inline-block;vertical-align:-.16em;margin-right:.4rem;overflow:visible;transform-origin:50% 55%}
.cl-k span,.tz-k span{display:inline-flex;align-items:center}
.ki-eye{animation:kiBlink 4.6s ease-in-out infinite}
.ki-heart{animation:kiBeat 1.7s ease-in-out infinite}
.ki-users{animation:kiBob 2.4s ease-in-out infinite}
.ki-trophy{animation:kiWob 2.6s ease-in-out infinite}
.ki-film,.ki-spark{animation:kiSpin 5s linear infinite}
.ki-chat{animation:kiBob 2.2s ease-in-out infinite}
@keyframes kiBlink{0%,86%,100%{transform:scaleY(1)}91%{transform:scaleY(.08)}}
@keyframes kiBeat{0%,100%{transform:scale(1)}18%{transform:scale(1.28)}34%{transform:scale(1)}50%{transform:scale(1.18)}66%{transform:scale(1)}}
@keyframes kiBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@keyframes kiWob{0%,100%{transform:rotate(-9deg)}50%{transform:rotate(9deg)}}
@keyframes kiSpin{0%{transform:rotate(0) scale(1)}50%{transform:rotate(180deg) scale(1.2)}100%{transform:rotate(360deg) scale(1)}}
.cl-c a:hover .ki,.tz-c:hover .ki{animation-duration:.9s}
/* résultats */
.cs-kpi{position:relative;background:var(--orange)!important;color:var(--ink)!important}
.cs-kpi .wrap{position:relative;z-index:1}
.cs-kpi .eyebrow{color:var(--ink)}
.cs-kpis{gap:clamp(1.2rem,4vw,4rem)}
.cs-kpis .bm-st{border-top:0;padding-top:0;position:relative}
.cs-ic{display:grid;place-items:center;width:clamp(2.6rem,3.6vw,3.4rem);height:clamp(2.6rem,3.6vw,3.4rem);border-radius:50%;background:var(--ink);color:var(--cream);margin-bottom:clamp(.4rem,1vw,.8rem);animation:csPulse 3.2s ease-in-out infinite}
.cs-ic svg{width:48%;height:48%}
.cs-kpis .bm-st:nth-child(2) .cs-ic{animation-delay:-1s}
.cs-kpis .bm-st:nth-child(3) .cs-ic{animation-delay:-2s}
@keyframes csPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.1) rotate(-6deg)}}
.cs-kpis .bm-st b{color:var(--ink);font-size:clamp(3rem,5.6vw,6.6rem);line-height:.9;letter-spacing:-.045em}
.cs-kpis .bm-st b small{font-size:1em;color:inherit;margin-left:.06em}
.cs-kpis .bm-st>span{font-size:.78rem;font-weight:700;letter-spacing:.14em;opacity:1;margin-top:.7rem}
.cs-note{color:var(--ink);font-weight:600;max-width:46rem}
.cs-fx{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden}
.cs-fx i{position:absolute;left:var(--x);top:var(--y);width:var(--s);height:var(--s);opacity:0;will-change:transform,opacity;animation:csFly var(--d) var(--dl) ease-in-out infinite}
.cs-fx svg{display:block;width:100%;height:100%}
@keyframes csFly{0%{opacity:0;transform:translate(0,0) scale(.3) rotate(0)}14%{opacity:1;transform:translate(calc(var(--dx)*.15),calc(var(--dy)*.12)) scale(1) rotate(calc(var(--r)*.15))}80%{opacity:1}100%{opacity:0;transform:translate(var(--dx),var(--dy)) scale(.85) rotate(var(--r))}}
@media(prefers-reduced-motion:reduce){.ki,.cs-ic,.cs-fx i{animation:none}.cs-fx i{opacity:.7}}
@media(max-width:700px){.cs-fx i:nth-child(n+16){display:none}}

/* ===== v175 : Notre accompagnement — même explosion de couleur que les formules, autre palette ===== */
.fm,.acp{position:relative;overflow:hidden;isolation:isolate;--fme:#C2410C}
.acp{--fmfg:#1F1A17;--fme:#FF632E}
.acp .fm-bg .b1{background:#1F1A17}
.acp .fm-bg .b2{background:#FF632E}
.acp .fm-bg .b3{background:#C4C0FF}
.acp .fm-bg .b4{background:#FDF8ED}
.acp .ac-h h2,.acp .ac-h p{color:var(--fmfg)}
.acp .ac-h .eyebrow{color:var(--fme)}
.fm-eye{color:var(--fme)}
.ac-c{box-shadow:0 24px 50px -32px rgba(31,26,23,.5)}
@media(min-width:1101px){.acp{min-height:100svh;display:flex;align-items:center;padding-block:clamp(5.5rem,10vh,7rem) clamp(1.5rem,4vh,3rem)}.acp .fm-w{width:100%}.acp h2{font-size:clamp(2.4rem,min(9.2vw,17vh),7rem)}.acp .ac-grid{margin-top:clamp(1.2rem,3vh,3rem)}.acp .ac-c{min-height:0}}

/* ===== v176 : bloc final noir + pied de page = un seul bandeau ===== */
.tm-cta:has(+.foot),main:has(>.tm-cta:last-child){--cta-join:1}
.tm-cta:has(+.foot){margin-bottom:0!important;border-radius:var(--br) var(--br) 0 0!important}
.tm-cta+.foot,main:has(>.tm-cta:last-child)+.foot{margin-top:0!important;border-radius:0 0 var(--br) var(--br)!important;box-shadow:inset 0 1px 0 rgba(253,248,237,.16)}
main>.tm-cta:last-child{margin-bottom:0!important;border-radius:var(--br) var(--br) 0 0!important}
.tm-cta-c{background:var(--ink)!important;color:var(--cream)!important}
.tm-cta-c .eyebrow{color:var(--lav)!important}
.tm-cta-c .fi-soc a{border-color:var(--cream)!important;color:var(--cream)!important}
.tm-cta-c .fi-soc a svg{color:var(--cream)!important}
.tm-cta-c .fi-soc a:hover{background:var(--orange)!important;border-color:var(--orange)!important;color:var(--ink)!important}
.tm-cta-c .fi-soc a:hover svg{color:var(--ink)!important}

/* ===== v178 : équilibre texte / gros titre dans les en-têtes de section ===== */
.fm-top>p,.ac-h p{font-size:clamp(1.15rem,1.75vw,2rem)!important;line-height:1.3!important;font-weight:500!important;max-width:min(30rem,34vw)!important;margin-bottom:.5rem!important;text-wrap:balance}
.fm-eye,.ac-h .eyebrow{font-size:clamp(.82rem,1vw,1.05rem)!important}
.fm-eye b{width:2.4rem;height:2.4rem;font-size:1.2rem}
@media(max-width:900px){.fm-top>p,.ac-h p{max-width:34rem!important;font-size:1.1rem!important}}
.ac-h p{max-width:min(46rem,62vw)!important}
.fm-top>p{max-width:min(34rem,38vw)!important}
@media(max-width:900px){.fm-top>p,.ac-h p{max-width:34rem!important}}

/* v180 — fondateurs : les deux portraits tiennent dans l'écran sans scroller */
@media(min-width:901px){
  .tt-fnd{padding:clamp(3rem,6vh,4.5rem) 0 clamp(2rem,4vw,4rem)}
  .tt-fnd-h{font-size:clamp(2.2rem,4.2vw,4.6rem)!important;line-height:.94;max-width:none;margin-top:.5rem}
  .tt-fl{margin-top:clamp(1rem,2.4vh,1.8rem);gap:clamp(1.2rem,2.4vw,2.4rem)}
  .tt-f:nth-child(2){margin-top:0}
  .tt-fp{aspect-ratio:auto;height:clamp(240px,calc(100svh - 17.5rem),560px)}
  .tt-fp img{object-position:50% 16%}
  .tt-ft{padding-top:1.1rem}
  .tt-ft h3{font-size:clamp(2.6rem,5vw,5.4rem)}
}

/* ===== v47 : page campagne repensée (hero fiche + téléphone + stickers, résumé en lignes, frise) ===== */
.cs2.fi-hero{padding:clamp(6rem,11vh,7.4rem) 0 clamp(2rem,4vw,3.4rem);min-height:100svh;display:flex;align-items:center}
.cs2>.wrap{flex:1 1 auto}
.cs2 .cs-bc{margin-bottom:clamp(.8rem,2vh,1.4rem)}
.cs2-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:clamp(2rem,5vw,6rem);align-items:center}
.cs2 .fi-name{font-size:clamp(3rem,min(7.6vw,15svh),8.4rem);margin-top:.9rem}
.cs2-lead{font-weight:500;font-size:clamp(1.05rem,1.45vw,1.4rem);line-height:1.38;max-width:31rem;margin:1.3rem 0 0;text-wrap:balance}
.cs2-id{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin:clamp(1.3rem,3vh,2rem) 0 0;max-width:37rem;padding:0}
.cs2-id>div{display:flex;align-items:center;gap:.8rem;padding:.8rem 1rem;border-radius:18px;background:#fff;border:1.5px solid var(--ink);min-width:0}
.cs2-id svg{width:22px;height:22px;flex:none;color:var(--orange)}
.cs2-id span{min-width:0;display:block}
.cs2-id dt{font-weight:500;font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;opacity:.65}
.cs2-id dd{margin:.15rem 0 0;font-family:var(--display);font-weight:700;font-size:clamp(.92rem,1.15vw,1.12rem);line-height:1.08;text-transform:uppercase;letter-spacing:-.005em}
.cs2 .fi-cta{margin-top:clamp(1.2rem,3vh,1.8rem)}
.cs2-r{position:relative;display:grid;place-items:center;min-height:0}
.cs2-disc{position:absolute;width:min(96%,36rem);aspect-ratio:1;border-radius:50%;background:var(--lav)}
.cs2 .cs2-phone.fi-photo{position:relative;top:auto;order:0;z-index:2;aspect-ratio:9/16;height:min(74svh,46rem);width:auto;border-radius:clamp(26px,3vw,42px);border:6px solid var(--ink);box-shadow:0 44px 70px -36px rgba(31,26,23,.6);transform:rotate(2.2deg)}
.cs2-stk{list-style:none;margin:0;padding:0}
.cs2-s{position:absolute;z-index:3;display:flex;align-items:center;gap:.65rem;padding:.5rem 1.15rem .5rem .5rem;border-radius:999px;background:var(--orange);color:var(--ink);box-shadow:0 16px 30px -14px rgba(31,26,23,.55);animation:cs2f 5.4s ease-in-out infinite}
.cs2-s i{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--ink);color:var(--cream);flex:none}
.cs2-s i svg{width:18px;height:18px}
.cs2-s b{display:flex;flex-direction:column;font-family:var(--display);font-weight:700;font-size:clamp(1.25rem,1.9vw,1.9rem);line-height:.95;letter-spacing:-.02em}
.cs2-s b small{font-family:var(--body);font-weight:600;font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;margin-top:.2rem}
.cs2-s.s1{left:-2%;top:12%;transform:rotate(-5deg)}
.cs2-s.s2{right:-2%;top:40%;background:#fff;border:1.5px solid var(--ink);animation-delay:-1.8s;transform:rotate(4deg)}
.cs2-s.s3{left:3%;bottom:10%;background:var(--ink);color:var(--cream);animation-delay:-3.4s;transform:rotate(-3deg)}
.cs2-s.s3 i{background:var(--lav);color:var(--ink)}
@keyframes cs2f{0%,100%{translate:0 0}50%{translate:0 -10px}}
@media(prefers-reduced-motion:reduce){.cs2-s{animation:none}}
/* résumé en lignes */
.cs2-bref{padding-block:clamp(3.5rem,7vw,6.5rem)}
.cs2-bw{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(2rem,5vw,6rem);align-items:start}
.cs2-bh{position:sticky;top:6.5rem}
.cs2-bh h2{font-size:clamp(2.4rem,4.6vw,5rem);line-height:.92;letter-spacing:-.03em;margin-top:1rem;max-width:8em}
.cs2-rows{list-style:none;margin:0;padding:0}
.cs2-row{display:grid;grid-template-columns:3.4rem minmax(0,1fr);column-gap:1rem;row-gap:.3rem;padding:clamp(1.1rem,2vw,1.6rem) 0;border-top:2px solid var(--ink)}
.cs2-row:last-child{border-bottom:2px solid var(--ink)}
.cs2-n{grid-row:1/3;font-family:var(--display);font-weight:700;font-size:1.1rem;color:var(--orange);padding-top:.15rem}
.cs2-k{font-weight:600;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;opacity:.7}
.cs2-row p{margin:0;font-family:var(--display);font-weight:700;font-size:clamp(1.25rem,2.1vw,2rem);line-height:1.08;letter-spacing:-.012em;text-wrap:balance}
.cs2-row.hot{background:var(--orange);border:0;border-radius:clamp(18px,2vw,28px);padding:clamp(1.2rem,2.2vw,1.9rem);margin:.9rem 0}
.cs2-row.hot .cs2-n{color:var(--ink)}
.cs2-row.hot p{font-size:clamp(2.4rem,5vw,5rem);line-height:.92;letter-spacing:-.035em}
.cs2-row.hot+.cs2-row{border-top:0}
/* dispositif : frise */
.cs-lev .bm-steps.cs-3{column-gap:clamp(1.2rem,3.4vw,3.4rem)}
.cs-lev .bm-steps li{background:transparent!important;border-radius:0!important;padding:clamp(1.6rem,2.4vw,2.2rem) 0 0!important;border-top:3px solid var(--ink);position:relative;box-shadow:none!important}
.cs-lev .bm-steps li::before{content:"";position:absolute;top:-12px;left:0;width:21px;height:21px;border-radius:50%;background:var(--cream);border:3px solid var(--ink)}
.cs-lev .bm-steps li .cs-lv{display:inline-block;padding:.28rem .75rem;border-radius:999px;background:var(--ink);color:var(--cream);font-weight:600;font-size:.66rem;letter-spacing:.14em;text-transform:uppercase}
@media(max-width:900px){
  .cs2.fi-hero{min-height:0;display:block;padding-top:5.6rem}
  .cs2-grid{grid-template-columns:1fr;gap:1.6rem}
  .cs2-r{order:-1;padding:.5rem 0 1rem}
  .cs2 .cs2-phone.fi-photo{height:min(58svh,30rem)}
  .cs2-s.s1{left:0}.cs2-s.s2{right:0}.cs2-s.s3{left:6%}
  .cs2-bw{grid-template-columns:1fr}
  .cs2-bh{position:static}
}
@media(max-width:520px){.cs2-id{grid-template-columns:1fr 1fr}.cs2-id>div{padding:.65rem .75rem;gap:.55rem}.cs2-row{grid-template-columns:2.4rem minmax(0,1fr)}}
.pg-cs main .wrap{padding-left:max(var(--gl),clamp(1.3rem,4vw,4.2rem));padding-right:max(var(--gr),clamp(1.3rem,4vw,4.2rem))}
.cs2 .fi-name{font-size:clamp(2.6rem,min(6.2vw,12.5svh),7.6rem)}
/* v48 : icônes qui explosent (pages campagne) */
.cs-fxl{position:fixed;inset:0;z-index:150;pointer-events:none;overflow:hidden}
.cs-fxi{position:absolute;left:0;top:0;display:flex;align-items:center;justify-content:center;gap:.35rem;width:38px;height:38px;border-radius:50%;box-shadow:0 10px 22px -10px rgba(31,26,23,.55);border:1.5px solid rgba(31,26,23,.9);will-change:transform,opacity}
.cs-fxi svg{width:19px;height:19px;display:block;color:inherit}
.cs-fxi.pill{width:auto;padding:0 .75rem 0 .55rem;height:34px;border-radius:999px}
.cs-fxi.pill b{font-family:var(--display);font-weight:700;font-size:.9rem;letter-spacing:-.01em}
.cs2-s,.cs2 .cs2-phone{cursor:pointer}
.cs2-s{transition:filter .25s}
.cs2-s:hover{filter:brightness(1.04)}
.cs-kpis .bm-st{cursor:pointer}
/* v49 : logo de la marque + réseaux dans la fiche d'identité */
.cs2 .sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.cs2-id .cs2-c,.cs2-id .cs2-p{padding-block:.7rem}
.cs2-lg{display:flex;align-items:center;gap:.55rem;margin-top:.25rem}
.cs2-lg img{display:block;height:clamp(26px,2.5vw,36px);width:auto;max-width:9rem;object-fit:contain}
.cs2-lg i{font-style:normal;font-weight:700;opacity:.5}
.cs2-wm{font-family:var(--display);font-weight:700;font-size:clamp(1rem,1.3vw,1.25rem);line-height:1.05;text-transform:uppercase;letter-spacing:-.01em}
.cs2-pfs{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.3rem!important}
.cs2-pf{display:grid;place-items:center;width:clamp(30px,2.6vw,36px);aspect-ratio:1;border-radius:50%;background:var(--ink);color:var(--cream);transition:transform .3s cubic-bezier(.2,.8,.2,1),background .25s,color .25s}
.cs2-pf svg{width:55%;height:55%;display:block}
.cs2-pf:hover{transform:translateY(-3px) rotate(-6deg);background:var(--orange);color:var(--ink)}
.cs2-id .cs2-lg{display:flex;flex-wrap:nowrap}
.cs2-id .cs2-lg img{flex:none;max-width:6.4rem}
.cs2-id .cs2-pf{display:grid}
.cs2-id .cs2-pf svg{color:inherit;width:55%;height:55%}
.cs2-id .cs2-pfs{display:flex}

/* ===== v198 : pages talent « wow » ===== */
.fi-prog{position:fixed;left:0;right:0;top:0;height:4px;z-index:9990;pointer-events:none}
.fi-prog i{display:block;height:100%;background:var(--orange);transform:scaleX(0);transform-origin:0 50%}
/* hero */
.fi-hero.fi-t{position:relative;overflow:clip;padding:clamp(6.4rem,11vh,8rem) 0 clamp(2.4rem,5vw,4.4rem)}
.fi-t .fi-deco i{position:absolute;display:block;pointer-events:none}
.fi-t .fi-deco .a{width:min(46vw,640px);aspect-ratio:1;border-radius:50%;background:var(--lav);opacity:.38;right:-12vw;top:-14vw;filter:blur(2px)}
.fi-t .fi-deco .b{width:min(18vw,240px);aspect-ratio:1;left:-5vw;bottom:8%;background:var(--orange);opacity:.14;border-radius:34% 66% 58% 42%/46% 38% 62% 54%}
.fi-hero.fi-t .wrap{position:relative;z-index:1}
.fi-t .fi-grid{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr);grid-template-areas:"head pw" "body pw";column-gap:clamp(1.5rem,4vw,5rem);row-gap:0;align-items:start}
.fi-t .fi-head{grid-area:head;align-self:end;position:relative;z-index:3}
.fi-t .fi-body{grid-area:body;position:relative;z-index:3}
.fi-pw{grid-area:pw;position:relative;width:100%;max-width:560px;margin-left:auto;aspect-ratio:4/5.15;align-self:center}
.fi-t .fi-role{display:inline-flex;align-items:center;gap:.6rem;padding:.5rem 1rem .5rem .8rem;border-radius:999px;background:var(--ink);color:var(--cream);font-weight:500;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;margin:0 0 clamp(1rem,2vw,1.6rem)}
.fi-t .fi-role .dot{width:.6rem;height:.6rem;border-radius:50%;background:var(--orange);box-shadow:0 0 0 0 rgba(255,99,46,.7);animation:fiPulse 2s infinite}
@keyframes fiPulse{70%{box-shadow:0 0 0 .7rem rgba(255,99,46,0)}100%{box-shadow:0 0 0 0 rgba(255,99,46,0)}}
.fi-t .fi-name{font-size:clamp(3.6rem,9.4vw,10.4rem);line-height:.86;letter-spacing:-.04em;margin:0;text-transform:uppercase}
.fi-t .fi-name .ln{display:block;overflow:hidden;padding:.04em .06em .1em 0;margin-bottom:-.06em;white-space:nowrap}
.fi-t .fi-name .ch{display:inline-block;will-change:transform;transition:translate .5s cubic-bezier(.2,.8,.2,1),rotate .5s cubic-bezier(.2,.8,.2,1)}
.fi-t .fi-name .o{color:var(--orange)}
.fi-t .fi-name .ch:hover{translate:0 -.06em;rotate:-4deg}
.fi-t .fi-bio p{max-width:35rem;font-weight:400;font-size:clamp(.98rem,1.1vw,1.1rem);line-height:1.55;margin-top:1rem}
.fi-t .fi-bio p:first-child{margin-top:clamp(.4rem,1vw,.8rem);font-weight:500;font-size:clamp(1.1rem,1.4vw,1.35rem);line-height:1.4}
.fi-t .fi-cta{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.6rem}
.fi-hero.fi-t .fi-soc{margin-top:1.2rem}
.fi-hero.fi-t .fi-soc a{border:0;background:var(--cream);box-shadow:0 0 0 2px var(--ink) inset}
.fi-hero.fi-t .fi-soc a:hover{box-shadow:0 0 0 2px var(--ink) inset}
.fi-hero.fi-t .fi-soc a svg{transition:transform .5s cubic-bezier(.2,.8,.2,1),background .3s,color .3s}
.fi-hero.fi-t .fi-soc a:hover svg{transform:rotate(360deg)}
/* photo en arche */
.fi-t .fi-photo{position:absolute!important;top:0!important;left:6%;right:6%;bottom:0;aspect-ratio:auto!important;order:0!important;border-radius:999px 999px clamp(22px,2.6vw,38px) clamp(22px,2.6vw,38px);overflow:hidden;background:var(--ink);z-index:2;box-shadow:0 40px 70px -40px rgba(31,26,23,.6)}
.fi-t .fi-photo img{position:absolute;inset:-6% 0 0 0;width:100%;height:112%;object-fit:cover;object-position:50% 16%;will-change:transform}
.fi-disc{position:absolute;z-index:0;width:84%;aspect-ratio:1;border-radius:50%;background:var(--orange);right:-12%;top:22%}
.fi-arc{position:absolute;z-index:1;left:-3%;right:15%;top:5%;bottom:-3%;border-radius:999px 999px 30px 30px;background:var(--lav);transform:rotate(-5deg)}
.fi-st{position:absolute;z-index:4;will-change:transform}
.fi-st-i{display:flex;align-items:center;gap:.7rem;padding:.55rem 1.1rem .55rem .55rem;border-radius:999px;background:var(--cream);color:var(--ink);box-shadow:0 18px 34px -16px rgba(31,26,23,.55);animation:fiFloat 5s ease-in-out infinite;cursor:default}
.fi-st .ic{display:grid;place-items:center;width:2.6rem;height:2.6rem;border-radius:50%;background:var(--orange);color:var(--ink);flex:none}
.fi-st .ic svg{width:1.3rem;height:1.3rem}
.fi-st .tx{display:flex;flex-direction:column;line-height:1}
.fi-st b{font-family:var(--display);font-weight:700;font-size:clamp(1.3rem,1.9vw,1.8rem);letter-spacing:-.02em}
.fi-st small{font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;font-weight:500;margin-top:.25rem;opacity:.75}
.fi-st1{left:-8%;top:13%}
.fi-st2{right:-7%;top:46%}
.fi-st2 .fi-st-i{background:var(--ink);color:var(--cream);animation-delay:-1.7s}
.fi-st2 .ic{background:var(--lav)}
.fi-st3{left:-2%;bottom:11%}
.fi-st3 .fi-st-i{background:var(--lav);animation-delay:-3.2s}
.fi-st3 .ic{background:var(--ink);color:var(--lav)}
@keyframes fiFloat{50%{transform:translateY(-10px) rotate(1.5deg)}}
.fi-sp{position:absolute;z-index:4;right:-4%;bottom:-5%;width:clamp(96px,10vw,140px);aspect-ratio:1;border-radius:50%;background:var(--orange);color:var(--ink);display:grid;place-items:center;box-shadow:0 16px 30px -14px rgba(31,26,23,.5)}
.fi-spin{position:absolute;inset:0;width:100%;height:100%;animation:fiSpin 16s linear infinite}
.fi-spin text{font-family:var(--display);font-weight:700;font-size:12.4px;letter-spacing:.09em;text-transform:uppercase;fill:currentColor}
.fi-sp .ar{width:34%;height:34%}
@keyframes fiSpin{to{transform:rotate(360deg)}}
/* bandeau défilant */
.fi-band{margin:var(--bm);border-radius:var(--br);background:var(--ink);color:var(--cream);overflow:clip;padding:clamp(.8rem,1.6vw,1.4rem) 0}
.fi-band .fi-mq{margin:0}
.fi-band .fi-mq-t span{font-size:clamp(2.6rem,7vw,6.6rem);opacity:1}
.fi-band .fi-mq-t span:nth-child(even){opacity:1;color:var(--orange)}
.fi-band .fi-mq-t span::after{content:"✦";width:auto;height:auto;border-radius:0;background:none;color:var(--lav);font-size:.5em;margin:0 .7em}
.fi-band .fi-mq-t span:nth-child(even)::after{color:var(--cream)}
/* univers */
.fi-un{padding-block:clamp(3.4rem,7vw,6.5rem)}
.fi-un .eyebrow{display:block}
.fi-un h2{font-size:clamp(2.4rem,5.4vw,5.4rem);line-height:.92;letter-spacing:-.03em;margin:1rem 0 clamp(1.6rem,3.4vw,3rem)}
.fi-us{list-style:none;margin:0;padding:0;display:grid;gap:clamp(.7rem,1.4vw,1.2rem);grid-template-columns:repeat(4,minmax(0,1fr))}
.fi-us3{grid-template-columns:repeat(3,minmax(0,1fr))}
.fi-u{position:relative;min-height:clamp(15rem,24vw,21rem);padding:clamp(1.2rem,2vw,1.8rem);border-radius:clamp(20px,2.4vw,34px);display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;transition:translate .5s cubic-bezier(.2,.8,.2,1),rotate .5s cubic-bezier(.2,.8,.2,1)}
.fi-u .n{font-family:var(--display);font-weight:700;font-size:clamp(3.4rem,6vw,6rem);line-height:.8;letter-spacing:-.04em;transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.fi-u p{margin:0;font-weight:500;font-size:clamp(1rem,1.3vw,1.28rem);line-height:1.28;position:relative;z-index:1}
.fi-u1{background:var(--lav)}.fi-u1 .n{color:var(--orange)}
.fi-u2{background:var(--orange)}.fi-u2 .n{color:var(--cream)}
.fi-u3{background:var(--ink);color:var(--cream)}.fi-u3 .n{color:var(--lav)}
.fi-u4{background:#fff}.fi-u4 .n{color:var(--orange)}
.fi-u:hover{translate:0 -10px;rotate:-1.4deg}
.fi-u:nth-child(even):hover{translate:0 -10px;rotate:1.4deg}
.fi-u:hover .n{transform:scale(1.18) translateX(.12em);transform-origin:0 100%}
/* pellicule vidéo */
.fi-vid{position:relative;margin:var(--bm);border-radius:var(--br);background:var(--lav);overflow:clip;padding:clamp(2.6rem,6vw,5.4rem) 0 clamp(2.4rem,5vw,4.4rem)}
.fi-vid-o{position:absolute;display:block;width:min(52vw,720px);aspect-ratio:1;border-radius:50%;background:var(--orange);opacity:.9;left:-16vw;bottom:-26vw;pointer-events:none}
.fi-vid-w{position:relative}
.fi-vid-h{align-items:flex-end}
.fi-vid-nav{display:flex;gap:.6rem}
.fi-nb{width:3.4rem;height:3.4rem;border-radius:50%;border:0;background:var(--ink);color:var(--cream);display:grid;place-items:center;cursor:pointer;transition:transform .3s cubic-bezier(.2,.8,.2,1),background .25s,color .25s}
.fi-nb svg{width:22px;height:22px}
.fi-nb:hover{background:var(--orange);color:var(--ink);transform:scale(1.1) rotate(-6deg)}
.fi-rail{list-style:none;margin:0;padding:clamp(1.8rem,3vw,2.6rem) max(var(--gl),calc((100vw - 1480px)/2 + clamp(1.3rem,4vw,4.2rem))) clamp(1.8rem,3vw,2.6rem);display:flex;gap:clamp(.9rem,1.6vw,1.6rem);overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;cursor:grab;overscroll-behavior-x:contain;scroll-padding-inline:var(--gl)}
.fi-rail::-webkit-scrollbar{display:none}
.fi-rail::before,.fi-rail::after{content:"";margin:auto}
.fi-rail.drag{cursor:grabbing;scroll-snap-type:none}
.fi-rail.drag .fi-c{pointer-events:none}
.fi-c{position:relative;flex:0 0 clamp(190px,19vw,282px);aspect-ratio:9/16;border-radius:clamp(18px,2.2vw,32px);overflow:hidden;background:var(--ink);scroll-snap-align:center;box-shadow:0 34px 50px -30px rgba(31,26,23,.75);translate:0 var(--ty,0);rotate:var(--r,0deg);transition:translate .6s cubic-bezier(.2,.8,.2,1),rotate .6s cubic-bezier(.2,.8,.2,1),scale .6s cubic-bezier(.2,.8,.2,1),box-shadow .6s;isolation:isolate}
.fi-c:nth-child(4n+1){--ty:1.6rem;--r:-2.4deg}
.fi-c:nth-child(4n+2){--ty:-.4rem;--r:1.6deg}
.fi-c:nth-child(4n+3){--ty:2.2rem;--r:2.4deg}
.fi-c:nth-child(4n+4){--ty:0rem;--r:-1.6deg}
.fi-c:hover{translate:0 -.9rem;rotate:0deg;scale:1.04;box-shadow:0 50px 60px -32px rgba(31,26,23,.85)}
.fi-c video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;z-index:0}
.fi-c-i{position:absolute;right:.9rem;bottom:.8rem;z-index:3;font-family:var(--display);font-weight:700;font-size:1.9rem;line-height:1;color:var(--cream);text-shadow:0 2px 14px rgba(0,0,0,.45);letter-spacing:-.02em}
.fi-c .fi-v-n{z-index:3}
.fi-rp{height:5px;border-radius:99px;background:rgba(31,26,23,.16);overflow:hidden;margin-top:.4rem}
.fi-rp i{display:block;height:100%;width:100%;background:var(--ink);border-radius:inherit;transform:scaleX(.2);transform-origin:0 50%}
/* chiffres clés */
.fi-stats{position:relative}
.fi-glow{position:absolute;display:block;width:min(60vw,780px);aspect-ratio:1;border-radius:50%;right:-18vw;top:-24vw;background:radial-gradient(circle,rgba(255,99,46,.5),rgba(255,99,46,0) 66%);pointer-events:none}
.fi-stats .wrap{position:relative}
.fi-pl-f{text-align:right}
.fi-pl-f .fi-cnt{display:block}
.fi-gen2{display:flex;align-items:center;gap:clamp(1.2rem,2.4vw,2rem)}
.fi-gen2 svg{width:clamp(110px,11vw,150px);flex:none;transform:rotate(-90deg)}
.fi-gen2 circle{fill:none;stroke-width:5.4}
.fi-gen2 .h{stroke:var(--lav)}
.fi-gen2 .f{stroke:var(--orange);stroke-linecap:butt}
.fi-gl2{display:grid;gap:.7rem;font-size:.95rem}
.fi-gl2 span{display:flex;align-items:center;gap:.6rem}
.fi-gl2 i{width:.8rem;height:.8rem;border-radius:50%;flex:none}
.fi-gl2 .f i{background:var(--orange)}.fi-gl2 .h i{background:var(--lav)}
.fi-gl2 b{font-family:var(--display);font-weight:700;font-size:1.5rem;margin-left:.2rem}
/* réseaux */
.fi-where{padding-block:clamp(3.4rem,7vw,6.5rem) clamp(1rem,3vw,2rem)}
.fi-where .eyebrow{display:block}
.fi-where h2{font-size:clamp(2.4rem,5.4vw,5.4rem);line-height:.92;letter-spacing:-.03em;margin:1rem 0 clamp(1.6rem,3.4vw,3rem)}
.fi-pns{list-style:none;margin:0;padding:0;display:flex;gap:clamp(.7rem,1.4vw,1.2rem);height:clamp(22rem,34vw,30rem)}
.fi-pn{flex:1 1 0;min-width:0;transition:flex-grow .7s cubic-bezier(.2,.8,.2,1)}
.fi-pns:hover .fi-pn{flex-grow:.8}
.fi-pns .fi-pn:hover{flex-grow:1.7}
.fi-pn a{position:relative;display:flex;flex-direction:column;justify-content:flex-end;height:100%;padding:clamp(1.2rem,2vw,1.9rem);border-radius:clamp(22px,2.6vw,38px);overflow:hidden;text-decoration:none;color:var(--ink);isolation:isolate}
.fi-pn.p1 a{background:var(--orange)}
.fi-pn.p2 a{background:var(--ink);color:var(--cream)}
.fi-pn.p3 a{background:var(--lav)}
.fi-pn .bg{position:absolute;z-index:-1;right:-14%;top:-8%;width:78%;height:auto;opacity:.22;transform:rotate(-12deg);transition:transform .9s cubic-bezier(.2,.8,.2,1),opacity .5s}
.fi-pn:hover .bg{transform:rotate(8deg) scale(1.12);opacity:.34}
.fi-pn .ic{position:absolute;left:clamp(1.2rem,2vw,1.9rem);top:clamp(1.2rem,2vw,1.9rem);width:3.6rem;height:3.6rem;border-radius:50%;background:var(--ink);color:var(--cream);display:grid;place-items:center;transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.fi-pn.p2 .ic{background:var(--orange);color:var(--ink)}
.fi-pn .ic svg{width:1.7rem;height:1.7rem}
.fi-pn:hover .ic{transform:rotate(-12deg) scale(1.1)}
.fi-pn .nm{font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:clamp(1.8rem,3.4vw,3.6rem);line-height:.9;letter-spacing:-.03em}
.fi-pn .hd{font-weight:500;font-size:.95rem;margin-top:.5rem;opacity:.85;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fi-pn .fl{font-size:.82rem;margin-top:.9rem;letter-spacing:.04em;opacity:.9}
.fi-pn .fl b{font-family:var(--display);font-weight:700;font-size:1.5rem;letter-spacing:-.02em;margin-right:.2rem}
.fi-pn .go{position:absolute;right:clamp(1.2rem,2vw,1.9rem);bottom:clamp(1.2rem,2vw,1.9rem);width:3rem;height:3rem;border-radius:50%;background:var(--cream);color:var(--ink);display:grid;place-items:center;transition:transform .5s cubic-bezier(.2,.8,.2,1),background .3s}
.fi-pn .go svg{width:1.2rem;height:1.2rem}
.fi-pn:hover .go{transform:rotate(45deg) scale(1.12);background:var(--ink);color:var(--cream)}
.fi-pn.p2:hover .go{background:var(--orange);color:var(--ink)}
/* autres talents */
.fi-oth-row{align-items:start}
.fi-oth-row li:nth-child(even){margin-top:clamp(1rem,2.6vw,2.4rem)}
.fi-oth-row a{border-radius:999px 999px clamp(14px,1.6vw,24px) clamp(14px,1.6vw,24px);transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.fi-oth-row a:hover{transform:translateY(-12px) rotate(-1.5deg)}
.fi-oth-row li:nth-child(even) a:hover{transform:translateY(-12px) rotate(1.5deg)}
.fi-oth-row span{left:50%;right:auto;bottom:.9rem;transform:translateX(-50%);padding:.45rem .9rem;border-radius:99px;background:var(--cream);color:var(--ink);white-space:nowrap;transition:background .3s,color .3s}
.fi-oth-row a:hover span{background:var(--orange)}
@media(max-width:900px){
.fi-t .fi-grid{grid-template-columns:1fr;grid-template-areas:"head" "pw" "body";row-gap:clamp(1.8rem,6vw,2.6rem)}
.fi-pw{max-width:420px;margin:0 auto;width:calc(100% - 3.2rem)}
.fi-t .fi-name{font-size:clamp(3.2rem,16.4vw,6.4rem)}
.fi-st-i{padding:.4rem .8rem .4rem .4rem;gap:.5rem}
.fi-st .ic{width:2.1rem;height:2.1rem}.fi-st .ic svg{width:1.05rem;height:1.05rem}
.fi-st b{font-size:1.15rem}.fi-st small{font-size:.58rem}
.fi-st1{left:-14%;top:9%}.fi-st2{right:-12%;top:46%}.fi-st3{left:-12%;bottom:12%}
.fi-sp{width:84px;right:-8%;bottom:-4%}
.fi-us,.fi-us3{grid-template-columns:repeat(2,minmax(0,1fr))}
.fi-us3 .fi-u:last-child{grid-column:1/-1;min-height:11rem}
.fi-u{min-height:12.5rem}
.fi-c{flex-basis:62vw}
.fi-nb{width:3rem;height:3rem}
.fi-pns{flex-direction:column;height:auto}
.fi-pn a{min-height:11.5rem}
.fi-pn,.fi-pns:hover .fi-pn,.fi-pns .fi-pn:hover{flex-grow:0}
.fi-pn .nm{font-size:2.2rem}
.fi-gen2{flex-wrap:wrap}
.fi-oth-row{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:520px){
.fi-us,.fi-us3{grid-template-columns:1fr}
.fi-us3 .fi-u:last-child{min-height:12.5rem}
.fi-u{min-height:10.5rem}
.fi-hero.fi-t .fi-soc a{width:100%}
}
@media(prefers-reduced-motion:reduce){.fi-st-i,.fi-spin,.fi-role .dot{animation:none}.fi-c,.fi-u,.fi-pn,.fi-oth-row a{transition:none}}

/* v198b */
.fi-hero.fi-t .wrap{padding-left:max(var(--gl),clamp(1.3rem,4vw,4.2rem));padding-right:max(var(--gr),clamp(1.3rem,4vw,4.2rem))}
.fi-t .fi-deco .b{display:none}
.fi-t .fi-name{font-size:clamp(3.4rem,8.2vw,9.2rem)}
.fi-pw{margin-right:clamp(1.2rem,3.4vw,3.6rem)}
.fi-t .fi-act{display:flex;align-items:center;flex-wrap:wrap;gap:.9rem 1rem;margin-top:1.5rem}
.fi-t .fi-act .fi-cta{margin:0}
.fi-t .fi-act .fi-soc{margin:0;gap:.6rem}
.fi-hero.fi-t .fi-soc a{width:3.4rem;height:3.4rem;padding:0;gap:0;justify-content:center;border-radius:50%;box-shadow:0 0 0 2px var(--ink) inset}
.fi-hero.fi-t .fi-soc a span{display:none}
.fi-hero.fi-t .fi-soc a svg{width:3.4rem;height:3.4rem;padding:.95rem;background:none;color:var(--ink)}
.fi-hero.fi-t .fi-soc a:hover{background:var(--ink)}
.fi-hero.fi-t .fi-soc a:hover svg{background:none;color:var(--orange)}
@media(max-width:900px){.fi-pw{margin-right:auto}.fi-hero.fi-t .fi-soc a{width:3.4rem}}
@media(max-width:520px){.fi-hero .fi-soc a{width:3.4rem}}
.fi-t .fi-name{font-size:clamp(3.4rem,8.8vw,9.8rem)}
@media(max-width:900px){.fi-name{font-size:clamp(3.2rem,16.4vw,6.4rem)}}
@media(max-width:900px){
.fi-pn a{min-height:14.2rem}
.fi-pn .ic{width:2.9rem;height:2.9rem}.fi-pn .ic svg{width:1.4rem;height:1.4rem}
.fi-oth-row{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:.8rem;margin-inline:calc(var(--gl) * -1);padding-inline:var(--gl);padding-bottom:1rem;scrollbar-width:none}
.fi-oth-row::-webkit-scrollbar{display:none}
.fi-oth-row li{flex:0 0 44vw;scroll-snap-align:start}
.fi-oth-row li:nth-child(5){grid-column:auto}
.fi-oth-row li:nth-child(5) a{aspect-ratio:4/5}
}
.fi-t .fi-cta .btn,.fi-hero.fi-t .fi-soc a,.fi-nb{transition:background .25s,color .25s,box-shadow .25s}
.fi-hero.fi-t .fi-soc a:hover{transform:none}
.fi-nb:hover{transform:none}

/* v198c : bandeaux plus naturels (formes organiques, vitesse qui suit le scroll) */
.fi-band .fi-mq-t span::after,.fi-band .fi-mq-t span:nth-child(even)::after{content:"";display:block;flex:none;width:.3em;height:.3em;margin:0 .62em;font-size:inherit;background:var(--lav);border-radius:50%;color:inherit;animation:fiBreath 3.4s ease-in-out infinite}
.fi-band .fi-mq-t span:nth-child(3n+2)::after{background:var(--orange);border-radius:50% 0 50% 0;animation:fiTurn 9s linear infinite}
.fi-band .fi-mq-t span:nth-child(3n+3)::after{background:var(--cream);width:.34em;height:.17em;border-radius:.34em .34em 0 0;animation:fiTurn 12s linear infinite reverse}
@keyframes fiBreath{50%{transform:scale(1.35)}}
@keyframes fiTurn{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.fi-band .fi-mq-t span::after{animation:none!important}}

/* v200 : photo détourée, séparateurs food animés */
.fi-t .fi-photo{overflow:visible!important;background:none!important;box-shadow:none!important;border-radius:0!important;left:0!important;right:0!important}
.fi-t .fi-photo img{inset:auto!important;left:0;right:0;bottom:0;top:auto!important;width:100%!important;height:100%!important;object-fit:contain;object-position:50% 100%;filter:drop-shadow(0 26px 24px rgba(31,26,23,.32));transform-origin:50% 100%}
.fi-t .fi-disc{width:92%;left:4%;right:auto;top:15%}
.fi-t .fi-arc{left:8%;right:8%;top:2%;bottom:0;border-radius:999px 999px 28px 28px;transform:rotate(-4deg)}
.fi-band .fi-mq-t span::after{display:none!important;content:none!important}
.fi-band .fi-mq-t span{opacity:1!important}
.fi-band .fi-mq-t span.n{color:var(--cream)}
.fi-band .fi-mq-t span.r{color:var(--orange)}
.fi-band .sp{flex:none;display:block;align-self:center;font-size:clamp(2.6rem,7vw,6.6rem);width:1.05em;height:.95em;margin:0 .32em}
.fi-band .sp svg{width:100%;height:100%;overflow:visible;display:block}
.fi-band .sp *{transform-box:fill-box}
.fi-band .e{transform-origin:50% 70%;animation:fiHop 1.7s cubic-bezier(.3,.1,.3,1) infinite}
.fi-band .e2{animation-delay:.38s}
.fi-band .pn{transform-origin:20% 60%;animation:fiPan 1.7s ease-in-out infinite}
@keyframes fiHop{0%,62%,100%{transform:translateY(0) rotate(0) scale(1,1)}10%{transform:translateY(0) scale(1.08,.88)}30%{transform:translateY(-34%) rotate(16deg) scale(.96,1.06)}46%{transform:translateY(-6%) rotate(0)}54%{transform:translateY(0) scale(1.06,.92)}}
@keyframes fiPan{0%,62%,100%{transform:rotate(0)}12%{transform:rotate(3deg)}30%{transform:rotate(-5deg)}46%{transform:rotate(1deg)}}
.fi-band .steam path{animation:fiSteam 2.4s ease-in-out infinite}
@keyframes fiSteam{0%{opacity:0;transform:translateY(6px)}40%{opacity:.9}100%{opacity:0;transform:translateY(-8px)}}
.fi-band .lv{animation:fiLvl 3.8s ease-in-out infinite}
@keyframes fiLvl{0%{transform:translateY(34px)}62%,90%{transform:translateY(0)}100%{transform:translateY(34px)}}
.fi-band .lid{transform-origin:12% 100%;animation:fiLid 3.8s ease-in-out infinite}
@keyframes fiLid{0%,58%{transform:translateY(-15px) rotate(-14deg)}70%,90%{transform:translateY(0) rotate(0)}100%{transform:translateY(-15px) rotate(-14deg)}}
.fi-band .dr{animation:fiDrop 3.8s ease-in infinite;opacity:0}
.fi-band .d2{animation-delay:.34s}.fi-band .d3{animation-delay:.7s}
@keyframes fiDrop{0%{opacity:0;transform:translateY(0)}4%{opacity:1}16%{opacity:1;transform:translateY(24px)}18%,100%{opacity:0;transform:translateY(24px)}}
.fi-band .lp{transform-origin:30% 100%;animation:fiLp 1.5s ease-in-out infinite}
@keyframes fiLp{0%,100%{transform:translateY(0) rotate(0)}30%{transform:translateY(-6%) rotate(-6deg)}60%{transform:translateY(-2%) rotate(3deg)}}
@media(prefers-reduced-motion:reduce){.fi-band .sp *{animation:none!important}}
.fi-band .sp{width:1.35em;height:1.2em;margin:0 .25em}
.fi-band .sp-pan{width:1.75em}

/* ===== v201 : blog doux et élégant ===== */
.pg-blog main{padding-top:clamp(5.6rem,9vh,6.6rem)}
.bq-sheet{margin:0 var(--bm) var(--bm);border-radius:var(--br);background:#FFFDF8;box-shadow:0 1px 0 rgba(31,26,23,.04),0 40px 90px -60px rgba(31,26,23,.35);padding:clamp(1.4rem,4vw,4rem) clamp(1rem,4vw,4rem) clamp(1.6rem,4vw,4rem);overflow:clip}
.bq-hero{display:flex;flex-direction:column;align-items:center;text-align:center;padding:clamp(1.6rem,4vw,3.6rem) 0 clamp(2rem,4.4vw,3.8rem)}
.bq-pill{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem .95rem;border-radius:999px;background:#fff;box-shadow:0 0 0 1px rgba(31,26,23,.08),0 8px 20px -12px rgba(31,26,23,.3);font-weight:500;font-size:.8rem;letter-spacing:.04em}
.bq-pill i{width:.45rem;height:.45rem;border-radius:50%;background:var(--orange)}
.bq-sheet .bq-h1{font-family:var(--display);font-weight:700;text-transform:none!important;font-size:clamp(2.3rem,5.4vw,5rem);line-height:1.02;letter-spacing:-.035em;margin:clamp(1rem,2vw,1.6rem) 0 0;max-width:15em}
.bq-sheet .bq-h1 .o{color:var(--orange)}
.bq-lead{margin:clamp(.9rem,1.8vw,1.4rem) 0 0;max-width:34rem;font-weight:400;font-size:clamp(1rem,1.25vw,1.15rem);line-height:1.55;color:rgba(31,26,23,.66)}
.bq-im{position:relative;overflow:hidden;border-radius:clamp(16px,1.8vw,24px);background:#ece6db}
.bq-im img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.2s cubic-bezier(.2,.8,.2,1)}
.bq-feat:hover .bq-im img,.bq-card:hover .bq-im img{transform:scale(1.045)}
.bq-chip{display:inline-flex;align-items:center;width:max-content;padding:.32rem .8rem;border-radius:999px;background:rgba(255,253,248,.92);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-weight:500;font-size:.74rem;letter-spacing:.02em;color:var(--ink)}
.bq-chip.lav{background:#EFEDFF}
.bq-feat{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(1rem,3vw,3rem);padding:clamp(.6rem,1vw,.8rem);border-radius:clamp(22px,2.6vw,34px);background:#fff;box-shadow:0 0 0 1px rgba(31,26,23,.06),0 30px 60px -38px rgba(31,26,23,.28);text-decoration:none;color:var(--ink);transition:box-shadow .6s,translate .6s cubic-bezier(.2,.8,.2,1)}
.bq-feat:hover{translate:0 -4px;box-shadow:0 0 0 1px rgba(31,26,23,.08),0 44px 70px -40px rgba(31,26,23,.34)}
.bq-feat .bq-im{min-height:clamp(260px,32vw,470px)}
.bq-feat .bq-tx{display:flex;flex-direction:column;align-items:flex-start;gap:clamp(.9rem,1.4vw,1.2rem);padding:clamp(.6rem,2vw,1.8rem) clamp(.4rem,2vw,1.6rem) clamp(.4rem,1.4vw,1.2rem) 0}
.bq-feat h2{font-family:var(--display);font-weight:700;text-transform:none;font-size:clamp(1.5rem,2.7vw,2.5rem);line-height:1.08;letter-spacing:-.028em;margin:.4rem 0 0}
.bq-feat p{margin:0;font-weight:400;font-size:clamp(.95rem,1.1vw,1.05rem);line-height:1.6;color:rgba(31,26,23,.64);max-width:30rem}
.bq-ft{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem 1.1rem;margin-top:auto;width:100%;padding-top:1.2rem;border-top:1px solid rgba(31,26,23,.08);font-size:.82rem;color:rgba(31,26,23,.62)}
.bq-m{display:inline-flex;align-items:center;gap:.5rem;color:var(--ink);font-weight:500}
.bq-m i{width:.4rem;height:.4rem;border-radius:50%;background:var(--ink)}
.bq-by{margin-left:auto;font-family:var(--display);font-weight:700;font-size:1rem;color:var(--ink);letter-spacing:-.01em}
.bq-go{display:grid;place-items:center;width:2.7rem;height:2.7rem;border-radius:50%;background:var(--ink);color:var(--cream);margin-left:auto;transition:rotate .5s cubic-bezier(.2,.8,.2,1),background .3s}
.bq-by+.bq-go{margin-left:0}
.bq-go svg{width:1rem;height:1rem}
a:hover>.bq-tx .bq-go{rotate:45deg;background:var(--orange);color:var(--ink)}
.bq-row{display:flex;justify-content:space-between;align-items:baseline;margin:clamp(2.4rem,5vw,4.4rem) .4rem clamp(1rem,2vw,1.6rem)}
.bq-row h2{font-family:var(--display);font-weight:700;text-transform:none;font-size:clamp(1.3rem,2vw,1.8rem);letter-spacing:-.02em;margin:0}
.bq-row span{font-size:.85rem;color:rgba(31,26,23,.55)}
.bq-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(.9rem,1.8vw,1.6rem)}
.bq-card{display:flex;flex-direction:column;height:100%;padding:clamp(.55rem,.9vw,.75rem);border-radius:clamp(20px,2.2vw,30px);background:#fff;box-shadow:0 0 0 1px rgba(31,26,23,.06),0 24px 50px -38px rgba(31,26,23,.28);text-decoration:none;color:var(--ink);transition:box-shadow .6s,translate .6s cubic-bezier(.2,.8,.2,1)}
.bq-card:hover{translate:0 -5px;box-shadow:0 0 0 1px rgba(31,26,23,.08),0 40px 60px -40px rgba(31,26,23,.34)}
.bq-card .bq-im{aspect-ratio:16/10}
.bq-card .bq-chip{position:absolute;right:.8rem;top:.8rem;z-index:2}
.bq-card .bq-tx{display:flex;flex-direction:column;flex:1;gap:.7rem;padding:clamp(1rem,1.6vw,1.4rem) clamp(.5rem,1vw,.9rem) clamp(.5rem,.8vw,.7rem)}
.bq-card h3{font-family:var(--display);font-weight:700;text-transform:none;font-size:clamp(1.2rem,1.9vw,1.6rem);line-height:1.12;letter-spacing:-.025em;margin:0}
.bq-card p{margin:0;font-weight:400;font-size:.92rem;line-height:1.55;color:rgba(31,26,23,.62);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.bq-card .bq-ft{padding-top:1rem}
.bq-card .bq-d{margin-left:auto;margin-right:.2rem}
.bq-card .bq-go{margin-left:0;width:2.4rem;height:2.4rem}
@media(max-width:820px){
  .bq-feat{grid-template-columns:minmax(0,1fr)}
  .bq-feat .bq-im{min-height:0;aspect-ratio:4/3}
  .bq-feat .bq-tx{padding:.4rem .6rem .6rem}
  .bq-grid{grid-template-columns:minmax(0,1fr)}
  .bq-sheet{margin-inline:8px;padding-inline:.7rem}
}
@media(prefers-reduced-motion:reduce){.bq-im img,.bq-feat,.bq-card,.bq-go{transition:none}}

/* v202 : pellicule en arc concave */
.fi-rail{padding-block:clamp(2.6rem,4vw,3.6rem)}
.fi-c:nth-child(n){--ty:0rem;--r:0deg}
.fi-c{translate:calc(var(--in,0) * 1px) 0;transform-origin:50% 55%;will-change:transform}
.fi-c:hover{translate:calc(var(--in,0) * 1px) -.5rem;scale:1.04;rotate:0deg}

/* v203 academy : noms longs */
.fi-t .fi-name{zoom:var(--nf,1)}

/* v218 abonnés cumulés */
.ig-fl .ig-top{display:block;margin-top:.15rem;font-size:.86em;color:rgba(31,26,23,.62)}
.ig-fl .ig-top b{color:var(--orange)}

/* v220 : séminaire en scène éditoriale */
.sm{background:var(--cream)}
.sm .sm-l p.sm-lead{font-family:var(--display);font-weight:700;font-size:clamp(1.15rem,1.55vw,1.4rem);line-height:1.22;letter-spacing:-.01em;max-width:31rem;margin-top:1.6rem}
.sm-more{margin-top:1.6rem;padding-left:1.2rem;border-left:2px solid var(--orange);max-width:30rem}
.sm-more p{margin:0 0 1rem!important;font-size:1rem!important;color:rgba(31,26,23,.78);max-width:none!important}
.sm-more p:last-child{margin-bottom:0!important}
.sm-r{min-height:0}
.sm-stage{position:relative;width:100%;aspect-ratio:1/1.04}
.sm-bg{position:absolute;inset:0;border-radius:clamp(26px,3.2vw,48px);background:var(--lav);overflow:hidden}
.sm-disc{position:absolute;left:-12%;bottom:-18%;width:58%;aspect-ratio:1;border-radius:50%;background:var(--orange)}
.sm-ring{position:absolute;right:-14%;top:-18%;width:52%;aspect-ratio:1;border-radius:50%;border:clamp(18px,3vw,38px) solid rgba(253,248,237,.55)}
.sm-it{position:absolute;will-change:transform}
.sm-c{position:relative;margin:0;overflow:hidden;background:var(--ink);box-shadow:0 40px 60px -34px rgba(31,26,23,.75);transition:scale .6s cubic-bezier(.2,.8,.2,1),rotate .6s cubic-bezier(.2,.8,.2,1)}
.sm-c img,.sm-c video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.sm-c:hover{scale:1.04;rotate:0deg}
.sm-tag{position:absolute;left:50%;bottom:.8rem;translate:-50% 0;z-index:3;padding:.4rem .85rem;border-radius:99px;background:var(--cream);color:var(--ink);font-family:var(--display);font-weight:700;font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;transition:background .3s,color .3s}
.sm-c:hover .sm-tag{background:var(--orange);color:var(--ink)}
.sm-i1{left:5%;top:7%;width:37%}
.sm-i1 .sm-c{aspect-ratio:3/4;border-radius:clamp(16px,2vw,28px);rotate:-4deg}
.sm-i2{left:31%;top:23%;width:35%;z-index:3}
.sm-i2 .sm-c{aspect-ratio:9/16;border-radius:999px 999px clamp(18px,2.2vw,30px) clamp(18px,2.2vw,30px)}
.sm-i3{right:5%;top:6%;width:28%;z-index:2}
.sm-i3 .sm-c{aspect-ratio:9/16;border-radius:clamp(18px,2.2vw,30px);rotate:4deg}
.sm-i4{right:6%;bottom:6%;width:31%;z-index:4}
.sm-i4 .sm-c{aspect-ratio:1;border-radius:50%;border:clamp(5px,.7vw,9px) solid var(--cream);rotate:0deg}
.sm-i4 .sm-tag{bottom:12%}
@media (max-width:900px){
  .sm-stage{aspect-ratio:1/1.2}
  .sm-i1{left:3%;top:5%;width:42%}
  .sm-i2{left:30%;top:22%;width:38%}
  .sm-i3{right:3%;top:4%;width:30%}
  .sm-i4{right:3%;bottom:4%;width:35%}
  .sm-tag{font-size:.6rem;padding:.3rem .6rem;bottom:.55rem}
}
@media (prefers-reduced-motion:reduce){.sm-c{transition:none}}
.sm-i1 .sm-tag{bottom:auto;top:.9rem;left:.9rem;translate:none}
@media (max-width:900px){.sm-i4 .sm-tag{display:none}}


/* ===== v221 : titre allégé, Academy en stories rondes, logos de collabs plus lisibles ===== */
.ti2-row{justify-content:flex-start}
.acs{list-style:none;margin:0;padding:.6rem 0 .4rem;display:flex;flex-wrap:wrap;justify-content:center;gap:clamp(1.6rem,3.4vw,3.6rem) clamp(1.4rem,3vw,3rem)}
.acs-i{flex:0 0 auto;width:clamp(128px,15.5vw,210px)}
.acs-a{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.3rem;text-decoration:none;color:var(--ink)}
.acs-ring{width:100%;padding:5px}
.acs-ring::before{inset:5px}
.acs-ring img{border-width:5px}
.acs-a:hover .acs-ring{animation-duration:1.4s;transform:scale(1.05)}
.acs-ring{transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.acs-n{margin-top:.7rem;font-family:var(--display);font-weight:700;font-size:clamp(1rem,1.5vw,1.35rem);letter-spacing:-.01em;line-height:1.05}
.acs-h{font-size:.82rem;opacity:.65}
.acs-f{font-style:normal;font-weight:700;font-size:.82rem;padding:.22rem .7rem;border-radius:999px;background:var(--lav)}
.acs-plus{position:relative;display:grid;place-items:center;aspect-ratio:1;border-radius:50%;background:var(--orange);color:var(--ink);animation:none;transition:transform .5s cubic-bezier(.2,.8,.2,1),background .3s}
.acs-plus::before{display:none}
.acs-plus svg{width:34%;height:34%}
.acs-join:hover .acs-plus{transform:rotate(90deg) scale(1.05);background:var(--ink);color:var(--cream)}
@media(max-width:640px){.acs-i{width:clamp(120px,40vw,168px)}}
/* logos de marques sur les collabs : pastille plus grande */
.vb-i .vb-n{height:44px;padding:0 1rem;font-size:.7rem}
.vb-i .vb-n.vb-lg{padding:0 .85rem;background:#fff}
.vb-i .vb-n.vb-lg img{height:30px;max-width:104px}
@media(max-width:900px){.vb-i .vb-n{height:34px;padding:0 .75rem}.vb-i .vb-n.vb-lg img{height:22px;max-width:78px}}

/* ===== v221 : liste des campagnes (aperçu plus petit, chiffres plus gros) + bandeau d’autres campagnes ===== */
.cl-m{aspect-ratio:16/10}
.cl-t{gap:1rem}
.cl-t h2{font-size:clamp(1.15rem,1.7vw,1.5rem)}
.cl-k{display:flex;flex-wrap:wrap;gap:.4rem 1.6rem;align-items:flex-end}
.cl-k .cl-s{padding:0;background:none;border-radius:0;display:flex;flex-direction:column;gap:.15rem;font-weight:500}
.cl-s b{font-family:var(--display);font-weight:700;font-size:clamp(2.2rem,3.6vw,3.4rem);line-height:.9;letter-spacing:-.04em;color:var(--ink)}
.cl-s small{font-size:.78rem;font-weight:500;opacity:.7;text-transform:lowercase}
.cl-k .cl-s2{padding:.4rem .9rem;border-radius:999px;background:#EFE7D4}
.cl-k .cl-s2 small{opacity:1;font-size:.8rem;text-transform:none}
.csb{padding-block:clamp(2.5rem,5vw,4.5rem) clamp(1.5rem,3vw,2.4rem);overflow:hidden}
.csb-h{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem 2rem;flex-wrap:wrap;margin-bottom:clamp(1.4rem,3vw,2.4rem)}
.csb-h h2{margin:0;font-size:clamp(2rem,4.6vw,4.4rem);line-height:.92;letter-spacing:-.03em;text-transform:uppercase}
.csb-h .eyebrow{display:block;margin-bottom:.8rem;color:var(--orange)}
.csb-v{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.csb-r{list-style:none;margin:0;padding:.6rem 0 1.4rem;display:flex;gap:clamp(.9rem,1.6vw,1.4rem);width:max-content;animation:csbRun 70s linear infinite}
.csb-v:hover .csb-r,.csb-v:focus-within .csb-r{animation-play-state:paused}
@keyframes csbRun{to{transform:translateX(-50%)}}
.csb-i{flex:0 0 auto;width:clamp(230px,24vw,330px)}
.csb-i a{display:flex;flex-direction:column;height:100%;text-decoration:none;color:inherit;background:var(--white);border-radius:clamp(18px,2vw,26px);overflow:hidden;transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s}
.csb-i a:hover,.csb-i a:focus-visible{transform:translateY(-6px);box-shadow:0 26px 54px -30px rgba(31,26,23,.5)}
.csb-m{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--lav);display:block}
.csb-m>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s cubic-bezier(.2,.8,.2,1)}
.csb-i a:hover .csb-m>img{transform:scale(1.06)}
.csb-m .tz-tc{border-radius:0}
.csb-m .bm-lg img{position:static;inset:auto;width:auto;height:clamp(1.8rem,2.6vw,2.4rem);object-fit:contain;transform:none!important;transition:none}
.csb-t{display:flex;flex-direction:column;gap:.35rem;padding:1rem 1.1rem .3rem}
.csb-t b{font-family:var(--display);font-weight:700;font-size:1.1rem;line-height:1.05;text-transform:uppercase;letter-spacing:-.01em}
.csb-t small{font-size:.82rem;line-height:1.3;opacity:.7;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.csb-k{padding:.2rem 1.1rem 1.1rem;display:flex}
.csb-k .cl-s b{font-size:clamp(1.8rem,2.6vw,2.4rem)}
@media(prefers-reduced-motion:reduce){.csb-r{animation:none}.csb-v{overflow-x:auto}}

/* ===== v225 : séminaire en grille (plus de collage) ; slider sur mobile ===== */
.sm-stage{aspect-ratio:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(.7rem,1.4vw,1.2rem)}
.sm-bg{display:none}
.sm-it,.sm-it.sm-i1,.sm-it.sm-i2,.sm-it.sm-i3,.sm-it.sm-i4{position:relative;left:auto;right:auto;top:auto;bottom:auto;width:auto;z-index:auto}
.sm-i1 .sm-c,.sm-i2 .sm-c,.sm-i3 .sm-c,.sm-i4 .sm-c{aspect-ratio:4/5;border-radius:clamp(18px,2vw,28px);rotate:0deg;border:0;box-shadow:0 26px 44px -30px rgba(31,26,23,.6)}
.sm-c:hover{scale:1.02}
.sm-i1 .sm-tag,.sm-i4 .sm-tag,.sm-tag{left:.8rem;bottom:.8rem;top:auto;translate:none}
@media(max-width:900px){.sm-i4 .sm-tag{display:inline-block}
  .sm-stage{display:flex;gap:.9rem;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin-inline:calc(var(--gl,1.2rem)*-1);padding-inline:var(--gl,1.2rem);padding-bottom:.4rem}
  .sm-stage::-webkit-scrollbar{display:none}
  .sm-it{flex:0 0 72%;scroll-snap-align:start}
  .sm-tag{font-size:.64rem}}

/* v227 : cadrage des aperçus de campagnes (visages et produits dans le champ) */
.cl-m{aspect-ratio:4/3}
.csb-m{aspect-ratio:4/3}
.cl-m img.cl-pi,.cl-m video,.csb-m>img{object-position:50% var(--fy,30%)}
/* v227 : bandeau de mots-clés plus petit */
.fi-band{padding:clamp(.4rem,.9vw,.7rem) 0}
.fi-band .fi-mq-t span{font-size:clamp(1.5rem,3.4vw,3.2rem)}

/* v228 — "autres talents" en stories rondes */
.fi-oth .fi-oth-row{display:flex;flex-wrap:nowrap;gap:clamp(1.2rem,2.6vw,2.8rem);overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding:.6rem .2rem 1rem;align-items:flex-start;grid-template-columns:none}
.fi-oth .fi-oth-row::-webkit-scrollbar{display:none}
.fi-oth .fi-oth-row li,.fi-oth .fi-oth-row li:nth-child(even),.fi-oth .fi-oth-row li:nth-child(5){margin:0;grid-column:auto;flex:0 0 auto}
.fi-oth .fi-oth-row a,.fi-oth .fi-oth-row a:hover,.fi-oth .fi-oth-row li:nth-child(even) a:hover,.fi-oth .fi-oth-row li:nth-child(5) a{position:static;display:flex;flex-direction:column;align-items:center;gap:.9rem;aspect-ratio:auto;border-radius:0;overflow:visible;background:none;color:var(--ink);width:clamp(96px,11.5vw,168px);transform:none}
.fi-oth .fi-oth-row a::after{display:none}
.fi-oth .fi-oth-row .ig-ring{position:relative;left:auto;right:auto;bottom:auto;transform:none;width:100%;padding:4px;border-radius:50%;background:conic-gradient(from var(--ra),var(--orange),var(--lav),var(--orange));white-space:normal;font-size:inherit;text-transform:none}
.fi-oth .fi-oth-row .ig-ring::before{inset:4px}
.fi-oth .fi-oth-row .ig-ring.ig-acr{background:conic-gradient(from var(--ra),var(--lav),#fff,var(--lav))}
.fi-oth .fi-oth-row .ig-ring img{width:100%;height:100%;filter:none;border:4px solid var(--cream);transform:none;object-position:50% 20%}
.fi-oth .fi-oth-row a:hover .ig-ring{animation-duration:1.4s;transform:scale(1.07);background:conic-gradient(from var(--ra),var(--orange),var(--lav),var(--orange))}
.fi-oth .fi-oth-row .ig-sn{position:static;transform:none;left:auto;right:auto;bottom:auto;padding:0;background:none;color:var(--ink);font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:clamp(.78rem,1vw,.98rem);line-height:1.05;text-align:center;white-space:normal;max-width:100%;overflow:visible}
.fi-oth .fi-oth-row a:hover .ig-sn{background:none;color:var(--orange)}
.bm-tal .fi-oth-row,.ac-oth .fi-oth-row{grid-template-columns:none}
@media(max-width:900px){.fi-oth .fi-oth-row{gap:1.1rem;margin-inline:calc(-1 * clamp(1rem,4vw,1.6rem));padding-inline:clamp(1rem,4vw,1.6rem)}.fi-oth .fi-oth-row a,.fi-oth .fi-oth-row a:hover,.fi-oth .fi-oth-row li:nth-child(5) a{width:clamp(84px,24vw,112px)}}
.fi-oth>.wrap{padding-left:max(var(--gl),clamp(1.3rem,4vw,4.2rem));padding-right:max(var(--gr),clamp(1.3rem,4vw,4.2rem))}
@media(max-width:900px){.fi-oth .fi-oth-row{margin-inline:calc(-1 * max(var(--gl),clamp(1.3rem,4vw,4.2rem)));padding-inline:max(var(--gl),clamp(1.3rem,4vw,4.2rem))}}
@media(max-width:900px){.fi-oth .fi-oth-row{margin-left:0;margin-right:calc(-1 * max(var(--gr),clamp(1.3rem,4vw,4.2rem)));padding-left:.2rem;padding-right:max(var(--gr),clamp(1.3rem,4vw,4.2rem))}}

/* v245 logos larges : ne dépassent plus la vignette */
.vb-i .vb-n.vb-lg img{max-width:84px}

/* v245 étiquettes de marque : verre dépoli translucide au lieu du blanc plein */
.vb-i .vb-v::after{content:"";position:absolute;left:0;right:0;bottom:0;height:42%;background:linear-gradient(to top,rgba(24,18,15,.5),rgba(24,18,15,0));pointer-events:none;z-index:2}
.vb-i .vb-n,.vb-i .vb-n.vb-lg{background:rgba(253,248,237,.5);-webkit-backdrop-filter:blur(14px) saturate(1.5);backdrop-filter:blur(14px) saturate(1.5);border:1px solid rgba(255,255,255,.4);box-shadow:0 4px 18px rgba(0,0,0,.14)}
.vb-i .vb-n:not(.vb-lg){color:#fff;text-shadow:0 1px 6px rgba(0,0,0,.4);background:rgba(24,18,15,.32)}
.vb-i .vb-n.vb-lg img{filter:drop-shadow(0 0 .5px rgba(255,255,255,.7))}

/* v250 bandeau plus petit */
.fi-band{padding:clamp(.25rem,.6vw,.5rem) 0}
.fi-band .fi-mq-t span{font-size:clamp(1.1rem,2.3vw,2.2rem)}
.fi-band .sp{font-size:clamp(1.1rem,2.3vw,2.2rem)}
/* v250 « autres talents » : tous les talents (Academy comprise) tiennent sur une ligne en desktop */
@media(min-width:901px){
  .fi-oth .fi-oth-row{gap:clamp(.8rem,1.5vw,1.6rem);overflow:visible}
  .fi-oth .fi-oth-row li,.fi-oth .fi-oth-row li:nth-child(even),.fi-oth .fi-oth-row li:nth-child(5){flex:1 1 0;min-width:0;max-width:150px}
  .fi-oth .fi-oth-row a,.fi-oth .fi-oth-row a:hover,.fi-oth .fi-oth-row li:nth-child(even) a:hover,.fi-oth .fi-oth-row li:nth-child(5) a{width:100%}
  .fi-oth .fi-oth-row .ig-sn{font-size:clamp(.7rem,.85vw,.88rem)}
}

/* v252 étiquettes de marque : plus de pastille, le logo flotte directement sur la vidéo (fond transparent) */
.vb-i .vb-n,.vb-i .vb-n.vb-lg{background:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;border:0!important;box-shadow:none!important;padding:0!important;height:auto!important;left:.8rem;bottom:.8rem}
.vb-i .vb-n.vb-lg img{height:34px;max-width:96px;filter:drop-shadow(1px 0 0 #fff) drop-shadow(-1px 0 0 #fff) drop-shadow(0 1px 0 #fff) drop-shadow(0 -1px 0 #fff) drop-shadow(0 3px 10px rgba(0,0,0,.45))}
.vb-i .vb-n:not(.vb-lg){background:none!important;font-size:.8rem;font-weight:700;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.65)}
@media(max-width:900px){.vb-i .vb-n.vb-lg img{height:26px;max-width:72px}}


/* v258 — cover blog : visuel détouré, fond transparent */
.ba-cv:has(img[src*="blog_t3_a"]){background:transparent}
.bq-im:has(img[src*="blog_t3_card"]){background:transparent}
/* v259 — 7e talent : dernière carte centrée sur la grille à 3 colonnes */
@media (min-width:901px){.tg-grid.t3>li:last-child:nth-child(3n+1){grid-column:2}}
/* v266 — « Un vrai lien » : texte à gauche, photos et vidéos en ligne à droite, défilement infini de gauche à droite, fondu sur les bords */
.sm-r{min-width:0;align-self:center}
.sm-mq{--mh:clamp(300px,33vw,470px);margin-top:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 12%,#000 88%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 12%,#000 88%,transparent 100%)}
.sm-mt{display:flex;gap:clamp(.8rem,1.4vw,1.4rem);width:max-content;list-style:none;margin:0;padding:.6rem 0 1.4rem;animation:smMq 110s linear infinite reverse;will-change:transform}
.sm-mq:hover .sm-mt{animation-play-state:paused}
.sm-m{flex:0 0 auto;height:var(--mh);aspect-ratio:var(--ar,9/16)}
.sm-m .sm-c{width:100%;height:100%;border-radius:clamp(16px,1.9vw,28px);rotate:0deg;box-shadow:0 26px 44px -30px rgba(31,26,23,.7)}
.sm-m:nth-child(3n+2) .sm-c{border-radius:999px 999px clamp(16px,1.9vw,28px) clamp(16px,1.9vw,28px)}
@keyframes smMq{from{transform:translateX(0)}to{transform:translateX(calc(-50% - clamp(.8rem,1.4vw,1.4rem)/2))}}
@media (max-width:900px){
  .sm-mq{--mh:clamp(260px,68vw,360px);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%)}
  .sm-mt{animation-duration:90s}
}
@media (prefers-reduced-motion:reduce){.sm-mq{-webkit-mask-image:none;mask-image:none;overflow-x:auto;scrollbar-width:none}.sm-mq::-webkit-scrollbar{display:none}.sm-mt{animation:none;padding-inline:var(--gl)}.sm-m[aria-hidden=true]{display:none}}

/* ===== v270 : contact par catégorie (accroche, bulles animées, couleurs) · team · formules ===== */
.tt-lead-b{display:block;font-weight:500;color:var(--cream);margin-bottom:.45rem}
.tt-man-g p{max-width:26rem}
.ct{--ct-c:var(--orange)}
.ct[data-cat="1"]{--ct-c:var(--lav)}
.ct[data-cat="2"]{--ct-c:var(--ink)}
.ct[data-cat="3"]{--ct-c:color-mix(in srgb,var(--orange) 45%,var(--lav))}
.ct-l h1.ct-hs{display:grid;font-size:clamp(2.3rem,4.3vw,4.6rem);line-height:1;letter-spacing:-.03em;margin:1.1rem 0 0;max-width:13em}
.ct-hv{grid-area:1/1;visibility:hidden}
.ct-hv.on{visibility:visible}
.ct-w{display:inline-block;opacity:0;transform:translateY(.45em);filter:blur(6px);transition:opacity .25s,transform .25s,filter .25s}
.ct-hv.on .ct-w{opacity:1;transform:none;filter:none;transition:opacity .6s cubic-bezier(.2,.7,.2,1) calc(var(--w)*55ms + 120ms),transform .7s cubic-bezier(.2,.8,.2,1) calc(var(--w)*55ms + 120ms),filter .6s calc(var(--w)*55ms + 120ms)}
.ct-lead{margin-top:1.4rem}
.ct-stage{position:relative;width:min(100%,30rem);height:clamp(210px,24vw,290px);margin:1.2rem 0 .4rem}
.ct-blob{position:absolute;left:50%;top:50%;width:68%;aspect-ratio:1;translate:-50% -50%;background:var(--ct-c);opacity:.3;border-radius:42% 58% 55% 45%/50% 42% 58% 50%;transition:background .7s ease;animation:ctM 9s ease-in-out infinite alternate}
.ct[data-cat="2"] .ct-blob{opacity:.14}
@keyframes ctM{0%{border-radius:42% 58% 55% 45%/50% 42% 58% 50%;transform:rotate(0) scale(1)}50%{border-radius:58% 42% 46% 54%/44% 56% 44% 56%;transform:rotate(18deg) scale(1.06)}100%{border-radius:48% 52% 60% 40%/58% 44% 56% 42%;transform:rotate(-10deg) scale(.97)}}
.ct-set{position:absolute;inset:0;pointer-events:none}
.ct-b{position:absolute;left:var(--x);top:var(--y);width:calc(var(--s)*var(--k,1));height:calc(var(--s)*var(--k,1));margin:calc(var(--s)*var(--k,1)/-2) 0 0 calc(var(--s)*var(--k,1)/-2);border-radius:50%;background:var(--bg);color:var(--fg);display:grid;place-items:center;box-shadow:0 14px 30px -14px rgba(31,26,23,.45);opacity:0;transform:scale(.2) rotate(-24deg);transition:transform .3s ease,opacity .2s ease}
.ct-b.main{border-radius:50% 50% 50% 14%;box-shadow:0 22px 44px -18px rgba(31,26,23,.5)}
.ct-set.on .ct-b{opacity:1;transform:none;transition:transform .75s cubic-bezier(.34,1.56,.64,1) calc(var(--d)*80ms + 160ms),opacity .35s ease calc(var(--d)*80ms + 160ms)}
.ct-bi{display:grid;place-items:center;width:100%;height:100%;animation:ctF 5.2s ease-in-out infinite alternate;animation-delay:calc(var(--d)*-1.1s)}
.ct-b svg{width:46%;height:46%}
.ct-b.main svg{width:44%;height:44%}
@keyframes ctF{from{transform:translateY(7px) rotate(-3deg)}to{transform:translateY(-9px) rotate(3deg)}}
.ct-who{display:grid;grid-template-columns:1fr 1fr;gap:.55rem}
.ct-who legend{grid-column:1/-1;float:none;width:100%;margin:0 0 .15rem;line-height:1.2}
.ct-who legend+label{grid-column:auto}
.ct-who span{min-height:48px;padding:.5rem 1rem;border-radius:20px;justify-content:center;text-align:center;line-height:1.2;font-size:.9rem;width:100%;box-sizing:border-box}
.ct-who label{display:block}
.ct-who input:checked+span{background:var(--ink);color:var(--ct-c,var(--lav))}
.ct[data-cat="2"] .ct-who input:checked+span{color:var(--lav)}
.ct-fld>span b{font-weight:inherit}
.ct-f{transition:background .5s}
@media(max-width:900px){.ct-stage{height:230px;margin-inline:auto}.ct-l{text-align:left}.ct-l h1.ct-hs{font-size:clamp(2.1rem,8.6vw,3.6rem)}}
@media(prefers-reduced-motion:reduce){.ct-blob,.ct-bi{animation:none}.ct-b,.ct-w{transition:none!important}}
/* formules : intitulé plus long */
.fm-h{font-size:clamp(2.6rem,min(6.4vw,13vh),7.4rem)!important;line-height:.92!important}
@media(max-width:900px){.fm-h{font-size:clamp(2.4rem,11vw,4.6rem)!important}}
/* méthode : phrase sous le titre */
.bm-met-h>div>p{max-width:34rem;font-weight:500;margin:1.2rem 0 0}
.ct-hs .o{color:var(--orange)}
.ct-l h1.ct-hs{font-size:clamp(2rem,3.55vw,3.9rem)!important;max-width:none}
@media(max-width:900px){.ct-l h1.ct-hs{font-size:clamp(1.9rem,8vw,3.2rem)!important}}
.ct-who label{display:flex}.ct-who span{height:100%}
/* v270 : ajustements de taille pour les nouveaux intitulés */
.bm-hero .camp-hero h1{font-size:clamp(2.3rem,4.6vw,5rem);line-height:.96;max-width:13em}
.tt-man-top .tt-stmt{font-size:clamp(1.8rem,3.4vw,3.8rem)!important;max-width:19ch;line-height:1}
.fm-h{font-size:clamp(2.4rem,min(4.6vw,10vh),5.6rem)!important}
@media(max-width:900px){.fm-h{font-size:clamp(1.9rem,8.2vw,4.2rem)!important}.bm-hero .camp-hero h1{font-size:clamp(2rem,8.6vw,3.4rem)}}
/* v270 : logos de marques sur les vidéos des collabs, en pastille blanche (lisibles sur toutes les vidéos) */
.vb-i .vb-n,.vb-i .vb-n.vb-lg{background:#fff!important;border-radius:999px!important;padding:.4rem .85rem!important;height:auto!important;min-height:38px;box-shadow:0 6px 18px rgba(0,0,0,.3)!important;display:inline-flex!important;align-items:center;justify-content:center;left:.7rem;bottom:.7rem;z-index:4;color:var(--ink)!important;text-shadow:none!important;font-size:.7rem!important;letter-spacing:.1em}
.vb-i .vb-n.vb-lg img{height:24px!important;max-width:86px!important;width:auto;filter:none!important;display:block;opacity:1}
@media(max-width:900px){.vb-i .vb-n,.vb-i .vb-n.vb-lg{padding:.3rem .65rem!important;min-height:32px;left:.5rem;bottom:.5rem}.vb-i .vb-n.vb-lg img{height:19px!important;max-width:68px!important}}
/* v270b : contact — titre sans réserve de hauteur, pastilles sur une seule ligne */
.ct[data-cat="1"]{--ct-c:var(--ink)}
.ct[data-cat="2"]{--ct-c:var(--lav)}
.ct[data-cat="2"] .ct-blob{opacity:.3}
.ct[data-cat="1"] .ct-blob{opacity:.14}
.ct[data-cat="2"] .ct-who input:checked+span{color:var(--ct-c)}
.ct[data-cat="1"] .ct-who input:checked+span{color:var(--lav)}
.ct-l h1.ct-hs{display:block;position:relative}
.ct-hv{display:block;position:absolute;left:0;top:0;width:100%}
.ct-hv.on{position:relative}
.ct-lead{margin-top:1.1rem}
.ct-who{display:flex;flex-wrap:wrap;gap:.45rem}
.ct-who legend{flex:0 0 100%;width:100%}
.ct-who label{flex:1 1 auto}
.ct-who span{white-space:nowrap;padding:.5rem .8rem;font-size:.84rem;min-height:44px;border-radius:999px}
/* v270c : contact — colonne gauche rééquilibrée, bulle d'icônes plus petite */
.ct-l{display:flex;flex-direction:column;align-items:flex-start;gap:clamp(1.1rem,2.1vw,1.7rem)}
.ct-l>*,.ct-cn>*{margin:0!important}
.ct-l h1.ct-hs{margin:0!important}
.ct-lead{max-width:27rem}
.ct-stage{--k:.6;width:min(100%,21rem);height:clamp(150px,13.5vw,185px);margin:.2rem 0 .2rem -.2rem!important}
.ct-b.main{box-shadow:0 14px 28px -14px rgba(31,26,23,.5)}
.ct-cn{display:flex;align-items:center;flex-wrap:wrap;gap:1.1rem 1.8rem}
.ct-mail{font-size:clamp(1.15rem,1.9vw,1.6rem)!important;border-bottom-width:2px}
.ct-soc{margin:0!important;gap:.55rem}
.ct-soc a{width:46px;height:46px}
@media(max-width:900px){.ct-stage{--k:.58;width:min(100%,19rem);height:150px;margin-inline:0!important}}
.ct-stage{--k:.74;width:min(100%,23rem);height:clamp(165px,15vw,200px);margin:.4rem 0 .4rem -.2rem!important}
.ct-blob{width:auto;height:94%}
@media(min-width:901px){.ct-l h1.ct-hs{min-height:3.02em}}
@media(max-width:900px){.ct-stage{--k:.66;width:min(100%,20rem);height:168px;margin-inline:0!important}}
.ct-fld input::placeholder,.ct-fld textarea::placeholder{color:var(--ink);opacity:.48;font-weight:400}
.ct-fld input:focus::placeholder,.ct-fld textarea:focus::placeholder{opacity:.3}
.ct-fld input::placeholder,.ct-fld textarea::placeholder{opacity:.34;font-weight:300}
.ct-fld input:focus::placeholder,.ct-fld textarea:focus::placeholder{opacity:.2}
/* v278 : défilement aléatoire de médias selon la catégorie (contact) */
.ct-stage.ct-reels{position:relative;width:100%;max-width:none;height:clamp(190px,17.5vw,236px);margin:.2rem 0!important;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.ct-rl{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .6s ease,visibility 0s linear .6s}
.ct-rl.on{opacity:1;visibility:visible;transition:opacity .6s ease .15s,visibility 0s}
.ct-trk{display:flex;width:max-content;height:100%;animation:ctScroll var(--dur,40s) linear infinite;animation-direction:var(--dir,normal);will-change:transform}
.ct-ul{display:flex;gap:12px;padding:0 6px;margin:0;list-style:none;height:100%;flex:0 0 auto}
@keyframes ctScroll{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
.ct-t{position:relative;flex:0 0 auto;width:calc(var(--w)*var(--ts,1));height:calc(100% - 26px);border-radius:22px;overflow:hidden;background:#e9e3d6;box-shadow:0 14px 28px -18px rgba(31,26,23,.45)}
.ct-t:nth-child(even){margin-top:26px}
.ct-t img,.ct-t video{display:block;width:100%;height:100%;object-fit:cover}
.ct-bt{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35rem;background:#fff;text-align:center;padding:0 .8rem}
.ct-bt.lv{background:var(--lav)}
.ct-bt .lg{display:flex;align-items:center;justify-content:center;gap:.4rem;height:46%;width:100%}
.ct-bt .lg img{width:auto;height:auto;max-width:72%;max-height:100%;object-fit:contain}
.ct-bt .lg i{font-style:normal;font-size:.8rem;opacity:.5}
.ct-bt .lg img+i+img{max-width:38%}
.ct-bt b{font-family:"League Spartan",sans-serif;font-weight:700;font-size:clamp(1.5rem,2.1vw,2.1rem);line-height:1;color:var(--orange);letter-spacing:-.02em}
.ct-bt.lv b{color:var(--ink)}
.ct-bt small{font-size:.78rem;color:var(--ink);opacity:.62;line-height:1.1}
@media(max-width:900px){.ct-stage.ct-reels{height:178px}.ct-t{--ts:.86}}
@media(prefers-reduced-motion:reduce){.ct-trk{animation:none}.ct-stage.ct-reels{overflow-x:auto}}
.ct-bt .lg img{flex:0 1 auto;min-width:0}
.ct-bt .lg.two img{max-width:40%}
/* v279 : empilement de cartes (une photo/vidéo à la fois, qui "pop" par-dessus la précédente) */
.ct-stage.ct-reels{width:min(100%,24rem);height:clamp(230px,20vw,270px);margin:.2rem 0!important;overflow:visible;-webkit-mask-image:none;mask-image:none}
.ct-rl{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .45s ease,visibility 0s linear .45s}
.ct-rl.on{opacity:1;visibility:visible;transition:opacity .3s ease,visibility 0s}
.ct-pile{position:absolute;inset:0}
.ct-c{position:absolute;left:0;top:7px;width:clamp(150px,12.6vw,182px);height:calc(100% - 14px);border-radius:22px;overflow:hidden;background:#e9e3d6;box-shadow:0 18px 34px -16px rgba(31,26,23,.55),0 0 0 4px #fff;
  opacity:0;transform:translate(calc(var(--x) + 40px),calc(var(--y) + 46px)) rotate(var(--r0)) scale(.6);transition:transform .62s cubic-bezier(.34,1.56,.64,1),opacity .25s ease,filter .5s ease}
.ct-c.in{opacity:1;transform:translate(var(--x),var(--y)) rotate(var(--r)) scale(1)}
.ct-c.in[data-a="1"]{filter:brightness(.97)}
.ct-c.in[data-a="2"]{filter:brightness(.94)}
.ct-c.in[data-a="3"]{filter:brightness(.9)}
.ct-c.out{opacity:0!important;transition:opacity .4s ease}
.ct-c img,.ct-c video{display:block;width:100%;height:100%;object-fit:cover}
.ct-c.ct-bt{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;background:#fff;text-align:center;padding:0 .9rem}
.ct-c.ct-bt.lv{background:var(--lav)}
.ct-c.ct-bt .lg{display:flex;align-items:center;justify-content:center;gap:.4rem;height:42%;width:100%}
.ct-c.ct-bt .lg img{width:auto;height:auto;max-width:78%;max-height:100%;object-fit:contain;flex:0 1 auto;min-width:0}
.ct-c.ct-bt .lg.two img{max-width:40%}
.ct-c.ct-bt .lg i{font-style:normal;font-size:.8rem;opacity:.5}
.ct-c.ct-bt b{font-family:"League Spartan",sans-serif;font-weight:700;font-size:clamp(1.7rem,2.4vw,2.4rem);line-height:1;color:var(--orange);letter-spacing:-.02em}
.ct-c.ct-bt.lv b{color:var(--ink)}
.ct-c.ct-bt small{font-size:.8rem;color:var(--ink);opacity:.62;line-height:1.1}
@media(max-width:900px){.ct-stage.ct-reels{height:230px;width:min(100%,22rem)}.ct-c{width:150px}}
@media(prefers-reduced-motion:reduce){.ct-c{transition:opacity .2s ease!important;transform:translate(var(--x),var(--y)) rotate(var(--r))}}
/* v280 : pile de cartes à droite, plus grande, pour occuper l'espace vide (desktop) */
@media(min-width:901px){
.ct-l{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:clamp(1rem,2.5vw,2.5rem);row-gap:clamp(1.1rem,2.1vw,1.7rem);align-items:start;align-content:center}
.ct-l>.eyebrow,.ct-l>h1{grid-column:1/-1}
.ct-l>.ct-lead{grid-column:1;grid-row:3;max-width:25rem}
.ct-l>.ct-cn{grid-column:1;grid-row:4;align-self:end}
.ct-l>.ct-stage.ct-reels{grid-column:2;grid-row:3/5;align-self:center;justify-self:end;width:clamp(15rem,25vw,24rem);height:clamp(270px,23.5vw,360px);margin:0!important}
.ct-c{width:clamp(190px,15.5vw,250px)}
}
/* v281 : texte d'intro plus grand et remonté sous le titre (desktop) */
@media(min-width:901px){
.ct-l h1.ct-hs{min-height:0!important}
.ct-l>.ct-lead{font-size:clamp(1.2rem,1.55vw,1.5rem);line-height:1.45;max-width:27rem}
.ct-l{row-gap:clamp(.9rem,1.5vw,1.3rem)}
}
@media(min-width:901px){.ct-l>.ct-stage.ct-reels{height:clamp(250px,21.5vw,330px);margin:1rem 0 0!important}}
/* v283 : changement de carte plus rapide */
.ct-c{transition:transform .42s cubic-bezier(.34,1.56,.64,1),opacity .18s ease,filter .3s ease}
.ct-c.out{transition:opacity .25s ease}
/* v287 : toast adresse mail du Talent Manager */
.mt-toast{position:fixed;left:50%;bottom:1.4rem;z-index:9999;display:flex;align-items:center;gap:.8rem;max-width:calc(100vw - 2rem);padding:.7rem .7rem .7rem 1.2rem;border-radius:999px;background:var(--ink);color:var(--cream);font-size:.95rem;box-shadow:0 18px 40px -14px rgba(31,26,23,.6);opacity:0;transform:translate(-50%,16px);pointer-events:none;transition:opacity .3s ease,transform .4s cubic-bezier(.34,1.56,.64,1)}
.mt-toast.on{opacity:1;transform:translate(-50%,0);pointer-events:auto}
.mt-toast b{font-weight:600;user-select:all}
.mt-toast .mt-c{border:0;cursor:pointer;font:inherit;font-weight:600;font-size:.88rem;padding:.55rem 1rem;border-radius:999px;background:var(--orange);color:var(--ink)}
.mt-toast .mt-x{border:0;cursor:pointer;background:transparent;color:inherit;font-size:1.3rem;line-height:1;padding:0 .5rem;opacity:.7}
@media(max-width:600px){.mt-toast{flex-wrap:wrap;border-radius:22px;justify-content:center}}
/* v290 : « Autres demandes » → une lettre s'ouvre, émotions / chiffres / logos en pop */
.env{position:absolute;left:50%;bottom:6px;width:270px;height:170px;margin-left:-135px;perspective:800px}
.env>i,.env-ltr{position:absolute;display:block}
.env-b{inset:0;border-radius:14px;background:#a39df0;box-shadow:0 22px 40px -20px rgba(31,26,23,.55)}
.env-ltr{left:12%;right:12%;bottom:12px;height:142px;background:#fff;border-radius:10px;padding:16px 14px;box-shadow:0 6px 14px -8px rgba(31,26,23,.4);transition:transform .75s cubic-bezier(.34,1.3,.64,1) .2s}
.env-ltr i{display:block;height:7px;border-radius:4px;background:rgba(31,26,23,.14);margin-bottom:9px}
.env-ltr i:nth-child(1){width:58%;background:var(--orange);opacity:.85}
.env-ltr i:nth-child(3){width:76%}
.env.open .env-ltr{transform:translateY(-64px)}
.env-f{inset:0;border-radius:14px;background:var(--lav);clip-path:polygon(0 0,50% 54%,100% 0,100% 100%,0 100%);z-index:2}
.env-fl{left:0;top:0;width:100%;height:56%;background:var(--orange);clip-path:polygon(0 0,100% 0,50% 100%);transform-origin:50% 0;z-index:3;transition:transform .55s cubic-bezier(.5,0,.3,1),z-index 0s linear .25s;border-radius:14px 14px 0 0}
.env.open .env-fl{transform:rotateX(180deg);z-index:0}
.env-pops{position:absolute;left:50%;top:20px;width:0;height:0;z-index:4}
.env-p{position:absolute;left:0;top:0;transform:translate(-50%,-50%) scale(.15);opacity:0;transition:transform .62s cubic-bezier(.34,1.56,.64,1),opacity .2s ease}
.env-p.in{opacity:1;transform:translate(calc(-50% + var(--tx)),calc(-50% + var(--ty))) rotate(var(--r)) scale(1)}
.env-p.out{opacity:0;transform:translate(-50%,-50%) scale(.15);transition:transform .38s ease-in,opacity .3s ease .1s}
.env-p>span{display:grid;place-items:center;animation:ctF 3.4s ease-in-out infinite alternate;animation-delay:var(--d,0s)}
.env-i{width:54px;height:54px;border-radius:50%;box-shadow:0 12px 22px -10px rgba(31,26,23,.5)}
.env-i svg{width:50%;height:50%}
.env-i.c0{background:var(--orange);color:var(--ink)}
.env-i.c1{background:var(--lav);color:var(--ink)}
.env-i.c2{background:var(--ink);color:var(--cream)}
.env-i.c3{background:#fff;color:var(--ink)}
.env-n{padding:.5rem .95rem .45rem;border-radius:999px;background:#fff;font-family:"League Spartan",sans-serif;font-weight:700;font-size:1.25rem;line-height:1;color:var(--orange);letter-spacing:-.02em;box-shadow:0 12px 22px -10px rgba(31,26,23,.5);white-space:nowrap}
.env-n small{display:block;margin-top:.15rem;font-family:inherit;font-size:.62rem;font-weight:500;letter-spacing:0;color:var(--ink);opacity:.6;text-align:center}
.env-l{width:62px;height:62px;border-radius:50%;background:#fff;box-shadow:0 12px 22px -10px rgba(31,26,23,.5)}
.env-l img{width:68%;height:68%;object-fit:contain}
@media(max-width:900px){.env{transform:scale(.88);transform-origin:50% 100%}}
@media(prefers-reduced-motion:reduce){.env-p>span{animation:none}}
.env-i{box-shadow:0 0 0 3px #fff,0 12px 22px -10px rgba(31,26,23,.5)}
@media(max-width:900px){.ct-stage.ct-reels{height:262px}}

/* ===== V294 · optimisation mobile uniquement (≤700px) — le desktop n'est pas touché ===== */
@media(max-width:700px){
  html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
  a,button,summary,label,[role="button"]{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
  /* zones tactiles ≥44px sans changer la mise en page : la zone cliquable déborde du lien */
  .cs-bc a,.foot-row a,.fi-back,.ig-cp a,.foot a[href="#top"]{position:relative}
  .cs-bc a::after,.foot-row a::after,.fi-back::after,.ig-cp a::after,.foot a[href="#top"]::after{content:"";position:absolute;inset:-.8rem -.5rem}
  .cs-bc{gap:.5rem .6rem}
  /* lisibilité : plus aucun texte sous ~11px */
  .cs2-id dt,.ti2-st dt,.cs-meta dt{font-size:.72rem}
  .cs2-s b small,.bm-st small,.fi-st-i .tx small{font-size:.7rem}
  .cs-lv,.cs-lev .bm-steps li .cs-lv{font-size:.7rem}
  .ig-sub,.ig-s .ig-sub{font-size:.72rem}
  .tt-chip,.ac-badge,.fm-tag,.fm-id span,.cs-bd{font-size:.72rem}
  .cs2-k{font-size:.72rem}
  .ct-mail{position:relative}
  .ct-mail::after{content:"";position:absolute;inset:-.7rem -.4rem}
}

/* ===== V295 · mobile uniquement (≤700px) — aucun changement sur la version ordinateur ===== */
@media(max-width:700px){
  /* Talent management : grille de 2 colonnes (comme l'académie) au lieu d'un talent plein écran */
  .tg-grid.t3{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none;margin-inline:0;gap:.7rem}
  .tg-grid.t3>li:last-child:nth-child(odd){grid-column:1/-1;justify-self:center;width:calc((100% - .7rem)/2)}
  .tg-grid.t3 .ig-hd{padding:.7rem .75rem;gap:.6rem}
  .tg-grid.t3 .ig-hd .ig-ring{width:36px}
  .tg-grid.t3 .ig-hn{font-size:.8rem}
  .tg-grid.t3 .ig-more{display:none}
  .tg-grid.t3 .ig-ac{padding:.65rem .75rem .1rem;gap:.7rem}
  .tg-grid.t3 .ig-ac svg{width:22px;height:22px}
  .tg-grid.t3 .ig-fl{padding:.3rem .75rem 0;font-size:.82rem}
  .tg-grid.t3 .ig-cp{padding:.25rem .75rem .9rem;font-size:0;line-height:0}
  .tg-grid.t3 .ig-cp b{font-size:0}
  .tg-grid.t3 .ig-cp a{display:inline-block;font-size:.78rem;line-height:1.3}
  /* Brand management : campagnes en grille de 2 */
  .cl-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;align-items:stretch}
  .cl-m{aspect-ratio:4/5}
  .cl-b{left:.55rem;top:.55rem;padding:.25rem .6rem;font-size:.62rem}
  .cl-t{gap:.55rem;padding:.8rem .8rem 1rem}
  .cl-t h2{font-size:.92rem;line-height:1.05}
  .cl-k{gap:.35rem}
  .cl-k span{padding:.28rem .6rem;font-size:.72rem}
  .cl-go{font-size:.78rem;gap:.35rem}
  .cl-go svg{width:13px;height:13px}
  .cl-m .bm-lg img{height:clamp(1.5rem,7vw,2.1rem)}
  /* Contact : adresse mail et réseaux sous le formulaire */
  .ct-in{row-gap:1.1rem;justify-items:start;align-items:start}
  .ct-in>.ct-l{display:contents}
  .ct-in>.ct-f{order:1;justify-self:stretch;margin-top:.9rem}
  .ct-l>.ct-cn{order:2;margin-top:.9rem!important}
}
