@import url('https://fonts.googleapis.com/css2?family=Archivo+Black&family=Work+Sans:wght@400;500;600;700&display=swap');
:root{--paper:#f1f0eb;--ink:#101010;--muted:#6d6b65;--orange:#e76132;--red:#ef312e;--max:1720px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}.nav{height:72px;padding:0 3vw;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid #aaa8a0;position:sticky;top:0;background:rgba(241,240,235,.92);backdrop-filter:blur(14px);z-index:30}.nav a{color:inherit;text-decoration:none}.brand{font-weight:900;letter-spacing:-.04em}.nav nav{display:flex;gap:30px;font-size:12px;text-transform:uppercase;letter-spacing:.06em}.nav-index{justify-self:end;font-size:10px;letter-spacing:.12em}.hero{min-height:calc(100svh - 72px);position:relative;overflow:hidden;padding:3vw;display:flex;flex-direction:column;justify-content:space-between}.hero-top{display:flex;gap:34px;font-size:11px;font-weight:700;letter-spacing:.12em}.hero-top p{margin:0}.hero-copy{position:relative;z-index:2}.hero h1{font-size:clamp(100px,18.5vw,330px);line-height:.67;letter-spacing:-.085em;margin:0;font-weight:900}.hero h1 span{display:block}.hero h1 span:last-child{margin-left:20vw}.hero-bottom{display:flex;align-items:end;justify-content:space-between;margin-top:55px;padding-left:20.5vw}.hero-bottom p{font-size:clamp(18px,1.7vw,28px);line-height:1.12;margin:0}.hero-bottom a{color:inherit;text-decoration:none;border-bottom:1px solid;padding-bottom:6px;font-size:13px}.hero-art{position:absolute;right:-7vw;top:1vh;width:min(47vw,780px);opacity:.065;filter:grayscale(1);transform:rotate(7deg)}.projects,.illustration{max-width:var(--max);margin:auto;padding:150px 3vw}.section-head{display:grid;grid-template-columns:80px 1.7fr 1fr;gap:25px;border-top:1px solid;padding-top:20px;margin-bottom:120px;align-items:start}.section-head span,.eyebrow{font-size:11px;letter-spacing:.14em;font-weight:700}.section-head h2{font-size:clamp(65px,9vw,150px);line-height:.76;letter-spacing:-.07em;margin:0}.section-head p{font-size:18px;line-height:1.4;color:var(--muted);margin:8px 0 0;max-width:440px}.project{margin-bottom:170px;position:relative}.project-wide{display:grid;grid-template-columns:minmax(270px,.62fr) 1.75fr;gap:4vw;align-items:center}.project-split{display:grid;grid-template-columns:.8fr 1.35fr;gap:6vw;align-items:center}.project-split.reverse{grid-template-columns:1.35fr .8fr}.project-split.reverse .project-copy{order:2}.project-split.reverse .visual{order:1}.project-copy{padding:4vw 0}.num{display:block;font-size:11px;margin-bottom:70px}.type{font-size:11px;text-transform:uppercase;letter-spacing:.09em;line-height:1.5}.project-copy h3{font-size:clamp(52px,7vw,122px);line-height:.78;letter-spacing:-.065em;margin:18px 0 28px}.desc{max-width:380px;color:var(--muted);font-size:16px;line-height:1.45}.visual{overflow:hidden;background:#ddd;min-height:520px}.visual img{width:100%;height:100%;min-height:520px;max-height:850px;object-fit:cover;display:block;transition:transform .8s cubic-bezier(.2,.8,.2,1)}.project:hover .visual img{transform:scale(1.018)}.visual.contain{display:grid;place-items:center;padding:4vw;background:#e7e4dc}.visual.contain img{object-fit:contain;min-height:0;max-height:760px}.orange{background:#e77c23;padding:4vw;margin-left:-3vw;margin-right:-3vw}.orange .visual{background:#e77c23}.pale{background:#e9d5d5;padding:4vw;margin-left:-3vw;margin-right:-3vw}.pale .visual{background:transparent}.comic{background:#efe7b9;padding:4vw;margin-left:-3vw;margin-right:-3vw}.dark{background:#171717;color:#f5f3ec;padding:4vw;margin-left:-3vw;margin-right:-3vw}.dark .desc,.dark .type{color:#aaa}.red{background:#ed302d;padding:4vw;margin-left:-3vw;margin-right:-3vw}.red .visual{background:#ed302d}.project-pair{display:grid;grid-template-columns:1fr 1fr;gap:4vw;margin-bottom:170px}.project-pair article:nth-child(2){padding-top:13vw}.pair-image{overflow:hidden;background:#ddd;margin-bottom:20px}.pair-image img{width:100%;display:block;transition:transform .7s}.project-pair article:hover img{transform:scale(1.02)}.project-pair span,.motion span{font-size:10px;letter-spacing:.12em}.project-pair h3{font-size:clamp(30px,3vw,54px);letter-spacing:-.04em;margin:10px 0}.motion{background:#0d0d0d;color:#f5f3ed;padding:150px max(3vw,calc((100vw - var(--max))/2 + 3vw))}.section-head.light{border-color:#777}.section-head.light p{color:#aaa}.motion-feature{display:grid;grid-template-columns:.45fr 1.55fr;gap:4vw;align-items:end;margin-bottom:120px}.motion-feature h3,.motion-row h3{font-size:clamp(40px,5vw,80px);letter-spacing:-.055em;margin:10px 0}.motion video{width:100%;aspect-ratio:16/9;background:#000;object-fit:cover}.motion-row{display:grid;grid-template-columns:repeat(3,1fr);gap:2vw}.motion-row h3{font-size:32px}.motion-row span{display:block;margin-top:15px;color:#999}.art-editorial{display:grid;grid-template-columns:repeat(12,1fr);gap:2vw;align-items:start}.art-editorial img{width:100%;display:block;cursor:zoom-in}.a1{grid-column:1/7}.a2{grid-column:8/13;margin-top:12vw}.a3{grid-column:2/5;margin-top:-4vw}.a4{grid-column:6/11;margin-top:7vw}.a5{grid-column:9/13}.a6{grid-column:1/5;margin-top:4vw}.a7{grid-column:5/9;margin-top:12vw}.a8{grid-column:9/13;margin-top:3vw}.a9{grid-column:2/8;margin-top:5vw}.about{max-width:var(--max);margin:auto;padding:150px 3vw;border-top:1px solid}.about>div{display:grid;grid-template-columns:1.6fr .65fr;gap:5vw}.about h2{font-size:clamp(70px,10vw,170px);line-height:.73;letter-spacing:-.075em;margin:40px 0 0}.about-copy{padding-top:70px}.about-copy p{font-size:21px;line-height:1.45}.about-copy a{display:inline-block;margin-top:30px;color:inherit;text-decoration:none;border-bottom:1px solid;padding-bottom:7px}footer{min-height:75vh;background:var(--orange);padding:100px max(3vw,calc((100vw - var(--max))/2 + 3vw));display:flex;flex-direction:column;justify-content:space-between}footer>p{font-size:12px;text-transform:uppercase;letter-spacing:.12em}footer h2{font-size:clamp(90px,15vw,250px);line-height:.68;letter-spacing:-.085em;margin:0}footer>div{display:flex;gap:30px;justify-content:flex-end;align-items:center}footer a{color:inherit}.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.96);z-index:99;display:grid;place-items:center;padding:3vw;cursor:zoom-out}.lightbox img{max-width:95vw;max-height:94vh;object-fit:contain}@media(max-width:850px){.nav{grid-template-columns:1fr auto}.nav nav{display:none}.nav-index{display:block}.hero{min-height:80svh;padding:25px 20px}.hero-top{gap:15px;flex-wrap:wrap}.hero h1{font-size:25vw;line-height:.72}.hero h1 span:last-child{margin-left:0}.hero-bottom{padding-left:0;align-items:start;gap:30px}.hero-art{width:85vw;right:-25vw}.projects,.illustration{padding:90px 20px}.section-head{grid-template-columns:40px 1fr;margin-bottom:70px}.section-head p{grid-column:2}.section-head h2{font-size:17vw}.project,.project-pair{margin-bottom:90px}.project-wide,.project-split,.project-split.reverse{grid-template-columns:1fr;gap:20px}.project-split.reverse .project-copy,.project-split.reverse .visual{order:initial}.project-copy{padding:0}.num{margin-bottom:25px}.visual,.visual img{min-height:0}.visual img{height:auto;max-height:none}.visual.contain{padding:25px}.orange,.pale,.comic,.dark,.red{margin-left:-20px;margin-right:-20px;padding:45px 20px}.project-pair{gap:20px}.project-pair article:nth-child(2){padding-top:18vw}.motion{padding:90px 20px}.motion-feature{grid-template-columns:1fr;margin-bottom:70px}.motion-row{grid-template-columns:1fr}.art-editorial{display:block}.art-editorial img{margin-bottom:20px}.about{padding:90px 20px}.about>div{grid-template-columns:1fr}.about h2{font-size:17vw}.about-copy{padding-top:20px}footer{min-height:60vh;padding:70px 20px}footer h2{font-size:22vw}footer>div{align-items:flex-start;flex-direction:column;gap:12px}}
/* V4.1 — more complete visual integration */
.aqua{background:#d8eef2;padding:4vw;margin-left:-3vw;margin-right:-3vw}.aqua .visual{background:transparent}
.detail-strip{display:grid;grid-template-columns:1fr 1fr;gap:2vw;margin:-105px 0 170px}.detail-strip.three{grid-template-columns:repeat(3,1fr)}.detail-strip.solo{grid-template-columns:minmax(280px,520px);justify-content:end}.detail-strip img{width:100%;height:clamp(260px,34vw,580px);object-fit:cover;display:block;background:#ddd}.detail-strip.solo img{object-fit:contain;background:#efe7b9;padding:2vw}
.lower-third-feature{border-top:1px solid #343434;padding-top:35px}.lower-third-feature em{font-family:Georgia,serif;font-weight:400}.motion-feature p{color:#999;max-width:330px;line-height:1.5}.motion-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:5vw 2vw}.motion-grid article:nth-child(even){padding-top:8vw}.motion-grid h3{font-size:clamp(32px,4vw,62px);letter-spacing:-.05em;margin:10px 0}.motion-grid span{display:block;margin-top:15px;color:#999}
.illustration-lead{display:grid;grid-template-columns:1.35fr .65fr;gap:5vw;align-items:center;margin-bottom:110px}.illustration-lead img{width:100%;max-height:800px;object-fit:contain}.illustration-lead p{font-size:10px;letter-spacing:.15em}.illustration-lead h3{font-size:clamp(45px,6vw,100px);line-height:.84;letter-spacing:-.06em;margin:20px 0}.art-masonry{columns:3 320px;column-gap:2vw}.art-masonry img{width:100%;display:block;margin:0 0 2vw;break-inside:avoid;cursor:zoom-in}
@media(max-width:850px){.detail-strip,.detail-strip.three,.detail-strip.solo{grid-template-columns:1fr;margin:-45px 0 90px}.detail-strip img{height:auto}.motion-grid{grid-template-columns:1fr}.motion-grid article:nth-child(even){padding-top:0}.illustration-lead{grid-template-columns:1fr;margin-bottom:50px}.art-masonry{columns:1}.aqua{margin-left:-20px;margin-right:-20px;padding:45px 20px}}
.lower-thirds-block{padding:clamp(3rem,7vw,7rem) clamp(1.2rem,4vw,5rem);border-top:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18)}
.lower-thirds-title{display:grid;grid-template-columns:1fr 2fr;gap:2rem;align-items:end;margin-bottom:2.5rem}.lower-thirds-title span{font-size:.75rem;letter-spacing:.14em}.lower-thirds-title h3{font-size:clamp(2.7rem,6vw,6rem);line-height:.9;margin:0}.lower-thirds-title em{font-weight:400}.lower-thirds-title p{grid-column:2;max-width:36rem;opacity:.7}.lower-thirds-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.lower-thirds-grid article{margin:0}.lower-thirds-grid video{width:100%;aspect-ratio:16/9;object-fit:cover;background:#080808}.lower-thirds-grid h4{font-size:1rem;font-weight:500;margin:.8rem 0 0}.behance-art{margin-bottom:2rem}.behance-art img{object-position:center}.small-note{font-size:.9rem;max-width:28rem;opacity:.65}.secondary-art{margin-top:2rem}
@media(max-width:800px){.lower-thirds-title{grid-template-columns:1fr}.lower-thirds-title p{grid-column:1}.lower-thirds-grid{grid-template-columns:1fr}.lower-thirds-grid h4{margin-bottom:1.5rem}}
.mini-details{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}.mini-details img{width:100%;height:220px;object-fit:cover;display:block}.detail-strip{margin-top:clamp(20px,3vw,44px);margin-bottom:clamp(70px,10vw,150px)}@media(max-width:720px){.mini-details img{height:150px}}
/* V4.6 — Les trois lower thirds sont traités comme une seule série */
.lower-thirds-block{margin:clamp(4rem,8vw,8rem) 0;background:#111;padding:clamp(2rem,4vw,4rem);border:1px solid rgba(255,255,255,.16)}
.lower-thirds-title{grid-template-columns:minmax(130px,.55fr) 1.45fr;margin-bottom:clamp(2rem,4vw,4rem)}
.lower-thirds-title p{margin-top:.4rem}
.lower-thirds-grid{gap:clamp(.8rem,1.5vw,1.5rem);align-items:start}
.lower-thirds-grid article{padding:0;border:0}
.lower-thirds-grid video{display:block;border:1px solid rgba(255,255,255,.12)}
.lower-thirds-grid h4{font-size:.9rem;letter-spacing:.02em;color:#ddd}
@media(max-width:800px){.lower-thirds-block{margin:3rem 0;padding:1.25rem}.lower-thirds-title{grid-template-columns:1fr}.lower-thirds-grid{grid-template-columns:1fr}}
/* V4.7 — projets personnels : sélection éditoriale avant la galerie */
.personal-work .section-head strong{color:var(--ink);font-weight:700}
.personal-feature{display:grid;grid-template-columns:1.45fr .55fr;gap:5vw;align-items:center;margin-bottom:clamp(90px,11vw,180px)}
.personal-feature.reverse{grid-template-columns:.55fr 1.45fr}.personal-feature.reverse img{order:2}.personal-feature.reverse .personal-copy{order:1}
.personal-feature img{width:100%;max-height:850px;object-fit:contain;display:block;cursor:zoom-in}
.personal-copy span,.personal-gallery-head span{font-size:10px;letter-spacing:.14em;font-weight:700}.personal-copy h3{font-size:clamp(48px,6.5vw,110px);line-height:.82;letter-spacing:-.065em;margin:18px 0}.personal-copy p{max-width:330px;color:var(--muted);line-height:1.45}
.personal-feature-main{background:#e9e5dc;padding:clamp(25px,4vw,70px);margin-left:-3vw;margin-right:-3vw}.personal-feature-main img{max-height:900px}
.personal-duo{display:grid;grid-template-columns:1fr 1fr;gap:4vw;align-items:start;margin-bottom:clamp(90px,11vw,180px)}.personal-duo figure{margin:0}.personal-duo figure:nth-child(2){margin-top:10vw}.personal-duo img{width:100%;display:block;max-height:780px;object-fit:contain;cursor:zoom-in}.personal-duo figcaption{font-size:10px;letter-spacing:.12em;margin-top:14px;text-transform:uppercase}
.creature-feature{background:#111;color:#f3f1eb;padding:clamp(25px,4vw,70px);margin-left:-3vw;margin-right:-3vw}.creature-feature img{background:#111}.creature-feature .personal-copy p{color:#aaa}.compact-feature img{max-height:700px}
.personal-gallery-head{border-top:1px solid;padding-top:18px;margin:0 0 45px;display:grid;grid-template-columns:1fr 1fr;gap:2vw}.personal-gallery-head p{margin:0;color:var(--muted);max-width:430px}.personal-masonry{columns:3 300px}
@media(max-width:850px){.personal-feature,.personal-feature.reverse{grid-template-columns:1fr;gap:25px;margin-bottom:80px}.personal-feature.reverse img,.personal-feature.reverse .personal-copy{order:initial}.personal-feature-main,.creature-feature{margin-left:-20px;margin-right:-20px;padding:35px 20px}.personal-duo{grid-template-columns:1fr;gap:40px;margin-bottom:80px}.personal-duo figure:nth-child(2){margin-top:0}.personal-gallery-head{grid-template-columns:1fr}.personal-masonry{columns:1}}

/* V4.8 — finition visuelle, interactions et responsive
   Direction : éditoriale, sobre, généreuse, inspirée des références fournies. */
:root{--line:rgba(16,16,16,.18);--soft:#e9e7e1;--ease:cubic-bezier(.2,.7,.2,1)}
body{overflow-x:hidden;text-rendering:optimizeLegibility}
::selection{background:var(--ink);color:var(--paper)}
a,button,video,img{-webkit-tap-highlight-color:transparent}
a:focus-visible,video:focus-visible{outline:2px solid currentColor;outline-offset:5px}

/* Navigation plus légère et plus précise */
.nav{height:78px;padding:0 clamp(20px,3vw,54px);border-bottom:1px solid var(--line);background:rgba(241,240,235,.88);transition:background .25s ease,box-shadow .25s ease}
.nav.is-scrolled{background:rgba(241,240,235,.97);box-shadow:0 8px 30px rgba(0,0,0,.05)}
.brand{font-size:15px;letter-spacing:.08em}
.nav nav{gap:clamp(18px,2.2vw,36px)}
.nav nav a{position:relative;padding:10px 0;font-weight:700}
.nav nav a::after{content:"";position:absolute;left:0;right:100%;bottom:4px;height:1px;background:currentColor;transition:right .28s var(--ease)}
.nav nav a:hover::after,.nav nav a.active::after{right:0}

/* Hero : plus proche d'une page d'ouverture éditoriale */
.hero{min-height:calc(100svh - 78px);padding:clamp(28px,4.1vw,74px) clamp(20px,3vw,54px) clamp(38px,4vw,72px)}
.hero-top{gap:clamp(16px,2.5vw,42px);color:#3f3e3a}
.hero h1{font-size:clamp(92px,16.8vw,292px);line-height:.7;max-width:1500px}
.hero h1 span:last-child{margin-left:18vw}
.hero-bottom{padding-left:18.4vw;margin-top:clamp(40px,5vw,80px)}
.hero-bottom p{max-width:480px;line-height:1.18}
.hero-bottom a{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border:1px solid var(--ink);font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:10px;transition:background .25s,color .25s}
.hero-bottom a:hover{background:var(--ink);color:var(--paper)}
.hero-art{right:-3vw;top:4vh;width:min(43vw,730px);opacity:.045;filter:grayscale(1) contrast(.8);transform:rotate(5deg)}

/* Sections : rythme plus cohérent */
.projects,.illustration{padding-top:clamp(110px,10vw,175px);padding-bottom:clamp(110px,10vw,175px)}
.edition-section{border-top:1px solid var(--line)}
.section-head{grid-template-columns:70px minmax(0,1.5fr) minmax(280px,.7fr);gap:clamp(18px,2.4vw,40px);margin-bottom:clamp(82px,8vw,135px);border-color:var(--line)}
.section-head h2{font-size:clamp(64px,8.2vw,138px);line-height:.79}
.section-head p{font-size:clamp(15px,1.25vw,18px)}

/* Projets : images plus premium, détails plus réguliers */
.project{margin-bottom:clamp(95px,10vw,165px)}
.project-wide{grid-template-columns:minmax(270px,.58fr) minmax(0,1.72fr);gap:clamp(35px,5vw,90px)}
.project-split{gap:clamp(40px,6vw,100px)}
.project-copy h3{font-size:clamp(52px,6.5vw,112px);line-height:.82}
.type{color:#53514c;font-weight:700}
.visual{min-height:0;box-shadow:0 18px 55px rgba(0,0,0,.06)}
.visual img{min-height:0;aspect-ratio:4/3;max-height:none;transform:scale(1.001);transition:transform .9s var(--ease),filter .5s ease}
.project:hover .visual img{transform:scale(1.024)}
.detail-strip{gap:clamp(12px,1.5vw,26px);margin-top:clamp(-50px,-2.5vw,-20px);margin-bottom:clamp(90px,10vw,155px)}
.detail-strip img{height:clamp(240px,30vw,520px);box-shadow:0 14px 40px rgba(0,0,0,.045);transition:transform .55s var(--ease),box-shadow .55s var(--ease)}
.detail-strip img:hover{transform:translateY(-5px);box-shadow:0 22px 55px rgba(0,0,0,.09)}
.orange,.pale,.comic,.dark,.red,.aqua{border-radius:2px}

/* Motion : hiérarchie claire, respiration et cartes vidéo */
.motion{padding-top:clamp(115px,10vw,175px);padding-bottom:clamp(115px,10vw,175px)}
.motion .section-head{margin-bottom:clamp(80px,8vw,130px)}
.motion-feature{gap:clamp(35px,5vw,90px);margin-bottom:clamp(85px,9vw,145px);align-items:center}
.motion-feature video,.motion-grid video,.lower-thirds-grid video{border:1px solid rgba(255,255,255,.12);box-shadow:0 24px 65px rgba(0,0,0,.35)}
.lower-thirds-block{margin:clamp(75px,9vw,145px) 0;padding:clamp(28px,4vw,68px);background:#121212;border-color:rgba(255,255,255,.12)}
.lower-thirds-grid article{transition:transform .35s var(--ease)}
.lower-thirds-grid article:hover{transform:translateY(-5px)}
.motion-grid{gap:clamp(42px,5vw,80px) clamp(18px,2vw,34px)}
.motion-grid article{border-top:1px solid rgba(255,255,255,.15);padding-top:18px}
.motion-grid article:nth-child(even){padding-top:calc(8vw + 18px)}

/* Projets personnels : un peu plus galerie d'auteur, moins mosaïque */
.personal-work{position:relative}
.personal-work::before{content:"";position:absolute;inset:0 0 auto auto;width:min(34vw,560px);height:min(34vw,560px);background:url('assets/images/chatjaune.png') center/contain no-repeat;opacity:.025;filter:grayscale(1);pointer-events:none;transform:translate(20%,-4%) rotate(8deg)}
.personal-feature{gap:clamp(40px,6vw,100px)}
.personal-feature img,.personal-duo img,.art-masonry img{transition:transform .6s var(--ease),box-shadow .6s var(--ease)}
.personal-feature img:hover,.personal-duo img:hover,.art-masonry img:hover{transform:translateY(-4px);box-shadow:0 18px 50px rgba(0,0,0,.08)}
.personal-gallery-head{border-color:var(--line)}
.personal-masonry{column-gap:clamp(14px,1.8vw,30px)}
.personal-masonry img{margin-bottom:clamp(14px,1.8vw,30px)}

/* À propos et contact */
.about{padding-top:clamp(110px,10vw,175px);padding-bottom:clamp(110px,10vw,175px);border-color:var(--line)}
.about h2{font-size:clamp(68px,9vw,150px);line-height:.78}
.about-copy p{font-size:clamp(18px,1.5vw,22px)}
.about-copy a{border:1px solid var(--ink);padding:14px 18px;text-decoration:none;transition:background .25s,color .25s}
.about-copy a:hover{background:var(--ink);color:var(--paper)}
footer{min-height:68vh;padding-top:clamp(75px,8vw,125px);padding-bottom:clamp(55px,6vw,95px)}
footer h2{font-size:clamp(82px,13.5vw,230px);line-height:.72}
footer a{text-underline-offset:4px}

/* Révélations au scroll : discrètes, sans effet gadget */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .75s var(--ease),transform .75s var(--ease)}
.reveal.is-visible{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.visual img,.detail-strip img,.personal-feature img,.personal-duo img,.art-masonry img{transition:none}}

/* Tablette / mobile : navigation accessible, tailles et espacements resserrés */
@media(max-width:850px){
  .nav{height:auto;min-height:68px;grid-template-columns:1fr auto;grid-template-rows:68px auto;padding:0 20px 10px}
  .nav nav{grid-column:1/-1;display:flex;overflow-x:auto;gap:22px;padding:0 0 6px;scrollbar-width:none;white-space:nowrap}
  .nav nav::-webkit-scrollbar{display:none}.nav-index{font-size:9px}
  .hero{min-height:78svh;padding-top:34px}
  .hero-top{font-size:9px}.hero h1{font-size:24vw;line-height:.76}.hero h1 span:last-child{margin-left:0}
  .hero-bottom{padding-left:0;display:grid;grid-template-columns:1fr;gap:24px;margin-top:35px}.hero-bottom a{justify-self:start}
  .hero-art{width:92vw;right:-32vw;top:8vh;opacity:.038}
  .projects,.illustration,.motion,.about{padding-top:90px;padding-bottom:90px}
  .section-head{grid-template-columns:34px 1fr;margin-bottom:65px}.section-head h2{font-size:16vw}.section-head p{grid-column:2;font-size:15px}
  .project-wide,.project-split,.project-split.reverse{gap:25px}.project-copy h3{font-size:15vw}.project-copy{padding-bottom:10px}
  .visual img{aspect-ratio:auto}.detail-strip{margin-top:24px}
  .motion-feature{gap:24px}.motion-grid article,.motion-grid article:nth-child(even){padding-top:18px}
  .lower-thirds-block{padding:22px 16px}.lower-thirds-title h3{font-size:12vw}
  .personal-feature-main,.creature-feature{border-radius:0}
  .personal-work::before{width:75vw;height:75vw;opacity:.018}
  .about h2{font-size:16vw}.about-copy p{font-size:18px}
  footer h2{font-size:20vw}
}

@media(max-width:520px){
  .brand{font-size:13px}.nav-index{display:none}.nav{grid-template-columns:1fr}
  .hero-top{gap:11px}.hero h1{font-size:25vw}
  .section-head h2{font-size:17vw}.section-head span{font-size:9px}
  .project-copy h3{font-size:16vw}.detail-strip.three,.detail-strip{gap:14px}
  .personal-copy h3{font-size:15vw}
}

/* V6 — direction claire et éditoriale approuvée */
:root{--paper:#f7f5f0;--ink:#0c0c0c;--muted:#66635d;--line:rgba(12,12,12,.14)}
body{background:var(--paper);color:var(--ink)}
.nav{height:76px;background:rgba(247,245,240,.92);padding:0 clamp(28px,6vw,100px)}
.brand{font-size:31px;letter-spacing:-.08em;font-weight:900}.nav nav a{font-size:11px;letter-spacing:.02em}.nav-index{font-size:9px;letter-spacing:.12em}
.hero{min-height:650px;height:calc(100svh - 76px);max-height:900px;padding:clamp(55px,7vw,105px) clamp(28px,9vw,145px);display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}
.hero-art{display:block;position:absolute;right:-4%;top:-2%;width:min(58vw,920px);height:108%;object-fit:cover;object-position:center;opacity:.075;filter:grayscale(1) contrast(.72);mix-blend-mode:multiply;transform:none;mask-image:linear-gradient(90deg,transparent 0%,#000 30%,#000 100%)}
.hero-copy{position:relative;z-index:2}.hero h1{font-size:clamp(82px,10.2vw,166px);line-height:.72;letter-spacing:-.075em;margin:0;max-width:680px}.hero h1 span{display:block}.hero h1 span:last-child{margin:0}
.hero-role{font-size:clamp(10px,1vw,14px);font-weight:800;letter-spacing:.13em;margin:28px 0 0}.hero-role b{font-weight:400;padding:0 .65em}
.hero-bottom{padding:0;margin:clamp(36px,4vw,62px) 0 0 50px;display:flex;flex-direction:column;align-items:flex-start;gap:22px}.hero-bottom p{font-size:clamp(16px,1.45vw,22px);font-weight:650;line-height:1.35;margin:0;position:relative}.hero-bottom p:before{content:"";position:absolute;width:38px;height:1px;background:var(--ink);left:-50px;top:12px}.hero-bottom a{background:var(--ink);color:white;border:0;padding:0 22px;min-height:50px}.hero-bottom a span{font-size:18px;margin-left:28px}.hero-bottom a:hover{background:#333}
.scroll-cue{position:absolute;left:3.4vw;bottom:34px;writing-mode:vertical-rl;transform:rotate(180deg);font-size:9px;letter-spacing:.15em;font-weight:800;display:flex;gap:16px;align-items:center}.scroll-cue span{font-size:18px}
.projects,.illustration{max-width:none;padding-left:clamp(28px,7vw,112px);padding-right:clamp(28px,7vw,112px)}
.section-head{grid-template-columns:60px minmax(0,1.5fr) minmax(240px,.65fr);border-top:0;padding-top:0}.section-head>span{font-size:48px;font-weight:300;letter-spacing:-.08em;color:#aaa}.section-head h2{font-size:clamp(48px,6.3vw,102px);line-height:.84}.section-head p{font-size:14px;line-height:1.55}
.project-copy .num{font-weight:400;color:#aaa}.project-copy h3{font-size:clamp(46px,5.8vw,94px)}
.motion{background:#11110f}.motion .section-head>span{color:#6f6f6b}.motion .section-head h2{color:#fff}.motion-feature,.lower-thirds-block{border-color:rgba(255,255,255,.14)}
.personal-work{position:relative;overflow:hidden}.personal-work:before{content:"";position:absolute;inset:0;background:url('assets/images/femme-feature.jpg') center 8%/72% auto no-repeat;opacity:.025;filter:grayscale(1);pointer-events:none}.personal-work>*{position:relative}
.apropos{background:#171715;color:#f4f2ed}.apropos .section-head h2,.apropos .section-head p{color:#f4f2ed}.apropos .section-head>span{color:#777}.apropos a{color:inherit}
footer{background:#f7f5f0;border-top:1px solid var(--line)}
@media(max-width:900px){.nav-index{display:none}.hero{height:auto;min-height:720px;padding-top:90px}.hero-art{width:90vw;right:-28vw;opacity:.055}.hero h1{font-size:clamp(76px,19vw,130px)}.hero-role{max-width:440px;line-height:1.8}.scroll-cue{display:none}.section-head{grid-template-columns:45px 1fr}.section-head p{grid-column:2}.section-head>span{font-size:34px}}
@media(max-width:650px){.nav{padding:0 20px}.brand{font-size:26px}.hero{padding-left:26px;padding-right:26px;min-height:650px}.hero h1{font-size:clamp(68px,22vw,105px)}.hero-role{font-size:9px;letter-spacing:.09em}.hero-bottom{margin-left:38px}.hero-bottom p:before{left:-38px;width:28px}.projects,.illustration{padding-left:20px;padding-right:20px}.section-head{grid-template-columns:34px 1fr}.section-head>span{font-size:28px}}

/* V6.1 — rapprochement précis de la direction visuelle approuvée */
:root{
  --paper:#f8f7f3;
  --paper-2:#f1f0eb;
  --ink:#0b0b0b;
  --soft:#dedbd3;
  --muted:#6c6962;
  --line:rgba(11,11,11,.16);
  --display:"Arial Narrow","Helvetica Neue",Arial,sans-serif;
}
body{background:var(--paper);font-family:"Helvetica Neue",Arial,sans-serif}

/* Navigation */
.nav{height:82px;padding:0 clamp(28px,6.5vw,112px);border-bottom:0;background:rgba(248,247,243,.92)}
.nav:after{content:"";position:absolute;left:clamp(28px,6.5vw,112px);right:clamp(28px,6.5vw,112px);bottom:0;height:1px;background:var(--line);transform:scaleX(0);transform-origin:left;transition:transform .35s ease}
.nav.is-scrolled:after{transform:scaleX(1)}
.brand{font-size:30px;letter-spacing:-.1em;line-height:1;font-family:var(--display)}
.nav nav{gap:clamp(22px,3.2vw,54px)}
.nav nav a{font-family:var(--display);font-weight:800;font-size:11px;letter-spacing:.025em;position:relative;padding:8px 0}
.nav nav a:after{content:"";position:absolute;left:0;right:100%;bottom:0;height:1px;background:currentColor;transition:right .25s ease}
.nav nav a:hover:after,.nav nav a.active:after{right:0}

/* Hero — même logique de composition que la référence approuvée */
.hero{min-height:660px;height:calc(100svh - 82px);max-height:920px;padding:clamp(62px,7vw,110px) clamp(28px,9vw,150px) clamp(48px,5vw,80px)}
.hero:before{content:"";position:absolute;inset:auto 0 0;height:1px;background:var(--line)}
.hero-art{right:-1%;top:-6%;width:min(56vw,900px);height:112%;object-fit:cover;object-position:48% center;opacity:.065;filter:grayscale(1) contrast(.65) brightness(1.08);mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.65) 28%,#000 55%,#000 100%)}
.hero-copy{width:min(100%,780px)}
.hero-note{display:flex;gap:20px;margin:0 0 30px;font-size:9px;letter-spacing:.16em;font-weight:800;color:#777}
.hero h1{font-family:var(--display);font-weight:900;font-stretch:condensed;font-size:clamp(88px,10.8vw,174px);line-height:.68;letter-spacing:-.07em;max-width:650px}
.hero-role{font-family:var(--display);font-size:clamp(10px,.92vw,13px);font-weight:900;letter-spacing:.14em;margin-top:30px}
.hero-bottom{margin-top:clamp(38px,4.5vw,68px);margin-left:50px;gap:24px}
.hero-bottom p{font-size:clamp(16px,1.35vw,21px);font-weight:650;line-height:1.45}
.hero-bottom a{font-family:var(--display);font-weight:900;text-transform:uppercase;font-size:11px;letter-spacing:.06em;min-height:48px;padding:0 20px;box-shadow:none}
.scroll-cue{left:3.5vw;bottom:38px}

/* Section headers — plus éditoriaux, moins massifs */
.projects,.illustration{padding-top:clamp(92px,9vw,140px);padding-bottom:clamp(95px,9vw,145px)}
.section-head{grid-template-columns:46px minmax(0,1.3fr) minmax(240px,.65fr);gap:24px;margin-bottom:clamp(68px,7vw,112px);align-items:end}
.section-head:before{content:"";grid-column:1/-1;height:1px;background:var(--line);margin-bottom:18px}
.section-head>span{font-family:var(--display);font-size:clamp(42px,4.4vw,68px);line-height:.8;color:#b6b2aa;font-weight:300;align-self:start}
.section-head h2{font-family:var(--display);font-size:clamp(40px,5.3vw,80px);line-height:.86;letter-spacing:-.055em;text-transform:uppercase}
.section-head p{font-size:13px;max-width:360px;margin-bottom:4px;color:var(--muted)}

/* Projets sélectionnés — davantage de grille, de traits et de respiration */
.project{margin-bottom:clamp(72px,8vw,125px);border-top:1px solid var(--line);padding-top:18px}
.project-wide,.project-split{grid-template-columns:minmax(235px,.58fr) minmax(0,1.55fr);gap:clamp(30px,4.8vw,78px);align-items:start}
.project-split.reverse{grid-template-columns:minmax(0,1.55fr) minmax(235px,.58fr)}
.project-copy{padding:14px 0 0;position:sticky;top:112px;align-self:start}
.project-copy .num{font-family:var(--display);font-size:10px;margin-bottom:28px;color:#96928a}
.type{font-family:var(--display);font-size:10px;letter-spacing:.11em;font-weight:800;color:#4f4c46}
.project-copy h3{font-family:var(--display);font-size:clamp(44px,5vw,78px);line-height:.82;letter-spacing:-.055em;text-transform:uppercase;margin:15px 0 22px}
.desc{font-size:14px;line-height:1.55;max-width:320px}
.visual{background:#e9e7e0;box-shadow:none}
.visual img{aspect-ratio:1.46/1;object-position:center;box-shadow:none}
.visual.contain{padding:clamp(24px,3.3vw,52px);background:#efede7}
.orange,.pale,.comic,.dark,.aqua{margin-left:0;margin-right:0;padding:0;background:transparent;color:inherit}
.dark .desc,.dark .type{color:inherit}
.detail-strip,.detail-strip.three,.detail-strip.solo{margin-top:clamp(-55px,-3vw,-25px);margin-bottom:clamp(78px,8vw,125px);padding-left:calc(235px + clamp(30px,4.8vw,78px));grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.detail-strip:not(.three):not(.solo){grid-template-columns:repeat(2,minmax(0,1fr))}
.detail-strip.solo{grid-template-columns:minmax(240px,1fr) 1fr 1fr}
.detail-strip.solo img{grid-column:1/2;padding:0;background:transparent;object-fit:cover}
.detail-strip img{height:clamp(190px,22vw,340px);box-shadow:none;border:1px solid rgba(11,11,11,.07)}

/* Édition — bande légèrement distincte */
.edition-section{background:var(--paper-2);max-width:none;padding-left:clamp(28px,7vw,112px);padding-right:clamp(28px,7vw,112px)}
.edition-section .project:last-child{margin-bottom:0}

/* Motion — bloc sombre net comme dans la maquette */
.motion{background:#121210;padding-top:clamp(95px,9vw,145px);padding-bottom:clamp(100px,10vw,160px)}
.motion .section-head:before{background:rgba(255,255,255,.18)}
.motion .section-head h2{font-family:var(--display);text-transform:uppercase;font-size:clamp(42px,5.4vw,82px)}
.motion-feature{grid-template-columns:minmax(230px,.48fr) minmax(0,1.52fr);align-items:center;border-top:1px solid rgba(255,255,255,.14);padding-top:20px;margin-bottom:clamp(70px,8vw,120px)}
.motion-feature h3,.lower-thirds-title h3,.motion-grid h3{font-family:var(--display);text-transform:uppercase;letter-spacing:-.045em}
.motion-feature h3{font-size:clamp(42px,5vw,76px)}
.motion video{box-shadow:none;border-color:rgba(255,255,255,.1)}
.lower-thirds-block{background:#181816;margin:clamp(70px,7vw,110px) 0;border:1px solid rgba(255,255,255,.11);padding:clamp(26px,3.7vw,58px)}
.lower-thirds-title{grid-template-columns:.7fr 1.5fr .8fr;gap:28px;align-items:start}
.lower-thirds-title h3{font-size:clamp(42px,5vw,76px);margin:0}
.lower-thirds-title p{font-size:13px;color:#a5a5a0;margin:0;padding-top:8px}
.lower-thirds-grid{gap:14px}
.lower-thirds-grid article{padding-top:12px;border-top:1px solid rgba(255,255,255,.12)}
.lower-thirds-grid h4{font-family:var(--display);font-size:13px;text-transform:uppercase;letter-spacing:.05em}
.motion-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:42px 18px}
.motion-grid article:nth-child(even){padding-top:18px}
.motion-grid h3{font-size:clamp(26px,2.7vw,42px)}

/* Projets personnels — référence claire + tracés très pâles */
.personal-work{background:var(--paper)}
.personal-work:before{background:url('assets/images/femme-feature.jpg') right 0/58% auto no-repeat;opacity:.026;filter:grayscale(1) contrast(.7)}
.personal-feature{border-top:1px solid var(--line);padding-top:18px;margin-bottom:clamp(72px,8vw,120px)}
.personal-feature-main,.creature-feature{background:transparent;padding:0}
.personal-copy h3{font-family:var(--display);text-transform:uppercase;font-size:clamp(46px,5.2vw,82px);letter-spacing:-.055em}
.personal-duo{gap:18px}
.personal-gallery-head{margin-top:clamp(70px,8vw,115px);padding-top:18px}

/* À propos — bande sombre compacte */
.about{max-width:none;background:#171715;color:#f5f3ed;padding:clamp(82px,8vw,125px) clamp(28px,7vw,112px);border:0}
.about .eyebrow{color:#a7a7a2;font-family:var(--display)}
.about>div{grid-template-columns:1.35fr .65fr;gap:clamp(40px,7vw,110px);align-items:start}
.about h2{font-family:var(--display);font-size:clamp(58px,7vw,110px);text-transform:uppercase;line-height:.78;letter-spacing:-.055em;margin-top:32px}
.about-copy{padding-top:38px;border-top:1px solid rgba(255,255,255,.22)}
.about-copy p{font-size:16px;line-height:1.65;color:#dbdad6}
.about-copy a{border-color:#f5f3ed;color:#f5f3ed;font-family:var(--display);text-transform:uppercase;font-size:11px;font-weight:800;letter-spacing:.05em}
.about-copy a:hover{background:#f5f3ed;color:#171715}

/* Contact — proche de la référence, sans énorme écran orange */
footer{min-height:0;background:var(--paper);padding:clamp(65px,7vw,105px) clamp(28px,7vw,112px) 32px;border-top:0;color:var(--ink);display:grid;grid-template-columns:1.1fr .9fr;gap:34px}
.footer-heading{display:grid;grid-template-columns:auto 1fr;gap:28px;align-items:start}.footer-heading>span{font-family:var(--display);font-size:clamp(40px,5vw,72px);font-weight:900;letter-spacing:-.05em}.footer-heading p{font-size:16px;line-height:1.45;margin:8px 0;color:var(--muted)}
.footer-actions{display:flex;gap:18px;align-items:start;justify-content:flex-end;flex-wrap:wrap}.footer-actions a{font-family:var(--display);text-transform:uppercase;font-size:10px;letter-spacing:.05em;text-decoration:none;border:1px solid var(--ink);padding:15px 18px}.footer-actions .contact-button{background:var(--ink);color:#fff}.footer-actions .contact-button span{margin-left:24px}
.footer-meta{grid-column:1/-1;margin-top:42px;padding-top:20px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr auto 1fr;font-size:10px;color:#777;align-items:center}.footer-meta>div{display:flex;gap:20px}.footer-meta a{color:inherit;text-decoration:none}.footer-meta>span:last-child{text-align:right}

@media(max-width:900px){
  .hero-copy{width:100%}.hero-art{right:-25%;width:92vw;opacity:.045}.hero-note{margin-bottom:22px}
  .project-copy{position:static}.project-wide,.project-split,.project-split.reverse{grid-template-columns:1fr}.project-split.reverse .project-copy,.project-split.reverse .visual{order:initial}
  .detail-strip,.detail-strip.three,.detail-strip.solo{padding-left:0;margin-top:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.detail-strip.three img:last-child{grid-column:1/-1}.detail-strip.solo img{grid-column:auto}
  .motion-feature{grid-template-columns:1fr}.lower-thirds-title{grid-template-columns:1fr}.motion-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .about>div{grid-template-columns:1fr}.about-copy{padding-top:24px}
  footer{grid-template-columns:1fr}.footer-actions{justify-content:flex-start}.footer-meta{grid-template-columns:1fr;gap:12px}.footer-meta>div{order:3}.footer-meta>span:last-child{text-align:left}
}
@media(max-width:650px){
  .nav{height:auto;min-height:68px}.nav nav{padding-bottom:6px}.hero{padding-top:74px;min-height:650px}.hero-note{display:none}.hero-art{right:-45%;width:125vw;opacity:.038}.hero h1{font-size:clamp(68px,22vw,102px)}
  .section-head{grid-template-columns:30px 1fr}.section-head>span{font-size:28px}.section-head h2{font-size:clamp(40px,13vw,62px)}
  .detail-strip,.detail-strip.three,.detail-strip.solo{grid-template-columns:1fr}.detail-strip.three img:last-child{grid-column:auto}
  .motion-grid{grid-template-columns:1fr}.lower-thirds-grid{grid-template-columns:1fr}
  .footer-heading{grid-template-columns:1fr;gap:8px}.footer-actions{flex-direction:column;align-items:stretch}.footer-actions a{text-align:center}.footer-meta{margin-top:22px}
}


/* V6.2 — typographie retenue : Archivo Black + Work Sans */
body,
.nav,
.hero-role,
.hero-bottom,
.section-head p,
.type,
.desc,
.motion,
.personal-copy p,
.personal-gallery-head,
.about-copy,
footer{
  font-family:"Work Sans",Arial,Helvetica,sans-serif;
}

.brand,
.hero h1,
.section-head h2,
.project-copy h3,
.motion-feature h3,
.motion-grid h3,
.lower-thirds-title h3,
.personal-copy h3,
.about h2,
.footer-heading>span{
  font-family:"Archivo Black","Arial Black",Impact,sans-serif;
  font-weight:400;
}

.hero h1{
  letter-spacing:-.07em;
  line-height:.72;
}
.section-head h2{
  letter-spacing:-.055em;
  line-height:.82;
}
.project-copy h3,
.personal-copy h3,
.about h2{
  letter-spacing:-.05em;
}
.nav nav,
.hero-role,
.type,
.section-head>span,
.num,
.motion span,
.personal-copy span,
.personal-gallery-head span,
.eyebrow{
  font-family:"Work Sans",Arial,Helvetica,sans-serif;
  font-weight:600;
}

/* V7 — passe finale direction artistique + responsive */
:root{
  --paper:#f8f7f3;
  --paper-2:#efede7;
  --ink:#090909;
  --muted:#68655f;
  --line:rgba(9,9,9,.16);
  --dark:#141412;
}
html{scroll-padding-top:88px}
body{font-family:"Work Sans",Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.nav{z-index:50;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.nav nav a{transition:opacity .2s ease}.nav nav:hover a{opacity:.42}.nav nav a:hover,.nav nav a.active{opacity:1}
.hero{isolation:isolate}.hero-art{z-index:-1}.hero-note{font-family:"Work Sans",sans-serif}
.hero h1{font-size:clamp(84px,10.2vw,164px);line-height:.76;max-width:720px}
.hero-bottom a{transition:transform .2s ease,background .2s ease}.hero-bottom a:hover{transform:translateY(-2px)}
.section-head h2{font-size:clamp(42px,5vw,76px);line-height:.9}
.section-head>span{font-size:clamp(34px,3.6vw,54px);font-weight:500;letter-spacing:-.07em}
.project-copy h3{font-size:clamp(38px,4.45vw,70px);line-height:.88}
.visual,.detail-strip img,.personal-work img,.motion video{overflow:hidden}
.visual img,.detail-strip img,.personal-work img{transition:transform .55s cubic-bezier(.2,.7,.2,1),filter .35s ease}
.project:hover .visual img{transform:scale(1.018)}
.detail-strip img:hover,.personal-work img:hover{transform:scale(1.012)}
.project{scroll-margin-top:105px}
.edition-section{background:#f0eee8}
.motion{background:var(--dark)}
.motion-feature video,.lower-thirds-grid video,.motion-grid video{background:#090909}
.lower-thirds-grid article{min-width:0}.lower-thirds-grid video{width:100%;aspect-ratio:16/9;object-fit:cover}
.personal-work:before{opacity:.018}
.about{background:#171715}
.footer-actions a{transition:background .2s,color .2s,transform .2s}.footer-actions a:hover{transform:translateY(-2px)}
.reveal{transition:opacity .55s ease,transform .55s cubic-bezier(.2,.7,.2,1)}

@media (max-width:1100px){
  .nav{grid-template-columns:auto 1fr}.nav-index{display:none}.nav nav{justify-content:flex-end;gap:24px}
  .hero-art{right:-10%;width:68vw}
}
@media (max-width:760px){
  html{scroll-padding-top:108px}
  .nav{height:auto;min-height:76px;grid-template-columns:1fr;padding:14px 20px 12px;gap:9px;align-items:start}
  .brand{font-size:26px}.nav nav{width:100%;justify-content:flex-start;gap:20px;overflow-x:auto;white-space:nowrap;padding:0 0 4px;scrollbar-width:none}.nav nav::-webkit-scrollbar{display:none}.nav nav a{font-size:9px}
  .hero{min-height:690px;padding:120px 24px 64px}.hero-art{right:-48%;top:2%;width:135vw;height:100%;opacity:.034}.hero h1{font-size:clamp(70px,22vw,108px);line-height:.78}.hero-role{max-width:290px;line-height:1.7}.hero-bottom{margin-left:36px}
  .projects,.illustration,.edition-section{padding-left:20px;padding-right:20px}
  .section-head{margin-bottom:62px}.section-head h2{font-size:clamp(38px,12vw,58px)}
  .project{margin-bottom:70px}.project-copy h3{font-size:clamp(38px,12vw,58px)}
  .visual img{aspect-ratio:1.25/1}.detail-strip img{height:auto;aspect-ratio:1.35/1;object-fit:cover}
  .motion{padding-left:20px;padding-right:20px}.motion-feature h3,.lower-thirds-title h3{font-size:clamp(38px,12vw,58px)}
  .about{padding-left:20px;padding-right:20px}.about h2{font-size:clamp(52px,15vw,74px)}
  footer{padding-left:20px;padding-right:20px}.footer-heading>span{font-size:clamp(38px,12vw,56px)}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.visual img,.detail-strip img,.personal-work img,.reveal,.hero-bottom a,.footer-actions a{transition:none!important}}

/* =========================
   V8 — grosse passe de corrections
   ========================= */
:root{
  --paper:#f5f3ed;
  --paper-2:#ece9e2;
  --ink:#0b0b0b;
  --muted:#6e6a63;
  --line:#d8d3ca;
  --bluegray:#c5d5d8;
  --bluegray-2:#aebfc4;
  --aqua-soft:#d6e8e3;
  --yellow-soft:#f1cf88;
}
body{background:var(--paper);font-family:"Work Sans",Arial,sans-serif;}
.nav{background:rgba(245,243,237,.94);border-color:var(--line)}
.brand,.hero h1,.section-head h2,.project-copy h3,.motion h3,.personal-copy h3,.footer-heading>span{font-family:"Archivo Black",Arial,sans-serif;font-weight:400}
.hero h1 span,.footer-meta,.lower-thirds-grid h4{font-family:"Archivo Black",Arial,sans-serif}

/* Hero : vrai Oiseau bleu, aucun contenu généré */
.hero-v8{min-height:760px;padding:clamp(70px,8vw,125px) 4vw 80px;position:relative;background:linear-gradient(115deg,#f8f6f0 0%,#f8f6f0 45%,#eef2ef 100%)}
.hero-v8 .hero-copy{max-width:760px;position:relative;z-index:5}
.hero-v8 .hero-art{position:absolute;z-index:2;right:-3vw;top:58px;width:min(52vw,760px);height:calc(100% - 75px);object-fit:cover;object-position:50% 30%;opacity:.22;filter:grayscale(1) contrast(1.25);transform:none;mix-blend-mode:multiply;mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.15) 16%,#000 42%,#000 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.15) 16%,#000 42%,#000 100%)}
.hero-shape{position:absolute;z-index:1;pointer-events:none}
.shape-a{right:0;top:0;width:39%;height:28%;background:var(--bluegray);clip-path:polygon(22% 0,100% 0,100% 100%,56% 100%)}
.shape-b{right:1.5vw;top:28%;width:27%;height:42%;background:rgba(174,191,196,.45)}
.shape-c{right:0;top:13%;width:11%;height:17%;background:var(--yellow-soft)}
.hero-v8 h1{font-size:clamp(82px,9.4vw,156px);line-height:.82;letter-spacing:-.065em;margin:0}
.hero-v8 h1 span:last-child{margin-left:0}
.hero-v8 .hero-role{margin-top:28px;letter-spacing:.08em}
.hero-v8 .hero-bottom{padding-left:0;margin:55px 0 0 0;display:block}
.hero-v8 .hero-bottom p{font-weight:650;margin-left:55px}
.hero-v8 .hero-bottom p:before{content:"";display:inline-block;width:38px;height:3px;background:var(--ink);margin:0 16px 7px -55px}
.hero-v8 .hero-bottom a{display:inline-flex;margin-top:34px;background:var(--ink);color:#fff;border:0;padding:16px 22px;text-transform:uppercase;font-family:"Work Sans",sans-serif;font-size:11px;font-weight:700;letter-spacing:.04em}

/* Harmonisation de fond : palette douce tirée des mockups du portfolio */
.edition-section{background:#efede7}
.grand-format-section{background:linear-gradient(180deg,#eef2ef 0%,#f5f3ed 100%)}
.grand-format-section .section-head h2:after{content:"";display:block;width:86px;height:8px;background:var(--yellow-soft);margin-top:20px}

/* Aucune bordure noire autour des visuels */
.visual,.visual img,.detail-strip img,.personal-gallery img,.personal-feature img,.social-declinations img{border:0!important;outline:0!important;box-shadow:none!important}
.visual{background:transparent}
.clean-details img{background:transparent!important}

/* Projet principal d'abord, mockups ensuite */
.poster-main{display:grid;place-items:center;background:#ece9e2;padding:clamp(20px,3vw,48px)}
.poster-main img{object-fit:contain!important;max-height:760px!important;min-height:0!important;aspect-ratio:auto!important}
.detail-strip.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.detail-strip.two img{object-fit:contain;background:#ebe8e0;height:clamp(230px,28vw,460px)}
.detail-strip.solo{grid-template-columns:minmax(300px,780px);justify-content:end}
.detail-strip.solo img{object-fit:contain;height:auto;max-height:560px;background:transparent;padding:0}

/* Bluegrass : photomontage original principal, billet retiré */
#bluegrass .visual img{object-fit:cover;object-position:center 42%}

/* Cover Girl : l'illustration des visages appartient au projet */
.covergirl-details img:first-child{object-fit:cover;object-position:center}

/* Chocolats : vrais formats social, pas deux images quasi identiques en faux panoramique */
.social-declinations{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.56fr);gap:24px;align-items:start;padding-left:calc(235px + clamp(30px,4.8vw,78px));margin:-45px 0 125px}
.social-declinations figure{margin:0}
.social-declinations img{width:100%;height:auto;display:block;object-fit:contain;background:transparent}
.social-declinations figcaption{font-size:10px;letter-spacing:.08em;text-transform:uppercase;margin-top:10px;color:var(--muted)}
.social-declinations .story{max-width:420px}

/* Grand format */
.havre-project .visual.contain,.vehicle-project .visual.contain{background:#fff;padding:20px}
.havre-project .visual img,.vehicle-project .visual img{max-height:680px}

/* Motion : bandeaux + tracking clairement séparés */
.lower-thirds-title h3{font-style:normal}
.tracking-block{margin:clamp(70px,7vw,110px) 0;padding-top:28px;border-top:1px solid rgba(255,255,255,.16)}
.tracking-title{display:grid;grid-template-columns:.65fr 1.35fr;gap:28px;align-items:end;margin-bottom:34px}
.tracking-title span{color:#999}
.tracking-title h3{font-size:clamp(42px,5vw,76px);margin:0;text-transform:uppercase}
.tracking-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.tracking-grid article{border-top:1px solid rgba(255,255,255,.12);padding-top:12px}
.tracking-grid h4{font-family:"Work Sans";font-size:12px;text-transform:uppercase;letter-spacing:.06em;margin:12px 0 0}

/* Projets personnels : plus petits, grille compacte */
.personal-work:before{display:none!important}
.compact-art-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:95px}
.compact-art-grid figure{margin:0}
.compact-art-grid img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block;background:transparent}
.compact-art-grid figcaption{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin-top:8px}
.compact-wide{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(240px,.65fr);gap:4vw;align-items:center;margin:70px 0;padding-top:18px;border-top:1px solid var(--line)}
.compact-wide.reverse{grid-template-columns:minmax(240px,.65fr) minmax(0,1.25fr)}
.compact-wide.reverse img{order:2}.compact-wide.reverse .personal-copy{order:1}
.compact-wide img{width:100%;max-height:680px;object-fit:contain;background:transparent}
.compact-wide .personal-copy h3{font-size:clamp(38px,4.4vw,68px);line-height:.9}
.ai-project{background:#ebe8e0;padding:24px;border-top:0}
.ai-project .personal-copy p{max-width:360px}

/* Accent discret cohérent avec les couleurs observées dans les projets */
.section-head>span{color:#a9a59c}
.project:nth-of-type(3n+1) .project-copy h3:after{content:"";display:block;width:44px;height:5px;background:var(--bluegray-2);margin-top:18px}
.project:nth-of-type(3n+2) .project-copy h3:after{content:"";display:block;width:44px;height:5px;background:var(--yellow-soft);margin-top:18px}
.project:nth-of-type(3n) .project-copy h3:after{content:"";display:block;width:44px;height:5px;background:var(--aqua-soft);margin-top:18px}

@media(max-width:900px){
  .hero-v8{min-height:690px}.hero-v8 .hero-art{width:75vw;right:-24vw;opacity:.13}.shape-a{width:60%}.shape-b{width:42%}.shape-c{width:18%}
  .social-declinations{padding-left:0;margin-top:20px;grid-template-columns:1fr 1fr}.social-declinations .story{max-width:none}
  .tracking-grid{grid-template-columns:1fr}.tracking-title{grid-template-columns:1fr}
  .compact-art-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .compact-wide,.compact-wide.reverse{grid-template-columns:1fr}.compact-wide.reverse img,.compact-wide.reverse .personal-copy{order:initial}
}
@media(max-width:650px){
  .hero-v8{min-height:620px;padding-top:90px}.hero-v8 .hero-art{width:112vw;right:-58vw;top:80px;opacity:.09}.hero-v8 h1{font-size:clamp(70px,22vw,98px)}
  .shape-a{width:75%;height:21%}.shape-b{width:55%}.shape-c{width:24%;height:13%}
  .social-declinations{grid-template-columns:1fr}.compact-art-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* V9 — palette globale et fonds graphiques */
:root{--paper:#f4f1e9;--paper-2:#edf1ef;--v9-blue:#c5d6d8;--v9-blue2:#aebfc4;--v9-yellow:#f1cf88;--v9-gray:#a6a4a5}
body{background:var(--paper)}
.projects,.illustration,.grand-format-section{position:relative;overflow:hidden}
.projects:before,.grand-format-section:before,.illustration:after{content:"";position:absolute;pointer-events:none;z-index:0}
.projects:before{width:34vw;height:22vw;right:-7vw;top:6vw;background:linear-gradient(135deg,var(--v9-blue) 0 68%,var(--v9-yellow) 68%)}
.grand-format-section:before{width:28vw;height:28vw;left:-10vw;top:20vw;background:linear-gradient(145deg,var(--v9-blue2) 0 62%,transparent 62%)}
.illustration:after{width:34vw;height:26vw;right:-8vw;bottom:12vw;background:linear-gradient(135deg,var(--v9-yellow) 0 30%,var(--v9-blue) 30% 72%,transparent 72%)}
.projects>*,.grand-format-section>*,.illustration>*{position:relative;z-index:1}
.edition-section{background:linear-gradient(145deg,var(--paper-2) 0 78%,#f7e4b5 78%)}
.personal-work:before{background:url('assets/images/oiseaubleu.png') right 5%/55% auto no-repeat!important;opacity:.035!important;filter:grayscale(1) contrast(.8)!important}
.visual,.detail-strip img,.social-declinations img,.personal-gallery img{border:0!important;outline:0!important}
#polo .visual img{object-fit:contain!important;height:auto!important;max-height:none!important;min-height:0!important;background:#f7f5ef}
.covergirl-details img{object-fit:contain}
.motion-feature p,.motion-grid p{color:#aaa;font-size:13px;line-height:1.4}
.urbain-feature{padding-bottom:80px;border-bottom:1px solid #333}

/* V10 — habillage réparti + projets éditoriaux enrichis */
:root{--v10-cream:#f4f1e9;--v10-blue:#c5d6d8;--v10-blue2:#aebfc4;--v10-yellow:#f1cf88}
.projects,.illustration,.grand-format-section{position:relative;overflow:hidden}
.projects>* ,.illustration>* ,.grand-format-section>*{position:relative;z-index:2}
/* formes dispersées : elles ne sont plus empilées sur l'oiseau */
#projets:before{content:"";position:absolute;z-index:0;width:24vw;height:13vw;right:2vw;top:3vw;background:var(--v10-blue);clip-path:polygon(18% 0,100% 0,100% 100%,0 100%)}
#projets:after{content:"";position:absolute;z-index:0;width:11vw;height:8vw;left:1.5vw;top:39%;background:var(--v10-yellow)}
.edition-section:before{content:"";position:absolute;z-index:0;width:29vw;height:14vw;left:-5vw;top:5vw;background:var(--v10-blue2);clip-path:polygon(0 0,100% 0,74% 100%,0 100%)}
.edition-section:after{content:"";position:absolute;z-index:0;width:12vw;height:9vw;right:3vw;top:48%;background:var(--v10-yellow)}
.grand-format-section:before{width:20vw;height:15vw;left:auto;right:-3vw;top:7vw;background:var(--v10-blue2);clip-path:polygon(0 0,100% 25%,100% 100%,22% 100%)}
.grand-format-section:after{content:"";position:absolute;z-index:0;width:15vw;height:8vw;left:2vw;bottom:8%;background:var(--v10-blue)}
.personal-work:before{background:url('assets/images/oiseaubleu.png') right 7%/46% auto no-repeat;opacity:.045;filter:grayscale(1) contrast(.72)}
.personal-work:after{width:22vw;height:14vw;right:auto;left:-3vw;bottom:7vw;background:linear-gradient(135deg,var(--v10-blue) 0 70%,var(--v10-yellow) 70%)}
.editorial-pages{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin:-50px 0 28px;padding-left:calc(235px + clamp(30px,4.8vw,78px))}
.editorial-pages figure{margin:0}.editorial-pages img{width:100%;height:clamp(250px,31vw,500px);object-fit:contain;display:block;background:#e8e6df}.editorial-pages figcaption{font-size:9px;letter-spacing:.1em;text-transform:uppercase;margin-top:8px;color:#6c6962}
.pdf-link{display:inline-block;margin:0 0 110px calc(235px + clamp(30px,4.8vw,78px));font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:inherit;text-decoration:none;border-bottom:1px solid;padding-bottom:5px}
.sepaq-project,.musee-project{margin-top:80px}
.aux-pages{grid-template-columns:repeat(5,minmax(0,1fr))}
.sepaq-pages{grid-template-columns:repeat(5,minmax(0,1fr))}
@media(max-width:900px){.editorial-pages{padding-left:0;grid-template-columns:repeat(2,1fr);margin-top:-30px}.pdf-link{margin-left:0}.aux-pages,.sepaq-pages{grid-template-columns:repeat(2,1fr)}.editorial-pages img{height:auto}#projets:before,.edition-section:before{width:45vw}.personal-work:before{background-size:75% auto}}

/* V11 — identité graphique distribuée sur tout le site */
/* Règle: l'oiseau et les formes sont indépendants; aucun paquet de formes sur l'illustration. */
.hero-v8{overflow:hidden;background:linear-gradient(120deg,#f8f6f0 0 68%,#eef2ef 100%)}
.hero-v8 .hero-art{right:-10vw;top:8%;width:min(62vw,940px);opacity:.12;filter:grayscale(1) contrast(.82);z-index:1}
.hero-v8 .shape-a{left:7vw;right:auto;top:0;width:25vw;height:10vw;background:var(--v10-blue);clip-path:polygon(0 0,100% 0,82% 100%,18% 100%);opacity:.8}
.hero-v8 .shape-b{left:38vw;right:auto;top:auto;bottom:2vw;width:18vw;height:10vw;background:rgba(174,191,196,.42)}
.hero-v8 .shape-c{right:4vw;top:auto;bottom:7vw;width:10vw;height:8vw;background:var(--v10-yellow);opacity:.82}
.hero-v8 .hero-copy{z-index:3}

/* Neutralise les anciens gros fonds V9/V10 qui empilaient les formes */
#projets:before,#projets:after,.edition-section:before,.edition-section:after,.grand-format-section:before,.grand-format-section:after,.personal-work:before,.personal-work:after,.projects:before,.illustration:after{display:none!important}
.edition-section{background:var(--paper-2)!important}
.grand-format-section{background:linear-gradient(180deg,#eef2ef 0%,#f5f3ed 100%)!important}

.decorated-section{position:relative;overflow:hidden}
.decorated-section>*:not(.site-decor){position:relative;z-index:2}
.site-decor{position:absolute;z-index:0;pointer-events:none;opacity:.72}
.d-blue{background:var(--v10-blue)}.d-blue2{background:var(--v10-blue2)}.d-yellow{background:var(--v10-yellow)}
/* Chaque section a son propre rythme: formes séparées, jamais regroupées */
.decor-projects .d1{width:22vw;height:9vw;right:-4vw;top:7%;clip-path:polygon(20% 0,100% 0,100% 100%,0 100%)}
.decor-projects .d2{width:9vw;height:7vw;left:1vw;top:45%}
.decor-projects .d3{width:17vw;height:8vw;right:6vw;bottom:8%;clip-path:polygon(0 0,100% 18%,82% 100%,0 100%)}
.decor-edition .d1{width:18vw;height:8vw;left:-3vw;top:8%;clip-path:polygon(0 0,100% 0,72% 100%,0 100%)}
.decor-edition .d2{width:10vw;height:6vw;right:2vw;top:42%}
.decor-edition .d3{width:20vw;height:9vw;left:38%;bottom:4%;clip-path:polygon(14% 0,100% 0,84% 100%,0 100%)}
.decor-grand .d1{width:19vw;height:9vw;right:-3vw;top:9%;clip-path:polygon(0 0,100% 22%,100% 100%,20% 100%)}
.decor-grand .d2{width:8vw;height:8vw;left:3vw;top:52%}
.decor-grand .d3{width:16vw;height:7vw;right:24%;bottom:5%}
.decor-personal .d1{width:18vw;height:8vw;left:-2vw;top:7%;clip-path:polygon(0 0,100% 0,76% 100%,0 100%)}
.decor-personal .d2{width:9vw;height:7vw;right:4vw;top:44%}
.decor-personal .d3{width:17vw;height:8vw;left:30%;bottom:3%;clip-path:polygon(10% 0,100% 0,82% 100%,0 100%)}
/* Motion/About: même langage, tons atténués sur fond sombre */
.decor-motion .site-decor,.decor-about .site-decor{opacity:.12}
.decor-motion .d1{width:22vw;height:8vw;right:-3vw;top:6%}.decor-motion .d2{width:8vw;height:7vw;left:2vw;top:48%}.decor-motion .d3{width:18vw;height:8vw;right:20%;bottom:4%}
.decor-about .d1{width:18vw;height:8vw;left:-2vw;bottom:8%}.decor-about .d2{width:9vw;height:7vw;right:4vw;top:12%}

.video-editing-block{max-width:1380px;margin:110px auto 0;padding-top:34px;border-top:1px solid rgba(255,255,255,.16)}
.video-editing-title{display:grid;grid-template-columns:180px 1fr 1fr;gap:30px;align-items:end;margin-bottom:36px}
.video-editing-title span{font-size:10px;letter-spacing:.12em;color:#999}.video-editing-title h3{font-family:var(--display);font-size:clamp(40px,5vw,72px);text-transform:uppercase;margin:0;color:#fff}.video-editing-title p{color:#aaa;margin:0}
.video-editing-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.video-editing-grid article{margin:0}.video-editing-grid video{width:100%;aspect-ratio:16/9;background:#000;display:block}.video-editing-grid h4{font-family:var(--display);font-size:clamp(26px,3vw,42px);text-transform:uppercase;color:#fff;margin:18px 0 5px}.video-editing-grid p{color:#aaa;margin:0;font-size:13px}
@media(max-width:900px){.site-decor{opacity:.45}.video-editing-title{grid-template-columns:1fr}.video-editing-grid{grid-template-columns:1fr}.hero-v8 .shape-a{left:2vw;width:42vw}.hero-v8 .shape-b{left:30vw;width:28vw}.hero-v8 .shape-c{width:15vw}}

/* V12 — habillage inspiré de la 3e référence : grandes masses bleu/jaune, aérées et asymétriques */
:root{--v12-cream:#f4f1e9;--v12-blue:#c5d6d8;--v12-blue-deep:#aebfc4;--v12-yellow:#f1cf88}
.site-decor{opacity:.72}
.decor-projects .d1{width:31vw;height:14vw;right:-8vw;top:4%;clip-path:polygon(16% 0,100% 0,100% 100%,0 78%)}
.decor-projects .d2{width:12vw;height:9vw;left:-2vw;top:43%;clip-path:polygon(0 0,100% 18%,82% 100%,0 100%)}
.decor-projects .d3{width:25vw;height:11vw;right:5vw;bottom:5%;clip-path:polygon(0 0,100% 0,78% 100%,12% 88%)}
.decor-edition .d1{width:27vw;height:12vw;left:-7vw;top:4%;clip-path:polygon(0 0,100% 0,76% 100%,0 82%)}
.decor-edition .d2{width:11vw;height:8vw;right:-1vw;top:41%;transform:rotate(-4deg)}
.decor-edition .d3{width:24vw;height:10vw;left:42%;bottom:2%;clip-path:polygon(10% 0,100% 18%,82% 100%,0 100%)}
.decor-grand .d1{width:29vw;height:13vw;right:-8vw;top:5%;clip-path:polygon(0 0,100% 18%,100% 100%,20% 82%)}
.decor-grand .d2{width:10vw;height:9vw;left:-1vw;top:50%;transform:rotate(5deg)}
.decor-grand .d3{width:22vw;height:10vw;right:22%;bottom:3%;clip-path:polygon(0 12%,100% 0,82% 100%,12% 88%)}
.decor-personal .d1{width:28vw;height:12vw;left:-7vw;top:4%;clip-path:polygon(0 0,100% 0,74% 100%,0 82%)}
.decor-personal .d2{width:11vw;height:9vw;right:-1vw;top:40%;transform:rotate(-5deg)}
.decor-personal .d3{width:24vw;height:10vw;left:29%;bottom:2%;clip-path:polygon(8% 0,100% 12%,80% 100%,0 88%)}
.decor-motion .site-decor,.decor-about .site-decor{opacity:.16}
.video-editing-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.compact-art-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.compact-art-grid figure:last-child img{object-fit:contain;background:rgba(197,214,216,.22)}
@media(max-width:1100px){.video-editing-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.video-editing-grid{grid-template-columns:1fr}.site-decor{opacity:.48}.compact-art-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ============================================================
   V13 — HABILLAGE STRUCTUREL
   Direction: grandes masses architecturales bleu / crème / jaune,
   diagonales, débordements, respiration. Aucun petit "sticker".
   ============================================================ */
:root{--v13-cream:#f7f4ec;--v13-blue:#bfd3d6;--v13-blue2:#d8e3e2;--v13-yellow:#f2cf86;--v13-ink:#0b0b0a}
body{background:var(--v13-cream)}

/* HERO : composition éditoriale inspirée de la référence, avec l'oeuvre originale */
.hero-v8{background:var(--v13-cream);isolation:isolate}
.hero-v8:after{content:"";position:absolute;z-index:0;left:31%;top:-8%;width:55%;height:58%;background:linear-gradient(135deg,var(--v13-blue) 0%,#d6e3e1 100%);clip-path:polygon(0 0,100% 0,100% 82%,28% 100%)}
.hero-v8 .hero-art{z-index:2;right:-4vw;top:8%;width:min(60vw,980px);height:92%;object-fit:contain;object-position:right center;opacity:.92;filter:none;mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.28) 13%,#000 32%,#000 100%)}
.hero-v8 .hero-copy{z-index:4}
.hero-v8 .shape-a{z-index:1;left:auto;right:-3%;top:13%;width:28%;height:48%;background:var(--v13-yellow);opacity:.9;clip-path:polygon(20% 0,100% 0,100% 100%,0 100%,0 24%,20% 24%)}
.hero-v8 .shape-b{z-index:1;left:-4%;bottom:-5%;width:28%;height:24%;background:var(--v13-blue);opacity:.9;clip-path:polygon(0 0,100% 0,72% 100%,0 100%)}
.hero-v8 .shape-c{z-index:1;left:45%;right:auto;bottom:-4%;width:24%;height:18%;background:rgba(191,211,214,.55);opacity:1;clip-path:polygon(0 18%,100% 0,100% 100%,14% 100%)}

/* Les sections deviennent des compositions; les anciennes formes sont neutralisées */
.site-decor{opacity:1!important;transform:none!important}
.d-blue{background:var(--v13-blue)!important}.d-blue2{background:var(--v13-blue2)!important}.d-yellow{background:var(--v13-yellow)!important}

/* Projets : grand plan bleu supérieur droit + lame jaune basse */
.decor-projects .d1{width:58vw;height:28vw;right:-16vw;top:-4vw;clip-path:polygon(24% 0,100% 0,100% 100%,0 72%)}
.decor-projects .d2{width:34vw;height:15vw;left:-13vw;top:46%;clip-path:polygon(0 0,100% 22%,78% 100%,0 100%)}
.decor-projects .d3{width:48vw;height:18vw;right:-18vw;bottom:-3vw;clip-path:polygon(16% 0,100% 0,100% 100%,0 72%)}
.decor-projects .d2{background:var(--v13-yellow)!important;opacity:.72!important}
.decor-projects .d3{opacity:.62!important}

/* Edition : inversion du rythme, diagonale bleu pâle à gauche */
.edition-section{background:var(--v13-cream)!important}
.decor-edition .d1{width:54vw;height:25vw;left:-17vw;top:-3vw;clip-path:polygon(0 0,100% 0,76% 100%,0 76%)}
.decor-edition .d2{width:39vw;height:16vw;right:-16vw;top:40%;clip-path:polygon(18% 0,100% 12%,100% 100%,0 78%)}
.decor-edition .d3{width:43vw;height:16vw;left:31%;bottom:-5vw;clip-path:polygon(0 20%,100% 0,78% 100%,14% 100%)}
.decor-edition .d2{background:var(--v13-yellow)!important;opacity:.65!important}
.decor-edition .d3{opacity:.62!important}

/* Grand format : grande architecture bleue, jaune seulement comme accent */
.grand-format-section{background:var(--v13-cream)!important}
.decor-grand .d1{width:62vw;height:28vw;right:-22vw;top:-2vw;clip-path:polygon(16% 0,100% 0,100% 82%,0 100%)}
.decor-grand .d2{width:31vw;height:14vw;left:-12vw;top:49%;clip-path:polygon(0 0,100% 18%,76% 100%,0 100%);opacity:.68!important}
.decor-grand .d3{width:46vw;height:18vw;right:12%;bottom:-7vw;clip-path:polygon(12% 0,100% 20%,82% 100%,0 78%);opacity:.58!important}
.decor-grand .d2{background:var(--v13-yellow)!important}

/* Motion : conserver le contraste sombre, masses très discrètes et immenses */
.decor-motion .site-decor{opacity:.1!important}
.decor-motion .d1{width:60vw;height:25vw;right:-18vw;top:-3vw;clip-path:polygon(20% 0,100% 0,100% 100%,0 72%)}
.decor-motion .d2{width:40vw;height:18vw;left:-15vw;top:45%;clip-path:polygon(0 0,100% 20%,76% 100%,0 100%)}
.decor-motion .d3{width:50vw;height:18vw;right:-12vw;bottom:-5vw;clip-path:polygon(0 20%,100% 0,100% 100%,14% 100%)}

/* Projets personnels : aucun motif figuratif de fond, seulement architecture */
.personal-work:before,.personal-work:after{display:none!important}
.decor-personal .d1{width:57vw;height:25vw;left:-19vw;top:-3vw;clip-path:polygon(0 0,100% 0,76% 100%,0 78%)}
.decor-personal .d2{width:37vw;height:15vw;right:-14vw;top:42%;clip-path:polygon(18% 0,100% 12%,100% 100%,0 78%);opacity:.67!important}
.decor-personal .d3{width:48vw;height:18vw;left:34%;bottom:-6vw;clip-path:polygon(0 18%,100% 0,80% 100%,12% 100%);opacity:.58!important}
.decor-personal .d2{background:var(--v13-yellow)!important}

/* À propos : composition finale claire, pas de rectangles isolés */
.about{isolation:isolate;overflow:hidden}
.decor-about .site-decor{opacity:.72!important}
.decor-about .d1{width:62vw;height:31vw;left:-21vw;bottom:-13vw;clip-path:polygon(0 0,100% 18%,76% 100%,0 100%)}
.decor-about .d2{width:38vw;height:18vw;right:-14vw;top:-5vw;clip-path:polygon(18% 0,100% 0,100% 100%,0 76%);background:var(--v13-yellow)!important;opacity:.62!important}

/* Les contenus restent au-dessus des masses */
.decorated-section>*:not(.site-decor){z-index:2}

@media(max-width:900px){
 .hero-v8:after{left:28%;width:78%;height:48%}
 .hero-v8 .hero-art{right:-24vw;width:92vw;opacity:.32}
 .hero-v8 .shape-a{width:38%;height:38%;right:-8%}
 .hero-v8 .shape-b{width:42%;height:18%}
 .site-decor{opacity:.45!important}
}

/* ============================================================
   V17 — corrections demandées
   1) Hero : véritable Oiseau bleu en N&B avec fondu horizontal
   2) Chocolats Favoris : images fournies par Alexis
   3) Habillage : grandes masses colorées dans les espaces vides
   ============================================================ */
:root{
  --v17-cream:#f5f3ed;
  --v17-blue:#b9ced6;
  --v17-blue-deep:#8faebd;
  --v17-yellow:#edc56e;
  --v17-yellow-soft:#f2d58f;
}

/* HERO — retour à la composition de référence */
.hero-v8{
  min-height:calc(100svh - 72px)!important;
  padding:64px 3.5vw 54px!important;
  background:var(--v17-cream)!important;
  display:flex!important;
  align-items:flex-start!important;
  justify-content:center!important;
  overflow:hidden!important;
  isolation:isolate!important;
}
.hero-v8:after,
.hero-v8 .hero-shape{display:none!important;}
.hero-v8 .hero-copy{
  width:min(48vw,650px)!important;
  max-width:none!important;
  position:relative!important;
  z-index:4!important;
}
.hero-v8 .hero-note{display:none!important;}
.hero-v8 h1{
  font-size:clamp(84px,9.1vw,148px)!important;
  line-height:.79!important;
  letter-spacing:-.065em!important;
  margin:0!important;
}
.hero-v8 .hero-role{
  margin-top:24px!important;
  font-size:13px!important;
  font-weight:700!important;
  letter-spacing:.025em!important;
}
.hero-v8 .hero-bottom{
  margin:34px 0 0!important;
  padding:0!important;
}
.hero-v8 .hero-bottom p{
  margin-left:58px!important;
  font-size:clamp(18px,1.6vw,25px)!important;
  line-height:1.18!important;
}
.hero-v8 .hero-bottom a{
  margin-top:36px!important;
  padding:17px 24px!important;
}
.hero-v8 .hero-art{
  display:block!important;
  position:absolute!important;
  z-index:1!important;
  right:-1.5vw!important;
  top:0!important;
  width:min(56vw,840px)!important;
  height:100%!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center 34%!important;
  opacity:.30!important;
  filter:grayscale(1) contrast(.86) brightness(1.20)!important;
  mix-blend-mode:multiply!important;
  transform:none!important;
  pointer-events:none!important;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.05) 10%,rgba(0,0,0,.32) 28%,rgba(0,0,0,.75) 52%,#000 76%,#000 100%)!important;
  mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.05) 10%,rgba(0,0,0,.32) 28%,rgba(0,0,0,.75) 52%,#000 76%,#000 100%)!important;
}

/* Chocolats Favoris — les deux images restent un changement distinct */
#chocolats .visual{
  background:transparent!important;
  min-height:0!important;
}
#chocolats .visual img{
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  object-fit:contain!important;
}
.chocolats-v17-secondary{
  position:relative;
  z-index:2;
  width:min(100%,1180px);
  margin:-70px 0 145px auto;
  padding-left:clamp(0px,13vw,220px);
}
.chocolats-v17-secondary img{
  width:100%;
  height:auto;
  display:block;
  border:0;
  outline:0;
  box-shadow:none;
}

/* Grandes formes supplémentaires placées dans les zones de respiration. */
.v17-space-shapes{
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  overflow:hidden!important;
  pointer-events:none!important;
}
.v17-space{
  position:absolute;
  display:block;
  opacity:.72;
}
.decorated-section>*:not(.site-decor):not(.v17-space-shapes){position:relative;z-index:2;}

/* Projets sélectionnés */
.decor-projects .v17-a{left:-12vw;top:19%;width:32vw;height:12vw;background:var(--v17-blue);clip-path:polygon(0 0,100% 15%,78% 100%,0 84%)}
.decor-projects .v17-b{right:-9vw;top:38%;width:28vw;height:15vw;background:var(--v17-yellow-soft);clip-path:polygon(18% 0,100% 0,100% 82%,0 100%)}
.decor-projects .v17-c{left:-8vw;bottom:8%;width:27vw;height:11vw;background:var(--v17-blue-deep);clip-path:polygon(0 18%,100% 0,76% 100%,0 88%);opacity:.48}

/* Édition */
.decor-edition .v17-a{right:-10vw;top:21%;width:31vw;height:13vw;background:var(--v17-blue);clip-path:polygon(22% 0,100% 12%,100% 100%,0 78%)}
.decor-edition .v17-b{left:-9vw;top:52%;width:26vw;height:13vw;background:var(--v17-yellow);clip-path:polygon(0 0,100% 20%,72% 100%,0 83%);opacity:.62}
.decor-edition .v17-c{right:10%;bottom:5%;width:25vw;height:10vw;background:var(--v17-blue-deep);clip-path:polygon(0 15%,100% 0,80% 100%,12% 86%);opacity:.38}

/* Grand format */
.decor-grand .v17-a{left:-10vw;top:25%;width:29vw;height:14vw;background:var(--v17-blue);clip-path:polygon(0 0,100% 18%,76% 100%,0 80%)}
.decor-grand .v17-b{right:-8vw;top:48%;width:27vw;height:13vw;background:var(--v17-yellow-soft);clip-path:polygon(20% 0,100% 0,100% 100%,0 82%)}
.decor-grand .v17-c{left:37%;bottom:4%;width:24vw;height:10vw;background:var(--v17-blue-deep);clip-path:polygon(0 15%,100% 0,79% 100%,13% 88%);opacity:.42}

/* Projets personnels */
.decor-personal .v17-a{right:-10vw;top:19%;width:31vw;height:13vw;background:var(--v17-blue);clip-path:polygon(20% 0,100% 12%,100% 100%,0 79%)}
.decor-personal .v17-b{left:-9vw;top:54%;width:28vw;height:13vw;background:var(--v17-yellow-soft);clip-path:polygon(0 0,100% 18%,76% 100%,0 84%);opacity:.66}
.decor-personal .v17-c{right:14%;bottom:3%;width:25vw;height:10vw;background:var(--v17-blue-deep);clip-path:polygon(0 14%,100% 0,80% 100%,12% 88%);opacity:.38}

/* À propos */
.decor-about .v17-a{right:-12vw;bottom:-4%;width:36vw;height:18vw;background:var(--v17-blue);clip-path:polygon(20% 0,100% 0,100% 100%,0 78%);opacity:.58}
.decor-about .v17-b{left:-10vw;top:24%;width:24vw;height:12vw;background:var(--v17-yellow-soft);clip-path:polygon(0 0,100% 17%,74% 100%,0 82%);opacity:.58}

@media(max-width:900px){
  .hero-v8{min-height:690px!important;padding:90px 24px 54px!important;align-items:flex-start!important}
  .hero-v8 .hero-copy{width:72%!important}
  .hero-v8 .hero-art{right:-29vw!important;width:88vw!important;opacity:.19!important}
  .chocolats-v17-secondary{margin:25px 0 90px;padding-left:0;width:100%}
  .v17-space{opacity:.40}
}
@media(max-width:650px){
  .hero-v8{min-height:620px!important}
  .hero-v8 .hero-copy{width:100%!important}
  .hero-v8 h1{font-size:clamp(70px,22vw,98px)!important}
  .hero-v8 .hero-art{right:-62vw!important;width:135vw!important;opacity:.12!important}
  .hero-v8 .hero-bottom p{margin-left:48px!important}
  .v17-space{opacity:.28}
}
/* V21 — coordonnées de contact */
.footer-meta > div{display:flex;gap:16px;flex-wrap:wrap;align-items:center}
.footer-meta a[href^="tel:"]{white-space:nowrap}


/* V22 — lightbox plein écran robuste */
.is-zoomable{cursor:zoom-in;}
html.lightbox-open,html.lightbox-open body{overflow:hidden;}
body > .lightbox{
  position:fixed!important;
  inset:0!important;
  width:100vw!important;
  height:100vh!important;
  z-index:99999!important;
  display:none!important;
  place-items:center;
  padding:clamp(18px,3vw,48px);
  background:rgba(0,0,0,.94);
  overflow:hidden;
}
body > .lightbox.is-open{display:grid!important;}
body > .lightbox .lightbox-image{
  display:block;
  width:auto!important;
  height:auto!important;
  max-width:94vw!important;
  max-height:90vh!important;
  object-fit:contain!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  box-shadow:none!important;
  cursor:default;
}
.lightbox-close{
  position:absolute;
  top:18px;
  right:22px;
  width:46px;
  height:46px;
  border:0;
  background:rgba(255,255,255,.12);
  color:#fff;
  font:300 36px/1 Arial,sans-serif;
  cursor:pointer;
  z-index:2;
}
.lightbox-close:hover{background:rgba(255,255,255,.22);}

/* ============================================================
   V23 — optimisation responsive mobile/tablette
   Le rendu desktop reste inchangé (> 900 px).
   ============================================================ */
@media (max-width:900px){
  html,body{max-width:100%;overflow-x:hidden}

  /* Navigation : garder les sections accessibles sur téléphone */
  .nav{
    height:auto!important;
    min-height:64px;
    padding:12px 20px 10px!important;
    grid-template-columns:1fr auto!important;
    row-gap:10px;
    align-items:center;
  }
  .nav .brand{font-size:16px}
  .nav-index{font-size:9px!important;white-space:nowrap}
  .nav nav{
    display:flex!important;
    grid-column:1/-1;
    gap:20px!important;
    overflow-x:auto;
    overscroll-behavior-x:contain;
    scrollbar-width:none;
    padding:3px 0 5px;
    white-space:nowrap;
    font-size:10px!important;
    -webkit-overflow-scrolling:touch;
  }
  .nav nav::-webkit-scrollbar{display:none}
  .nav nav a{flex:0 0 auto}

  /* Hero : conserver la composition, sans chevauchement du texte */
  .hero-v8{
    min-height:650px!important;
    padding:58px 20px 46px!important;
    justify-content:flex-start!important;
  }
  .hero-v8 .hero-copy{width:min(78%,560px)!important}
  .hero-v8 h1{font-size:clamp(68px,17vw,112px)!important;line-height:.8!important}
  .hero-v8 .hero-role{font-size:11px!important;line-height:1.45;max-width:390px}
  .hero-v8 .hero-bottom{margin-top:28px!important}
  .hero-v8 .hero-bottom p{font-size:17px!important;margin-left:42px!important;max-width:330px}
  .hero-v8 .hero-bottom a{margin-top:28px!important;padding:15px 18px!important;font-size:10px!important}
  .hero-v8 .hero-art{
    right:-32vw!important;
    top:4%!important;
    width:92vw!important;
    height:92%!important;
    opacity:.16!important;
    object-position:right center!important;
  }

  /* Sections et titres */
  .projects,.illustration,.about{padding:82px 20px!important}
  .motion{padding:82px 20px!important}
  .section-head{grid-template-columns:34px 1fr!important;gap:15px!important;margin-bottom:62px!important}
  .section-head h2{font-size:clamp(54px,14vw,92px)!important;line-height:.8!important}
  .section-head p{grid-column:2!important;font-size:15px!important;max-width:520px}
  .project-copy h3{font-size:clamp(48px,13vw,80px)!important}
  .project-copy .desc{font-size:15px}
  .project,.project-pair{margin-bottom:82px!important}
  .project-wide,.project-split,.project-split.reverse{grid-template-columns:1fr!important;gap:22px!important}
  .project-copy{padding:0!important}
  .num{margin-bottom:22px!important}

  /* Médias : toujours contenus dans l'écran */
  img,video{max-width:100%}
  .visual,.visual img{min-height:0!important}
  .visual img{height:auto!important;max-height:none!important}
  .visual.contain{padding:22px!important}
  .detail-strip,.detail-strip.three,.detail-strip.solo{grid-template-columns:1fr!important;margin:-28px 0 82px!important;gap:16px!important}
  .detail-strip img{height:auto!important;max-height:none!important}
  .chocolats-v17-secondary{margin:18px 0 82px!important;padding-left:0!important;width:100%!important}
  .editorial-pages,.aux-pages,.sepaq-pages{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;padding-left:0!important;margin:-20px 0 24px!important}
  .editorial-pages img{height:auto!important}
  .pdf-link{margin:0 0 80px!important}

  /* Motion */
  .motion-feature{grid-template-columns:1fr!important;gap:18px!important;margin-bottom:70px!important}
  .motion-feature h3,.tracking-title h3,.video-editing-title h3{font-size:clamp(38px,11vw,66px)!important}
  .motion-grid{grid-template-columns:1fr 1fr!important;gap:42px 16px!important}
  .motion-grid article:nth-child(even){padding-top:0!important}
  .lower-thirds-block{padding:24px 16px!important;margin:72px 0!important}
  .lower-thirds-title,.tracking-title,.video-editing-title{grid-template-columns:1fr!important;gap:12px!important}
  .lower-thirds-grid{grid-template-columns:1fr!important;gap:34px!important}
  .tracking-grid{grid-template-columns:1fr!important}
  .video-editing-grid{grid-template-columns:1fr 1fr!important;gap:24px 16px!important}
  .video-editing-block{margin-top:80px!important}

  /* Galerie personnelle */
  .compact-art-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important;margin-bottom:72px!important}
  .compact-art-grid img{aspect-ratio:4/5;object-fit:cover}
  .personal-feature,.personal-feature.reverse{grid-template-columns:1fr!important;gap:24px!important;margin-bottom:70px!important}
  .personal-feature.reverse img,.personal-feature.reverse .personal-copy{order:initial!important}

  /* À propos / contact */
  .about>div{grid-template-columns:1fr!important}
  .about h2{font-size:clamp(58px,14vw,98px)!important}
  .about-copy{padding-top:20px!important}
  .about-copy p{font-size:18px!important}
  footer{padding:64px 20px 32px!important;min-height:auto!important}
  .footer-heading{grid-template-columns:1fr!important;gap:8px!important}
  .footer-heading>span{font-size:clamp(40px,11vw,62px)!important}
  .footer-actions{justify-content:flex-start!important;margin-top:36px}
  .footer-meta{grid-template-columns:1fr!important;gap:12px!important;margin-top:42px!important}
  .footer-meta>div{order:3!important;display:flex!important;flex-direction:column;align-items:flex-start!important;gap:9px!important}
  .footer-meta>span:last-child{text-align:left!important}

  /* Décor : plus discret sur petits écrans pour laisser respirer le contenu */
  .site-decor{opacity:.28!important}
  .v17-space{opacity:.24!important}
  .v14-shape{opacity:.34!important}

  /* Lightbox tactile */
  body > .lightbox{padding:56px 14px 18px!important}
  body > .lightbox .lightbox-image{max-width:96vw!important;max-height:84vh!important}
  .lightbox-close{top:10px!important;right:10px!important;width:44px!important;height:44px!important}
}

@media (max-width:600px){
  .nav{padding-left:16px!important;padding-right:16px!important}
  .hero-v8{min-height:600px!important;padding:48px 16px 40px!important}
  .hero-v8 .hero-copy{width:100%!important}
  .hero-v8 h1{font-size:clamp(64px,20.5vw,92px)!important}
  .hero-v8 .hero-role{max-width:290px;font-size:10px!important}
  .hero-v8 .hero-bottom p{font-size:16px!important;margin-left:38px!important;max-width:260px}
  .hero-v8 .hero-art{right:-60vw!important;width:138vw!important;opacity:.105!important}

  .projects,.illustration,.about,.motion{padding-left:16px!important;padding-right:16px!important}
  .section-head{grid-template-columns:28px 1fr!important}
  .section-head h2{font-size:clamp(50px,15.5vw,72px)!important}
  .section-head p{font-size:14px!important}
  .project-copy h3{font-size:clamp(44px,14vw,68px)!important}

  .orange,.pale,.comic,.dark,.red,.aqua{margin-left:-16px!important;margin-right:-16px!important;padding:38px 16px!important}
  .editorial-pages,.aux-pages,.sepaq-pages{grid-template-columns:1fr!important}
  .motion-grid{grid-template-columns:1fr!important}
  .video-editing-grid{grid-template-columns:1fr!important}
  .compact-art-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
  .compact-art-grid figcaption{font-size:8px!important;line-height:1.35}
  .footer-actions{flex-direction:column!important;align-items:stretch!important}
  .footer-actions a{text-align:center!important;width:100%}
}

/* ============================================================
   V24 — correctifs mobile finaux après test sur téléphone
   Aucun changement desktop (> 900 px).
   ============================================================ */
@media (max-width:900px){
  html,body{width:100%;max-width:100%;overflow-x:hidden!important}
  body *{min-width:0}
  main,section,article,.project,.project-copy,.section-head,.motion-feature,.lower-thirds-block,.personal-feature,.about>div,footer{max-width:100%}
  h1,h2,h3,h4,p{max-width:100%}

  /* Le menu reste entièrement visible au lieu de dépasser à droite. */
  .nav nav{
    overflow:visible!important;
    white-space:normal!important;
    flex-wrap:wrap!important;
    column-gap:16px!important;
    row-gap:7px!important;
    padding-bottom:8px!important;
  }
  .nav nav a{font-size:9px!important;line-height:1.2!important}

  /* Empêcher tous les grands titres d'élargir la page. */
  .section-head h2,
  .project-copy h3,
  .motion-feature h3,
  .lower-thirds-title h3,
  .tracking-title h3,
  .video-editing-title h3,
  .about h2,
  footer h2{
    width:100%!important;
    max-width:100%!important;
    overflow-wrap:break-word!important;
    word-break:normal!important;
  }

  .project-copy h3{font-size:clamp(42px,11.2vw,68px)!important;line-height:.86!important;letter-spacing:-.045em!important}
  .section-head h2{font-size:clamp(46px,12vw,76px)!important;line-height:.84!important;letter-spacing:-.045em!important}
  .motion-feature h3,.lower-thirds-title h3,.tracking-title h3,.video-editing-title h3{font-size:clamp(38px,10.5vw,64px)!important;line-height:.88!important}
  .about h2{font-size:clamp(48px,12vw,80px)!important;line-height:.84!important}
  footer h2{font-size:clamp(50px,12vw,84px)!important;line-height:.84!important}

  /* Les blocs pleine largeur ne peuvent plus créer de débordement horizontal. */
  .orange,.pale,.comic,.dark,.red,.aqua{
    width:auto!important;
    max-width:none!important;
    overflow:hidden!important;
  }
  .visual,.visual img,.detail-strip,.detail-strip img,.editorial-pages,.aux-pages,.sepaq-pages,
  .motion video,.video-editing-grid video,.compact-art-grid,.compact-art-grid figure,.compact-art-grid img{
    max-width:100%!important;
  }
}

@media (max-width:600px){
  .nav{row-gap:12px!important}
  .nav nav{column-gap:13px!important;row-gap:8px!important}
  .nav nav a{font-size:8.5px!important;letter-spacing:.035em!important}

  .hero-v8 h1{font-size:clamp(60px,18.5vw,82px)!important;line-height:.82!important}
  .hero-v8 .hero-role{font-size:9px!important;line-height:1.5!important;letter-spacing:.07em!important}
  .hero-v8 .hero-bottom{margin-left:0!important}
  .hero-v8 .hero-bottom p{margin-left:34px!important;max-width:240px!important}

  .section-head h2{font-size:clamp(42px,11.2vw,58px)!important}
  .project-copy h3{font-size:clamp(38px,10.4vw,54px)!important;line-height:.88!important}
  .type{font-size:9px!important;letter-spacing:.08em!important}
  .desc{font-size:14px!important;line-height:1.5!important}

  .motion-feature h3,.lower-thirds-title h3,.tracking-title h3,.video-editing-title h3{
    font-size:clamp(34px,9.7vw,50px)!important;
  }
  .about h2{font-size:clamp(42px,10.8vw,58px)!important}
  .about-copy p{font-size:16px!important;line-height:1.55!important}
  footer h2{font-size:clamp(44px,11vw,62px)!important}

  /* Plus aucun retrait pouvant créer un scroll horizontal sur 360–430 px. */
  .orange,.pale,.comic,.dark,.red,.aqua{
    margin-left:-16px!important;
    margin-right:-16px!important;
    padding-left:16px!important;
    padding-right:16px!important;
  }
}

/* ============================================================
   V25 — typographie mobile ajustée après test réel sur téléphone
   Conserve les sauts <br> prévus, interdit de couper un mot en deux.
   Aucun changement desktop (> 600 px).
   ============================================================ */
@media (max-width:600px){
  .section-head h2,
  .project-copy h3,
  .motion-feature h3,
  .lower-thirds-title h3,
  .tracking-title h3,
  .video-editing-title h3,
  .about h2,
  footer h2{
    overflow-wrap:normal!important;
    word-break:keep-all!important;
    hyphens:none!important;
    text-wrap:balance;
  }

  /* Titres de sections : chaque mot tient sur une ligne de 360–430 px. */
  .section-head h2{
    font-size:clamp(36px,9.6vw,44px)!important;
    line-height:.88!important;
    letter-spacing:-.035em!important;
  }

  /* Titres de projets (Bluegrass, Chocolats, Dracula, etc.). */
  .project-copy h3{
    font-size:clamp(36px,10vw,46px)!important;
    line-height:.9!important;
    letter-spacing:-.035em!important;
  }

  /* Motion / bandeaux / tracking / montage. */
  .motion-feature h3,
  .lower-thirds-title h3,
  .tracking-title h3,
  .video-editing-title h3{
    font-size:clamp(34px,9.4vw,43px)!important;
    line-height:.92!important;
    letter-spacing:-.03em!important;
  }

  /* À propos : garder Graphisme. / Mouvement. / Image. sur trois lignes. */
  .about h2{
    font-size:clamp(38px,10.2vw,47px)!important;
    line-height:.9!important;
    letter-spacing:-.035em!important;
  }

  /* Le texte de section et les labels respirent davantage. */
  .section-head{grid-template-columns:24px minmax(0,1fr)!important;gap:12px!important}
  .project-copy,.lower-thirds-title,.tracking-title,.video-editing-title{width:100%!important;max-width:100%!important}
  .type{max-width:100%!important;overflow-wrap:normal!important;word-break:normal!important}
}

/* ============================================================
   V26 — finitions mobile après test réel
   1) Les numéros de section ne passent plus derrière les titres.
   2) Dernière réduction des titres longs pour 360–430 px.
   Aucun changement desktop (> 600 px).
   ============================================================ */
@media (max-width:600px){
  /* Numéro sur sa propre ligne, puis titre, puis description. */
  .section-head{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:0!important;
    align-items:start!important;
  }
  .section-head:before{
    grid-column:1!important;
    grid-row:1!important;
    margin-bottom:18px!important;
  }
  .section-head>span{
    grid-column:1!important;
    grid-row:2!important;
    position:relative!important;
    z-index:3!important;
    display:block!important;
    width:auto!important;
    margin:0 0 26px 0!important;
    font-size:26px!important;
    line-height:1!important;
    letter-spacing:-.04em!important;
  }
  .section-head h2{
    grid-column:1!important;
    grid-row:3!important;
    position:relative!important;
    z-index:2!important;
    margin:0!important;
    width:100%!important;
    font-size:clamp(34px,8.9vw,40px)!important;
    line-height:.9!important;
    letter-spacing:-.035em!important;
  }
  .section-head p{
    grid-column:1!important;
    grid-row:4!important;
    margin-top:24px!important;
    width:100%!important;
    max-width:100%!important;
  }

  /* Titres de projets : un peu plus petits pour les mots très longs. */
  .project-copy h3{
    font-size:clamp(33px,8.8vw,40px)!important;
    line-height:.92!important;
  }

  /* Motion : Hologramme / Bandeaux / etc. */
  .motion-feature h3,
  .lower-thirds-title h3,
  .tracking-title h3,
  .video-editing-title h3{
    font-size:clamp(31px,8.2vw,37px)!important;
    line-height:.94!important;
  }

  /* À propos : éviter que GRAPHISME / MOUVEMENT touche le bord droit. */
  .about h2{
    font-size:clamp(34px,8.7vw,40px)!important;
    line-height:.92!important;
    max-width:100%!important;
  }
}

/* ============================================================
   V27 — finitions mobile d'après les 5 captures réelles
   Corrige uniquement les débordements horizontaux restants.
   Desktop inchangé.
   ============================================================ */
@media (max-width:600px){
  /* Hero : ALEXIS COTE doit rester entièrement dans le viewport. */
  .hero-v8 h1{
    font-size:clamp(54px,16.2vw,68px)!important;
    line-height:.84!important;
    letter-spacing:-.045em!important;
    max-width:100%!important;
  }

  /* En-têtes de grandes sections, notamment PROJETS PERSONNELS. */
  .section-head h2{
    font-size:clamp(31px,8.15vw,36px)!important;
    line-height:.92!important;
    letter-spacing:-.04em!important;
    max-width:100%!important;
  }

  /* Titres de projets longs, notamment BLUEGRASS FESTIVAL. */
  .project-copy h3{
    font-size:clamp(30px,7.9vw,35px)!important;
    line-height:.94!important;
    letter-spacing:-.04em!important;
    max-width:100%!important;
  }

  /* À propos : trois lignes nettes sans couper GRAPHISME/MOUVEMENT. */
  .about h2{
    font-size:clamp(31px,8.05vw,35px)!important;
    line-height:.94!important;
    letter-spacing:-.04em!important;
    max-width:100%!important;
  }
}

/* ============================================================
   V28 — 2 dernières corrections mobile
   Uniquement : PROJETS SÉLECTIONNÉS + HOLOGRAMME.
   Desktop inchangé.
   ============================================================ */
@media (max-width:600px){
  /* Titre de la section 01 : éviter la coupe à droite sur 360–430 px. */
  #projets .section-head h2{
    font-size:clamp(29px,7.55vw,33px)!important;
    line-height:.94!important;
    letter-spacing:-.045em!important;
    white-space:normal!important;
    max-width:100%!important;
  }

  /* Hologramme : réduire uniquement ce titre dans la section Motion. */
  .hologram-feature h3{
    font-size:clamp(28px,7.25vw,32px)!important;
    line-height:.95!important;
    letter-spacing:-.045em!important;
    white-space:normal!important;
    max-width:100%!important;
  }
}

/* V31 — Hologramme : marge supplémentaire avant la vidéo. */
@media (min-width:601px){
  .hologram-feature h3{
    font-size:clamp(38px,3.75vw,56px)!important;
    line-height:.95!important;
    letter-spacing:-.045em!important;
    white-space:nowrap!important;
  }
}
