  /* ---------- HERO ---------- */
  .hero{
    background:var(--noir); color:var(--ivoire);
    min-height:min(100vh,860px); display:flex; flex-direction:column; justify-content:flex-end;
    padding-top:78px; overflow:hidden; position:relative;
  }
  .hero-video{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:0.38; background-size:cover; background-position:center; background-repeat:no-repeat;}
  .hero-video-overlay{position:absolute; inset:0; background:linear-gradient(180deg, rgba(0,0,0,0.15) 0%, rgba(0,0,0,0.7) 70%, #000 100%);}
  .hero-shape{position:absolute; right:-140px; top:-120px; width:min(46vw,560px); aspect-ratio:1; border-radius:50%; background:var(--moutarde); z-index:1;}
  .hero-content{position:relative; padding-bottom:80px; z-index:2;}
  .hero-eyebrow{display:flex; align-items:center; gap:12px; margin-bottom:26px; animation:riseIn .9s .1s cubic-bezier(.16,1,.3,1) both;}
  .hero-eyebrow .dot{width:12px; height:12px; background:var(--corail);}
  .hero h1{
    font-weight:900; text-transform:uppercase; font-size:clamp(32px, 6.6vw, 96px); line-height:.98; max-width:15ch;
    animation:riseIn 1s .2s cubic-bezier(.16,1,.3,1) both;
  }
  .hero h1 .accent{color:var(--corail); font-style:normal;}
  .hero-sub{
    display:flex; justify-content:space-between; align-items:flex-end; gap:40px; margin-top:44px;
    flex-wrap:wrap; border-top:1px solid var(--ligne-sombre); padding-top:28px;
    animation:riseIn 1s .4s cubic-bezier(.16,1,.3,1) both;
  }
  .hero-sub p{max-width:46ch; color:#CFC7BD; font-size:17px; line-height:1.6;}
  @keyframes riseIn{from{opacity:.001; transform:translateY(20px);} to{opacity:1; transform:none;}}
  /* ---------- MANIFESTE ---------- */
  /* Variables, .label et reset : voir style.css */
  .manifeste{background:var(--ivoire); padding:80px 24px 100px 24px; overflow:hidden;}
  .manifeste-wrap{max-width:1000px; margin:0 auto; display:grid; grid-template-columns:1fr auto; align-items:center; gap:60px;}
  .manifeste-titre{grid-column:1 / -1; margin:0 0 -16px;}
  /* Citation */
  .manifeste-citation{margin:0; min-width:0;}
  .manifeste-guillemets{display:flex; gap:10px; margin:0 0 44px 14px;}
  .manifeste-guillemets span{width:26px; height:42px; background:var(--corail); transform:skewX(-22deg);}
  .manifeste-citation blockquote{margin:0;}
  .manifeste-citation blockquote p{margin:0; max-width:19em; font-size:clamp(24px, 2.9vw, 32px); font-weight:700; line-height:1.4; color:var(--encre);}
  /* Auteur */
  .manifeste-auteur{display:flex; align-items:flex-start; gap:16px; margin-top:36px;}
  .manifeste-auteur-trait{flex:none; width:44px; height:4px; margin-top:13px; background:var(--prune);}
  .manifeste-auteur-nom{display:block; font-size:18px; font-weight:700; color:var(--encre);}
  .manifeste-auteur-role{display:block; margin-top:2px; font-size:15px; font-weight:400; color:var(--encre-douce);}
  /* Visuel : anneau moutarde + liseré ivoire autour de la photo */
  .manifeste-visuel{position:relative; width:345px; aspect-ratio:1;}
  .manifeste-portrait{position:relative; z-index:1; width:100%; height:100%; border-radius:50%; border:22px solid var(--moutarde); padding:8px; background:var(--ivoire);}
  .manifeste-portrait img{
    display:block; width:100%; height:100%; object-fit:cover; border-radius:50%; filter:grayscale(1);
    /* Fond de secours si la photo n'est pas encore là (alt masqué) */
    color:transparent; background:radial-gradient(circle at 50% 40%, #E6E6E6 0%, #8C8C8C 55%, #2A2A2A 100%);
  }
  /* Formes décoratives */
  .manifeste-forme{position:absolute; display:block;}
  .manifeste-carre{z-index:2; left:-5px; bottom:-1px; width:60px; height:60px; background:var(--corail);}
  .manifeste-triangle{z-index:0; right:-12px; bottom:-22px; width:75px; height:75px; background:var(--prune); clip-path:polygon(100% 0, 100% 100%, 0 100%);}
  @media (max-width:860px){
    .manifeste{padding:64px 16px;}
    .manifeste-wrap{grid-template-columns:1fr; gap:56px;}
    .manifeste-visuel{width:min(300px, 78vw); justify-self:center;}
    .manifeste-portrait{border-width:18px; padding:6px;}
    .manifeste-carre{left:-30px; width:48px; height:48px;}
    .manifeste-triangle{right:-10px; bottom:-18px; width:60px; height:60px;}
  }
  .showcase{padding:0 0 120px; background:var(--ivoire);}
  .section-head{display:flex; justify-content:space-between; align-items:flex-end; gap:24px; padding-bottom:40px; flex-wrap:wrap;}
  .section-head h2{font-size:clamp(30px, 3.6vw, 48px);}
  .showcase-grid{display:grid; grid-template-columns:1fr 1fr; gap:4px; background:var(--ivoire);}
  @media (max-width:800px){ .showcase-grid{grid-template-columns:1fr;} }
  /* ---------- PÔLES (expertises) ---------- */
  .expertises{padding:0 0 120px; background:var(--ivoire);}
  .exp-list{display:grid; grid-template-columns:repeat(5,1fr); gap:10px; border:none;}
  .exp-item{
    position:relative; overflow:hidden; background:var(--pc); color:var(--blanc);
    display:flex; flex-direction:column; gap:12px; padding:26px 22px 28px; min-height:400px; border:none;
  }
  .exp-item.light{color:var(--encre);}
  .exp-item::after{content:''; position:absolute; right:-48px; top:-48px; width:170px; height:170px; background:currentColor; opacity:.16;}
  .exp-item[data-pole="strategie"]::after{clip-path:polygon(100% 0,100% 100%,0 100%);}
  .exp-item[data-pole="rp"]::after{border-radius:50%;}
  .exp-item[data-pole="audiovisuel"]::after{border-radius:170px 170px 0 0; height:85px; top:-10px;}
  .exp-item[data-pole="evenementiel"]::after{border-radius:0 170px 0 0; right:-60px; top:-60px;}
  .exp-item .label{color:inherit; opacity:1; font-weight:900; font-size:44px; line-height:1; letter-spacing:0; text-transform:none; padding:0;}
  .exp-item h3{font-size:22px; line-height:1.15; font-weight:800; margin-top:auto;}
  .exp-item p{font-size:14px; line-height:1.55; opacity:.92; padding:0; max-width:none; color:inherit;}
  @media (max-width:1100px){ .exp-list{grid-template-columns:repeat(3,1fr);} }
  @media (max-width:760px){ .exp-list{grid-template-columns:1fr 1fr;} .exp-item{min-height:320px;} }
  @media (max-width:480px){ .exp-list{grid-template-columns:1fr;} .exp-item{min-height:0;} .exp-item h3{margin-top:24px;} }
