:root{--paper:#FCFCFB;--warm:#F4F4F1;--ink:#0E1220;--soft:#3A3F55;--line:#E7E7E3;--blue:#1F5FD6;--blue-dark:#16408F;--navy:#11224E;--mark:#8DB4FF;--amber:#E8A33D}
*{box-sizing:border-box}html,body{margin:0;padding:0}
/* scroll-behavior:smooth retiré : le scroll fluide est géré par Lenis (script.js) */
html.lenis{height:auto}
html.lenis.lenis-smooth{scroll-behavior:auto!important}
html.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}
html.lenis.lenis-stopped{overflow:hidden}
body{font-family:'Inter',sans-serif;background:var(--paper);color:var(--ink);line-height:1.6;font-size:16px}
a{color:var(--blue);text-decoration:none}a:hover{color:var(--blue-dark)}
em{font-family:'Fraunces',serif;font-style:italic;font-weight:400}
mark{background:linear-gradient(to bottom,transparent 12%,var(--mark) 12%,var(--mark) 92%,transparent 92%);padding:0 5px;color:inherit;-webkit-box-decoration-break:clone;box-decoration-break:clone}
mark.amber{background:linear-gradient(to bottom,transparent 12%,#FFE08A 12%,#FFE08A 92%,transparent 92%)}
h1,h2,h3,h4{font-family:'Sora',sans-serif;margin:0}
p{margin:0 0 18px;line-height:1.65;color:var(--soft)}p:last-child{margin-bottom:0}
.ink{color:var(--ink)}
button{font-family:inherit;cursor:pointer}
/* ---------- NAV ---------- */
header{position:sticky;top:0;z-index:60;background:rgba(252,252,251,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
header.dark{background:rgba(14,18,32,.9);border-bottom-color:rgba(255,255,255,.12)}
.nav{max-width:1440px;margin:0 auto;padding:18px 48px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.nav img{width:90px;height:auto;display:block}
header.dark .nav img{filter:brightness(0) invert(1)}
.nav ul{display:flex;gap:26px;list-style:none;margin:0;padding:0}
.nav ul a{display:block;background:none;border:none;font-size:14px;font-weight:500;color:var(--ink);padding:6px 0;border-bottom:2px solid transparent}
header.dark .nav ul a{color:#D7DAE6}
.nav ul a:hover{color:var(--blue)}
.nav ul a.on{border-bottom-color:var(--blue);color:var(--blue)}
.nav .cta{padding:11px 19px;background:var(--ink);color:#fff;border-radius:999px;font-size:13.5px;font-weight:600;border:none;white-space:nowrap;transition:background .15s}
.nav .cta:hover{background:var(--blue)}
header.dark .nav .cta{background:var(--mark);color:var(--ink)}
header.dark .nav .cta:hover{background:#fff}
/* ---------- SHELL ---------- */
.page{display:none}.page.on{display:block}
.w{max-width:1440px;margin:0 auto;padding:0 48px}
.w-nar{max-width:1040px;margin:0 auto;padding:0 48px}
.eb{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:2.6px;text-transform:uppercase;color:var(--blue);display:flex;align-items:center;gap:11px}
.eb::before{content:"";width:24px;height:1px;background:currentColor}
.eb.pale{color:var(--mark)}
.btn{display:inline-block;padding:17px 29px;background:var(--ink);color:#fff;border-radius:999px;font-weight:600;font-size:15px;border:none;transition:background .15s,color .15s,border-color .15s}
.btn:hover{background:var(--blue)}
.btn.ghost{background:none;border:1.5px solid currentColor;color:var(--ink)}
.btn.ghost:hover{background:var(--ink);border-color:var(--ink);color:#fff}
.btn.light{background:var(--mark);color:var(--ink)}
.btn.light:hover{background:var(--ink);color:#fff}
.btn.white{background:#fff;color:var(--ink)}
.btn.white:hover{background:var(--warm)}
.row-btn{display:flex;gap:13px;flex-wrap:wrap}
.lnk{font-size:14.5px;font-weight:600;color:var(--blue);background:none;border:none;padding:0;transition:color .15s}
.lnk:hover{color:var(--blue-dark);text-decoration:underline}
.note{background:var(--warm);border-left:4px solid var(--amber);border-radius:0 14px 14px 0;padding:20px 24px;max-width:820px}
.note b{font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--amber);display:block;margin-bottom:7px;font-weight:500}
.note p{font-size:14.5px;margin:0}
.logos{display:grid;gap:14px}
.logos span{font-family:'Sora',sans-serif;font-weight:600;font-size:14px;color:var(--soft);text-align:center;padding:20px 10px;background:var(--warm);border-radius:10px;line-height:1.3}
.board{width:100%;display:block;height:auto}
.board-wrap{padding:36px 0 0}

/* ===================== PAGE 1 · HOME ===================== */
#home .hero{padding:104px 0 0}
#home .shot{padding:8px 0 88px}
#home .shot .frame{position:relative;border-radius:20px;overflow:hidden;aspect-ratio:21/6;background:var(--warm);max-width:640px;margin:0 auto}
#home .shot img{width:100%;height:100%;object-fit:cover;object-position:38% 58%;display:block;filter:saturate(.86) contrast(1.03)}
#home .shot .cap{position:absolute;left:32px;bottom:28px;right:32px;display:flex;justify-content:space-between;align-items:end;gap:24px;color:#fff;text-shadow:0 1px 14px rgba(0,0,0,.45)}
#home .shot .cap .t{font-family:'Sora',sans-serif;font-size:24px;font-weight:600;letter-spacing:-.7px;line-height:1.2;max-width:460px}
#home .shot .cap .m{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:2.2px;text-transform:uppercase;opacity:.9;white-space:nowrap}
#home .shot .frame::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(14,18,32,.5) 0%,rgba(14,18,32,.12) 34%,transparent 62%)}
#home .voices{padding:0 0 72px;scroll-margin-top:100px}
#home .vframe{background:var(--warm);border-radius:24px;overflow:hidden;position:relative}
#home .vmain{padding:56px 72px 48px;display:flex;flex-direction:column;position:relative;z-index:1}
#home .vhead{display:flex;justify-content:space-between;align-items:end;gap:32px;padding-bottom:26px;border-bottom:1px solid rgba(14,18,32,.13)}
#home .vtitle{font-family:'Sora',sans-serif;font-size:72px;line-height:1.02;letter-spacing:-2.6px;font-weight:700;color:var(--ink);margin:0}
#home .vnav{display:flex;align-items:center;gap:12px;flex:none}
#home .varr{width:38px;height:38px;border-radius:50%;border:1px solid rgba(14,18,32,.22);background:none;color:var(--ink);font-size:15px;line-height:1;display:grid;place-items:center;transition:background .15s,border-color .15s,color .15s}
#home .varr:hover{background:var(--ink);border-color:var(--ink);color:#fff}
#home .vcount{font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:1.4px;color:var(--soft)}
#home .vcount b{color:var(--ink);font-weight:500}
#home .vslides{flex:1;display:flex;align-items:center;padding:64px 0 20px;min-height:340px}
#home .vs{display:none;margin:0;position:relative;padding-left:104px}
#home .vs.on{display:block;animation:vfade .5s ease}
@keyframes vfade{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
#home .vs p{font-family:'Sora',sans-serif;font-size:34px;line-height:1.38;letter-spacing:-1.2px;font-weight:600;color:var(--ink);max-width:940px;margin:0}
#home .vs::before{content:"\201C";position:absolute;left:-8px;top:-72px;font-family:'Fraunces',serif;font-size:230px;line-height:1;color:var(--blue);opacity:.2;pointer-events:none}
#home .vs em{font-family:'Fraunces',serif;font-style:italic;font-weight:400;color:var(--blue)}
#home .vs em.vpunch{font-size:1.49em;line-height:1.1;letter-spacing:-.5px;display:inline}
#home .vs .vwho{font-size:13.5px;color:var(--soft);line-height:1.5;margin-top:44px;padding-top:22px;border-top:1px solid rgba(14,18,32,.14);display:inline-block}
#home .vs .vwho b{font-family:'Sora',sans-serif;font-size:16px;font-weight:600;color:var(--ink);letter-spacing:-.2px;margin-right:8px}
#home .vdots{display:flex;gap:8px;margin-top:34px}
#home .vd{width:34px;height:3px;border:none;border-radius:2px;background:rgba(14,18,32,.16);padding:0;transition:background .2s}
#home .vd.on{background:var(--blue)}
#home h1{font-size:88px;line-height:1.14;letter-spacing:-3.2px;font-weight:700;max-width:1250px}
#home .kick{margin:72px 0 0;padding:0 0 34px;border-bottom:1px solid var(--line)}
#home .kick ul{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;list-style:none;margin:0;padding:0}
#home .kick li{font-family:'Sora',sans-serif;font-size:21px;font-weight:600;letter-spacing:-.5px;line-height:1.25;color:var(--ink);padding-top:14px;border-top:3px solid #FFE08A}
#home .heroFoot{margin-top:56px;padding-bottom:56px}
#home .heroFoot p{font-size:24px;line-height:1.5;max-width:1100px}
#home .pageHero .sub2{margin-top:40px}
#home .heroFoot .row-btn{margin-top:44px}
/* prestations — 4 titles at a glance + panel */
.presta{padding-bottom:32px}
.presta .head{display:flex;justify-content:space-between;align-items:end;gap:40px;flex-wrap:wrap;margin-bottom:36px}
.presta .head h2{font-size:44px;letter-spacing:-1.6px;font-weight:700;margin-top:20px}
.presta .tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.presta .tab{text-align:left;background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px 24px 22px;display:flex;flex-direction:column;gap:12px;min-height:150px;transition:background .15s,border-color .15s}
.presta .tab:hover{border-color:var(--blue)}
.presta .tab .n{font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:1.6px;color:var(--blue)}
.presta .tab h3{font-size:29px;letter-spacing:-1px;line-height:1.1;font-weight:700}
.presta .tab .more{margin-top:auto;font-size:13.5px;font-weight:600;color:var(--blue)}
.presta .tab.on{background:var(--ink);border-color:var(--ink)}
.presta .tab.on h3{color:#fff}
.presta .tab.on .n,.presta .tab.on .more{color:var(--mark)}
.presta .panel{margin-top:20px;background:var(--warm);border-radius:20px;padding:48px 52px;display:grid;grid-template-columns:1fr 1px 1fr;gap:52px;align-items:start}
.presta .panel .rule{background:var(--line);align-self:stretch}
.presta .panel .lbl{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:2.4px;text-transform:uppercase;color:var(--blue);margin-bottom:18px}
.presta .panel p{font-size:18px;line-height:1.6;margin:0}
.presta .panel .pull{font-family:'Fraunces',serif;font-style:italic;font-weight:400;font-size:31px;line-height:1.3;color:var(--ink);margin:0}
.presta .panel .cta{margin-top:32px;display:inline-flex;align-items:center;gap:10px;font-family:'Sora',sans-serif;font-size:15px;font-weight:600;color:var(--ink);background:none;border:none;padding:0;border-bottom:1.5px solid var(--ink);padding-bottom:5px}
.presta .panel .cta:hover{color:var(--blue);border-bottom-color:var(--blue)}
.presta .pane{display:none}.presta .pane.on{display:block}
#home .snap{position:relative;padding:16px 0 60px;overflow:hidden}
#home .snap .in{display:grid;grid-template-columns:1fr 52%;gap:56px;align-items:center}
#home .snap .over{font-family:'Sora',sans-serif;font-size:clamp(34px,4.1vw,56px);font-weight:700;letter-spacing:-1.7px;line-height:1.02;color:var(--ink);display:block;max-width:520px}
#home .snap .scq{margin:24px 0 0;padding-top:22px;border-top:1px solid var(--line);max-width:480px}
#home .snap .scq p{font-size:24px;line-height:1.5;color:var(--soft);margin:0}
#home .snap figure{margin:0;aspect-ratio:16/9;overflow:hidden;border-radius:16px 0 0 16px;background:var(--warm);margin-right:calc(-1*max(0px,(100vw - 1440px)/2) - 48px)}
#home .snap .tag{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:2.4px;text-transform:uppercase;color:var(--blue);display:flex;align-items:center;gap:11px;margin-bottom:18px}
#home .snap .tag::before{content:"";width:26px;height:1px;background:currentColor}
#home .snap .over em{font-family:'Fraunces',serif;font-style:italic;font-weight:400}
#home .snap img{width:100%;height:100%;object-fit:cover;object-position:48% 62%;display:block;filter:saturate(.9)}
#home .snap .scq em{font-family:'Fraunces',serif;font-style:italic;font-weight:400;color:var(--ink)}
#home .proof{padding:40px 0 72px}
#home .proofHead{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:36px;flex-wrap:wrap}
#home .proofHead h2{font-size:46px;letter-spacing:-1.7px;font-weight:700}
#home .logos{grid-template-columns:repeat(5,1fr)}
#home .close{background:var(--warm);color:var(--ink);padding:80px 0}
#home .close p{font-size:74px;line-height:1.14;letter-spacing:-2.8px;font-weight:600;font-family:'Sora',sans-serif;color:var(--ink);max-width:1180px;margin:0}

/* ===================== PAGE 2 · CONFIANCE (dark-led) ===================== */
#confiance .hero{padding:104px 0 96px}
#confiance .hero h1{font-size:100px;line-height:1.06;letter-spacing:-3.6px;font-weight:700;max-width:1150px;margin-top:26px}
#confiance .hero .sub{display:grid;grid-template-columns:1.2fr 1fr;gap:72px;margin-top:64px;padding-top:40px;border-top:1px solid var(--line)}
#confiance .hero .sub p{font-size:18.5px;max-width:640px}
#confiance .hero .sub p strong{color:var(--ink)}
/* silence figure */
.silence{padding:104px 0;background:var(--warm)}
.silence .grid{display:grid;grid-template-columns:340px 1fr;gap:72px;align-items:start}
.silence .stat .fig{font-family:'Sora',sans-serif;font-size:190px;line-height:1;font-weight:700;letter-spacing:-6px;color:var(--blue);opacity:.24;display:block}
.silence .stat span{display:block;font-size:14px;line-height:1.6;letter-spacing:2px;font-family:'JetBrains Mono',monospace;color:var(--ink);margin-top:24px;padding-top:22px;border-top:1px solid var(--line);font-weight:400}
.silence p{font-size:19px;max-width:780px}
.silence p:first-of-type{font-family:'Sora',sans-serif;font-size:27px;line-height:1.35;letter-spacing:-.7px;color:var(--ink);font-weight:500}
/* does / doesn't */
.dd{padding:104px 0}
.dd .pair{display:grid;grid-template-columns:1fr 1fr;margin-top:44px;border-top:1px solid var(--ink)}
.dd .pair>div{padding:40px 44px 40px 0}
.dd .pair>div:first-child{border-right:1px solid var(--line);padding-right:44px}
.dd .pair>div:last-child{padding-left:44px}
.dd .tag{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:2px;color:var(--blue);margin-bottom:18px}
.dd .pair p{font-size:18.5px}
.dd .pair p strong{color:var(--ink)}
/* ledger */
.ledger{background:var(--ink);color:#fff;padding:104px 0}
.ledger h2{font-size:52px;letter-spacing:-2px;font-weight:700;color:#fff;margin:22px 0 48px}
.ledger .cols{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid rgba(255,255,255,.2)}
.ledger .col{padding:36px 44px 36px 0}
.ledger .col+.col{border-left:1px solid rgba(255,255,255,.2);padding-left:44px}
.ledger h4{font-size:23px;letter-spacing:-.6px;color:var(--mark);margin-bottom:26px}
.ledger .ent{padding:22px 0;border-top:1px solid rgba(255,255,255,.12)}
.ledger .ent b{display:block;font-family:'Sora',sans-serif;font-size:18px;font-weight:600;color:#fff;margin-bottom:6px;letter-spacing:-.3px}
.ledger .ent p{color:#A8ADC2;font-size:15.5px;margin:0}
/* legal */
.legal{padding:104px 0;background:#fff}
.legal .grid{display:grid;grid-template-columns:1fr 1.35fr;gap:80px}
.legal h2{font-size:46px;letter-spacing:-1.7px;font-weight:700;margin-top:22px}
.legal .arts{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 28px}
.legal .arts span{font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:1px;padding:8px 13px;border:1.5px solid var(--ink);border-radius:6px}
.legal p{font-size:17.5px}
#confiance .close{padding:140px 0;background:var(--warm)}
#confiance .close p{font-family:'Sora',sans-serif;font-size:58px;line-height:1.18;letter-spacing:-2.2px;font-weight:600;color:var(--ink);max-width:1150px;margin:0 0 44px}

/* ===================== PAGE 3 · COACHING (magazine + sticky index) ===================== */
#coaching .hero{padding:104px 0 88px;border-bottom:1px solid var(--ink)}
#coaching .hero h1{font-size:112px;line-height:1.05;letter-spacing:-4.2px;font-weight:700;max-width:1150px;margin-top:26px}
/* situations as tight list */
.situ{padding:88px 0}
.situ .grid{display:grid;grid-template-columns:1fr 1.5fr;gap:72px;align-items:start}
.situ ol{list-style:none;counter-reset:s;margin:0;padding:0;border-top:1px solid var(--line)}
.situ li{counter-increment:s;padding:19px 0 19px 52px;border-bottom:1px solid var(--line);font-family:'Sora',sans-serif;font-size:23px;line-height:1.28;letter-spacing:-.6px;font-weight:500;position:relative;color:var(--ink)}
.situ li::before{content:counter(s,decimal-leading-zero);position:absolute;left:0;top:24px;font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--blue);letter-spacing:1px}
.situ .after{margin-top:36px}
.situ .after p{font-size:17.5px;max-width:740px}
/* method — 3 offset blocks on warm */
.meth{background:var(--warm);padding:104px 0}
.meth h2{font-size:52px;letter-spacing:-2px;font-weight:700;margin:22px 0 56px;max-width:900px}
.meth .three{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;align-items:start}
.meth .three>div:nth-child(2){margin-top:56px}
.meth .three>div:nth-child(3){margin-top:112px}
.meth .three p{font-size:17px}
.meth .kb{font-family:'Sora',sans-serif;font-size:21px;line-height:1.35;letter-spacing:-.5px;color:var(--ink);font-weight:500}
.meth .rhythm{margin-top:72px;padding-top:28px;border-top:1px solid var(--line);font-family:'JetBrains Mono',monospace;font-size:14px;color:var(--soft);letter-spacing:.5px;max-width:820px}
/* principles ladder */
.ladder{padding:104px 0;background:var(--ink);color:#fff}
.ladder h2{font-size:52px;letter-spacing:-2px;font-weight:700;color:#fff;margin:22px 0 8px}
.ladder .st{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:48px}
.ladder .p{padding:34px 40px 34px 0;border-top:1px solid rgba(255,255,255,.16)}
.ladder .p:nth-child(even){padding-left:40px;border-left:1px solid rgba(255,255,255,.16)}
.ladder .p .n{font-family:'Sora',sans-serif;font-size:56px;font-weight:700;letter-spacing:-2.5px;color:var(--mark);line-height:.85;display:block;margin-bottom:16px}
.ladder h4{font-size:26px;letter-spacing:-.7px;color:#fff;margin-bottom:10px}
.ladder p{color:#A8ADC2;font-size:16.5px;margin:0}
/* domains with sticky index */
.dom{padding:104px 0;background:#fff}
.dom .shell{display:grid;grid-template-columns:280px 1fr;gap:80px;align-items:start}
.dom .idx{position:sticky;top:110px}
.dom .idx h2{font-size:40px;letter-spacing:-1.4px;font-weight:700;margin:22px 0 26px}
.dom .idx a{display:block;font-size:15px;color:var(--soft);padding:11px 0;border-bottom:1px solid var(--line);font-weight:500}
.dom .idx a:hover{color:var(--blue);padding-left:8px;transition:padding .15s}
.dom .body>div{padding:56px 0;border-bottom:1px solid var(--line);scroll-margin-top:110px}
.dom .body>div:first-child{padding-top:0}
.dom .body>div:last-child{border-bottom:none}
.dom .body h3{font-size:40px;letter-spacing:-1.5px;font-weight:700;margin-bottom:20px;max-width:760px}
.dom .body p{font-size:17.5px;max-width:800px}
.dom .gestes{list-style:none;padding:0;margin:20px 0 0;max-width:800px}
.dom .gestes li{padding:13px 0 13px 30px;position:relative;font-size:17px;color:var(--soft);border-bottom:1px solid var(--line)}
.dom .gestes li:last-child{border-bottom:none}
.dom .gestes li::before{content:"—";position:absolute;left:0;color:var(--blue)}
.dom .prax{font-family:'JetBrains Mono',monospace;font-size:14px;line-height:1.75;color:var(--ink);background:var(--warm);padding:20px 24px;border-radius:12px;max-width:800px;margin-top:22px}
.dom .badge{display:inline-block;font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:1.4px;padding:7px 13px;background:var(--mark);border-radius:6px;margin-top:18px}
/* tools — tall colour fields */
.tools{padding:104px 0;background:var(--warm)}
.tools h2{font-size:52px;letter-spacing:-2px;font-weight:700;margin:22px 0 16px;max-width:900px}
.tools .top{max-width:820px;font-size:18px;margin-bottom:52px}
.tools .set{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.tools .t{border-radius:22px;padding:38px;display:flex;flex-direction:column;min-height:390px}
.tools .t:nth-child(1){background:var(--ink);color:#fff}
.tools .t:nth-child(1) p{color:#A8ADC2}
.tools .t:nth-child(2){background:var(--mark);color:var(--ink)}
.tools .t:nth-child(3){background:#fff;border:1px solid var(--line)}
.tools .t h4{font-size:27px;letter-spacing:-.8px;margin-bottom:16px}
.tools .t:nth-child(1) h4{color:#fff}
.tools .t p{font-size:16.5px;margin:0}
.tools .t .mk{margin-top:auto;font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:2px;opacity:.55;padding-top:24px}
/* outcomes checklist */
.out{padding:112px 0}
.out h2{font-size:56px;letter-spacing:-2.2px;font-weight:700;margin:22px 0 48px;max-width:900px}
.out ul{list-style:none;padding:0;margin:0;border-top:1px solid var(--ink)}
.out li{display:grid;grid-template-columns:56px 1fr;gap:20px;padding:24px 0;border-bottom:1px solid var(--line);align-items:baseline}
.out li span{font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--blue);letter-spacing:1px}
.out li b{font-family:'Sora',sans-serif;font-size:24px;font-weight:500;letter-spacing:-.6px;line-height:1.3;color:var(--ink)}

/* ===================== PAGE 4 · IA (structured / technical) ===================== */
#ia .hero{padding:104px 0 96px;background:var(--ink);color:#fff}
#ia .hero .term{font-family:'JetBrains Mono',monospace;font-size:13px;color:var(--mark);letter-spacing:1.4px;margin-bottom:30px}
#ia .hero h1{font-size:110px;line-height:1.05;letter-spacing:-4.2px;font-weight:700;max-width:1220px}
#ia .hero .price{display:flex;gap:0;margin-top:64px;border-top:1px solid rgba(255,255,255,.16);flex-wrap:wrap}
#ia .hero .price div{padding:26px 34px 0 0;border-right:1px solid rgba(255,255,255,.16);margin-right:34px}
#ia .hero .price div:last-child{border-right:none}
#ia .hero .price b{font-family:'Sora',sans-serif;font-size:22px;font-weight:600;display:block;letter-spacing:-.4px}
#ia .hero .price span{font-family:'JetBrains Mono',monospace;font-size:12px;color:#8B90A8;letter-spacing:1px}
.start{padding:96px 0}
.start .grid{display:grid;grid-template-columns:1fr 1.4fr;gap:80px;align-items:start}
.start p{font-size:18.5px;max-width:820px}
.start p strong{color:var(--ink)}
.start .lead{font-family:'Sora',sans-serif;font-size:30px;line-height:1.28;letter-spacing:-1px;color:var(--ink);font-weight:500}
/* method split with claim */
.iam{background:var(--warm);padding:104px 0}
.iam .grid{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}
.iam h2{font-size:48px;letter-spacing:-1.8px;font-weight:700;margin:22px 0 26px}
.iam p{font-size:17.5px}
.iam .chips{display:flex;flex-wrap:wrap;gap:9px;margin-top:26px}
.iam .chips span{font-size:13.5px;font-weight:600;padding:9px 15px;background:#fff;border:1.5px solid var(--ink);border-radius:999px}
.iam .claim{background:var(--ink);color:#fff;border-radius:24px;padding:48px}
.iam .claim p{font-family:'Sora',sans-serif;font-size:34px;line-height:1.22;letter-spacing:-1.2px;font-weight:600;color:#fff;margin:0}
/* three bands */
.bands{border-top:1px solid var(--ink)}
.bands .b{padding:88px 0;border-bottom:1px solid var(--line)}
.bands .b:nth-child(2){background:#fff}
.bands .grid{display:grid;grid-template-columns:300px 1fr;gap:72px;align-items:start}
.bands .big{font-family:'Sora',sans-serif;font-size:132px;line-height:.78;font-weight:700;letter-spacing:-6px;color:var(--mark)}
.bands .b:nth-child(2) .big{color:var(--blue);opacity:.9}
.bands .b:nth-child(3) .big{color:var(--ink);opacity:.14}
.bands .lbl{font-family:'JetBrains Mono',monospace;font-size:12.5px;letter-spacing:2px;color:var(--soft);margin-top:20px;text-transform:uppercase}
.bands h3{font-size:44px;letter-spacing:-1.7px;font-weight:700;margin-bottom:22px;max-width:820px}
.bands p{font-size:18px;max-width:860px}
.bands p strong{color:var(--ink)}
#ia .close{padding:140px 0;background:var(--mark)}
#ia .close p{font-family:'Sora',sans-serif;font-size:62px;line-height:1.18;letter-spacing:-2.4px;font-weight:600;color:var(--ink);max-width:1150px;margin:0 0 44px}

/* ===================== PAGE 5 · À PROPOS (people-first) ===================== */
#apropos .hero{padding:96px 0 0}
#apropos .hero h1{font-size:92px;line-height:1.08;letter-spacing:-3.2px;font-weight:700;max-width:1220px;margin-top:26px}
#apropos .hero p{font-size:21px;line-height:1.5;max-width:820px;margin-top:40px}
/* photo strip in hero */
.strip{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-top:64px;padding-bottom:96px}
.strip figure{margin:0;aspect-ratio:3/4;border-radius:12px;overflow:hidden;background:var(--warm)}
.strip figure:nth-child(2),.strip figure:nth-child(5){margin-top:32px}
.strip img{width:100%;height:100%;object-fit:cover;display:block}
/* 4 distinguishing — asymmetric */
.dist{padding:104px 0;background:var(--warm)}
.dist h2{font-size:52px;letter-spacing:-2px;font-weight:700;margin:22px 0 52px;max-width:900px}
.dist .set{display:grid;grid-template-columns:1.3fr 1fr;gap:24px}
.dist .c{background:#fff;border-radius:20px;padding:38px;border:1px solid var(--line)}
.dist .c:nth-child(1){grid-row:span 2;display:flex;flex-direction:column;justify-content:center}
.dist .c:nth-child(1) h4{font-size:34px;letter-spacing:-1.2px}
.dist .c h4{font-size:25px;letter-spacing:-.7px;margin-bottom:14px}
.dist .c p{font-size:16.5px}
/* engagement — 3 statement band */
.eng{padding:120px 0;background:var(--ink);color:#fff}
.eng .set{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:44px;border-top:1px solid rgba(255,255,255,.2)}
.eng .e{padding:38px 40px 0 0}
.eng .e+.e{border-left:1px solid rgba(255,255,255,.2);padding-left:40px}
.eng .k{font-family:'Fraunces',serif;font-style:italic;font-size:16px;color:var(--mark);margin-bottom:20px}
.eng .e p{font-family:'Sora',sans-serif;font-size:25px;line-height:1.3;letter-spacing:-.7px;font-weight:500;color:#fff;margin:0}
/* team mosaic */
.team{padding:104px 0;background:#fff}
.team h2{font-size:56px;letter-spacing:-2.2px;font-weight:700;margin:22px 0 12px}
.team .cnt{font-family:'JetBrains Mono',monospace;font-size:13px;color:var(--soft);letter-spacing:1.5px;margin-bottom:52px}
.team .grid{display:grid;grid-template-columns:repeat(5,1fr);gap:22px;max-width:1000px}
.mb figure{margin:0;aspect-ratio:3/4;border-radius:14px;overflow:hidden;background:var(--warm)}
.mb img{width:100%;height:100%;object-fit:cover;display:block}
.mb .ni{width:100%;height:100%;display:grid;place-items:center;font-family:'Sora',sans-serif;font-size:38px;font-weight:700;color:var(--mark);background:var(--warm)}
.mb .nm{font-family:'Sora',sans-serif;font-size:19px;font-weight:600;letter-spacing:-.4px;margin:16px 0 6px}
.mb .fn{font-size:13px;line-height:1.5;color:var(--soft)}
/* quotes — editorial with hanging mark */
.quotes{padding:112px 0;background:var(--warm)}
.quotes .set{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:44px}
.quotes .q{background:#fff;border-radius:20px;padding:36px;position:relative}
.quotes .q::before{content:"“";position:absolute;top:6px;left:26px;font-family:'Fraunces',serif;font-size:96px;line-height:1;color:var(--mark)}
.quotes .q p{font-family:'Sora',sans-serif;font-size:18px;line-height:1.45;font-weight:500;color:var(--ink);margin:44px 0 26px}
.quotes .who b{display:block;font-family:'Sora',sans-serif;font-size:15px;font-weight:600;color:var(--ink)}
.quotes .who{font-size:13px;color:var(--soft);line-height:1.45}
/* clients + partners */
.refs{padding:104px 0}
.refs h2{font-size:44px;letter-spacing:-1.6px;font-weight:700;margin:22px 0 32px}
.refs .logos{grid-template-columns:repeat(5,1fr)}
.refs .blk+.blk{margin-top:80px}

/* ===================== PAGE 6 · CONTACT (split) ===================== */
#contact .split{display:grid;grid-template-columns:1fr 1fr;min-height:calc(100vh - 80px)}
#contact .left{background:var(--ink);color:#fff;padding:104px 64px}
#contact .left h1{font-size:88px;line-height:1.06;letter-spacing:-3.4px;font-weight:700;margin:26px 0 32px}
#contact .left .ld{font-family:'Fraunces',serif;font-style:italic;font-size:23px;color:var(--mark);margin-bottom:40px}
#contact .left p{color:#A8ADC2;font-size:18px;max-width:520px}
#contact .offices{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:64px;padding-top:36px;border-top:1px solid rgba(255,255,255,.18)}
#contact .offices b{font-family:'Sora',sans-serif;font-size:19px;font-weight:600;color:#fff;display:block;margin-bottom:8px}
#contact .offices div{font-size:15.5px;color:#A8ADC2;line-height:1.7}
#contact .direct{margin-top:44px;padding-top:32px;border-top:1px solid rgba(255,255,255,.18)}
#contact .direct a{font-family:'Sora',sans-serif;font-size:26px;font-weight:600;color:var(--mark)}
#contact .direct span{display:block;font-family:'JetBrains Mono',monospace;font-size:15px;color:#8B90A8;margin-top:8px;letter-spacing:1px}
#contact .right{padding:104px 64px;display:flex;flex-direction:column;justify-content:center}
#contact .form{max-width:520px;width:100%}
#contact .fl{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:2px;color:var(--blue);margin-bottom:9px;text-transform:uppercase}
#contact .fd{border-bottom:1.5px solid var(--line);padding-bottom:13px;margin-bottom:30px;font-size:17px;color:#B4B4B4}
#contact .fd.tall{height:104px}

/* ---------- PHOTOS & RYTHME (partagé) ---------- */
.ph-split{display:grid;grid-template-columns:400px 1fr;gap:72px;align-items:center}
.ph-split.rev{grid-template-columns:1fr 400px}
.ph-split figure{margin:0;border-radius:20px;overflow:hidden;aspect-ratio:4/5;background:var(--warm)}
.ph-split img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.9)}
.say{font-family:'Fraunces',serif;font-style:italic;font-weight:400;font-size:40px;line-height:1.28;color:var(--ink);margin:0;max-width:740px}
.say.sm{font-size:31px}
.say.pale{color:#fff}
.ph-cap{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:2.2px;text-transform:uppercase;color:var(--soft);margin-top:24px}
.ph-cap.pale{color:var(--mark)}
.ph-strip{border-radius:20px;overflow:hidden;background:var(--warm);max-width:1100px;margin:0 auto}
.ph-strip img{width:100%;display:block;aspect-ratio:21/6;object-fit:cover;object-position:center 58%;filter:saturate(.88)}
.duo{display:grid;grid-template-columns:1.3fr 1fr;gap:20px;align-items:start}
.duo figure{margin:0;border-radius:18px;overflow:hidden;background:var(--warm)}
.duo figure:first-child{aspect-ratio:3/2}
.duo figure:last-child{aspect-ratio:1/1;margin-top:44px}
.duo img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.9)}
.pad-s{padding:76px 0}

/* ---------- PAGE 2 · CONFIANCE — composition révisée ---------- */
.t1{font-family:'Sora',sans-serif;font-size:72px;line-height:1.02;letter-spacing:-2.6px;font-weight:700;margin:0 0 38px;max-width:1250px}
.t2{font-family:'Sora',sans-serif;font-size:44px;line-height:1.06;letter-spacing:-1.6px;font-weight:700;margin:0 0 30px;max-width:860px}
.silence{padding:112px 0;background:var(--warm)}
.silence .grid{grid-template-columns:1fr 1.6fr;gap:84px;align-items:start}
.silence h2{font-size:50px;line-height:1.04;letter-spacing:-1.9px;font-weight:700;margin:22px 0 0;max-width:400px}
.silence .lead{font-family:'Sora',sans-serif;font-size:25px;line-height:1.42;letter-spacing:-.6px;color:var(--ink);font-weight:500;margin:0 0 34px;max-width:none}
.silence .two{columns:2;column-gap:48px;padding-top:30px;border-top:1px solid var(--line)}
.silence .two p{font-size:16.5px;margin:0;max-width:none}
.dip{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:44px}
.dip .c{border-radius:22px;padding:44px;display:flex;flex-direction:column;gap:22px;min-height:300px}
.dip .c.a{background:#fff;border:1px solid var(--line)}
.dip .c.b{background:var(--ink)}
.dip .lb{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:2.2px;text-transform:uppercase}
.dip .c.a .lb{color:var(--amber)}
.dip .c.b .lb{color:var(--mark)}
.dip p{font-family:'Sora',sans-serif;font-size:25px;line-height:1.36;letter-spacing:-.6px;font-weight:500;color:var(--ink);margin:0;max-width:none}
.dip .c.b p{color:#fff}
.dip .c.b strong{color:var(--mark);font-weight:500}
.dd{padding:112px 0}
.dd h2{max-width:900px}
.ledger .ent .ix{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:1.6px;color:var(--mark);display:block;margin-bottom:10px}
.legal{padding:112px 0;background:#fff}
.legal .shell{max-width:900px;margin:0 auto}
.legal h2{margin:0 0 30px}
.legal .arts{margin:0 0 36px;padding-bottom:30px;border-bottom:1px solid var(--line)}
.legal .p1{font-family:'Sora',sans-serif;font-size:23px;line-height:1.44;letter-spacing:-.5px;color:var(--ink);font-weight:500;margin:0 0 28px;max-width:none}
.legal .p2{font-size:17px;line-height:1.7;max-width:none}


/* ---------- COMPOSANTS COMMUNS (vocabulaire de la Homepage) ---------- */
.pageHero{padding:80px 0 64px}
.pageHero h1,.pageHero h2{font-size:84px;line-height:1.42;letter-spacing:-3px;font-weight:700;max-width:1140px;margin-top:26px}
.pageHero .sub2{font-size:20px;line-height:1.55;color:var(--soft);max-width:780px;margin-top:34px}
.sec{padding:88px 0}
.sec.warm{background:var(--warm)}
.sec.white{background:var(--paper)}
.hd{margin-bottom:28px}
.hd h2{margin:0 0 30px;max-width:920px}
.hd .lede2{font-size:18.5px;line-height:1.6;color:var(--soft);max-width:820px;margin-top:20px}
.tiles{display:grid;gap:16px}
.tiles.c2{grid-template-columns:1fr 1fr}
.tiles.c3{grid-template-columns:repeat(3,1fr)}
.tiles.c4{grid-template-columns:repeat(4,1fr)}
.tile.sm{padding:26px}
.tile.sm .sub3{font-size:16px;margin-top:4px}
.tile.sm p{font-size:15px}
.tile{background:#fff;border:1px solid var(--line);border-radius:18px;padding:32px;display:flex;flex-direction:column;gap:12px}
.sec.white .tile{background:#fff}
.tile .n{font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:1.6px;color:var(--blue)}
.tile h4{font-size:23px;letter-spacing:-.6px;line-height:1.2}
.tile p{font-size:16px;margin:0}
.tile .k{font-family:'Fraunces',serif;font-style:italic;font-size:15px;color:var(--blue)}
.tile .sub3{font-family:'Sora',sans-serif;font-size:17px;font-weight:600;letter-spacing:-.3px;margin-top:6px}
.tile.dark{background:var(--ink)!important;border-color:var(--ink)}
.tile.dark h4{color:#fff}.tile.dark p{color:#A8ADC2}.tile.dark .n,.tile.dark .k{color:var(--mark)}
.tile.dark strong{color:var(--mark);font-weight:600}
.rowlist{border-top:1px solid var(--ink)}
.rowlist .r{display:grid;grid-template-columns:56px 300px 1fr;gap:32px;padding:26px 0;border-bottom:1px solid var(--line);align-items:baseline}
.rowlist .r.wide{grid-template-columns:56px 1fr}
.rowlist .r .i{font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--blue);letter-spacing:1.2px}
.rowlist .r h4{font-size:22px;letter-spacing:-.5px;line-height:1.25}
.rowlist .r p{font-size:16.5px;margin:0;max-width:760px}
.rowlist .r .big2{font-family:'Sora',sans-serif;font-size:21px;font-weight:500;letter-spacing:-.4px;line-height:1.35;color:var(--ink)}
.body2{columns:2;column-gap:52px;column-rule:1px solid var(--line);max-width:1080px}
.body2 p{font-size:17px;max-width:none}
.body2 p+p{margin-top:16px}
.claimband{background:var(--warm);color:var(--ink);padding:72px 0}
.claimband p{font-family:'Sora',sans-serif;font-size:50px;line-height:1.16;letter-spacing:-1.9px;font-weight:600;color:var(--ink);max-width:1120px;margin:0}
.cq{margin:0;position:relative;padding-left:80px;border-left:3px solid var(--blue);max-width:1080px}
.cq::before{content:"\201C";position:absolute;left:24px;top:-30px;font-family:'Fraunces',serif;font-size:130px;line-height:1;color:var(--blue);opacity:.22;pointer-events:none}
.cq p{font-family:'Fraunces',serif;font-style:italic;font-size:52px;line-height:1.26;letter-spacing:-1.2px;font-weight:400;color:var(--ink);margin:0}
.cq p em{font-family:'Sora',sans-serif;font-style:normal;font-weight:600;color:var(--blue)}
.ph-s{max-width:300px;margin:0 auto;border-radius:18px;overflow:hidden;background:var(--warm)}
.ph-s img{width:100%;display:block;aspect-ratio:16/9;object-fit:cover;object-position:center 58%;filter:saturate(.9)}
.chips2{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}
.chips2 span{font-size:13.5px;font-weight:600;padding:9px 15px;background:#fff;border:1.5px solid var(--ink);border-radius:999px}
.mini{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:48px;max-width:480px}
.mini figure{margin:0;aspect-ratio:1/1;border-radius:12px;overflow:hidden;background:var(--warm)}
.mini img{width:100%;height:100%;object-fit:cover;display:block}
.ctaSec{padding:104px 0}
@media(max-width:1180px){
.pageHero h1,.pageHero h2{font-size:46px!important;line-height:1.42!important;letter-spacing:-1.6px!important}
#confiance .sec.warm h2{font-size:38px!important;letter-spacing:-1.3px!important}
#confiance .sec.warm>.w>div[style*="1fr 1fr"]{grid-template-columns:1fr!important;gap:16px!important}
#confiance .sec.white>.w>div[style*="200px"]{grid-template-columns:1fr!important;gap:28px!important}
#confiance .sec>.w>div[style*="420px"]{grid-template-columns:1fr!important;gap:28px!important}.tiles.c2,.tiles.c3,.tiles.c4,.body2,.mini{grid-template-columns:1fr!important;columns:1!important}
.rowlist .r,.rowlist .r.wide{grid-template-columns:1fr!important;gap:10px}
.claimband p{font-size:30px;letter-spacing:-1.1px}
.cq{padding-left:22px}
.cq::before{display:none}
.cq p{font-size:27px;letter-spacing:-.8px}
footer .fmain{grid-template-columns:1fr!important;gap:24px!important}
footer .fcontact{grid-template-columns:repeat(4,1fr)!important;gap:18px!important}
footer .fcontact div{font-size:13px}
footer .fcontact b{font-size:14px}
.hd h2{font-size:32px!important;letter-spacing:-1.1px!important}
}

#contact .fd{border-bottom:1.5px solid rgba(255,255,255,.28);padding-bottom:12px;margin-bottom:22px;font-size:16px;color:#7E859E}
#contact .fd.tall{height:92px}
.gestes{list-style:none;padding:0;margin:0}
.gestes li{padding:9px 0 9px 26px;position:relative;font-size:16px;color:var(--soft)}
.gestes li::before{content:"—";position:absolute;left:0;color:var(--blue)}

.dual{display:grid;grid-template-columns:1.15fr .85fr;gap:64px;max-width:1180px}
.dual .a{font-size:19px;line-height:1.62}
.dual .b{font-size:17px;line-height:1.7;padding-top:8px}
.entries{display:grid;grid-template-columns:1fr 1px 1fr;gap:56px;border-top:1px solid var(--ink);padding-top:34px}
.entries p{font-size:19px;line-height:1.55;max-width:540px}
.vr{background:var(--line)}
.lbl2{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:2.2px;color:var(--blue);margin-bottom:22px;text-transform:uppercase}
.band2{background:var(--warm);color:var(--ink);padding:80px 0}
.band2.white2{background:var(--paper)}
.band2 mark,.tile.dark mark{color:var(--ink)}
.band2 .s1{font-family:'Sora',sans-serif;font-size:30px;line-height:1.3;letter-spacing:-1px;font-weight:500;color:var(--soft);max-width:840px;margin:0}
.band2 .s2{font-family:'Sora',sans-serif;font-size:56px;line-height:1.14;letter-spacing:-2.2px;font-weight:600;color:var(--ink);margin:20px 0 0;max-width:1160px}
.phside{display:grid;grid-template-columns:280px 1fr;gap:48px;align-items:center}
.phside.rev2{grid-template-columns:1fr 280px;gap:56px;align-items:center}
.phside figure{margin:0;aspect-ratio:4/5;border-radius:18px;overflow:hidden;background:var(--warm)}
.phside img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.9)}
/* Titre dupliqué, affiché uniquement sur mobile (voir @media(max-width:680px))
   pour passer avant la photo sans toucher à l'ordre du DOM desktop. */
.ph-mtitle{display:none}
@media(max-width:1180px){
.dual,.entries{grid-template-columns:1fr!important;gap:26px!important}
.phside{grid-template-columns:360px 1fr!important;gap:36px!important;align-items:start!important}
.phside[style*="230px"]{grid-template-columns:230px 1fr!important;align-items:center!important}
.phside.rev2{grid-template-columns:1fr 360px!important;align-items:center!important}
.phside[style*="1fr 150px"]{grid-template-columns:1fr 360px!important}
.phside figure{max-width:360px!important;margin-top:0!important}
#coaching .sec.warm>.w>div[style*="repeat(5,1fr)"]{grid-template-columns:1fr 1fr!important}
.vr{display:none}
.band2 .s1{font-size:22px}.band2 .s2{font-size:32px;letter-spacing:-1.2px}
}

.mrows{border-top:2px solid var(--navy)}
.mr{display:grid;grid-template-columns:260px 1fr;gap:48px;padding:28px 0;border-bottom:1px solid var(--line);align-items:start}
.mr:last-child{border-bottom:none}
.mn{font-family:'Sora',sans-serif;font-size:24px;font-weight:700;letter-spacing:-.7px;line-height:1.15;color:var(--navy)}
.mtx p{font-size:17.5px;line-height:1.62;max-width:680px;margin:0 0 12px}
.mtx p:last-child{margin-bottom:0}
.lc{flex:1 1 0;display:flex;flex-direction:column;gap:6px;min-width:0}
.lc h4{font-family:'Sora',sans-serif;font-size:23px;font-weight:700;letter-spacing:-.6px;color:var(--navy)}
.lc .rz{font-size:17px;line-height:1.55;color:var(--soft);margin:0}
.lc .lp{display:none}.lc.on .lp{display:block}
.lc .lp p{font-size:17px;line-height:1.6;margin:0 0 12px}
.lc .more{align-self:flex-start;background:none;border:none;padding:0;margin-top:2px;font-size:13.5px;font-weight:600;color:var(--blue)}
.lc.on .rz{display:none}
.dgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.dc{text-align:left;background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px 24px 22px;display:flex;flex-direction:column;gap:10px;min-height:200px;transition:border-color .15s}
.dc:hover{border-color:var(--blue)}
.dc .n{font-family:'Sora',sans-serif;font-size:20px;font-weight:700;letter-spacing:-.5px;color:var(--ink);background:#FFE08A;border-radius:7px;padding:2px 8px;align-self:flex-start}
.dc h3{font-family:'Sora',sans-serif;font-size:22px;font-weight:700;letter-spacing:-.6px;line-height:1.15;color:var(--ink)}
.dc p{font-size:15.5px;line-height:1.5;color:var(--soft);margin:0}
.dc .more{display:block;background:none;border:none;padding:12px 0 0;margin-top:auto;text-align:left;font-family:inherit;font-size:13.5px;font-weight:600;color:var(--blue)}
.dc .more:hover{text-decoration:underline}
.dc2{cursor:default;align-items:stretch;min-height:250px}
.dc2 .xbtn{margin-top:auto;padding-top:14px;align-self:flex-start}
.dc2 .xp p{font-size:16px;line-height:1.6;max-width:none}
.dc2 p{max-width:none}
.dgrid{align-items:start}
.dc.on{border-color:var(--navy)}
.dc .dcr{display:none}
.dc.on .dcr{display:inline}
.dc.on .dce{display:none}
@media(max-width:1180px){.mr{grid-template-columns:1fr!important;gap:10px!important}.lpanes{padding:22px 20px}.dgrid{grid-template-columns:1fr 1fr}.dpanes{padding:24px 22px}}

.sflow{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.sflow .sp{display:inline-flex;align-items:center;gap:14px;padding:12px 24px 12px 14px;background:#fff;border:1.5px solid var(--ink);border-radius:999px;font-family:'Sora',sans-serif;font-size:17px;font-weight:500;letter-spacing:-.3px;color:var(--ink)}
.sp.tp{cursor:pointer;transition:background .15s,color .15s}
.sp.tp:hover{background:var(--warm)}
.sp.tp.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.tpanes:has(.tp2.on){margin-top:18px;padding:24px 26px;background:var(--warm);border-radius:14px;max-width:760px}
.tp2{display:none}.tp2.on{display:block}
.tp2 p{font-size:17.5px;line-height:1.6;margin:0}
.sflow .sp b{font-family:'Sora',sans-serif;font-size:23px;font-weight:700;letter-spacing:-.6px;color:var(--ink);background:#FFE08A;border-radius:8px;padding:2px 9px}
@media(max-width:1180px){.sdots,.sband,.srow{grid-template-columns:1fr!important}.sband .sb+.sb{border-left:none;padding-left:0}}

.xp{display:grid;grid-template-rows:0fr;opacity:0;overflow:hidden;margin-top:0;transition:grid-template-rows .35s ease,opacity .3s ease,margin-top .35s ease}
.xp.on{grid-template-rows:1fr;opacity:1;margin-top:8px}
.xp>*{min-height:0}
.xp p{font-size:17.5px;line-height:1.64;max-width:680px;margin:0 0 12px}
.xp p:last-child{margin-bottom:0}
.xbtn{background:none;border:none;padding:0;margin-top:14px;font-size:13.5px;font-weight:600;color:var(--blue);display:block;transition:color .15s}
.xbtn:hover{color:var(--blue-dark);text-decoration:underline}

.mbleed{display:grid;grid-template-columns:170px 1fr;gap:44px;align-items:center}
.mbleed figure{margin:0 0 0 calc(-1*max(0px,(100vw - 1440px)/2) - 48px);aspect-ratio:4/5;overflow:hidden;border-radius:0 16px 16px 0;background:var(--warm)}
.mbleed img{width:100%;height:100%;object-fit:cover;object-position:52% 60%;display:block;filter:saturate(.9)}
.mbleed p{max-width:620px}
@media(max-width:1180px){.mcols,.mside,.mbleed,.mhead{grid-template-columns:1fr!important;gap:24px!important}.mbody{columns:1}.mbleed figure{margin-left:-24px}}

.sq2{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start;max-width:1000px}
.sq{min-width:0;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;display:flex;flex-direction:column}
.sq .sh{background:var(--navy);color:#fff;font-family:'Sora',sans-serif;font-size:21px;font-weight:600;letter-spacing:-.5px;padding:18px 28px;border-radius:999px;margin:12px 12px 0;text-align:center}
.sqt{padding:20px 26px 24px;display:flex;flex-direction:column;gap:12px}
.sqt .sqp{position:relative;padding:0 0 14px 20px;border-bottom:1px solid var(--line)}
.sqt .sqp:last-child{padding-bottom:0;border-bottom:none}
.sqt .sqp::before{content:"";position:absolute;left:0;top:8px;width:6px;height:6px;border-radius:50%;background:var(--navy)}
.sqt .sqp .sqi{font-size:15px!important;line-height:1.55;max-width:520px;margin:0;padding-left:0}
.sqt .sqp .xp p{font-size:15px!important;line-height:1.55;max-width:520px;margin:8px 0 0;padding-left:0}
.sqt .sqp .xbtn{margin-top:8px;font-size:13px!important}
.sqt p{font-size:15px!important;line-height:1.55;max-width:520px;margin:0;padding-bottom:14px;border-bottom:1px solid var(--line);position:relative;padding-left:20px}
.sqt>p::before{content:"";position:absolute;left:0;top:8px;width:6px;height:6px;border-radius:50%;background:var(--navy)}
.sqk{display:block;font-family:'Sora',sans-serif;font-size:16px!important;font-weight:700;letter-spacing:-.35px;color:var(--navy);margin-bottom:5px}
.sqt p:last-child{padding-bottom:0;border-bottom:none}
.sq .sh{box-shadow:0 4px 14px rgba(21,42,92,.18)}
.sqt p:last-child{margin-bottom:0}
@media(max-width:1180px){.sq2{gap:14px}.sq{padding:24px}}

.y{overflow:hidden}
.yg{display:grid;gap:56px;align-items:start}
.yt h2{margin:0 0 28px;max-width:760px}
.yb{border-top:1px solid var(--ink);padding-top:26px}
.yb p{font-size:17.5px;line-height:1.64;max-width:620px;margin:0 0 14px}
.yg figure{margin:0 calc(-1*max(0px,(100vw - 1440px)/2) - 80px) 0 0;overflow:hidden;border-radius:14px 0 0 14px;background:var(--warm)}
.yg img{width:100%;height:100%;object-fit:cover;object-position:46% 58%;display:block;filter:saturate(.9)}
.coh{display:grid;grid-template-columns:1fr 400px;gap:64px;align-items:center}
.coht{display:flex;flex-direction:column;justify-content:center}
.cohq{font-family:'Sora',sans-serif;font-size:32px;line-height:1.3;letter-spacing:-1.05px;font-weight:600;color:var(--ink);margin:0;padding-top:26px;border-top:2px solid var(--navy);max-width:640px}
.cohq em{font-family:'Fraunces',serif;font-style:italic;font-weight:400;color:var(--navy)}
.cs{display:none}.cs.on{display:block;animation:vfade .42s ease}
.cohn{display:flex;align-items:center;gap:10px;margin-top:34px}
.cd{width:30px;height:3px;border:none;border-radius:2px;background:rgba(14,18,32,.16);padding:0;transition:background .2s}
.cd.on{background:var(--navy)}
.ca{width:34px;height:34px;border-radius:50%;border:1px solid rgba(14,18,32,.22);background:none;color:var(--ink);font-size:14px;line-height:1;display:grid;place-items:center;transition:background .15s,border-color .15s,color .15s}
.ca:first-of-type{margin-left:14px}
.ca:hover{background:var(--ink);border-color:var(--ink);color:#fff}
.coh figure{margin:0;aspect-ratio:4/3;overflow:hidden;border-radius:18px;background:var(--paper)}
.cf{display:none}.cf.on{display:block;animation:vfade .42s ease}
.coh img{width:100%;height:100%;object-fit:cover;object-position:46% 58%;display:block;filter:saturate(.9)}
.yb2{grid-template-columns:1fr 360px;align-items:center}
.yb2 figure{aspect-ratio:4/5;border-radius:18px;margin-right:0}
@media(max-width:1180px){
.yg{grid-template-columns:1fr 360px!important;gap:36px!important}
.coh{grid-template-columns:1fr 320px!important;gap:40px!important}
.cohq{font-size:24px!important;letter-spacing:-.8px!important}
.yg figure{margin-right:0!important;border-radius:18px!important}
.yt h2{font-size:32px!important;letter-spacing:-1.1px!important}
}

.w1{margin-top:38px;padding-top:32px;border-top:1px solid var(--ink)}
.w1 h2{margin:0 0 30px;max-width:980px}
.w1c{display:grid;grid-template-columns:1fr 1fr 1fr;gap:44px}
.w1c p{font-size:17.5px;line-height:1.62;margin:0}
@media(max-width:1180px){.w1c{grid-template-columns:1fr!important;gap:20px!important}.w1 h2{font-size:28px!important;letter-spacing:-1px!important}}

.v1h{margin-bottom:22px}
.v1s{font-family:'Sora',sans-serif;font-size:30px;line-height:1.22;letter-spacing:-1px;font-weight:600;color:var(--soft);margin:0 0 34px;max-width:1000px}
.v1c{padding-top:30px;border-top:1px solid var(--ink)}
.v1c p{font-size:18.5px;line-height:1.68;margin:0;text-align:justify;hyphens:auto;-webkit-hyphens:auto}
@media(max-width:1180px){.v2,.v4c{grid-template-columns:1fr!important;gap:22px!important}.v1c p{font-size:16.5px}.v3i{grid-template-columns:1fr!important;gap:8px}.v1s,.v2r h2,.v3h,.v4 h2{font-size:26px!important;letter-spacing:-.9px!important}.v2l h1{font-size:40px!important}.v4{padding:26px 24px}}

.rt{border-top:1px solid var(--ink)}
.ri{display:grid;grid-template-columns:300px 1fr;gap:52px;padding:32px 0;border-bottom:1px solid var(--line);align-items:start}
.ri:last-child{border-bottom:none}
.rw{font-family:'Sora',sans-serif;font-size:22px;font-weight:700;letter-spacing:-.6px;line-height:1.2;color:var(--navy)}
.rw span{display:block;font-size:15px;font-weight:500;color:var(--soft);margin-top:6px;letter-spacing:-.1px}
.ri p{font-family:'Sora',sans-serif;font-size:21px;line-height:1.45;letter-spacing:-.45px;font-weight:500;color:var(--ink);margin:0}
.ri .vpunch{font-size:1.3em;line-height:1.15;letter-spacing:-.5px;display:inline-block}
@media(max-width:1180px){.ri{grid-template-columns:1fr!important;gap:12px!important}.rw{font-size:19px}.ri p{font-size:18px}}

.rbig{min-height:250px;padding-bottom:30px;border-bottom:1px solid var(--ink)}
.rg{display:none;margin:0}.rg.on{display:block;animation:vfade .5s ease}
.rg p{font-family:'Sora',sans-serif;font-size:31px;line-height:1.36;letter-spacing:-1px;font-weight:600;color:var(--ink);max-width:1060px;margin:0}
.rg .vpunch{font-size:1.2em;display:inline-block}
.rpick{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:0}
.rk{background:none;border:none;border-right:1px solid var(--line);text-align:left;padding:20px 22px 0 0;font-family:'Sora',sans-serif;font-size:18px;font-weight:700;letter-spacing:-.4px;color:var(--soft)}
.rk:last-child{border-right:none}
.rk span{display:block;font-family:'Inter',sans-serif;font-size:13.5px;font-weight:500;color:var(--soft);margin-top:3px}
.rk.on{color:var(--navy)}
@media(max-width:1180px){.rtb,.rpick{grid-template-columns:1fr!important}.rb,.rk{border-right:none;border-bottom:1px solid var(--line);padding:16px 0}.rs p,.rp p,.rg p{font-size:20px!important;letter-spacing:-.6px!important}.rch{flex-wrap:wrap;gap:16px}}

.tick{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);padding:22px 0;overflow:hidden}
.tickrun{display:flex;width:max-content;animation:tickscroll 46s linear infinite}
.tick:hover .tickrun{animation-play-state:paused}
.tkg{display:flex;align-items:baseline;gap:32px;padding-right:32px;white-space:nowrap}
@keyframes tickscroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.tickrun{animation:none;flex-wrap:wrap;width:auto}.tkg:last-child{display:none}}


.tk{display:inline-flex;align-items:baseline;gap:16px}
.tk b{font-family:'Sora',sans-serif;font-size:27px;font-weight:600;letter-spacing:-.8px;color:var(--ink)}
.tk i{font-family:'JetBrains Mono',monospace;font-style:normal;font-size:12px;letter-spacing:1.6px;text-transform:uppercase;color:var(--navy)}
.tks{color:var(--blue);font-size:15px}
@media(max-width:1180px){.tk b{font-size:20px;letter-spacing:-.6px}.tk i{font-size:10.5px}}

.tg{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:22px}
.tm{background:none;border:none;padding:0;text-align:left;display:block;min-width:0}
.tm figure{margin:0;aspect-ratio:3/4;flex:none;border-radius:14px;overflow:hidden;background:var(--warm)}
.tm img{width:100%;height:100%;object-fit:cover;display:block}
.tm .ni{width:100%;height:100%;display:grid;place-items:center;font-family:'Sora',sans-serif;font-size:34px;font-weight:700;color:var(--mark);background:var(--warm)}
.tm .nm{font-family:'Sora',sans-serif;font-size:15.5px;font-weight:600;letter-spacing:-.45px;margin:12px 12px 4px;line-height:1.25;height:1.25em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tgB .tm{background:#fff;border:1px solid var(--line);border-radius:16px;padding:8px 8px 12px;overflow:visible;min-width:0;width:100%}
.tgB .tm:hover{border-color:var(--blue)}
.tgB .tm figure{border-radius:10px}
.tgB .rorow{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:0 12px}
.tgB .ro{font-size:12.5px;line-height:1.35;height:1.35em;color:var(--blue);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.tgB .plus{flex:none;position:relative;width:20px;height:20px;border-radius:50%;border:1px solid var(--blue);color:var(--blue);transition:transform .15s,background .15s,color .15s}
.tgB .plus i{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);line-height:1;font-size:13px;font-style:normal}
.tgB .tm:hover .plus{background:var(--blue);color:#fff}
.tgB .tm.on .plus{transform:rotate(45deg);background:var(--blue);color:#fff}
.tgB{align-items:start}
.tgB .tm{position:relative}
.tgB .fullr{position:absolute;left:0;top:100%;width:330px;max-width:none;z-index:6;display:none;background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px 24px;margin-top:10px;box-shadow:0 14px 34px rgba(14,18,32,.12)}
.tgB .tm:nth-child(4n) .fullr,.tgB .tm:nth-child(5n) .fullr{left:auto;right:0}
.tgB .fullr span{display:block;font-size:14px;line-height:1.5;color:var(--soft);padding:0 0 9px}
.tgB .fullr span+span{padding-top:9px;border-top:1px solid var(--line)}
.tgB .fullr .tmail{font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--blue);letter-spacing:0;overflow-wrap:anywhere}
.tgB .tm.on{z-index:7}
.tgB .tm.on .fullr{display:block}
@media(max-width:1180px){.tg{grid-template-columns:repeat(5,minmax(0,1fr))!important;justify-items:stretch;gap:14px!important;max-width:none!important}.tm .nm{font-size:14px}.tgB .ro{font-size:11.5px}.tgB .plus{width:17px;height:17px}.tgB .plus i{font-size:11px}}

.q4C{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink);border-bottom:1px solid var(--line)}
.q4C .q4b{background:none;border:none;border-right:1px solid var(--line);text-align:left;padding:18px 18px 18px 0;font-family:'Sora',sans-serif;font-size:18px;font-weight:700;letter-spacing:-.45px;line-height:1.2;color:var(--soft);display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.q4C .q4b:last-child{border-right:none}
.q4n{font-family:'Sora',sans-serif;font-size:17px;font-weight:700;letter-spacing:-.4px;color:var(--ink);background:#FFE08A;border-radius:6px;padding:1px 7px}
.q4C .q4b.on{color:var(--navy);box-shadow:inset 0 -3px 0 var(--blue)}
.q4p{padding-top:26px}
.q4d{display:none}.q4d.on{display:block}
.q4d p{font-size:18px;line-height:1.62;max-width:860px;margin:0}
@media(max-width:1180px){.q4A,.q4C,.q4D{grid-template-columns:1fr!important}.q4B .q4i{grid-template-columns:1fr!important;gap:10px}.q4C .q4b{border-right:none;border-bottom:1px solid var(--line)}}

.lgb{padding:34px 0 40px;border-top:1px solid var(--line)}
.lgh{font-family:'JetBrains Mono',monospace;font-size:10.5px;letter-spacing:2.4px;text-transform:uppercase;color:var(--soft);margin-bottom:16px}
.lgr{display:flex;flex-wrap:wrap;gap:8px}
.lgr span{font-family:'Sora',sans-serif;font-size:13px;font-weight:600;letter-spacing:-.2px;color:var(--soft);padding:7px 13px;background:var(--warm);border-radius:8px}

.dgo{display:grid;grid-template-columns:1fr 380px;gap:64px;align-items:start}
.dgs{display:flex;flex-direction:column;gap:0;border-top:1px solid var(--ink)}
.dgs.dgs3{flex-direction:row;gap:0;border-top:1px solid var(--ink)}
.dgs.dgs3 .dgi{flex:1;border-bottom:none;border-right:1px solid var(--line);padding-right:32px;margin-right:32px}
.dgs.dgs3 .dgi:last-child{border-right:none;padding-right:0;margin-right:0}
.dgi{padding:18px 0;border-bottom:1px solid var(--line)}
.dgi:last-child{border-bottom:none}
.dgi b{font-family:'Sora',sans-serif;font-size:19px;font-weight:600;letter-spacing:-.4px;color:var(--navy);display:block;margin-bottom:5px}
.dgi span{font-size:15.5px;line-height:1.55;color:var(--soft)}
@media(max-width:1180px){.dgo{grid-template-columns:1fr!important;gap:28px!important}.dgs.dgs3{flex-direction:column}.dgs.dgs3 .dgi{border-right:none;border-bottom:1px solid var(--line);padding-right:0;margin-right:0}}

#prog{position:fixed;top:0;left:0;height:3px;width:0;background:var(--blue);z-index:70;transition:width .1s linear}

.page h2:not(.t1):not(.vtitle){font-size:44px!important;line-height:1.06!important;letter-spacing:-1.6px!important;font-weight:700!important}
.page .t1{font-size:72px!important;line-height:1.02!important;letter-spacing:-2.6px!important;font-weight:700!important;max-width:1250px}
@media(max-width:1180px){.page h2:not(.t1):not(.vtitle){font-size:30px!important;letter-spacing:-1.1px!important}.page .t1{font-size:44px!important;letter-spacing:-1.5px!important}
.t2{font-size:30px!important;letter-spacing:-1px!important}}

.page em{font-family:'Inter',sans-serif!important;font-style:normal!important;font-weight:inherit!important;border-bottom:2px solid var(--blue);padding-bottom:1px}
.page h1 em,.page h2 em{font-family:'Sora',sans-serif!important;border-bottom-width:3px}
.page .vpunch{border-bottom:none!important;font-size:1em!important;font-weight:600!important}
.page .cq p em,.page .band2 .s1 em{border-bottom-width:3px}

/* ===== ESPACEMENT VERTICAL UNIFIÉ ===== */
.page section{padding-top:80px!important;padding-bottom:80px!important}
.page .pageHero{padding-top:88px!important;padding-bottom:56px!important}
.page .lgb{padding-top:34px!important;padding-bottom:40px!important}
.page .claimband,.page .band2,.page .close{padding-top:96px!important;padding-bottom:96px!important}
.page .snap{padding-top:0!important;padding-bottom:80px!important}
.page .voices{padding-top:0!important;padding-bottom:80px!important}
.page section+section{padding-top:80px!important}
@media(max-width:1180px){
.page section{padding-top:52px!important;padding-bottom:52px!important}
.page .pageHero{padding-top:56px!important;padding-bottom:36px!important}
.page .claimband,.page .band2,.page .close{padding-top:60px!important;padding-bottom:60px!important}
/* .page section+section (ligne ~731) est plus spécifique que .page section
   ci-dessus et n'a jamais eu de réduction mobile : il imposait 80px à toutes
   les tailles d'écran, y compris ici, en tête de la 2e section de chaque
   page — d'où un espace bien plus grand qu'ailleurs au-dessus du titre. */
.page section+section{padding-top:52px!important}
}

/* ===== OUVERTURE DE PAGE ===== */
.pageHero{padding:100px 0 72px}
.pageHero h1{margin:0 0 30px}
.pageHero .sub2,.pageHero .v1c p,#home .heroFoot p{font-size:19px!important;line-height:1.6!important;max-width:1000px!important;margin:0!important;text-align:left!important;hyphens:manual!important}
.pageHero .w1{margin-top:34px;padding-top:30px;border-top:1px solid var(--ink)}
.pageHero .w1 h2{margin:0 0 24px}
.pageHero .v1c{columns:1!important;column-rule:none!important;margin-top:26px!important;padding-top:26px!important;border-top:1px solid var(--ink)!important;max-width:820px}
.pageHero .v1c p{font-size:17px!important;line-height:1.7!important;max-width:820px!important;text-align:left!important}

/* ===== ÉCHELLE TYPOGRAPHIQUE ===== */
.page .vwho,.page .rw span,.page .rorow,.page .q4n,.page .plus,.page .tk i,.page .dgi span,.page .lgh,.page .lgr span,.page .arrow,.page .desc,.page .cnt,.page .who,.page .fn{font-size:13px!important}
.page .btn,.page .lnk,.page .xbtn,.page .more,.page .cta,.page .it,.page .base,.page .chips2 span,.page .sp,.page .field,.page .fd,.page .addr,.page .ph-cap{font-size:14px!important}
.page .q4b,.page .rb,.page .rk,.page .dt,.page .af,.page .mb .nm,.page .dc h3,.page .nm{font-size:17px!important}
.page .tk b,.page .rw,.page .sh,.page .big2,.page .idx a{font-size:22px!important}
.page p,.page li,.page td,.page span,.page div{font-size:inherit}
.page p{font-size:16px}
.page .sub2,.page .lede2,.page .dual .a,.page .yb p,.page .dp p,.page .xp p,.page .lp p,.page .entries p,.page .q4d p,.page .dgi span,.page .body2 p{font-size:16px!important;line-height:1.65!important}
.page .lede,.page .say,.page .sub2{font-size:19px!important}
.page .ph-cap,.page .rorg,.page .fullr span,.page .lgh,.page .lgr span,.page footer .it,.page .mb .fn,.page .tm .ro{font-size:13px!important}
.page h1{font-size:144px!important;line-height:.9!important;letter-spacing:-5.6px!important;font-weight:700!important;max-width:1340px}
.page h2:not(.t1):not(.vtitle){font-size:44px!important;line-height:1.06!important;letter-spacing:-1.6px!important;font-weight:700!important}
.page .t1{font-size:72px!important;line-height:1.02!important;letter-spacing:-2.6px!important;font-weight:700!important;max-width:1250px}
.page h3,.page .big2,.page .rw,.page .sq .sh{font-size:22px!important;line-height:1.3!important;letter-spacing:-.55px!important}
.page h4,.page .sub3,.page .tm .nm,.page .dc h3{font-size:17px!important;line-height:1.25!important;letter-spacing:-.4px!important}
.page .ri p,.page .rg p,.page .rs p,.page .rp p,.page .ab p,.page .vs p,.page .cq p,.page .band2 .s1{font-size:27px!important;line-height:1.4!important;letter-spacing:-.85px!important}
.page .band2 .s2,.page .close p,.page .claimband p{font-size:48px!important;line-height:1.14!important;letter-spacing:-1.8px!important}
@media(max-width:1180px){
.page h1{font-size:60px!important;letter-spacing:-2.2px!important}
.page h2:not(.t1):not(.vtitle){font-size:30px!important;letter-spacing:-1.1px!important}
.page .t1{font-size:46px!important;letter-spacing:-1.6px!important}
.page .ri p,.page .rg p,.page .rs p,.page .rp p,.page .ab p,.page .vs p,.page .cq p,.page .band2 .s1{font-size:20px!important;letter-spacing:-.6px!important}
.page .band2 .s2,.page .close p,.page .claimband p{font-size:30px!important;letter-spacing:-1.1px!important}
}

.sil{display:grid;grid-template-columns:1fr 1fr;gap:0 64px;max-width:1160px}
.silc p{font-size:19px;line-height:1.65;margin:0}
@media(max-width:1180px){.sil{grid-template-columns:1fr!important;gap:24px!important}.silp{font-size:26px!important}}

.prF{margin-top:34px}
.prfw{display:flex;flex-wrap:wrap;gap:10px;padding-bottom:22px;border-bottom:1px solid var(--ink)}
.prfb{font-family:'Sora',sans-serif;font-size:22px!important;font-weight:700;letter-spacing:-.6px;background:none;border:1.5px solid var(--line);border-radius:999px;padding:9px 22px;color:var(--soft)}
.prfb:hover{border-color:var(--navy);color:var(--navy)}
.prfb.on{background:var(--navy);border-color:var(--navy);color:#fff}
.prfp{padding-top:24px}
.prfd{display:none}.prfd.on{display:block}
.prfd p{font-family:'Sora',sans-serif;font-size:27px!important;line-height:1.4!important;letter-spacing:-.85px!important;font-weight:500;margin:0;max-width:900px}
@media(max-width:1180px){.prE .pri,.prG,.prH .pri{grid-template-columns:1fr!important;gap:10px!important}.prgl{position:static}.prE h3{font-size:26px!important}.prfd p{font-size:20px!important}}

.pageHero .vJ{margin-top:34px!important;padding-top:0!important;border-top:none!important;max-width:none!important}
.pageHero .vJ{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.pageHero .vJ p{font-family:'Sora',sans-serif;line-height:1.5!important;letter-spacing:-.4px!important;font-weight:400;color:var(--ink);margin:0;max-width:none!important}
.pageHero .vJa{font-size:20px!important;color:var(--soft)}
.pageHero .vJb{font-size:23px!important;padding-left:28px;border-left:3px solid var(--navy)}
@media(max-width:1180px){.pageHero .vI{display:block}.pageHero .vI p{padding-left:16px}.pageHero .vJ{grid-template-columns:1fr!important;gap:20px!important}.pageHero .vJa,.pageHero .vJb{font-size:18px!important}.pageHero .vJb{padding-left:16px}.pageHero .vK{padding:22px 20px!important}}

.preh{font-family:'Sora',sans-serif;font-size:22px!important;line-height:1.4!important;letter-spacing:-.5px!important;font-weight:500;color:var(--soft);margin:0 0 18px;max-width:900px}
@media(max-width:1180px){.preh{font-size:18px!important}}

.ch4{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.ch{text-align:left;background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px 24px 22px;display:flex;flex-direction:column;gap:12px;min-height:190px;transition:border-color .15s,background .15s}
.ch:hover{border-color:var(--navy);background:var(--warm)}
.ch .cn{font-family:'Sora',sans-serif;font-size:24px;font-weight:700;letter-spacing:-.7px;color:var(--ink);background:#FFE08A;border-radius:8px;padding:1px 10px;align-self:flex-start}
.ch h3{font-family:'Sora',sans-serif;font-size:23px;font-weight:700;letter-spacing:-.7px;line-height:1.14;color:var(--ink)}
.ch .ck{display:flex;flex-wrap:nowrap;gap:0 12px;margin-top:2px;white-space:nowrap}
.ch .ck i{font-style:normal;font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--soft)}
.ch .ck i+i{position:relative;padding-left:12px}
.ch .ck i+i::before{content:"";position:absolute;left:0;top:50%;width:5px;height:1px;background:var(--line)}
.ch .more{margin-top:auto;font-size:13.5px;font-weight:600;color:var(--blue)}
.ycq{font-family:'Fraunces',serif;font-size:21px;line-height:1.45;color:var(--ink);margin-top:20px!important}
@media(max-width:1180px){.ch4{grid-template-columns:1fr 1fr}}

.v2e .sw{position:relative;display:inline-grid;grid-template-columns:1fr 1fr;background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:5px;margin-bottom:34px}
.v2e .swb{position:relative;z-index:1;background:none;border:none;padding:13px 34px;font-family:'Sora',sans-serif;font-size:17px;font-weight:600;letter-spacing:-.3px;color:var(--soft);border-radius:999px;transition:color .3s}
.v2e .swb.on{color:#fff}
.v2e .pill{position:absolute;top:5px;left:5px;width:calc(50% - 5px);height:calc(100% - 10px);background:var(--navy);border-radius:999px;transition:transform .42s cubic-bezier(.4,0,.2,1)}
.v2e .sw.s1 .pill{transform:translateX(100%)}
.v2e .ev{position:relative;overflow:hidden}
.v2e .ep{display:none;grid-template-columns:1fr 1fr;gap:44px}
.v2e .ep.on{display:grid;animation:slidein .44s cubic-bezier(.2,0,.1,1)}
@keyframes slidein{from{opacity:0;transform:translateX(28px)}to{opacity:1;transform:none}}
.v2e .e{padding-top:22px;border-top:2px solid var(--navy)}
.v2e .e b{display:block;font-family:'Sora',sans-serif;font-size:20px;font-weight:700;letter-spacing:-.5px;color:var(--ink);margin-bottom:9px}
.v2e .e p{font-size:17px;line-height:1.6;margin:0}
@media(max-width:1180px){.v2e .ep,.v2f,.v2g .gb,.v2h{grid-template-columns:1fr!important;gap:20px}.v2f .fc,.v2f .fi{min-height:340px}}

.tl{display:grid;grid-template-columns:repeat(3,1fr);gap:0 28px;margin-top:30px;counter-reset:tl}
.dgo .tl{grid-template-columns:1fr;gap:22px 0}
.tli{counter-increment:tl;position:relative;padding-top:30px}
.tli::before{content:"";position:absolute;top:8px;left:0;right:-28px;height:2px;background:var(--line)}
.tli:last-child::before{right:0}
.tld{position:absolute;top:0;left:0;width:18px;height:18px;border-radius:50%;background:#FFE08A;display:grid;place-items:center;z-index:1}
.tld::after{content:counter(tl);font-family:'JetBrains Mono',monospace;font-size:9px;font-weight:500;color:var(--ink)}
.tli b{display:block;font-family:'Sora',sans-serif;font-size:19px;font-weight:700;letter-spacing:-.45px;color:var(--navy);margin-bottom:6px}
.tli .tls{font-size:15.5px;line-height:1.55;color:var(--soft)}
@media(max-width:1180px){.tl{gap:0 20px}.tli b{font-size:17px}.tli .tls{font-size:14.5px}}
@media(max-width:700px){.tl{grid-template-columns:1fr;gap:22px}.tli{padding:0 0 0 32px}.tli::before{top:8px;left:8px;right:auto;bottom:-22px;width:2px;height:auto}.tli:last-child::before{display:none}.tld{top:0;left:0}}

.ngt{border-top:2px solid var(--navy)}
.ngu{display:grid;grid-template-columns:230px 1fr;gap:48px;padding:30px 0;border-bottom:1px solid var(--line);align-items:baseline}
.ngu:last-child{border-bottom:none}
.ngw{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:2.4px;text-transform:uppercase;color:var(--soft)}
.ngu p{font-family:'Sora',sans-serif;font-size:25px;line-height:1.42;letter-spacing:-.6px;font-weight:500;color:var(--ink);margin:0;max-width:940px}
@media(max-width:1180px){.ng3,.ngs,.ngk,.ngu{grid-template-columns:1fr!important;gap:24px!important}.ngb.full{grid-column:span 1}.ngr{grid-template-columns:48px 1fr}}

.cadr{margin-top:26px;padding-top:22px;border-top:1px solid var(--line)}
.cadr div{padding:7px 0;font-size:14px;color:var(--soft);line-height:1.5}
.cadr b{display:block;font-family:'Sora',sans-serif;font-size:15px;font-weight:600;color:var(--ink);letter-spacing:-.2px;margin-bottom:1px}
.cdir{margin-top:auto;padding-top:24px;display:flex;align-items:baseline;gap:22px;flex-wrap:wrap}
.cdir a{font-family:'Sora',sans-serif;font-size:21px;font-weight:600}
.cdir span{font-family:'JetBrains Mono',monospace;font-size:14px;color:var(--soft);letter-spacing:1px}

.cfl{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:2.2px;text-transform:uppercase;color:var(--soft);display:block;margin-bottom:6px}
.cfd{display:block;width:100%;border:none;border-bottom:1.5px solid var(--line);border-radius:0;padding:0 0 12px;margin-bottom:24px;font-family:inherit;font-size:17px;color:var(--ink);background:none;outline:none;transition:border-color .15s}
.cfd::placeholder{color:#B4B4B4}
.cfd:focus{border-bottom-color:var(--blue)}
.cfd.tall{height:92px;resize:vertical}

.tmail{font-family:'JetBrains Mono',monospace;font-size:11.5px;letter-spacing:.4px;color:var(--blue);margin-top:8px;padding-top:8px;border-top:1px solid var(--line)}

/* ---------- FOOTER ---------- */
body>footer{background:var(--warm);color:var(--ink);padding:48px 0 24px;border-top:1px solid var(--line)}
footer .fmain{display:grid;grid-template-columns:120px 1fr;gap:56px;align-items:center;padding-bottom:34px;border-bottom:1px solid rgba(14,18,32,.14)}
footer img{width:76px;height:auto;display:block}
footer .fcontact{display:grid;grid-template-columns:repeat(4,1fr);gap:32px}
footer .fcontact div{font-size:15px;line-height:1.6;color:var(--soft)}
footer .fcontact b{display:block;font-family:'Sora',sans-serif;font-size:16px;font-weight:600;color:var(--ink);letter-spacing:-.2px;margin-bottom:5px}
footer .base{padding-top:22px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;font-family:'JetBrains Mono',monospace;font-size:11.5px;color:var(--soft);letter-spacing:.5px}
@media(max-width:1180px){
.w,.w-nar,.nav{padding-left:24px;padding-right:24px}
#home h1{font-size:58px;letter-spacing:-2px}
#home .snap .in{grid-template-columns:1fr 46%!important;gap:28px!important}
#home .snap .over{font-size:34px;letter-spacing:-1.1px}
#home .snap .scq p{font-size:19px}#home .close p{font-size:36px;letter-spacing:-1.2px}
#confiance .hero h1,#coaching .hero h1,#ia .hero h1,#apropos .hero h1{font-size:52px;letter-spacing:-1.8px}
#contact .left h1{font-size:48px}
.presta .tabs,.presta .panel,.silence .grid,.dd .pair,.ledger .cols,.legal .grid,.situ .grid,.meth .three,.ladder .st,.dom .shell,.tools .set,.start .grid,.iam .grid,.bands .grid,.dist .set,.eng .set,.team .grid,.quotes .set,.strip,#contact .split,#contact .offices,footer .cols,.logos,.refs .logos,#home .logos{grid-template-columns:1fr!important}
.meth .three>div,.strip figure{margin-top:0!important}
.presta .tabs{grid-template-columns:repeat(2,1fr)!important}
.ph-split,.ph-split.rev,.duo{grid-template-columns:1fr!important;gap:28px}
.duo figure:last-child{margin-top:0}
.say{font-size:26px!important}.say.sm{font-size:22px!important}
#home .vmain{padding:30px 24px 26px}
#home .vtitle{font-size:44px;letter-spacing:-1.5px}
#home .vhead{flex-wrap:wrap;gap:16px}
#home .vslides{min-height:0;padding:30px 0 12px}
#home .vs{padding-left:0}
#home .vs::before{position:static;display:block;font-size:96px;height:60px;margin-bottom:4px}
#home .vs p{font-size:21px;letter-spacing:-.7px;line-height:1.42}
.presta .panel{grid-template-columns:1fr!important;gap:28px}
.presta .panel .rule{display:none}
.dd .pair>div,.ledger .col,.eng .e,.ladder .p{border-left:none!important;padding-left:0!important;padding-right:0!important;border-right:none!important}
.dom .idx{position:static}
.bands .big{font-size:76px}
.silence .stat .fig{font-size:110px;letter-spacing:-4px}
#contact .left,#contact .right{padding:64px 24px}
#confiance .close p,#ia .close p{font-size:34px;letter-spacing:-1.2px}
.out li b{font-size:19px}
.strip{grid-template-columns:repeat(3,1fr)!important}
.team .grid{grid-template-columns:repeat(2,1fr)!important}
}

/* ---------- NAV MOBILE ---------- */
.navburger{display:none;flex-direction:column;justify-content:center;gap:5px;width:34px;height:34px;background:none;border:none;padding:0;flex:none}
.navburger span{display:block;width:100%;height:2px;background:var(--ink);border-radius:2px;transition:transform .2s,opacity .2s}
header.dark .navburger span{background:#fff}
#hd.menuOpen .navburger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
#hd.menuOpen .navburger span:nth-child(2){opacity:0}
#hd.menuOpen .navburger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
@media(max-width:1024px){
.navburger{display:flex}
.nav{flex-wrap:wrap}
.nav ul,.nav .cta{display:none;width:100%}
.nav ul{flex-direction:column;gap:0;order:5;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}
header.dark .nav ul{border-top-color:rgba(255,255,255,.14)}
.nav ul li{width:100%}
.nav ul a{width:100%;padding:13px 0;border-bottom:1px solid var(--line);text-align:left;border-radius:0;font-size:15.5px}
header.dark .nav ul a{border-bottom-color:rgba(255,255,255,.12)}
.nav .cta{order:6;text-align:center;margin-top:14px}
#hd.menuOpen .nav ul,#hd.menuOpen .nav .cta{display:flex}
#hd.menuOpen .nav .cta{display:block}
}

/* ---------- PHONE ---------- */
@media(max-width:680px){
.w,.w-nar,.nav{padding-left:18px;padding-right:18px}
.pageHero{padding:56px 0 40px}
.pageHero h1,.pageHero h2{font-size:34px!important;letter-spacing:-1.1px!important;line-height:1.38!important}
.pageHero .sub2{font-size:17px!important;margin-top:22px!important}
.sec{padding:56px 0}
#home .kick{margin:44px 0 0}
#home .kick ul{grid-template-columns:1fr 1fr!important;gap:18px!important}
.presta .tabs{grid-template-columns:1fr!important}
.ch4{grid-template-columns:1fr!important}
.dgrid,.dgrid[style]{grid-template-columns:1fr!important}
.tg{grid-template-columns:1fr 1fr!important;gap:14px!important}
.tgB .fullr{width:100%!important;left:0!important;right:0!important}
.strip{grid-template-columns:1fr 1fr!important}
.team .grid{grid-template-columns:1fr 1fr!important}
footer .fmain{grid-template-columns:1fr!important;text-align:left}
footer .fcontact{grid-template-columns:1fr!important;gap:14px!important}
footer .base{flex-direction:column;align-items:flex-start}
.tile[style*="44px"]{padding:26px!important}
.ledger h2,.dom .body h3,.claimband p,.cq p,.band2 .s2,.presta .panel .pull,.dip p,.eng .e p,.dist .c h4{font-size:22px!important;letter-spacing:-.6px!important;line-height:1.3!important}
.eng .set,.ngu{grid-template-columns:1fr!important}
.yg,.yb2,.coh{grid-template-columns:1fr!important;gap:24px!important}
.yg figure{aspect-ratio:4/3!important}
/* .phside (bloc photo+texte) ne se repliait jamais en une colonne sur mobile :
   la règle @media(max-width:1180px) l'élargit à 360px mais ne le fait jamais
   passer en 1fr, contrairement à tous les autres composants à deux colonnes
   de ce fichier. Conséquence : le texte se retrouve compressé hors champ.
   personne-de-confiance.html utilise désormais aussi la classe .phside
   (avec sa propre largeur en style inline), donc un seul sélecteur suffit. */
.phside{grid-template-columns:1fr!important;gap:24px!important}
/* Ordre demandé sur mobile uniquement (desktop inchangé) : titre, puis
   photo, puis texte+légende — le titre dupliqué (.ph-mtitle) prend la
   place du titre desktop, masqué ici. Le trait au-dessus du texte est
   aussi retiré ici seulement : la différence de fond de section suffit.
   Pas de marge ajoutée au-dessus : même espacement que n'importe quel
   .t2 en tête de section (margin-top:0, seul le padding de .sec compte). */
.ph-mtitle{display:block}
.phside>div>h2{display:none}
.phside>div>div[style*="border-top"]{border-top:none!important}
}
