@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap");
:root{--ink:#25282d;--muted:#727981;--blue:#4f67b2;--line:#e9eaec}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden}body{background:#fafaf9;color:var(--ink);font:15px/1.45 "DM Sans",Arial,sans-serif}.app{height:100dvh;display:grid;grid-template-columns:220px minmax(0,1fr)}.sidebar{background:white;border-right:1px solid var(--line);padding:24px 15px;display:flex;flex-direction:column;min-height:0}.brand{display:flex;gap:10px;align-items:center;color:var(--ink);text-decoration:none;font:800 14px Manrope,sans-serif}.monogram{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#222936;color:white;font:700 17px Manrope}.brand small{display:block;font:700 9px "DM Sans";letter-spacing:.11em;color:#9aa0a5;margin-top:3px}.nav-caption,.label,.eyebrow{font-size:10px;letter-spacing:.12em;font-weight:700;color:#929ba5}.nav-caption{margin:50px 10px 14px}nav{display:grid;gap:4px}nav a{display:flex;align-items:center;gap:9px;padding:10px 12px;text-decoration:none;color:#717780;font-weight:600;font-size:13px;border-radius:8px}nav a i{font-style:normal;font-size:15px;color:#929a9f;width:18px;text-align:center}nav a span{margin-left:auto;font-size:10px;color:#b8bdc2}nav a.active{background:#edf1fc;color:#3d59a8}.sidebar-foot{margin-top:auto;color:#727b80;font-size:11px;padding:10px}.sidebar-foot small{color:#a5aaac;margin-left:14px}.status,.dot{display:inline-block;width:7px;height:7px;background:#7189d4;border-radius:50%;margin-right:7px}main{min-width:0;min-height:0;display:flex;flex-direction:column}.topbar{height:58px;flex:none;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,4vw,55px);font-size:11px;color:#92999d}.top-meta{font-size:10px;letter-spacing:.1em;font-weight:700}.top-meta b{color:#6079bf}.page{width:100%;max-width:1160px;margin:0 auto;flex:1;min-height:0;padding:clamp(18px,4vh,42px) clamp(22px,4vw,55px);display:flex;flex-direction:column}.page[hidden]{display:none}.page-head{flex:none;margin-bottom:clamp(12px,2.5vh,25px)}.eyebrow{color:#7d8bad}.page-head h1{font:700 clamp(32px,4.2vw,53px)/1.08 Manrope,Arial,sans-serif;letter-spacing:-.055em;margin:10px 0}.page-head h1 em{font-style:normal;color:#677ebf}.page-head p{margin:0;color:#7b8389;font-size:14px}.home-grid,.traits,.direction-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;min-height:0;flex:1}.home-grid a,.traits article,.direction-grid article{border:1px solid var(--line);background:white;border-radius:12px;padding:clamp(14px,2.2vh,23px);text-decoration:none;color:var(--ink);min-height:0}.home-grid a:hover{border-color:#b3c2e6;background:#f6f8fd}.home-grid span,.traits small,.direction-grid small,.journey small{font-size:10px;letter-spacing:.1em;color:#9ba4ad;font-weight:700}.home-grid h2,.traits h2,.direction-grid h2,.journey h2{font:700 clamp(16px,1.7vw,21px)/1.2 Manrope,sans-serif;letter-spacing:-.03em;margin:12px 0 8px}.home-grid h2 b{float:right;color:#9da8bf}.home-grid p,.traits p,.direction-grid p,.journey p{font-size:clamp(12px,1.15vw,14px);color:#707a80;margin:0}.traits .priority{background:#fff4f3;border-color:#f2cbc7}.traits .priority small,.traits .priority h2{color:#b53535}.traits .priority p{color:#825251}.journey{display:grid;gap:0;min-height:0;flex:1}.journey article{display:grid;grid-template-columns:42px 1fr;gap:8px;border-top:1px solid var(--line);padding:clamp(10px,1.5vh,15px) 0}.journey article>span{font-size:11px;color:#a1adbd}.journey h2{margin:5px 0}.next-link{color:#4c67b2;text-decoration:none;font-size:13px;font-weight:700;padding-top:8px}.diagram-shell{background:white;border:1px solid var(--line);border-radius:12px;padding:clamp(10px,1.6vh,18px);min-height:0;flex:1;display:flex;flex-direction:column}.tabs{display:flex;gap:6px;flex:none}.tabs button{flex:1;border:1px solid #e9eaed;background:white;color:#6f7980;border-radius:7px;padding:8px 6px;font:700 12px "DM Sans";cursor:pointer}.tabs button[aria-selected=true]{background:#edf1fc;border-color:#dbe3f8;color:#3d59a8}.process-intro{font-size:12px;color:#6e7980;margin:9px 0;flex:none}.canvas{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid #e5e9ec;background:#fff;border-radius:7px}.canvas svg{display:block;width:100%;height:100%;max-height:100%;min-width:0}.canvas>div{width:100%;height:100%}.canvas [hidden]{display:none}.detail{flex:none;margin-top:8px;padding:7px 10px;background:#f3f5fa;border-radius:7px}.detail span{font-size:9px;letter-spacing:.09em;color:#8b99bb;font-weight:700}.detail p{font-size:12px;color:#59677b;margin:2px 0}.source-note{font-size:10px;color:#909ba0;margin:7px 0 0;flex:none}.impact{flex:none;display:flex;gap:16px;align-items:center;margin-top:9px;padding:9px 15px;border-radius:9px;background:#eef2fa}.impact>b{white-space:nowrap;font:800 24px Manrope;color:#3e538d}.impact>b small{font:600 11px "DM Sans"}.impact p{margin:0;color:#718198;font-size:10px;line-height:1.35}.direction-grid article{display:flex;flex-direction:column;justify-content:center}.direction-grid strong{display:block;font:800 clamp(30px,4vw,50px)/1 Manrope;color:#3f568f;letter-spacing:-.06em;margin:10px 0}.direction-grid strong span{font:600 14px "DM Sans";letter-spacing:0}.direction-grid .goal{background:#eff2fb;border-color:#e1e7f6}.mindset{flex:none;margin-top:12px;border-left:3px solid #7d92cd;padding:7px 12px;background:#f0f3fa;color:#66738b;font-size:12px}.mindset b{color:#3b528f}footer{display:none}.mobile-flow{display:none}button:focus-visible,a:focus-visible,.node:focus-visible{outline:3px solid #607ac3;outline-offset:2px}
@media(max-width:700px){.app{display:flex;flex-direction:column}.sidebar{height:auto;flex:none;padding:9px 12px;border:0;border-bottom:1px solid var(--line)}.brand{font-size:12px}.brand small{font-size:8px}.monogram{width:29px;height:29px;font-size:14px}.nav-caption,.sidebar-foot{display:none}nav{display:grid;grid-template-columns:repeat(5,1fr);gap:2px;margin-top:8px}nav a{justify-content:center;display:grid;gap:1px;text-align:center;padding:5px 1px;font-size:9px;line-height:1.15}nav a i{font-size:13px;width:auto}nav a span{display:none}.topbar{height:32px;padding:0 15px;font-size:10px}.top-meta{font-size:9px}.page{padding:clamp(10px,2vh,18px) 15px}.page-head{margin-bottom:clamp(8px,1.5vh,13px)}.page-head h1{font-size:clamp(27px,7vw,35px);margin:6px 0}.page-head p{font-size:12px}.eyebrow{font-size:9px}.home-grid,.traits,.direction-grid{gap:8px}.home-grid a,.traits article,.direction-grid article{padding:clamp(9px,1.5vh,14px);border-radius:9px}.home-grid h2,.traits h2,.direction-grid h2,.journey h2{font-size:clamp(13px,3.7vw,16px);margin:clamp(5px,1vh,9px) 0 5px}.home-grid p,.traits p,.direction-grid p,.journey p{font-size:clamp(10px,2.8vw,12px);line-height:1.32}.home-grid span,.traits small,.direction-grid small,.journey small{font-size:8px}.journey article{grid-template-columns:30px 1fr;padding:8px 0}.diagram-shell{padding:9px}.tabs button{font-size:10px;padding:8px 2px}.process-intro{font-size:10px;line-height:1.25;margin:7px 0}.canvas,.detail{display:none}.mobile-flow{display:flex;flex:1;min-height:0;flex-direction:column;justify-content:center;padding:clamp(10px,2vh,18px);border:1px solid #e2e7ed;border-radius:9px;background:#f8fafc}.mobile-meta{display:flex;justify-content:space-between;gap:8px;font-size:9px;font-weight:700;color:#7589a8;text-transform:uppercase;letter-spacing:.08em}.mobile-flow h2{font:700 clamp(17px,4.5vw,22px) Manrope;margin:clamp(7px,1.5vh,14px) 0 6px}.mobile-flow p{font-size:clamp(11px,3vw,13px);line-height:1.4;color:#657480;margin:0}.flow-controls{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:8px}.flow-controls span{font-size:9px;color:#9ba5ad;letter-spacing:.09em}.flow-controls button{width:37px;height:34px;border:1px solid #d9e2ee;border-radius:7px;background:white;color:#4f67aa;font-size:16px}.flow-controls button:disabled{opacity:.3}.source-note{font-size:9px;line-height:1.2;margin-top:6px}.impact{padding:7px 10px;gap:10px;margin-top:7px}.impact>b{font-size:20px}.impact p{font-size:9px;line-height:1.2}.mindset{font-size:10px;line-height:1.3;margin-top:8px}.direction-grid strong{font-size:clamp(25px,7vw,34px);margin:7px 0}.direction-grid strong span{font-size:11px}.top-meta{display:none}}
@media(max-height:700px){.page{padding-top:8px;padding-bottom:8px}.page-head{margin-bottom:7px}.page-head h1{margin:4px 0}.page-head p{font-size:11px}.sidebar{padding-top:7px;padding-bottom:7px}.topbar{height:26px}.home-grid a,.traits article,.direction-grid article{padding:8px}.traits p,.home-grid p,.direction-grid p,.journey p{font-size:10px;line-height:1.25}.traits h2,.home-grid h2,.direction-grid h2{font-size:14px;margin:5px 0}.source-note{font-size:8px}.impact p{font-size:8px}.mindset{font-size:9px}}
.map-toolbar{display:flex;align-items:center;justify-content:space-between;gap:6px;margin:0 0 6px;flex:none;font-size:10px;color:#84909a}.map-toolbar>div{display:flex;gap:4px}.map-toolbar button{min-width:34px;height:30px;border:1px solid #dce3eb;border-radius:6px;background:#fff;color:#526899;font:700 13px "DM Sans";cursor:pointer}.map-toolbar button#zoom-reset{font-size:10px;min-width:47px}.canvas{position:relative;touch-action:none;cursor:grab}.canvas:active{cursor:grabbing}.canvas>div{transform-origin:center;will-change:transform}.canvas svg{touch-action:none}.mobile-flow,.mobile-flow[hidden]{display:none!important}@media(max-width:700px){.canvas{display:flex;flex:1;min-height:110px}.detail{display:block}.detail span{font-size:8px}.detail p{font-size:10px;line-height:1.25}.map-toolbar{font-size:9px;margin:0 0 4px}.map-toolbar button{height:27px;min-width:30px}.process-intro{margin:5px 0}.source-note{margin:4px 0 0}.diagram-shell{min-height:0}.impact{margin-top:5px}.page-head.compact{margin-bottom:5px}}
.dossier-intro{display:grid;grid-template-columns:1.1fr 1fr;gap:10%;flex:1;min-height:0;align-items:center}.intro-summary>span,.contents>span,.direction-lines span{font-size:10px;color:#929ba5;letter-spacing:.12em;font-weight:700}.intro-summary h2{font:700 clamp(30px,4vw,49px)/1.1 Manrope,sans-serif;letter-spacing:-.05em;margin:15px 0}.intro-summary p{font-size:14px;color:#727c81;max-width:460px}.contents{border-top:1px solid #e1e4e6}.contents>span{display:block;padding:12px 0}.contents a{display:flex;gap:16px;align-items:center;padding:14px 0;border-top:1px solid #eaeced;color:#2d343b;text-decoration:none;font-size:14px}.contents a b{font-size:10px;color:#a6adb5}.contents a strong{flex:1}.contents a i{font-style:normal;color:#8b9ab3}.profile-nav{display:flex;gap:6px;flex:none;margin:0 0 10px}.profile-tab{border:1px solid #e5e8ec;background:white;color:#778089;border-radius:7px;padding:9px 13px;font:700 12px "DM Sans";cursor:pointer}.profile-tab.active{background:#edf1fc;color:#405ca7;border-color:#dbe3f4}.profile-pages{flex:1;min-height:0;border-top:1px solid #e4e7ea;padding-top:clamp(12px,2vh,22px)}.profile-pages article[hidden]{display:none}.profile-title{font:700 clamp(17px,1.6vw,21px) Manrope,sans-serif;letter-spacing:-.03em;color:#343b40}.profile-title span{font:700 9px "DM Sans";letter-spacing:.09em;margin-left:8px}.priority-title{color:#b63637}.profile-bullets{padding:0;margin:clamp(8px,1.5vh,14px) 0;list-style:none}.profile-bullets li{position:relative;padding:clamp(5px,1vh,10px) 0 clamp(5px,1vh,10px) 17px;border-bottom:1px solid #eff0f0;font-size:clamp(12px,1.2vw,14px);color:#555f65}.profile-bullets li:before{content:"—";position:absolute;left:0;color:#99a8c1}.priority-list li:before{color:#cf7373}.caution-title{margin-top:clamp(8px,1.5vh,15px)}.profile-hint{color:#a2aaae;font-size:11px;flex:none}.direction-lines{flex:1;min-height:0;display:grid;grid-template-columns:1fr 1fr;gap:0 28px;border-top:1px solid #e1e4e6}.direction-lines>div{padding:clamp(10px,2vh,20px) 0;border-bottom:1px solid #eaeced}.direction-lines h2{font:700 clamp(17px,2vw,23px) Manrope,sans-serif;letter-spacing:-.04em;margin:7px 0}.direction-lines p{font-size:clamp(12px,1.1vw,14px);color:#717a7f;margin:0}@media(max-width:700px){.dossier-intro{grid-template-columns:1fr;gap:8px;align-items:start}.intro-summary h2{font-size:clamp(24px,7vw,31px);margin:6px 0}.intro-summary p{font-size:11px;line-height:1.3;margin:4px 0}.contents>span{font-size:9px;padding:5px 0}.contents a{font-size:12px;padding:clamp(7px,1.4vh,10px) 0}.profile-nav{gap:4px;margin-bottom:7px}.profile-tab{flex:1;padding:7px 3px;font-size:10px}.profile-pages{padding-top:8px}.profile-title{font-size:15px}.profile-title span{font-size:8px}.profile-bullets{margin:4px 0}.profile-bullets li{font-size:clamp(10px,2.8vw,12px);line-height:1.3;padding:clamp(5px,.9vh,8px) 0 clamp(5px,.9vh,8px) 14px}.caution-title{margin-top:6px}.profile-hint{font-size:9px}.direction-lines{gap:0 15px}.direction-lines>div{padding:8px 0}.direction-lines span{font-size:8px}.direction-lines h2{font-size:15px;margin:4px 0}.direction-lines p{font-size:10px;line-height:1.27}.mindset{font-size:10px}}@media(max-height:700px){.profile-bullets li{font-size:10px;padding:4px 0 4px 14px;line-height:1.22}.profile-title{font-size:14px}.profile-hint{font-size:8px}.intro-summary p{font-size:10px}.journey p{font-size:10px}.direction-lines>div{padding:5px 0}}
.roadmap{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:20px;align-content:center;flex:1;min-height:0}.roadmap:before{content:"";position:absolute;left:18px;right:18px;top:calc(50% - 80px);border-top:1px solid #d3dbef}.roadmap article{position:relative;min-width:0}.road-dot{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#edf1fc;border:1px solid #d8e1f4;color:#5470b7;font:700 11px Manrope,sans-serif;position:relative;z-index:1;margin-bottom:18px}.roadmap article span{font-size:9px;color:#99a4af;letter-spacing:.1em;font-weight:700}.roadmap h2{font:700 clamp(16px,1.6vw,21px)/1.2 Manrope,sans-serif;letter-spacing:-.04em;margin:7px 0}.roadmap p{font-size:13px;color:#707b81;margin:0}.roadmap .goal-dot{background:#526ab4;color:white;border-color:#526ab4}@media(max-width:700px){.roadmap{grid-template-columns:1fr;grid-template-rows:repeat(4,1fr);gap:0;align-content:stretch}.roadmap:before{left:14px;right:auto;top:16px;bottom:20px;border-top:0;border-left:1px solid #d3dbef}.roadmap article{display:grid;grid-template-columns:39px 1fr;gap:5px;align-content:center}.road-dot{width:29px;height:29px;margin:0;font-size:10px}.roadmap article span{font-size:8px}.roadmap h2{font-size:15px;margin:2px 0}.roadmap p{font-size:11px;line-height:1.25}}@media(max-height:700px){.roadmap p{font-size:10px}.roadmap h2{font-size:14px}.roadmap article span{font-size:8px}}
@media(min-width:701px){.roadmap:before{display:none}.roadmap article:not(:last-child):before{content:"";position:absolute;top:18px;left:38px;right:-20px;border-top:1px solid #d3dbef}}
/* Mobile : utiliser toute la hauteur disponible et garder le texte lisible. */
@media(max-width:700px){
 .app>main{flex:1;min-height:0}
 .page{width:100%;flex:1;min-height:0}
 .page-head p{font-size:14px;line-height:1.3}
 .profile-bullets li{font-size:13px;line-height:1.35;padding:clamp(6px,1.1vh,10px) 0 clamp(6px,1.1vh,10px) 16px}
 .profile-title{font-size:17px}
 .profile-tab{font-size:11px;min-height:38px}
 .journey p,.roadmap p,.direction-lines p{font-size:13px;line-height:1.35}
 .journey h2,.roadmap h2{font-size:17px}
 .process-intro{font-size:12px;line-height:1.35}
 .detail p{font-size:12px;line-height:1.35}
 .source-note{font-size:10px;line-height:1.25}
 .impact p{font-size:10px;line-height:1.3}
 .intro-summary p,.contents a{font-size:13px}
 .mindset{font-size:11px}
 .canvas{min-height:0}
}
@media(max-width:700px) and (max-height:700px){
 .page{padding-top:8px;padding-bottom:8px}
 .page-head h1{font-size:29px}
 .page-head p{font-size:12px}
 .profile-bullets li{font-size:12px;line-height:1.3;padding:5px 0 5px 15px}
 .profile-title{font-size:15px}
 .journey p,.roadmap p{font-size:12px;line-height:1.3}
 .process-intro,.detail p{font-size:11px;line-height:1.3}
 .source-note{font-size:9px}
 .impact p{font-size:9px}
}
