

:root{
  --bg:#fdfdfc;--fg:#12110d;--bdr:#e8e6df;--f04:#f8f6f1;
  --f38:#8e8c83;--f55:#65635c;--f72:#3a3833;
  --S:'Plus Jakarta Sans',-apple-system,BlinkMacSystemFont,sans-serif;
  --D:'Bebas Neue',sans-serif;
  --ease:cubic-bezier(.2,.65,.25,1);--easeOut:cubic-bezier(.16,1,.3,1);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{overflow-x:hidden;width:100%;-webkit-text-size-adjust:100%;scroll-behavior:smooth;}
body{font-family:var(--S);background:var(--bg);color:var(--fg);font-weight:400;line-height:1.6;font-size:17px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;}
a{color:inherit;text-decoration:none;}
button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit;}
svg{display:block;max-width:100%;}
:focus-visible{outline:2px solid currentColor;outline-offset:3px;}
.skip-link{position:absolute;top:-100px;left:8px;background:var(--fg);color:#fdfdfc;padding:12px 20px;font-size:13px;font-weight:600;z-index:9999;transition:top .25s;}
.skip-link:focus{top:8px;}
.reg{font-size:.28em;vertical-align:0.9em;font-weight:400;margin-left:.04em;display:inline-block;line-height:1;}

/* BURGER */
.nav-burger{position:fixed;top:24px;right:24px;z-index:9100;width:46px;height:46px;padding:9px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fdfdfc;background:rgba(18,17,13,.0);border-radius:50%;transition:background .4s,transform .4s var(--ease),color .4s,opacity .6s;mix-blend-mode:difference;}
.nav-burger:hover{transform:scale(1.08);}
.nb-bar{display:block;width:22px;height:1.6px;background:#fff;margin:3px 0;transition:transform .4s var(--ease);}
.nav-burger.is-open{mix-blend-mode:normal;color:#fdfdfc;}
.nav-burger.is-open .nb-bar{background:#fdfdfc;}
.nav-burger.is-open .nb-bar:nth-child(1){transform:translateY(4.6px) rotate(45deg);}
.nav-burger.is-open .nb-bar:nth-child(2){transform:translateY(-4.6px) rotate(-45deg);}
@media(max-width:760px){.nav-burger{top:16px;right:16px;}}

/* NAV OVERLAY */
.nav-overlay{position:fixed;inset:0;background:var(--fg);z-index:9000;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;opacity:0;pointer-events:none;transition:opacity .5s var(--ease);overflow-y:auto;padding:80px 20px;}
.nav-overlay.is-open{opacity:1;pointer-events:auto;}
.nav-overlay a{font-family:var(--D);font-size:clamp(26px,4vw,40px);color:#fdfdfc;letter-spacing:.02em;opacity:.85;transition:opacity .25s,transform .25s var(--ease);}
.nav-overlay a:hover{opacity:.45;transform:translateX(8px);}
.nav-overlay .no-cta{font-family:var(--S);font-size:13px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;background:#fdfdfc;color:var(--fg);padding:15px 32px;margin-top:20px;opacity:1;}
.nav-grp{font-family:var(--S);font-size:10px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:rgba(253,253,252,.35);margin-top:16px;}

/* PROGRESS DOTS (reperes lateraux) */
.dots{position:fixed;right:30px;top:50%;transform:translateY(-50%);z-index:8000;display:flex;flex-direction:column;gap:14px;mix-blend-mode:difference;}
.dots button{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.35);transition:background .3s,transform .3s;padding:0;}
.dots button.on{background:#fff;transform:scale(1.5);}
@media(max-width:760px){.dots{display:none;}}

/* ═══════════ ECRAN 1 : LOGO REVEAL ═══════════ */
.s-logo{min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--fg);color:#fdfdfc;position:relative;overflow:hidden;padding:40px 20px;}
.s-logo .arc{position:absolute;border-radius:50%;border:1px solid rgba(253,253,252,.1);pointer-events:none;}
.logo-wrap{position:relative;z-index:3;text-align:center;}
.logo-pre{font-family:var(--S);font-size:clamp(10px,1.4vw,13px);font-weight:700;letter-spacing:.4em;text-transform:uppercase;color:rgba(253,253,252,.55);margin-bottom:clamp(20px,3vw,34px);opacity:0;animation:preIn 1s var(--easeOut) .3s forwards;}
.logo-big{font-family:var(--D);font-weight:400;line-height:.82;letter-spacing:-.01em;color:#fdfdfc;font-size:clamp(64px,17vw,290px);}
.logo-big .ln{display:block;overflow:hidden;}
.logo-big .ln span{display:block;transform:translateY(106%);animation:lineUp 1.1s var(--easeOut) forwards;}
.logo-big .ln1 span{animation-delay:.5s;}
.logo-big .ln2 span{animation-delay:.72s;}
.logo-big .reg{font-size:.16em;vertical-align:1.4em;color:rgba(253,253,252,.6);}
.logo-sub{font-family:var(--S);font-size:clamp(13px,1.7vw,19px);font-weight:300;color:rgba(253,253,252,.7);margin-top:clamp(24px,3.4vw,40px);letter-spacing:.01em;opacity:0;animation:preIn 1.1s var(--easeOut) 1.3s forwards;}
.logo-scroll{position:absolute;bottom:34px;left:50%;transform:translateX(-50%);z-index:3;font-size:10px;letter-spacing:.26em;text-transform:uppercase;color:rgba(253,253,252,.5);display:flex;flex-direction:column;align-items:center;gap:10px;opacity:0;animation:preIn 1s ease 1.8s forwards;}
.logo-scroll::after{content:'';width:1px;height:38px;background:linear-gradient(rgba(253,253,252,.6),transparent);animation:drop 2.4s ease-in-out infinite;transform-origin:top;}
@keyframes preIn{to{opacity:1;}}
@keyframes lineUp{to{transform:translateY(0);}}
@keyframes drop{0%,100%{transform:scaleY(.4);opacity:.4;}50%{transform:scaleY(1);opacity:1;}}

/* ═══════════ MANIFESTE : 3 mots qui claquent ═══════════ */
.s-mani{min-height:100svh;display:flex;align-items:center;background:var(--bg);color:var(--fg);padding:120px 0;position:relative;}
.mani-inner{max-width:1280px;margin:0 auto;padding:0 40px;width:100%;}
.mani-eye{font-family:var(--S);font-size:11px;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:var(--f55);margin-bottom:48px;}
.mani-list{list-style:none;}
.mani-list li{font-family:var(--D);font-weight:400;font-size:clamp(48px,11vw,170px);line-height:.94;letter-spacing:-.02em;color:var(--bdr);transition:color .5s var(--ease);position:relative;padding:4px 0;}
.mani-list li.lit{color:var(--fg);}
.mani-list li .idx{font-family:var(--S);font-size:clamp(11px,1vw,14px);font-weight:700;vertical-align:super;color:var(--f38);margin-right:18px;letter-spacing:0;}
.mani-tail{font-family:var(--S);font-weight:300;font-size:clamp(18px,2.4vw,30px);line-height:1.3;color:var(--f55);max-width:760px;margin-top:56px;}
.mani-tail strong{color:var(--fg);font-weight:600;}
@media(max-width:760px){.mani-inner{padding:0 24px;}.mani-eye{margin-bottom:32px;}.mani-tail{margin-top:36px;}}

/* ═══════════ RECIT : une phrase signature ═══════════ */
.s-recit{min-height:90svh;display:flex;align-items:center;justify-content:center;background:var(--fg);color:#fdfdfc;padding:120px 0;text-align:center;position:relative;overflow:hidden;}
.s-recit .arc{position:absolute;border-radius:50%;border:1px solid rgba(253,253,252,.08);pointer-events:none;}
.recit-inner{max-width:1100px;margin:0 auto;padding:0 40px;position:relative;z-index:2;}
.recit-eye{font-family:var(--S);font-size:11px;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:rgba(253,253,252,.5);margin-bottom:48px;}
.recit-big{font-family:var(--D);font-weight:400;font-size:clamp(44px,9vw,140px);line-height:.92;letter-spacing:-.015em;color:#fdfdfc;}
.recit-big .dim{color:rgba(253,253,252,.4);}
.recit-note{font-family:var(--S);font-weight:300;font-size:clamp(16px,2vw,22px);line-height:1.5;color:rgba(253,253,252,.7);max-width:680px;margin:48px auto 0;}
.recit-note strong{color:#fdfdfc;font-weight:600;}
@media(max-width:760px){.recit-inner{padding:0 24px;}.recit-note{margin-top:32px;}}

/* ═══════════ 7 REGISTRES : mots geants qui defilent ═══════════ */
.s-reg{background:var(--bg);color:var(--fg);padding:120px 0;position:relative;}
.reg-head{max-width:1280px;margin:0 auto 80px;padding:0 40px;}
.reg-eye{font-family:var(--S);font-size:11px;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:var(--f55);margin-bottom:28px;}
.reg-title{font-family:var(--S);font-weight:700;font-size:clamp(28px,4.4vw,58px);line-height:1.04;letter-spacing:-.04em;color:var(--fg);max-width:900px;}
.reg-title em{font-style:italic;font-weight:400;color:var(--f38);}
.reg-track{border-top:1px solid var(--bdr);}
.reg-item{max-width:1280px;margin:0 auto;padding:0 40px;border-bottom:1px solid var(--bdr);}
.reg-item a,.reg-item .row{display:flex;align-items:baseline;gap:clamp(16px,3vw,48px);padding:clamp(20px,3vw,40px) 0;color:inherit;transition:padding-left .45s var(--ease),color .45s;}
.reg-item a:hover{padding-left:clamp(12px,2vw,30px);}
.reg-num{font-family:var(--S);font-size:clamp(11px,1vw,14px);font-weight:700;color:var(--f38);flex-shrink:0;width:34px;}
.reg-word{font-family:var(--D);font-weight:400;font-size:clamp(40px,8.5vw,150px);line-height:.9;letter-spacing:-.02em;color:var(--bdr);transition:color .5s var(--ease);}
.reg-item.lit .reg-word{color:var(--fg);}
.reg-ar{margin-left:auto;font-size:clamp(18px,2vw,28px);color:var(--f38);opacity:0;transform:translateX(-10px);transition:opacity .4s,transform .4s var(--ease);align-self:center;flex-shrink:0;}
.reg-item a:hover .reg-ar{opacity:1;transform:translateX(0);}
@media(max-width:760px){.reg-head{padding:0 24px;margin-bottom:48px;}.reg-item{padding:0 24px;}.reg-num{width:24px;}.reg-ar{display:none;}}

/* ═══════════ ACTION + QUI : condense ═══════════ */
.s-act{background:var(--f04);color:var(--fg);padding:130px 0;position:relative;overflow:hidden;}
.act-inner{max-width:1280px;margin:0 auto;padding:0 40px;}
.act-eye{font-family:var(--S);font-size:11px;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:var(--f55);margin-bottom:28px;}
.act-h{font-family:var(--S);font-weight:700;font-size:clamp(30px,5vw,68px);line-height:1.02;letter-spacing:-.04em;color:var(--fg);margin-bottom:64px;max-width:1000px;}
.act-h em{font-style:italic;font-weight:400;color:var(--f38);}
.act-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:2px solid var(--fg);}
.act-cell{padding:36px 28px 36px 0;border-right:1px solid var(--bdr);}
.act-cell:last-child{border-right:none;padding-right:0;}
.act-cell .an{font-family:var(--D);font-size:38px;color:var(--f38);line-height:1;margin-bottom:18px;}
.act-cell h3{font-family:var(--S);font-weight:700;font-size:20px;letter-spacing:-.02em;color:var(--fg);margin-bottom:10px;}
.act-cell p{font-size:14px;line-height:1.6;color:var(--f72);}
.act-qui{margin-top:80px;padding-top:56px;border-top:1px solid var(--bdr);display:grid;grid-template-columns:1.2fr 1fr;gap:56px;align-items:center;}
.act-qui-txt{font-family:var(--S);font-weight:300;font-size:clamp(20px,2.6vw,32px);line-height:1.3;letter-spacing:-.02em;color:var(--fg);}
.act-qui-txt strong{font-weight:700;}
.act-qui-txt em{font-style:italic;color:var(--f55);}
.act-qui-side{font-size:15px;line-height:1.7;color:var(--f72);}
.act-qui-side .net{margin-top:16px;font-size:13px;color:var(--f55);}
.act-link{margin-top:28px;}
.btn-ghost{display:inline-flex;align-items:center;gap:11px;font-family:var(--S);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--fg);border-bottom:1px solid var(--fg);padding-bottom:5px;transition:gap .3s var(--ease);}
.btn-ghost:hover{gap:18px;}
@media(max-width:880px){.act-qui{grid-template-columns:1fr;gap:28px;}}
@media(max-width:760px){.act-inner{padding:0 24px;}.s-act{padding:80px 0;}.act-h{margin-bottom:40px;}.act-grid{grid-template-columns:1fr;}.act-cell{border-right:none;border-bottom:1px solid var(--bdr);padding:28px 0;}.act-cell:last-child{border-bottom:none;}}

/* ═══════════ FINAL ═══════════ */
.s-final{min-height:90svh;display:flex;align-items:center;justify-content:center;background:var(--fg);color:#fdfdfc;padding:120px 0;text-align:center;position:relative;overflow:hidden;}
.s-final .arc{position:absolute;border-radius:50%;border:1px solid rgba(253,253,252,.08);pointer-events:none;}
.final-inner{max-width:980px;margin:0 auto;padding:0 40px;position:relative;z-index:2;}
.final-h{font-family:var(--D);font-weight:400;font-size:clamp(44px,9vw,150px);line-height:.9;letter-spacing:-.015em;color:#fdfdfc;margin-bottom:40px;}
.final-p{font-family:var(--S);font-weight:300;font-size:clamp(16px,2vw,21px);line-height:1.6;color:rgba(253,253,252,.72);max-width:600px;margin:0 auto 48px;}
.final-cta{display:inline-flex;align-items:center;gap:14px;padding:24px 60px;background:#fdfdfc;color:var(--fg);font-family:var(--S);font-weight:700;font-size:14px;letter-spacing:.02em;transition:gap .3s var(--ease),transform .3s,background .3s;}
.final-cta:hover{gap:22px;transform:translateY(-3px);background:#e8e3d6;}
.final-mail{margin-top:32px;font-size:14px;color:rgba(253,253,252,.5);}
.final-mail a{color:rgba(253,253,252,.78);border-bottom:1px solid rgba(253,253,252,.3);}
.final-mail a:hover{color:#fdfdfc;}
@media(max-width:760px){.final-inner{padding:0 24px;}.final-cta{width:100%;justify-content:center;padding:22px 28px;}}

/* FOOTER */
footer{background:var(--fg);color:rgba(253,253,252,.5);padding:0 40px 48px;text-align:center;font-size:12px;}
footer a{color:rgba(253,253,252,.7);margin:0 8px;}
footer a:hover{color:#fdfdfc;}
@media(max-width:760px){footer{padding:0 24px 40px;}}

/* REVEAL */
@media (prefers-reduced-motion: no-preference){
  .rv{opacity:0;transform:translateY(30px);transition:opacity 1s var(--easeOut),transform 1s var(--easeOut);}
  .rv.in{opacity:1;transform:translateY(0);}
  .rv-d1{transition-delay:.1s;}.rv-d2{transition-delay:.2s;}.rv-d3{transition-delay:.3s;}
}
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;}
  .logo-big .ln span{transform:none;}.logo-pre,.logo-sub,.logo-scroll{opacity:1;}
}

/* ════════════════════════════════════════════════════════════════
   PAGES INTERNES , style manifeste
   ════════════════════════════════════════════════════════════════ */

/* HERO INTERNE : titre geant anime (meme effet que la Home) */
.ph{min-height:92svh;display:flex;flex-direction:column;justify-content:center;background:var(--fg);color:#fdfdfc;position:relative;overflow:hidden;padding:120px 0 90px;}
.ph .arc{position:absolute;border-radius:50%;border:1px solid rgba(253,253,252,.1);pointer-events:none;}
.ph-inner{max-width:1280px;margin:0 auto;padding:0 40px;width:100%;position:relative;z-index:3;}
.ph-bread{font-family:var(--S);font-size:11px;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:rgba(253,253,252,.55);margin-bottom:clamp(24px,3vw,40px);opacity:0;animation:preIn 1s var(--easeOut) .3s forwards;}
.ph-bread a{color:inherit;border-bottom:1px solid transparent;transition:border-color .25s;}
.ph-bread a:hover{border-bottom-color:currentColor;}
.ph-num{font-family:var(--S);font-size:13px;font-weight:700;letter-spacing:.2em;color:rgba(253,253,252,.4);margin-bottom:18px;opacity:0;animation:preIn 1s var(--easeOut) .45s forwards;}
.ph-title{font-family:var(--D);font-weight:400;line-height:.84;letter-spacing:-.015em;color:#fdfdfc;font-size:clamp(56px,15vw,230px);}
.ph-title .ln{display:block;overflow:hidden;}
.ph-title .ln span{display:block;transform:translateY(108%);animation:lineUp 1.1s var(--easeOut) .5s forwards;}
.ph-sub{font-family:var(--S);font-weight:300;font-size:clamp(18px,2.6vw,34px);line-height:1.25;letter-spacing:-.02em;color:rgba(253,253,252,.78);max-width:900px;margin-top:clamp(28px,3.4vw,44px);opacity:0;animation:preIn 1.1s var(--easeOut) 1.2s forwards;}
.ph-sub em{font-style:italic;color:rgba(253,253,252,.55);}
.ph-scroll{position:absolute;bottom:32px;left:50%;transform:translateX(-50%);font-size:10px;letter-spacing:.26em;text-transform:uppercase;color:rgba(253,253,252,.5);display:flex;flex-direction:column;align-items:center;gap:10px;opacity:0;animation:preIn 1s ease 1.7s forwards;}
.ph-scroll::after{content:'';width:1px;height:36px;background:linear-gradient(rgba(253,253,252,.6),transparent);animation:drop 2.4s ease-in-out infinite;transform-origin:top;}
@media(max-width:760px){.ph{padding:96px 0 64px;min-height:80svh;}.ph-inner{padding:0 24px;}.ph-scroll{display:none;}}

/* SECTION GENERIQUE claire */
.sec{padding:clamp(80px,12vw,150px) 0;position:relative;overflow:hidden;background:var(--bg);}
.sec.dark{background:var(--fg);color:#fdfdfc;}
.sec.soft{background:var(--f04);}
.sec .arc{position:absolute;border-radius:50%;border:1px solid rgba(18,17,13,.05);pointer-events:none;}
.sec.dark .arc{border-color:rgba(253,253,252,.08);}
.sec-inner{max-width:1280px;margin:0 auto;padding:0 40px;position:relative;z-index:2;}
.sec-inner.narrow{max-width:1040px;}
.eye{font-family:var(--S);font-size:11px;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:var(--f55);margin-bottom:32px;}
.sec.dark .eye{color:rgba(253,253,252,.5);}
.h2{font-family:var(--S);font-weight:700;font-size:clamp(30px,5vw,68px);line-height:1.03;letter-spacing:-.04em;color:var(--fg);margin-bottom:32px;}
.sec.dark .h2{color:#fdfdfc;}
.h2 em{font-style:italic;font-weight:400;color:var(--f38);}
.sec.dark .h2 em{color:rgba(253,253,252,.4);}
@media(max-width:760px){.sec-inner{padding:0 24px;}.eye{margin-bottom:24px;}}

/* GROS MOT QUI S'ALLUME (tension fondatrice) */
.bigword{font-family:var(--D);font-weight:400;font-size:clamp(48px,11vw,170px);line-height:.92;letter-spacing:-.02em;color:var(--bdr);transition:color .6s var(--ease);}
.sec.dark .bigword{color:rgba(253,253,252,.18);}
.bigword.lit{color:var(--fg);}
.sec.dark .bigword.lit{color:#fdfdfc;}

/* PROSE courte */
.prose{font-size:clamp(16px,1.5vw,19px);line-height:1.7;color:var(--f72);max-width:760px;}
.sec.dark .prose{color:rgba(253,253,252,.74);}
.prose p+p{margin-top:20px;}
.prose strong{color:var(--fg);font-weight:700;}
.sec.dark .prose strong{color:#fdfdfc;}
.prose em{font-style:italic;color:var(--f55);}

/* CHIFFRES GEANTS (dimensions) */
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:2px solid currentColor;margin-top:8px;}
.stat{padding:36px 28px 40px 0;border-right:1px solid var(--bdr);}
.sec.dark .stat{border-color:rgba(253,253,252,.18);}
.stat:last-child{border-right:none;}
.stat .sv{font-family:var(--D);font-weight:400;font-size:clamp(54px,8vw,104px);line-height:.86;letter-spacing:-.02em;color:var(--fg);margin-bottom:14px;}
.sec.dark .stat .sv{color:#fdfdfc;}
.stat .sl{font-family:var(--S);font-size:13px;font-weight:600;line-height:1.4;color:var(--f72);margin-bottom:8px;}
.sec.dark .stat .sl{color:rgba(253,253,252,.74);}
.stat .ss{font-family:var(--S);font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--f55);}
.sec.dark .stat .ss{color:rgba(253,253,252,.45);}
@media(max-width:760px){.stats{grid-template-columns:1fr;}.stat{border-right:none;border-bottom:1px solid var(--bdr);padding:28px 0;}.sec.dark .stat{border-color:rgba(253,253,252,.18);}.stat:last-child{border-bottom:none;}}

/* QUESTIONS */
.qs{border-top:1px solid var(--bdr);margin-top:8px;}
.sec.dark .qs{border-color:rgba(253,253,252,.18);}
.q{display:grid;grid-template-columns:60px 1fr;gap:32px;align-items:baseline;padding:32px 0;border-bottom:1px solid var(--bdr);}
.sec.dark .q{border-color:rgba(253,253,252,.18);}
.q .qn{font-family:var(--D);font-size:32px;color:var(--f38);line-height:.85;}
.q .qt{font-family:var(--S);font-style:italic;font-size:clamp(18px,2.2vw,26px);font-weight:400;line-height:1.4;letter-spacing:-.018em;color:var(--fg);}
.sec.dark .q .qt{color:#fdfdfc;}
@media(max-width:760px){.q{grid-template-columns:40px 1fr;gap:16px;padding:24px 0;}.q .qn{font-size:24px;}.q .qt{font-size:16px;}}

/* LISTE / GESTES */
.rows{border-top:2px solid currentColor;}
.row-i{display:grid;grid-template-columns:64px 1fr auto;gap:32px;align-items:baseline;padding:34px 0;border-bottom:1px solid var(--bdr);transition:padding-left .4s var(--ease),background .4s;}
.sec.dark .row-i{border-color:rgba(253,253,252,.18);}
.row-i:hover{padding-left:16px;}
.row-i .rn{font-family:var(--D);font-size:34px;color:var(--f38);line-height:.85;}
.row-i h3{font-family:var(--S);font-weight:700;font-size:clamp(19px,2.2vw,26px);letter-spacing:-.02em;color:var(--fg);margin-bottom:6px;}
.sec.dark .row-i h3{color:#fdfdfc;}
.row-i p{font-size:14px;line-height:1.6;color:var(--f72);max-width:620px;}
.sec.dark .row-i p{color:rgba(253,253,252,.7);}
.row-i .rd{font-family:var(--S);font-size:12px;font-weight:600;letter-spacing:.04em;color:var(--f55);white-space:nowrap;text-align:right;}
@media(max-width:760px){.row-i{grid-template-columns:44px 1fr;gap:16px;padding:26px 0;}.row-i .rn{font-size:26px;}.row-i .rd{grid-column:2;text-align:left;margin-top:6px;}}

/* CARTES (grille) */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.card{padding:38px 32px;background:var(--f04);border:1px solid var(--bdr);border-radius:18px;transition:transform .4s var(--ease),border-color .4s,background .4s;}
.sec.dark .card{background:rgba(253,253,252,.04);border-color:rgba(253,253,252,.16);}
.card:hover{transform:translateY(-6px);border-color:var(--fg);background:var(--bg);}
.sec.dark .card:hover{border-color:#fdfdfc;background:rgba(253,253,252,.08);}
.card .cn{font-family:var(--D);font-size:28px;color:var(--f38);line-height:1;margin-bottom:18px;}
.card h3{font-family:var(--S);font-weight:700;font-size:20px;letter-spacing:-.02em;line-height:1.2;color:var(--fg);margin-bottom:12px;}
.sec.dark .card h3{color:#fdfdfc;}
.card p{font-size:14px;line-height:1.6;color:var(--f72);}
.sec.dark .card p{color:rgba(253,253,252,.7);}
@media(max-width:980px){.cards{grid-template-columns:1fr 1fr;}}
@media(max-width:760px){.cards{grid-template-columns:1fr;}}

/* NAV PREV/NEXT */
.pn{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:1280px;margin:0 auto;padding:0 40px;}
.pn a{padding:32px 28px;border:1px solid var(--bdr);display:flex;flex-direction:column;gap:8px;transition:border-color .35s,transform .35s var(--ease),background .35s;}
.pn a:hover{border-color:var(--fg);transform:translateY(-3px);background:var(--f04);}
.pn .lab{font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--f55);}
.pn .ti{font-family:var(--S);font-weight:700;font-size:18px;letter-spacing:-.02em;color:var(--fg);}
.pn .next{text-align:right;}
@media(max-width:760px){.pn{grid-template-columns:1fr;padding:0 24px;}}

/* BTNS */
.btn-ghost{display:inline-flex;align-items:center;gap:11px;font-family:var(--S);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--fg);border-bottom:1px solid var(--fg);padding-bottom:5px;transition:gap .3s var(--ease);}
.sec.dark .btn-ghost{color:#fdfdfc;border-color:#fdfdfc;}
.btn-ghost:hover{gap:18px;}
.btn-light{display:inline-flex;align-items:center;gap:13px;padding:19px 38px;background:#fdfdfc;color:var(--fg);font-family:var(--S);font-weight:700;font-size:13px;letter-spacing:.04em;text-transform:uppercase;transition:gap .3s var(--ease),transform .3s,background .3s;}
.btn-light:hover{gap:20px;transform:translateY(-2px);background:#e8e3d6;}
.btn-dark{display:inline-flex;align-items:center;gap:13px;padding:22px 50px;background:var(--fg);color:#fdfdfc;font-family:var(--S);font-weight:700;font-size:13px;letter-spacing:.04em;text-transform:uppercase;transition:gap .3s var(--ease),transform .3s,background .3s;}
.btn-dark:hover{gap:20px;transform:translateY(-2px);background:#1c1b16;}

/* CTA final reutilisable */
.cta{min-height:70svh;display:flex;align-items:center;justify-content:center;background:var(--fg);color:#fdfdfc;text-align:center;padding:110px 0;position:relative;overflow:hidden;}
.cta .arc{position:absolute;border-radius:50%;border:1px solid rgba(253,253,252,.08);pointer-events:none;}
.cta-inner{max-width:900px;margin:0 auto;padding:0 40px;position:relative;z-index:2;}
.cta-h{font-family:var(--D);font-weight:400;font-size:clamp(40px,8vw,120px);line-height:.9;letter-spacing:-.015em;color:#fdfdfc;margin-bottom:36px;}
.cta-p{font-family:var(--S);font-weight:300;font-size:clamp(16px,1.9vw,20px);line-height:1.6;color:rgba(253,253,252,.72);max-width:580px;margin:0 auto 44px;}
@media(max-width:760px){.cta-inner{padding:0 24px;}.btn-light{width:100%;justify-content:center;padding:20px 28px;}}

/* LEGAL / prose longue (mentions, confidentialite, cookies) */
.legal{max-width:820px;margin:0 auto;padding:0 40px;}
.legal h2{font-family:var(--S);font-weight:700;font-size:clamp(22px,2.6vw,30px);letter-spacing:-.02em;color:var(--fg);margin:48px 0 16px;}
.legal h3{font-family:var(--S);font-weight:700;font-size:18px;color:var(--fg);margin:28px 0 10px;}
.legal p,.legal li{font-size:15px;line-height:1.7;color:var(--f72);margin-bottom:12px;}
.legal ul{padding-left:22px;margin-bottom:16px;}
.legal a{color:var(--fg);border-bottom:1px solid var(--bdr);transition:border-color .25s;}
.legal a:hover{border-color:var(--fg);}
@media(max-width:760px){.legal{padding:0 24px;}}

/* FORMULAIRE contact */
.form{max-width:680px;margin:0 auto;}
.form .frow{margin-bottom:22px;}
.form label{display:block;font-family:var(--S);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--f55);margin-bottom:8px;}
.form input,.form select,.form textarea{width:100%;font-family:var(--S);font-size:16px;color:var(--fg);background:var(--bg);border:1px solid var(--bdr);border-radius:4px;padding:15px 16px;transition:border-color .25s;}
.form input:focus,.form select:focus,.form textarea:focus{outline:none;border-color:var(--fg);}
.form textarea{min-height:140px;resize:vertical;}
.form .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
.form-btn{display:inline-flex;align-items:center;gap:13px;padding:20px 46px;background:var(--fg)!important;color:#fdfdfc!important;font-family:var(--S);font-weight:700;font-size:13px;letter-spacing:.04em;text-transform:uppercase;border-radius:4px;cursor:pointer;transition:gap .3s var(--ease),transform .3s,background .3s;border:none;}
.form-btn:hover{gap:20px;transform:translateY(-2px);background:#1c1b16!important;}
@media(max-width:760px){.form-btn{width:100%;justify-content:center;}}

/* FOOTER commun */
footer{background:var(--fg);color:rgba(253,253,252,.5);padding:54px 40px 48px;text-align:center;font-size:12px;}
footer .ft{font-family:var(--D);font-size:22px;color:#fdfdfc;letter-spacing:.02em;margin-bottom:18px;}
footer a{color:rgba(253,253,252,.7);margin:0 8px;transition:color .25s;}
footer a:hover{color:#fdfdfc;}
@media(max-width:760px){footer{padding:40px 24px;}}


/* ════ NAV deux colonnes , premium ════ */
.nav-burger{position:fixed;top:28px;right:28px;z-index:9100;width:48px;height:48px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:none;mix-blend-mode:difference;transition:transform .5s var(--ease);}
.nav-burger:hover{transform:scale(1.06);}
.nb-bar{display:block;width:26px;height:1.4px;background:#fff;transition:transform .45s var(--ease),width .45s var(--ease);}
.nav-burger.is-open{mix-blend-mode:normal;}
.nav-burger.is-open .nb-bar{background:#fdfdfc;}
.nav-burger.is-open .nb-bar:nth-child(1){transform:translateY(3.7px) rotate(45deg);}
.nav-burger.is-open .nb-bar:nth-child(2){transform:translateY(-3.7px) rotate(-45deg);}
@media(max-width:760px){.nav-burger{top:18px;right:18px;}}

.nav-overlay{position:fixed;inset:0;background:var(--fg);z-index:9000;opacity:0;pointer-events:none;transition:opacity .6s var(--ease);overflow-y:auto;display:block;}
.nav-overlay.is-open{opacity:1;pointer-events:auto;}
.nav-wrap{min-height:100vh;display:flex;flex-direction:column;justify-content:center;max-width:1180px;margin:0 auto;padding:110px 48px 72px;}
.nav-home{font-family:var(--D);font-size:21px;color:rgba(253,253,252,.5);letter-spacing:.03em;align-self:flex-start;margin-bottom:60px;transition:color .35s;}
.nav-home:hover{color:#fdfdfc;}
.nav-cols{display:grid;grid-template-columns:1fr 1fr;gap:64px;padding-bottom:54px;border-bottom:1px solid rgba(253,253,252,.13);}
.nav-col{display:flex;flex-direction:column;}
.nav-pillar{font-family:var(--D);font-weight:400;font-size:clamp(46px,6.2vw,90px);line-height:.86;color:#fdfdfc;letter-spacing:.012em;margin-bottom:30px;display:flex;flex-direction:column;transition:transform .45s var(--ease),opacity .3s;}
.nav-pillar .np-sub{font-family:var(--S);font-size:11px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:rgba(253,253,252,.4);margin-top:14px;}
.nav-pillar:hover{transform:translateX(7px);}
.nav-sub{font-family:var(--S);font-size:clamp(15px,1.4vw,17px);font-weight:400;color:rgba(253,253,252,.66);padding:10px 0;transition:color .25s,padding-left .35s var(--ease);}
.nav-sub:hover{color:#fdfdfc;padding-left:9px;}
.nav-band{display:grid;grid-template-columns:repeat(3,1fr);gap:44px;padding:50px 0 8px;}
.nav-bgrp{display:flex;flex-direction:column;gap:9px;}
.nb-label{font-family:var(--S);font-size:10px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:rgba(253,253,252,.34);margin-bottom:6px;}
.nav-bgrp a{font-family:var(--S);font-size:14px;font-weight:400;color:rgba(253,253,252,.62);padding:4px 0;transition:color .25s,padding-left .3s var(--ease);}
.nav-bgrp a:hover{color:#fdfdfc;padding-left:7px;}
.nav-cta{align-self:flex-start;display:inline-flex;align-items:center;gap:12px;margin-top:44px;padding:19px 44px;background:#fdfdfc;color:var(--fg);font-family:var(--S);font-weight:700;font-size:12px;letter-spacing:.16em;text-transform:uppercase;transition:gap .3s var(--ease),transform .3s,background .3s;}
.nav-cta:hover{gap:20px;transform:translateY(-2px);background:#e8e3d6;}
.nav-overlay [aria-current="page"]{color:#fdfdfc;}
.nav-sub[aria-current="page"]{padding-left:9px;border-left:2px solid rgba(253,253,252,.4);padding-left:14px;margin-left:-16px;}
/* stagger d'ouverture */
.nav-home,.nav-cols .nav-col,.nav-band,.nav-cta{opacity:0;transform:translateY(18px);transition:opacity .55s var(--ease),transform .55s var(--ease);}
.nav-overlay.is-open .nav-home{opacity:1;transform:none;transition-delay:.08s;}
.nav-overlay.is-open .nav-cols .nav-col:nth-child(1){opacity:1;transform:none;transition-delay:.16s;}
.nav-overlay.is-open .nav-cols .nav-col:nth-child(2){opacity:1;transform:none;transition-delay:.24s;}
.nav-overlay.is-open .nav-band{opacity:1;transform:none;transition-delay:.32s;}
.nav-overlay.is-open .nav-cta{opacity:1;transform:none;transition-delay:.4s;}
@media(max-width:820px){
  .nav-wrap{padding:90px 28px 60px;}
  .nav-home{margin-bottom:40px;}
  .nav-cols{grid-template-columns:1fr;gap:36px;padding-bottom:36px;}
  .nav-pillar{font-size:clamp(42px,13vw,64px);margin-bottom:18px;}
  .nav-band{grid-template-columns:1fr;gap:28px;padding:34px 0 0;}
  .nav-cta{margin-top:34px;}
}

/* ════ COUCHE DE RAFFINEMENT premium ════ */
:root{--bdr:#ece9e2;}
body{letter-spacing:-.004em;}
.eye,.reg-eye,.act-eye,.recit-eye,.pil-eye,.chap-label,.epi-label,.bascule-eye,.appel-eye{letter-spacing:.32em;}
.h2,.pil-h,.chap-h,.reg-title,.act-h{letter-spacing:-.038em;}
.rh-sub,.ph-sub{letter-spacing:-.022em;}
.arc{opacity:.72;}
.btn-light,.btn-dark,.btn-ghost,.epi-cta,.final-cta,.nav-cta,.form-btn{transition-duration:.45s;}
.card,.made-card,.pil-card,.pn a{transition-duration:.5s;}

/* DIPTYQUE deux piliers cote a cote */
.s-piliers{background:var(--fg);color:#fdfdfc;padding:120px 0;position:relative;overflow:hidden;}
.s-piliers .arc{position:absolute;border-radius:50%;border:1px solid rgba(253,253,252,.08);pointer-events:none;}
.pil-inner{max-width:1280px;margin:0 auto;padding:0 40px;position:relative;z-index:2;}
.pil-eye{font-family:var(--S);font-size:11px;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:rgba(253,253,252,.5);margin-bottom:28px;}
.pil-h{font-family:var(--S);font-weight:700;font-size:clamp(28px,4.4vw,58px);line-height:1.04;letter-spacing:-.04em;color:#fdfdfc;margin-bottom:64px;max-width:900px;}
.pil-h em{font-style:italic;font-weight:400;color:rgba(253,253,252,.4);}
.pil-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;}
.pil-card{display:block;padding:48px 44px;border:1px solid rgba(253,253,252,.18);border-radius:22px;background:rgba(253,253,252,.03);transition:transform .45s var(--ease),border-color .45s,background .45s;position:relative;overflow:hidden;}
.pil-card:hover{transform:translateY(-8px);border-color:#fdfdfc;background:rgba(253,253,252,.07);}
.pil-card .pc-n{font-family:var(--D);font-size:34px;color:rgba(253,253,252,.4);line-height:1;margin-bottom:24px;}
.pil-card h3{font-family:var(--D);font-size:clamp(40px,5.5vw,78px);line-height:.9;letter-spacing:.005em;color:#fdfdfc;margin-bottom:20px;}
.pil-card .pc-d{font-size:15px;line-height:1.65;color:rgba(253,253,252,.72);margin-bottom:32px;}
.pil-card .pc-go{display:inline-flex;align-items:center;gap:11px;font-family:var(--S);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#fdfdfc;border-bottom:1px solid #fdfdfc;padding-bottom:5px;transition:gap .3s var(--ease);}
.pil-card:hover .pc-go{gap:18px;}
.pil-amp{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-family:var(--D);font-size:40px;color:rgba(253,253,252,.3);z-index:3;background:var(--fg);width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:1px solid rgba(253,253,252,.18);}
@media(max-width:820px){.pil-grid{grid-template-columns:1fr;}.pil-amp{display:none;}.pil-inner{padding:0 24px;}.pil-h{margin-bottom:40px;}}



/* ════════════════════════════════════════════════════════════════
   LE RECIT , systeme narratif en chapitres
   ════════════════════════════════════════════════════════════════ */

/* Indicateur de chapitre fixe (lecture type livre) */
.chap-track{position:fixed;left:30px;top:50%;transform:translateY(-50%);z-index:8000;display:flex;flex-direction:column;gap:10px;mix-blend-mode:difference;}
.chap-track .ct-dot{display:flex;align-items:center;gap:10px;opacity:.4;transition:opacity .4s;}
.chap-track .ct-dot.on{opacity:1;}
.chap-track .ct-rom{font-family:var(--D);font-size:14px;color:#fff;width:22px;text-align:center;}
.chap-track .ct-line{width:0;height:1px;background:#fff;transition:width .4s var(--ease);}
.chap-track .ct-dot.on .ct-line{width:26px;}
@media(max-width:980px){.chap-track{display:none;}}

/* HERO recit , special reference */
.rh{min-height:100svh;display:flex;flex-direction:column;justify-content:center;background:var(--fg);color:#fdfdfc;position:relative;overflow:hidden;padding:120px 0 90px;}
.rh .arc{position:absolute;border-radius:50%;border:1px solid rgba(253,253,252,.1);pointer-events:none;}
.rh-inner{max-width:1280px;margin:0 auto;padding:0 40px;width:100%;position:relative;z-index:3;}
.rh-bread{font-family:var(--S);font-size:11px;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:rgba(253,253,252,.55);margin-bottom:clamp(28px,3.4vw,44px);opacity:0;animation:preIn 1s var(--easeOut) .3s forwards;}
.rh-bread a{color:inherit;border-bottom:1px solid transparent;transition:border-color .25s;}
.rh-bread a:hover{border-bottom-color:currentColor;}
.rh-title{font-family:var(--D);font-weight:400;line-height:.82;letter-spacing:-.015em;color:#fdfdfc;font-size:clamp(74px,21vw,340px);}
.rh-title .ln{display:block;overflow:hidden;}
.rh-title .ln span{display:block;transform:translateY(108%);animation:lineUp 1.15s var(--easeOut) .5s forwards;}
.rh-sub{font-family:var(--S);font-weight:300;font-size:clamp(19px,2.8vw,38px);line-height:1.22;letter-spacing:-.02em;color:rgba(253,253,252,.8);max-width:920px;margin-top:clamp(32px,3.6vw,48px);opacity:0;animation:preIn 1.1s var(--easeOut) 1.2s forwards;}
.rh-sub em{font-style:italic;color:rgba(253,253,252,.55);}
.rh-meta{margin-top:clamp(36px,4vw,52px);display:flex;gap:36px;flex-wrap:wrap;opacity:0;animation:preIn 1.1s var(--easeOut) 1.5s forwards;}
.rh-meta div{display:flex;flex-direction:column;gap:4px;}
.rh-meta .m-n{font-family:var(--D);font-size:clamp(26px,3vw,40px);color:#fdfdfc;line-height:1;}
.rh-meta .m-l{font-family:var(--S);font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:rgba(253,253,252,.5);}
.rh-scroll{position:absolute;bottom:34px;left:50%;transform:translateX(-50%);font-size:10px;letter-spacing:.26em;text-transform:uppercase;color:rgba(253,253,252,.5);display:flex;flex-direction:column;align-items:center;gap:10px;opacity:0;animation:preIn 1s ease 1.9s forwards;}
.rh-scroll::after{content:'';width:1px;height:38px;background:linear-gradient(rgba(253,253,252,.6),transparent);animation:drop 2.4s ease-in-out infinite;transform-origin:top;}
@media(max-width:760px){.rh{padding:100px 0 64px;}.rh-inner{padding:0 24px;}.rh-scroll{display:none;}.rh-meta{gap:24px;}}

/* CHAPITRE */
.chapter{padding:clamp(90px,13vw,170px) 0;position:relative;overflow:hidden;background:var(--bg);}
.chapter.dark{background:var(--fg);color:#fdfdfc;}
.chapter.soft{background:var(--f04);}
.chapter .arc{position:absolute;border-radius:50%;border:1px solid rgba(18,17,13,.05);pointer-events:none;}
.chapter.dark .arc{border-color:rgba(253,253,252,.08);}
.chap-inner{max-width:1180px;margin:0 auto;padding:0 40px;position:relative;z-index:2;}
.chap-head{display:flex;align-items:flex-start;gap:clamp(24px,4vw,60px);margin-bottom:clamp(40px,5vw,72px);}
.chap-rom{font-family:var(--D);font-weight:400;font-size:clamp(70px,13vw,200px);line-height:.78;letter-spacing:-.02em;color:var(--bdr);flex-shrink:0;transition:color .7s var(--ease);}
.chapter.dark .chap-rom{color:rgba(253,253,252,.2);}
.chapter.is-on .chap-rom{color:var(--fg);}
.chapter.dark.is-on .chap-rom{color:#fdfdfc;}
.chap-titles{padding-top:clamp(8px,1.4vw,20px);}
.chap-label{font-family:var(--S);font-size:11px;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:var(--f55);margin-bottom:18px;}
.chapter.dark .chap-label{color:rgba(253,253,252,.5);}
.chap-h{font-family:var(--S);font-weight:700;font-size:clamp(30px,5vw,68px);line-height:1.02;letter-spacing:-.04em;color:var(--fg);}
.chapter.dark .chap-h{color:#fdfdfc;}
.chap-h em{font-style:italic;font-weight:400;color:var(--f38);}
.chapter.dark .chap-h em{color:rgba(253,253,252,.4);}
.chap-body{max-width:760px;margin-left:clamp(0px,17vw,260px);}
.chap-body.full{margin-left:0;max-width:900px;}
.chap-body p{font-size:clamp(17px,1.7vw,21px);line-height:1.72;color:var(--f72);}
.chapter.dark .chap-body p{color:rgba(253,253,252,.76);}
.chap-body p+p{margin-top:22px;}
.chap-body strong{color:var(--fg);font-weight:700;}
.chapter.dark .chap-body strong{color:#fdfdfc;}
.chap-body em{font-style:italic;color:var(--f55);}
.chapter.dark .chap-body em{color:rgba(253,253,252,.55);}
@media(max-width:760px){.chap-head{flex-direction:column;gap:14px;margin-bottom:36px;}.chap-rom{font-size:clamp(60px,20vw,90px);}.chap-body{margin-left:0;}.chap-inner{padding:0 24px;}}

/* Opposition storytelling vs recit (2 colonnes) */
.versus{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:2px solid currentColor;margin-top:48px;}
.versus .vs-col{padding:36px 32px 36px 0;}
.versus .vs-col:first-child{border-right:1px solid var(--bdr);}
.chapter.dark .versus .vs-col:first-child{border-color:rgba(253,253,252,.2);}
.versus .vs-col:last-child{padding-left:32px;padding-right:0;}
.vs-tag{font-family:var(--S);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--f38);margin-bottom:18px;}
.vs-line{font-family:var(--S);font-weight:400;font-size:clamp(17px,1.7vw,20px);line-height:1.5;color:var(--f72);padding:10px 0;}
.chapter.dark .vs-line{color:rgba(253,253,252,.74);}
.vs-col.strong .vs-line{color:var(--fg);font-weight:600;}
.chapter.dark .vs-col.strong .vs-line{color:#fdfdfc;}
@media(max-width:680px){.versus{grid-template-columns:1fr;}.versus .vs-col:first-child{border-right:none;border-bottom:1px solid var(--bdr);padding-right:0;}.versus .vs-col:last-child{padding-left:0;padding-top:32px;}}

/* DECLARATION plein ecran (moment cinematographique) */
.declare{min-height:88svh;display:flex;align-items:center;justify-content:center;background:var(--fg);color:#fdfdfc;text-align:center;padding:100px 0;position:relative;overflow:hidden;}
.declare .arc{position:absolute;border-radius:50%;border:1px solid rgba(253,253,252,.08);pointer-events:none;}
.declare-inner{max-width:1100px;margin:0 auto;padding:0 40px;position:relative;z-index:2;}
.declare-q{font-family:var(--D);font-weight:400;font-size:clamp(46px,9.5vw,165px);line-height:.92;letter-spacing:-.015em;color:#fdfdfc;}
.declare-q .dim{color:rgba(253,253,252,.38);display:block;}
.declare-note{font-family:var(--S);font-weight:300;font-size:clamp(15px,1.8vw,20px);line-height:1.6;color:rgba(253,253,252,.6);max-width:600px;margin:40px auto 0;}
@media(max-width:760px){.declare-inner{padding:0 24px;}.declare{min-height:70svh;}}

/* CE DONT LE RECIT EST FAIT (materiaux / grammaire / mise en oeuvre) */
.made{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:48px;}
.made-card{padding:40px 34px;border:1px solid var(--bdr);border-radius:18px;background:var(--bg);transition:transform .4s var(--ease),border-color .4s;}
.chapter.dark .made-card{background:rgba(253,253,252,.04);border-color:rgba(253,253,252,.16);}
.made-card:hover{transform:translateY(-6px);border-color:var(--fg);}
.chapter.dark .made-card:hover{border-color:#fdfdfc;}
.made-card .mc-eye{font-family:var(--S);font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--f55);margin-bottom:16px;}
.chapter.dark .made-card .mc-eye{color:rgba(253,253,252,.5);}
.made-card h3{font-family:var(--S);font-weight:700;font-size:22px;letter-spacing:-.02em;color:var(--fg);margin-bottom:10px;}
.chapter.dark .made-card h3{color:#fdfdfc;}
.made-card p{font-size:14px;line-height:1.6;color:var(--f72);margin-bottom:20px;}
.chapter.dark .made-card p{color:rgba(253,253,252,.7);}
.made-card a{font-family:var(--S);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--fg);border-bottom:1px solid var(--fg);padding-bottom:4px;display:inline-flex;gap:9px;transition:gap .3s var(--ease);}
.chapter.dark .made-card a{color:#fdfdfc;border-color:#fdfdfc;}
.made-card a:hover{gap:15px;}
@media(max-width:880px){.made{grid-template-columns:1fr;}}

/* Trois competences rares (croisement) */
.cross{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:2px solid currentColor;margin-top:48px;}
.cross-c{padding:40px 28px 40px 0;border-right:1px solid var(--bdr);}
.chapter.dark .cross-c{border-color:rgba(253,253,252,.18);}
.cross-c:last-child{border-right:none;padding-right:0;}
.cross-c .cc-n{font-family:var(--D);font-size:40px;color:var(--f38);line-height:1;margin-bottom:18px;}
.cross-c h3{font-family:var(--S);font-weight:700;font-size:19px;letter-spacing:-.02em;color:var(--fg);margin-bottom:10px;}
.chapter.dark .cross-c h3{color:#fdfdfc;}
.cross-c p{font-size:14px;line-height:1.6;color:var(--f72);}
.chapter.dark .cross-c p{color:rgba(253,253,252,.7);}
@media(max-width:760px){.cross{grid-template-columns:1fr;}.cross-c{border-right:none;border-bottom:1px solid var(--bdr);padding:28px 0;}.chapter.dark .cross-c{border-color:rgba(253,253,252,.18);}.cross-c:last-child{border-bottom:none;}}

/* EPILOGUE / CTA recit */
.epi{min-height:90svh;display:flex;align-items:center;justify-content:center;background:var(--fg);color:#fdfdfc;text-align:center;padding:110px 0;position:relative;overflow:hidden;}
.epi .arc{position:absolute;border-radius:50%;border:1px solid rgba(253,253,252,.08);pointer-events:none;}
.epi-inner{max-width:920px;margin:0 auto;padding:0 40px;position:relative;z-index:2;}
.epi-label{font-family:var(--S);font-size:11px;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:rgba(253,253,252,.5);margin-bottom:36px;}
.epi-h{font-family:var(--D);font-weight:400;font-size:clamp(44px,9vw,150px);line-height:.9;letter-spacing:-.015em;color:#fdfdfc;margin-bottom:36px;}
.epi-p{font-family:var(--S);font-weight:300;font-size:clamp(16px,1.9vw,21px);line-height:1.6;color:rgba(253,253,252,.74);max-width:600px;margin:0 auto 46px;}
.epi-cta{display:inline-flex;align-items:center;gap:14px;padding:24px 60px;background:#fdfdfc;color:var(--fg);font-family:var(--S);font-weight:700;font-size:14px;letter-spacing:.02em;transition:gap .3s var(--ease),transform .3s,background .3s;}
.epi-cta:hover{gap:22px;transform:translateY(-3px);background:#e8e3d6;}
@media(max-width:760px){.epi-inner{padding:0 24px;}.epi-cta{width:100%;justify-content:center;padding:22px 28px;}}


/* ════ NAV deux colonnes , premium ════ */
.nav-burger{position:fixed;top:28px;right:28px;z-index:9100;width:48px;height:48px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:none;mix-blend-mode:difference;transition:transform .5s var(--ease);}
.nav-burger:hover{transform:scale(1.06);}
.nb-bar{display:block;width:26px;height:1.4px;background:#fff;transition:transform .45s var(--ease),width .45s var(--ease);}
.nav-burger.is-open{mix-blend-mode:normal;}
.nav-burger.is-open .nb-bar{background:#fdfdfc;}
.nav-burger.is-open .nb-bar:nth-child(1){transform:translateY(3.7px) rotate(45deg);}
.nav-burger.is-open .nb-bar:nth-child(2){transform:translateY(-3.7px) rotate(-45deg);}
@media(max-width:760px){.nav-burger{top:18px;right:18px;}}

.nav-overlay{position:fixed;inset:0;background:var(--fg);z-index:9000;opacity:0;pointer-events:none;transition:opacity .6s var(--ease);overflow-y:auto;display:block;}
.nav-overlay.is-open{opacity:1;pointer-events:auto;}
.nav-wrap{min-height:100vh;display:flex;flex-direction:column;justify-content:center;max-width:1180px;margin:0 auto;padding:110px 48px 72px;}
.nav-home{font-family:var(--D);font-size:21px;color:rgba(253,253,252,.5);letter-spacing:.03em;align-self:flex-start;margin-bottom:60px;transition:color .35s;}
.nav-home:hover{color:#fdfdfc;}
.nav-cols{display:grid;grid-template-columns:1fr 1fr;gap:64px;padding-bottom:54px;border-bottom:1px solid rgba(253,253,252,.13);}
.nav-col{display:flex;flex-direction:column;}
.nav-pillar{font-family:var(--D);font-weight:400;font-size:clamp(46px,6.2vw,90px);line-height:.86;color:#fdfdfc;letter-spacing:.012em;margin-bottom:30px;display:flex;flex-direction:column;transition:transform .45s var(--ease),opacity .3s;}
.nav-pillar .np-sub{font-family:var(--S);font-size:11px;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:rgba(253,253,252,.4);margin-top:14px;}
.nav-pillar:hover{transform:translateX(7px);}
.nav-sub{font-family:var(--S);font-size:clamp(15px,1.4vw,17px);font-weight:400;color:rgba(253,253,252,.66);padding:10px 0;transition:color .25s,padding-left .35s var(--ease);}
.nav-sub:hover{color:#fdfdfc;padding-left:9px;}
.nav-band{display:grid;grid-template-columns:repeat(3,1fr);gap:44px;padding:50px 0 8px;}
.nav-bgrp{display:flex;flex-direction:column;gap:9px;}
.nb-label{font-family:var(--S);font-size:10px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:rgba(253,253,252,.34);margin-bottom:6px;}
.nav-bgrp a{font-family:var(--S);font-size:14px;font-weight:400;color:rgba(253,253,252,.62);padding:4px 0;transition:color .25s,padding-left .3s var(--ease);}
.nav-bgrp a:hover{color:#fdfdfc;padding-left:7px;}
.nav-cta{align-self:flex-start;display:inline-flex;align-items:center;gap:12px;margin-top:44px;padding:19px 44px;background:#fdfdfc;color:var(--fg);font-family:var(--S);font-weight:700;font-size:12px;letter-spacing:.16em;text-transform:uppercase;transition:gap .3s var(--ease),transform .3s,background .3s;}
.nav-cta:hover{gap:20px;transform:translateY(-2px);background:#e8e3d6;}
.nav-overlay [aria-current="page"]{color:#fdfdfc;}
.nav-sub[aria-current="page"]{padding-left:9px;border-left:2px solid rgba(253,253,252,.4);padding-left:14px;margin-left:-16px;}
/* stagger d'ouverture */
.nav-home,.nav-cols .nav-col,.nav-band,.nav-cta{opacity:0;transform:translateY(18px);transition:opacity .55s var(--ease),transform .55s var(--ease);}
.nav-overlay.is-open .nav-home{opacity:1;transform:none;transition-delay:.08s;}
.nav-overlay.is-open .nav-cols .nav-col:nth-child(1){opacity:1;transform:none;transition-delay:.16s;}
.nav-overlay.is-open .nav-cols .nav-col:nth-child(2){opacity:1;transform:none;transition-delay:.24s;}
.nav-overlay.is-open .nav-band{opacity:1;transform:none;transition-delay:.32s;}
.nav-overlay.is-open .nav-cta{opacity:1;transform:none;transition-delay:.4s;}
@media(max-width:820px){
  .nav-wrap{padding:90px 28px 60px;}
  .nav-home{margin-bottom:40px;}
  .nav-cols{grid-template-columns:1fr;gap:36px;padding-bottom:36px;}
  .nav-pillar{font-size:clamp(42px,13vw,64px);margin-bottom:18px;}
  .nav-band{grid-template-columns:1fr;gap:28px;padding:34px 0 0;}
  .nav-cta{margin-top:34px;}
}

/* ════ COUCHE DE RAFFINEMENT premium ════ */
:root{--bdr:#ece9e2;}
body{letter-spacing:-.004em;}
.eye,.reg-eye,.act-eye,.recit-eye,.pil-eye,.chap-label,.epi-label,.bascule-eye,.appel-eye{letter-spacing:.32em;}
.h2,.pil-h,.chap-h,.reg-title,.act-h{letter-spacing:-.038em;}
.rh-sub,.ph-sub{letter-spacing:-.022em;}
.arc{opacity:.72;}
.btn-light,.btn-dark,.btn-ghost,.epi-cta,.final-cta,.nav-cta,.form-btn{transition-duration:.45s;}
.card,.made-card,.pil-card,.pn a{transition-duration:.5s;}

.ap-fig{width:100%;max-width:460px;height:auto;}
.ap-lab{font-family:var(--D);font-size:17px;letter-spacing:.05em;}
.ap-link{stroke-dasharray:400;stroke-dashoffset:400;animation:apdraw 1.6s var(--ease) .4s forwards;}
.ap-node{opacity:0;transform:scale(0);transform-origin:center;animation:appop .6s var(--ease) forwards;}
.ap-node:nth-of-type(4){animation-delay:1.2s;}
.ap-node:nth-of-type(5){animation-delay:1.45s;}
.ap-node:nth-of-type(6){animation-delay:1.7s;}
@media (prefers-reduced-motion: no-preference){
  .ap-link{stroke-dasharray:400;stroke-dashoffset:400;animation:apdraw 1.6s var(--ease) .4s forwards;}
  .ap-node{opacity:0;transform:scale(0);transform-origin:center;animation:appop .6s var(--ease) forwards;}
  .ap-node:nth-of-type(4){animation-delay:1.2s;}
  .ap-node:nth-of-type(5){animation-delay:1.45s;}
  .ap-node:nth-of-type(6){animation-delay:1.7s;}
/* ── FIX figure trois appuis : visible, lignes pleines, sans pointilles ── */
@keyframes apfade{from{opacity:0;}to{opacity:1;}}
.ap-fig .ap-link{stroke-dasharray:none !important;stroke-dashoffset:0 !important;animation:none !important;}
.ap-fig .ap-node{opacity:1 !important;transform:none !important;animation:none !important;}
.ap-fig{animation:apfade .8s ease .2s both;}

/* ── SECTION APPEL (Ce que nous croyons) , lisible et premium ── */
.s-appel{background:var(--bg);color:var(--fg);padding:clamp(96px,14vw,180px) 0;display:flex;align-items:center;min-height:80svh;}
.appel-inner{max-width:1040px;margin:0 auto;padding:0 clamp(24px,6vw,80px);width:100%;}
.appel-eye{font-family:var(--S);font-size:11px;font-weight:700;letter-spacing:.32em;text-transform:uppercase;color:var(--f55);margin-bottom:clamp(36px,5vw,56px);}
.appel-lead{font-family:var(--S);font-weight:300;font-size:clamp(26px,4vw,52px);line-height:1.28;letter-spacing:-.025em;color:var(--fg);max-width:18ch;}
.appel-lead{max-width:none;}
.appel-lead strong{font-weight:700;}
.appel-note{font-family:var(--S);font-weight:400;font-size:clamp(16px,1.7vw,21px);line-height:1.6;color:var(--f55);max-width:60ch;margin-top:clamp(32px,4vw,48px);padding-top:clamp(28px,3.5vw,40px);border-top:1px solid var(--bdr);}
.appel-note .reg{color:var(--f55);}
@media(max-width:760px){.appel-lead{font-size:clamp(24px,7vw,32px);}}
