:root{--indigo:#2E266D;--blue:#DDE5EF;--orange:#F28B54;--ink:#242337;--muted:#626477;--line:#e1e3ea;--paper:#f6f7fa;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;color:var(--ink);background:var(--white);font:15px/1.75 Montserrat,Arial,sans-serif}a{color:inherit}button,input,select,textarea{font:inherit}img,svg{max-width:100%}a,button,input,select,textarea{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex="-1"]:focus-visible{outline:3px solid var(--indigo);outline-offset:5px}button{cursor:pointer}.wrap{width:min(1200px,calc(100% - 80px));margin:auto}.skip{position:absolute;top:-100px;left:20px;padding:12px;background:white;z-index:20}.skip:focus{top:12px}.sr-only,.honeypot{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}[hidden]{display:none!important}
.site-header{position:sticky;top:0;z-index:10;background:#fffffff5;border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.header-inner{min-height:96px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--indigo);flex-shrink:0}.brand img{object-fit:contain;width:44px;height:44px}.brand>span{font-size:19px;font-weight:800;letter-spacing:-.6px;line-height:1.3}.brand small{display:block;font-size:9px;letter-spacing:.1px;font-weight:500;margin-top:5px}.site-header nav{display:flex;align-items:center;gap:20px}.site-header nav>a{font-size:12px;font-weight:600;text-decoration:none;min-height:44px;display:inline-flex;align-items:center}.site-header nav>a:not(.button):hover{color:var(--indigo);text-decoration:underline;text-underline-offset:7px}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--indigo);color:white;border:1px solid var(--indigo);padding:15px 23px;min-height:50px;border-radius:4px;text-decoration:none;font-size:13px;font-weight:600;line-height:1.45;transition:background .2s,transform .2s;text-align:center}.button:hover{background:#211b52;transform:translateY(-2px)}.site-header .header-cta{margin-left:6px;font-size:11px;padding:12px 16px}.menu-toggle{border:1px solid var(--line);border-radius:4px;background:white;color:var(--indigo);padding:10px 14px;min-height:44px;font-size:14px}.menu-toggle span{margin-left:10px}.text-link{display:inline-flex;align-items:center;gap:10px;color:var(--indigo);font-size:14px;font-weight:600;text-decoration:none;min-height:44px;line-height:1.5}.text-link:hover{text-decoration:underline;text-underline-offset:6px}.text-link span{flex-shrink:0}.eyebrow{font-size:11px;font-weight:700;letter-spacing:1.7px;text-transform:uppercase;color:var(--indigo);margin:0 0 20px;line-height:1.6}h1,h2,h3{font-weight:600;line-height:1.2;letter-spacing:-1px;text-wrap:balance;margin:0;color:var(--indigo)}h1{font-size:clamp(38px,4.1vw,56px);font-weight:600;letter-spacing:-1.7px;max-width:20ch}h2{font-size:clamp(29px,3vw,40px);max-width:25ch}h3{font-size:22px;letter-spacing:-.55px}p{margin:0 0 18px}.section{padding:88px 0}.section-heading{margin-bottom:42px}.section-heading>p:not(.eyebrow){max-width:660px;color:var(--muted);margin:22px 0 0}.section-link{margin-top:30px}
.hero{padding:76px 0 86px}.hero-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:60px;align-items:center}.hero .eyebrow:before{content:'';display:inline-block;background:var(--orange);width:7px;height:7px;border-radius:50%;margin-right:10px}.lead{font-size:16px;line-height:1.85;max-width:57ch;margin:28px 0;color:var(--muted)}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px 28px}.hero .button{background:var(--orange);border-color:var(--orange);color:#2b2359}.hero .button:hover{background:#eaa077}.network-panel{background:var(--blue);border-radius:4px;padding:24px 28px;position:relative;min-width:0}.network-top,.network-bottom{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:10px;font-weight:600;color:var(--indigo)}.network-top{letter-spacing:1.4px}.network-bottom{font-size:11px;border-top:1px solid #bdc8da;padding-top:16px}.graphic-dot{height:6px;width:6px;background:var(--orange);border-radius:50%}.network{display:block;width:100%;height:auto;margin:10px 0}
.expertise-list{border-top:1px solid var(--line)}.expertise{display:grid;grid-template-columns:60px minmax(0,1fr) minmax(0,1.2fr);gap:28px;align-items:start;padding:30px 0;border-bottom:1px solid var(--line)}.number{font-size:12px;letter-spacing:1px;color:var(--indigo);font-weight:600}.expertise h3{font-size:24px}.expertise p{margin:0;color:var(--muted);font-size:14px;line-height:1.9}.clients{background:var(--paper)}.audience-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.audience{padding:40px;min-width:0}.audience.local{background:white}.audience.deployment{background:var(--indigo);color:white}.audience h3{font-size:28px;max-width:19ch;line-height:1.3}.audience>p:last-child{margin:22px 0 0;max-width:44ch;color:var(--muted);font-size:15px}.deployment h3,.deployment .eyebrow{color:white}.deployment>p:last-child{color:var(--blue)}.local-symbol,.audience>svg{height:58px;width:100px;margin-bottom:30px}.local-symbol{display:flex;align-items:center}.local-symbol span{display:block;width:40px;height:40px;border:1px solid #d6dce9;border-radius:50%;position:relative}.local-symbol span:after{content:'';position:absolute;inset:13px;background:var(--orange);border-radius:50%}.process{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;padding:0;margin:0;list-style:none}.process li{border-top:1px solid var(--line);padding-top:24px}.process .number{display:block;margin-bottom:26px}.process h3{font-size:22px;margin-bottom:15px}.process p{font-size:14px;color:var(--muted);margin:0;max-width:24ch}.discreet{border-top:1px solid var(--line);padding-top:24px;margin:38px 0 0;font-size:13px;color:var(--muted)}
.missions{background:var(--paper)}.mission-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.mission-visual{height:190px;border:1px solid #d5dce8;background:#edf0f5;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;padding:22px;margin-bottom:26px}.mission-visual span{font-size:48px;font-weight:500;line-height:1;color:#aeb8ce}.mission-visual small{font-size:10px;letter-spacing:1.5px;color:#58617b}.mission .eyebrow{font-size:10px;margin-bottom:13px}.mission h3{font-size:21px;line-height:1.4;min-height:2.8em;margin-bottom:15px}.mission p:last-child{font-size:14px;color:var(--muted);margin:0}.website-section{padding-block:65px;border-bottom:1px solid var(--line)}.website-section h2{font-size:32px;max-width:28ch}.website-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.website-preview{text-decoration:none;min-width:0}.preview-window{height:200px;overflow:hidden;background:var(--paper);border:1px solid var(--line);pointer-events:none}.website-preview h3{font-size:16px;margin-top:15px;display:flex;justify-content:space-between;gap:12px}.website-preview:hover h3{text-decoration:underline;text-underline-offset:5px}.about-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:80px;align-items:center}.portrait-placeholder{height:360px;background:var(--blue);display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--indigo);gap:16px}.portrait-placeholder>span{font-size:80px;letter-spacing:-5px;font-weight:500}.portrait-placeholder small{font-size:12px;color:#58617b}.about-copy h2{margin-bottom:28px}.about-copy h3{font-size:23px;letter-spacing:0}.about-copy .role{font-size:13px;color:var(--muted);margin-top:8px}.about-copy>p:not(.eyebrow):not(.role){font-size:16px;max-width:55ch;margin-block:24px;color:var(--muted)}
.contact-section{background:var(--paper)}.contact-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:70px;align-items:start}.form-help,.privacy-note{font-size:12px;color:var(--muted);line-height:1.7}.form-help{margin-bottom:22px}.privacy-note{margin:22px 0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.field{display:flex;flex-direction:column;gap:8px;min-width:0}.full{grid-column:1/-1}label{font-size:13px;font-weight:600;color:var(--ink)}input,select,textarea{width:100%;min-width:0;min-height:48px;padding:12px 14px;border:1px solid #a8afbf;border-radius:3px;background:white;color:var(--ink);font-size:15px;line-height:1.5}textarea{resize:vertical;min-height:120px}.direct-contact{padding-top:38px}.direct-contact h3{font-size:24px;max-width:20ch}.direct-contact dl{margin:30px 0}.direct-contact dl>div{padding:16px 0;border-bottom:1px solid var(--line)}dt{font-size:11px;color:var(--muted);margin-bottom:6px}dd{margin:0;font-size:14px;overflow-wrap:anywhere}dd a{text-decoration:none}dd a:hover{text-decoration:underline}.form-status{font-size:14px;margin:20px 0 0;line-height:1.7}.form-status:empty{display:none}.form-status[data-state="error"]{color:#942a39}.form-status[data-state="success"]{color:#235b52}.field-error{font-size:12px;color:#942a39;line-height:1.5;margin:0}.field-error:empty{display:none}[aria-invalid="true"]{border-color:#942a39}.button:disabled{opacity:.65;cursor:wait;transform:none}
.site-footer{background:var(--indigo);color:white;padding:45px 0 24px;font-size:12px}.footer-top{display:flex;justify-content:space-between;align-items:start;gap:35px}.footer-brand strong{font-size:17px;letter-spacing:.5px}.footer-brand p{font-size:12px;margin:10px 0 0;color:var(--blue)}.site-footer nav{display:flex;flex-wrap:wrap;gap:20px}.site-footer a{color:white;text-decoration:none;display:inline-flex;min-height:32px;align-items:center}.site-footer a:hover{text-decoration:underline;text-underline-offset:5px}.site-footer a:focus-visible{outline-color:var(--orange)}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #ffffff33;padding-top:22px;margin-top:32px;color:var(--blue);font-size:11px}.footer-bottom p{margin:0}.footer-bottom>div{display:flex;gap:24px}.reveal-ready .reveal{transition:opacity .5s ease,transform .5s ease}.reveal-ready .reveal:not(.visible){opacity:0;transform:translateY(12px)}
@media(max-width:1150px){.wrap{width:calc(100% - 56px)}.site-header nav{gap:14px}.brand small{display:none}.site-header .header-cta{font-size:10px;padding:12px}.brand>span{font-size:17px}.hero-grid{gap:35px}.about-grid{gap:45px}.contact-grid{gap:40px}}
@media(max-width:1000px){.header-inner{min-height:82px;flex-wrap:wrap}.menu-toggle:not([hidden]){display:inline-flex}.site-header nav{flex-basis:100%;flex-direction:column;align-items:stretch;padding:8px 0 24px;gap:2px}.site-header nav>a{padding:12px;font-size:14px}.site-header .header-cta{margin:10px 0 0;font-size:13px}.hero-grid{grid-template-columns:1.35fr 1fr;gap:24px}h1{font-size:40px}.network-panel{padding:18px}.expertise{grid-template-columns:35px 1fr 1.1fr;gap:22px}.expertise h3{font-size:21px}.audience{padding:30px}.audience h3{font-size:24px}.mission-grid{gap:20px}.mission h3{font-size:19px}.preview-window{height:170px}.footer-top{flex-wrap:wrap}.section{padding:70px 0}}
@media(max-width:760px){.wrap{width:calc(100% - 36px)}html{scroll-padding-top:96px}.hero{padding:45px 0 50px}.hero-grid{grid-template-columns:1fr;gap:35px}h1{font-size:clamp(33px,7.5vw,48px);letter-spacing:-1px;max-width:23ch}h2{font-size:30px}.lead{font-size:15px;line-height:1.8}.eyebrow{font-size:10px;letter-spacing:1.3px}.network-panel{max-width:460px;width:100%;justify-self:center;padding:18px 24px}.network{max-height:250px}.network-top{font-size:9px}.section{padding:52px 0}.section-heading{margin-bottom:30px}.expertise{grid-template-columns:30px minmax(0,1fr);gap:8px 18px;padding:25px 0}.expertise p{grid-column:2;font-size:14px}.expertise .number{padding-top:4px}.audience-grid,.mission-grid,.website-grid,.about-grid,.contact-grid{grid-template-columns:1fr}.audience{padding:28px}.audience h3{max-width:none}.audience>p:last-child{max-width:none}.process{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 22px}.process h3{font-size:20px}.process .number{margin-bottom:18px}.mission-grid{gap:32px}.mission-visual{height:170px;margin-bottom:20px}.mission h3{min-height:0}.mission p:last-child{max-width:55ch}.website-grid{gap:25px}.website-section h2{font-size:29px}.preview-window{height:205px}.about-grid{gap:30px}.portrait-placeholder{height:270px;max-width:420px;width:100%}.about-copy h2{margin-bottom:22px}.contact-grid{gap:20px}.direct-contact{padding-top:15px}.form-grid{gap:18px}.footer-top{flex-direction:column;gap:24px}.footer-bottom{align-items:flex-start;flex-direction:column;gap:12px}.footer-bottom>div{flex-wrap:wrap;gap:12px 22px}}
@media(max-width:420px){.brand img{width:36px;height:36px}.brand>span{font-size:16px}.header-inner{gap:12px}.menu-toggle{padding:9px 11px;font-size:12px}.hero .actions{align-items:stretch;flex-direction:column;gap:10px}.hero .text-link{justify-content:center}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.process{grid-template-columns:1fr}.process li{display:grid;grid-template-columns:30px 1fr;gap:8px 16px}.process .number{margin:0;padding-top:4px}.process p{grid-column:2;max-width:none}.network-bottom{font-size:10px}.site-footer nav{gap:12px 20px}}
.preview-window{height:auto;aspect-ratio:1100/740}.preview-window img{display:block;width:100%;height:100%;object-fit:contain}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.button:hover{transform:none}.reveal-ready .reveal:not(.visible){opacity:1;transform:none}}
/* Composition éditoriale : territoires, échelles et parcours */
.header-inner{min-height:88px}.site-header{border-bottom-color:transparent}.brand img{width:48px;height:48px}.site-header nav{background:#f6f8fb;border-radius:6px;padding:4px 6px 4px 16px;gap:18px}.site-header nav>a[aria-current]{position:relative}.site-header nav>a[aria-current]:after{content:'';position:absolute;bottom:5px;left:0;width:5px;height:5px;border-radius:50%;background:var(--orange)}
#expertises .section-heading{max-width:550px}.expertise-list{border:0;display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:32px;align-items:start}.expertise{display:block;border:0;padding:28px 24px 30px;position:relative;min-width:0;background:#f4f7fb}.expertise:nth-child(2){margin-top:48px;background:white;padding-inline:12px}.expertise:nth-child(3){margin-top:96px;background:#edf1f7}.expertise .number{display:block;font-size:38px;font-weight:500;letter-spacing:-2px;color:#8a91ad;margin-bottom:25px;line-height:1}.expertise h3{font-size:28px;max-width:15ch;margin-bottom:24px}.expertise:before{content:'';position:absolute;top:30px;right:26px;width:7px;height:7px;background:var(--orange);border-radius:50%}.expertise-tags{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:9px 12px}.expertise-tags li{font-size:12px;line-height:1.6;color:#55596e;background:#ffffffa8;padding:4px 7px}.expertise:nth-child(2) .expertise-tags li{background:#f2f5f9}
.clients{background:white}.audience-grid{gap:0;background:var(--blue);position:relative}.audience{padding:44px 48px;background:transparent!important}.audience.deployment{color:var(--ink);border-left:1px solid #bcc8da}.deployment h3,.deployment .eyebrow{color:var(--indigo)}.audience h3{font-size:28px;max-width:20ch;min-height:2.6em}.audience>p:last-child{color:var(--muted);max-width:44ch}.local-symbol,.audience>svg{height:70px;width:120px;margin-bottom:28px}.local-symbol span{width:56px;height:56px;border-color:#a7b6ce}.local-symbol span:after{inset:23px}.audience>svg path{stroke:#899bb9}.audience>svg circle{fill:var(--indigo)}.audience>svg circle:nth-child(2){fill:var(--orange)}
.process{gap:0;position:relative;padding-top:12px}.process li{position:relative;border:0;display:block;padding:46px 22px 0 0}.process li:before{content:'';position:absolute;top:10px;left:0;width:100%;height:1px;background:#b2bfd3}.process li:last-child:before{width:0}.step-point{position:absolute;top:3px;left:0;width:15px;height:15px;border:4px solid white;border-radius:50%;background:var(--indigo);box-shadow:0 0 0 1px #b2bfd3}.process li:first-child .step-point,.process li:last-child .step-point{background:var(--orange)}.process h3{margin-bottom:14px}.process-end{max-width:520px;margin:38px 0 0 auto;padding:19px 24px;border-left:3px solid var(--orange);background:#f2f5f9;color:var(--indigo);font-size:14px;position:relative}.process-end:before{content:'';position:absolute;width:1px;height:38px;bottom:100%;left:22px;background:#b2bfd3}
.missions{background:#f5f7fa}.mission-grid{grid-template-columns:1.15fr 1fr;gap:32px 48px;align-items:start}.mission:first-child{grid-row:span 2}.mission:not(:first-child){display:grid;grid-template-columns:minmax(0,.65fr) minmax(0,1fr);column-gap:24px}.mission:not(:first-child) .mission-visual{grid-row:span 3;height:100%;min-height:210px;margin:0}.mission-visual{height:340px;border:0;background:#e5eaf2;align-items:center;justify-content:center;position:relative;padding:24px}.mission-visual:before{content:'';position:absolute;inset:22px;border:1px solid #ccd4e2}.mission-visual .visual-pending{font-size:11px;letter-spacing:1px;color:#626b80;line-height:1.6;font-weight:400}.mission h3{min-height:0}.mission:not(:first-child) .eyebrow{margin-bottom:10px}.mission p:last-child{line-height:1.8}
@media(max-width:1150px){.site-header nav{gap:12px}.expertise-list{gap:20px}.expertise{padding-inline:20px}.expertise h3{font-size:25px}.audience{padding:36px}.mission-grid{gap:30px}.mission:not(:first-child){column-gap:18px}}
@media(max-width:1000px){.site-header nav{padding:8px 12px 16px}.site-header nav>a[aria-current]:after{left:auto;right:12px;bottom:50%}.mission:not(:first-child){display:block}.mission:not(:first-child) .mission-visual{height:160px;min-height:0;margin-bottom:22px}.mission:first-child .mission-visual{height:360px}.mission-grid{gap:34px}.expertise h3{font-size:23px}.expertise-tags{gap:7px}.expertise-tags li{font-size:11px}.audience h3{font-size:24px}.process h3{font-size:19px}}
@media(max-width:760px){.header-inner{min-height:82px}.expertise-list{grid-template-columns:1fr;gap:20px}.expertise,.expertise:nth-child(2),.expertise:nth-child(3){margin:0;padding:24px;display:grid;grid-template-columns:45px minmax(0,1fr);gap:0 18px}.expertise:nth-child(2){background:#f9fafc;margin-left:14px}.expertise:nth-child(3){margin-right:14px}.expertise .number{font-size:29px;margin:0;grid-row:span 2}.expertise h3{font-size:24px;margin-bottom:15px;max-width:none;padding-right:12px}.expertise-tags{grid-column:2;gap:6px 8px}.expertise-tags li{font-size:11px;padding:3px 5px}.expertise:before{top:28px;right:16px;width:5px;height:5px}.audience-grid{grid-template-columns:1fr}.audience{padding:30px}.audience.deployment{border-left:0;border-top:1px solid #bcc8da}.audience h3{min-height:0;font-size:26px;max-width:20ch}.local-symbol,.audience>svg{margin-bottom:20px}.process{grid-template-columns:1fr;padding:0}.process li{padding:0 0 32px 40px;display:block}.process li:before{left:7px;top:9px;width:1px;height:100%}.process li:last-child:before{width:1px;height:calc(100% + 18px)}.step-point{left:0;top:7px}.process h3{font-size:23px;margin-bottom:10px}.process p{max-width:none}.process-end{margin:0 0 0 40px;padding:16px 20px}.process-end:before{left:-33px;bottom:50%;height:1px;width:30px}.mission-grid{grid-template-columns:1fr;gap:32px}.mission:first-child{grid-row:auto}.mission:first-child .mission-visual{height:260px}.mission:not(:first-child){display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1fr);gap:0 18px}.mission:not(:first-child) .mission-visual{height:100%;min-height:210px;margin:0}.mission h3{font-size:20px}.mission p:last-child{font-size:13px}.mission .eyebrow{font-size:9px}.mission-visual:before{inset:13px}}
@media(max-width:420px){.brand img{width:36px;height:36px}.expertise,.expertise:nth-child(2),.expertise:nth-child(3){padding:22px 17px;grid-template-columns:30px minmax(0,1fr);gap:0 13px}.expertise h3{font-size:22px}.expertise .number{font-size:25px}.audience{padding:28px}.mission:not(:first-child){grid-template-columns:1fr}.mission:not(:first-child) .mission-visual{grid-row:auto;height:150px;min-height:0;margin-bottom:20px}.mission:not(:first-child):last-child .mission-visual{height:190px}.mission:first-child .mission-visual{height:240px}}
/* Alignement des symboles et raccord du dernier point au bilan */
.audience>svg{display:block}
@media(min-width:761px){.process-end{width:50%;max-width:none}.process-end:before{left:calc(50% + 7px)}}
@media(min-width:761px) and (max-width:1000px){.expertise-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.expertise{padding-inline:16px}.expertise:nth-child(2){margin-top:32px}.expertise:nth-child(3){margin-top:64px}.expertise h3{font-size:22px}.process{grid-template-columns:repeat(4,minmax(0,1fr))}}
/* Finition : surfaces légères et illustrations sectorielles */
h2{font-size:clamp(28px,2.5vw,34px)}
.expertise,.expertise:nth-child(2),.expertise:nth-child(3){background:transparent;border:0}.expertise{padding-top:28px}.expertise:after{content:'';position:absolute;top:0;left:24px;width:54px;height:2px;background:var(--blue)}.expertise-tags{gap:8px 16px}.expertise-tags li,.expertise:nth-child(2) .expertise-tags li{background:none;padding:0;font-size:13px;line-height:1.8}.expertise-tags li:before{content:'';display:inline-block;width:3px;height:3px;margin:0 7px 3px 0;background:#a5b3ca;border-radius:50%}
.audience-grid{background:white}.audience{padding-top:28px;padding-bottom:28px}.local-symbol span{background:#f3f6fa;border-color:var(--blue)}.audience>svg{background:#f3f6fa;border-radius:50%}.audience.deployment{border-color:#e5eaf2}
.process-end{background:none;border:0;padding:0 0 0 14px;font-size:13px;color:var(--muted);margin-top:26px}.process-end:before{content:'';position:absolute;left:0;top:9px;bottom:auto;width:5px;height:5px;border-radius:50%;background:var(--orange)}
.missions{background:white}.mission-visual,.mission:not(:first-child) .mission-visual{padding:0;display:block;overflow:hidden;position:relative;background:var(--blue)}.mission-visual:before{display:none}.mission-visual img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 50%}.mission-visual small{position:absolute;bottom:9px;left:9px;font-size:9px;letter-spacing:.3px;color:var(--indigo);background:#fffffff2;padding:3px 7px;line-height:1.5}.mission:nth-child(2) .mission-visual img{object-position:40% 50%}.mission:nth-child(3) .mission-visual img{object-position:52% 50%}
.contact-section{background:#fafbfd}.network-panel{background:#f3f6fa}.portrait-placeholder{background:#f3f6fa}
@media(min-width:761px){.process-end{width:50%;max-width:none}.process-end:before{left:0}}
@media(max-width:1000px){.expertise-tags li{font-size:12px}.mission:not(:first-child) .mission-visual{height:190px}.mission:first-child .mission-visual{height:340px}}
@media(max-width:760px){h2,.website-section h2{font-size:28px}.expertise:after{left:24px}.expertise-tags{gap:6px 12px}.expertise-tags li{font-size:12px}.process li:last-child:before{height:calc(100% - 20px)}.process-end{padding:0 0 0 14px;margin:0 0 0 40px}.process-end:before{left:0;top:9px;width:5px;height:5px}.mission:first-child .mission-visual{height:260px}.mission:not(:first-child) .mission-visual{height:100%;min-height:220px}.audience.deployment{border-color:#e5eaf2}}
@media(max-width:420px){.expertise:after{left:17px}.mission:first-child .mission-visual{height:230px}.mission:not(:first-child) .mission-visual,.mission:not(:first-child):last-child .mission-visual{height:210px;min-height:0}.expertise-tags{gap:6px 10px}}
/* Corrections ciblées : expertises et réalisations */
#expertises{padding-block:64px}#expertises .section-heading{margin-bottom:30px;max-width:none}
#expertises .expertise-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;align-items:stretch;background:linear-gradient(110deg,#f6f8fb,white 65%);padding:26px 0}
#expertises .expertise,#expertises .expertise:nth-child(2),#expertises .expertise:nth-child(3){margin:0;padding:6px 28px;display:block;background:none;min-width:0}
#expertises .expertise+.expertise{border-left:1px solid var(--blue)}#expertises .expertise:after{display:none}#expertises .expertise:before{top:12px;right:28px;width:6px;height:6px}
#expertises .number{font-size:27px;letter-spacing:-1px;color:#68718f;margin-bottom:20px;line-height:1}
#expertises .expertise h3{font-size:28px;line-height:1.25;max-width:18ch;min-height:2.5em;margin-bottom:20px}
#expertises .expertise-tags{display:grid;grid-template-columns:1fr;gap:5px}#expertises .expertise-tags li{font-size:14px;line-height:1.65;color:#50556a;padding:0;background:none}#expertises .expertise-tags li:before{background:#929fba}
#expertises .section-link{margin-top:20px}
#realisations{padding-block:64px}#realisations .section-heading{margin-bottom:32px}
#realisations .mission-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;align-items:start}
#realisations .mission,#realisations .mission:first-child,#realisations .mission:not(:first-child){display:block;grid-row:auto;min-width:0}
#realisations .mission .mission-visual{width:100%;height:auto;min-height:0;aspect-ratio:3/2;margin:0 0 20px;grid-row:auto;background:#f6f8fb}
#realisations .mission .mission-visual img{object-fit:contain;object-position:center;width:100%;height:100%}
#realisations .mission .eyebrow{font-size:10px;margin:0 0 10px}
#realisations .mission h3{font-size:22px;line-height:1.35;min-height:2.7em;margin-bottom:13px}
#realisations .mission p:last-child{font-size:14px;line-height:1.8;margin:0}
#realisations .section-link{margin-top:24px}
@media(max-width:1000px){#expertises .expertise,#expertises .expertise:nth-child(2),#expertises .expertise:nth-child(3){padding-inline:20px}#expertises .expertise h3{font-size:23px}#expertises .expertise-tags li{font-size:13px}#realisations .mission-grid{gap:22px}#realisations .mission h3{font-size:19px}}
@media(max-width:760px){#expertises,#realisations{padding-block:46px}#expertises .expertise-list{grid-template-columns:1fr;background:none;padding:0;gap:0}#expertises .expertise,#expertises .expertise:nth-child(2),#expertises .expertise:nth-child(3){display:grid;grid-template-columns:32px minmax(0,1fr);gap:0 16px;padding:22px 0;margin:0;border:0}#expertises .expertise+.expertise{border-top:1px solid var(--blue)}#expertises .number{font-size:23px;margin:4px 0 0;grid-row:span 2}#expertises .expertise h3{font-size:25px;min-height:0;max-width:none;margin-bottom:14px;padding-right:12px}#expertises .expertise:before{top:32px;right:0;width:5px;height:5px}#expertises .expertise-tags{grid-column:2;display:flex;flex-wrap:wrap;gap:5px 14px}#expertises .expertise-tags li{font-size:14px}#expertises .section-heading{margin-bottom:12px}#expertises .section-link{margin-top:12px}#realisations .mission-grid{grid-template-columns:1fr;gap:34px}#realisations .mission h3{font-size:23px;min-height:0}#realisations .mission .mission-visual{margin-bottom:17px}#realisations .mission p:last-child{font-size:14px}#realisations .mission .eyebrow{font-size:10px}}
@media(min-width:761px) and (max-width:1000px){#realisations .mission-grid{grid-template-columns:1fr;gap:28px}#realisations .mission h3{min-height:0;font-size:23px}#realisations .mission p:last-child{font-size:14px}}
/* Rythme des sections clients et contact */
#clients{background:#f5f8fc;padding-block:64px}
#clients .audience-grid{background:transparent}
#clients .section-heading{margin-bottom:30px}
#approche{padding-top:64px}
#contact{background:#edf3fa}
@media(max-width:1000px){#clients{padding-block:54px}#approche{padding-top:54px}}
@media(max-width:760px){#clients{padding-block:42px}#clients .section-heading{margin-bottom:24px}#approche{padding-top:42px}}
/* Dernière passe : hiérarchie, rythme et libellés sectoriels */
:root{--warm:#fff6f0}
.hero h1{font-size:clamp(38px,3.6vw,49px);line-height:1.2;max-width:23ch;letter-spacing:-1.4px}
.section-heading>.eyebrow,.about-copy>.eyebrow{font-size:12px;letter-spacing:1.5px;font-weight:700;margin-bottom:15px}
h2,.website-section h2{font-size:clamp(28px,2.5vw,34px);line-height:1.25}
#expertises,.website-section{background:var(--warm)}
#expertises .expertise-list{background:none}
#clients{background:#f0f5fb}
#approche{padding-bottom:46px}
#realisations{padding-top:46px}
.website-section{padding-block:58px;border-bottom:0}
#apropos{padding-block:64px;background:white}
.about-copy h2{margin-bottom:12px}
.about-copy .role{margin-top:0;font-size:14px}
#contact{background:#e7eff8}
#realisations .mission-visual small{font-size:11px;font-weight:700;letter-spacing:.65px;color:var(--indigo);background:#fffffff5;padding:6px 10px;bottom:12px;left:12px;line-height:1.5}

@media(max-width:1000px){.hero h1{font-size:clamp(35px,4.6vw,44px)}#apropos{padding-block:56px}.website-section{padding-block:52px}}
@media(max-width:760px){.hero h1{font-size:clamp(30px,7.7vw,42px);line-height:1.24;max-width:25ch;letter-spacing:-.85px}.section-heading>.eyebrow,.about-copy>.eyebrow{font-size:11px;letter-spacing:1.3px;margin-bottom:13px}h2,.website-section h2{font-size:28px}#approche{padding-bottom:30px}#realisations{padding-top:32px}#apropos,.website-section{padding-block:46px}#realisations .mission-visual small{font-size:10px;letter-spacing:.5px;bottom:10px;left:10px}}
/* Uniformisation des repères : suppression des points sans rôle graphique */
.hero .eyebrow:before,#expertises .expertise:before{display:none}
.section-heading>.eyebrow,.about-copy>.eyebrow{font-size:26px;font-weight:700;letter-spacing:.7px;line-height:1.25;margin-bottom:9px;text-transform:uppercase}
@media(max-width:760px){.section-heading>.eyebrow,.about-copy>.eyebrow{font-size:22px;letter-spacing:.5px;margin-bottom:9px}}
/* Navigation : suppression du point sous Accueil */
.site-header nav>a[aria-current]:after{display:none}
/* Portrait professionnel : proportions naturelles, sans recadrage ni effet */
#apropos .about-portrait{display:block;width:100%;max-width:300px;height:auto;justify-self:center;object-fit:contain;filter:none;border:0;box-shadow:none}
@media(max-width:760px){#apropos .about-portrait{max-width:280px;justify-self:start}}
/* Portrait : cadre compact, cadrage du visage et des épaules */
#apropos{padding-block:48px}
#apropos .about-portrait{width:100%;max-width:330px;height:auto;aspect-ratio:33/40;object-fit:cover;object-position:center 68%}
@media(max-width:1000px){#apropos .about-portrait{max-width:290px}#apropos{padding-block:42px}}
@media(max-width:760px){#apropos .about-portrait{max-width:260px;aspect-ratio:13/16;justify-self:start}#apropos{padding-block:40px}}
/* Finitions ciblées : précision, fonction et contours des images */
.process-end{width:fit-content;max-width:100%;padding:12px 16px;background:var(--warm);border-left:2px solid var(--orange);color:var(--indigo);cursor:default}
.process-end:before{display:none}
.about-copy .role{font-weight:500}
.about-copy .founder{display:block;font-size:13px;font-weight:400;color:var(--muted);margin-top:5px}
#realisations .mission .mission-visual,.preview-window,#apropos .about-portrait{border:1px solid #dce2eb;border-radius:3px;box-shadow:none}
@media(max-width:760px){.process-end{width:auto;max-width:calc(100% - 40px)}}
/* Fonction et fondation : un seul bloc compact */
#apropos .about-copy .role{margin:0 0 24px;line-height:1.5}
#apropos .about-copy .role .founder{margin:4px 0 0;line-height:1.5}

/* Finition ciblée : repères, colonnes éditoriales et identité */
#accueil .hero-markers{display:flex;flex-wrap:wrap;align-items:center;gap:8px 0;font-size:10px;letter-spacing:1px}
#accueil .hero-markers span{display:inline-flex;align-items:center;white-space:nowrap}
#accueil .hero-markers span+span:before{content:'';width:3px;height:3px;border-radius:50%;background:var(--orange);margin-inline:10px;flex-shrink:0}
#accueil .lead{max-width:52ch}
#expertises .number{display:block;font-size:13px;font-weight:600;letter-spacing:1px;color:#AF5427;margin-bottom:16px}
#expertises .expertise h3{font-size:26px;line-height:1.3;min-height:2.6em}
#expertises .expertise-tags li:before{width:7px;height:1px;border-radius:0;background:var(--orange);margin-bottom:4px}
#clients .audience-grid{gap:0}
#clients .audience{background:#f5f8fc;padding:28px 36px}
#clients .audience.deployment{background:#eaf0f8;border-left:1px solid #d5deeb}
#clients .local-symbol,#clients .audience>svg{width:100px;height:76px;margin-bottom:22px;background:none;border-radius:0}
#clients .local-symbol{justify-content:center}
#clients .local-symbol span{width:66px;height:66px;background:none;border:1px solid #c2cfe0;box-shadow:0 0 0 5px #f5f8fc,0 0 0 6px #dde5ef}
#clients .local-symbol span:before{content:'';position:absolute;inset:12px;border:1px solid #c2cfe0;border-radius:50%}
#clients .local-symbol span:after{inset:50% auto auto 50%;width:8px;height:8px;transform:translate(-50%,-50%);background:var(--orange)}
#clients .audience>.eyebrow:before{content:'';display:inline-block;width:14px;height:1px;background:var(--orange);vertical-align:middle;margin-right:10px}
#apropos .about-copy h2{margin-bottom:14px}
#apropos .about-copy .role{margin:0 0 24px;line-height:1.5}
#apropos .about-copy .role .founder{margin-top:5px}
@media(min-width:761px) and (max-width:1100px){#expertises .expertise h3{font-size:23px;min-height:3.9em}}
@media(max-width:760px){
#accueil .hero-markers{display:grid;grid-template-columns:max-content max-content;column-gap:18px;row-gap:7px;font-size:10px;letter-spacing:.8px}
#accueil .hero-markers span+span:before{display:block;width:7px;height:1px;border-radius:0;margin:0 8px 0 0}
#accueil .hero-markers span:before{content:'';width:7px;height:1px;background:var(--orange);margin-right:8px}
#expertises .expertise h3{font-size:24px;min-height:0;padding-right:0}
#expertises .number{font-size:13px;margin-top:6px}
#expertises .expertise-tags{display:grid;grid-template-columns:1fr;gap:5px}
#clients .audience{padding:26px 22px}
#clients .audience.deployment{border-left:0;border-top:1px solid #d5deeb}
#apropos .about-copy h2{margin-bottom:14px}
}
/* Hero : entrée directe et respiration resserrée sous le header */
#accueil{padding-top:36px}
#accueil .hero-copy{align-self:start;padding-top:20px}
@media(max-width:1000px){#accueil{padding-top:32px}#accueil .hero-copy{padding-top:12px}}
@media(max-width:760px){#accueil{padding-top:30px}#accueil .hero-copy{padding-top:0}}

@media(max-width:480px){#apropos .about-portrait{max-width:220px}#apropos .about-grid{gap:22px}}

/* Missions : lecture secteur, mission, image, description ; separation discrete. */
#realisations .mission .mission-sector{font-size:11px;font-weight:700;letter-spacing:.65px;color:var(--indigo);margin:0 0 10px;line-height:1.5}
@media(min-width:1001px) and (max-width:1100px){#realisations .mission h3{min-height:4.05em}}
@media(max-width:760px){#realisations .mission .mission-sector{font-size:10px}}

/* Test local : accroches secondaires des six sections. */
.section-heading>h2,#apropos .about-copy>h2{font-size:22px;font-weight:500;line-height:1.4;letter-spacing:-.25px;max-width:none}
#apropos .about-copy>h2{font-weight:600}
@media(max-width:760px){.section-heading>h2,#apropos .about-copy>h2{font-size:20px}}

/* Quatre introductions : typographie commune. */
#expertises .section-heading>h2,#clients .section-heading>h2,#approche .section-heading>h2,#realisations .section-heading>h2{font-family:Montserrat,Arial,sans-serif;font-size:14px;font-weight:400;line-height:1.75;letter-spacing:normal}
