.menu-toggle{display:none}
@media(max-width:800px){
 html{scroll-padding-top:80px}body{font-size:15px;line-height:1.55}.wrap{width:90%}
 h1{font-size:clamp(29px,7.5vw,44px)!important;line-height:1.12!important}h2{font-size:clamp(24px,6vw,32px)!important;line-height:1.18!important}h3{font-size:21px;line-height:1.2}
 .site-header{height:68px;padding:10px 5%}.site-header>a>img{width:132px}.menu-toggle{display:grid;place-items:center;width:44px;height:44px;border:0;background:transparent;color:#16343d;padding:10px}.menu-toggle svg{width:24px;height:24px;stroke:currentColor;stroke-width:2;fill:none}
 .site-header nav{display:none;position:absolute;left:0;right:0;top:68px;padding:20px 5%;background:#faf9f5;max-height:calc(100svh - 68px);overflow:auto;box-shadow:0 12px 18px #16343d10;font-size:16px;align-items:stretch;gap:15px}.site-header.nav-open nav{display:flex;flex-direction:column}.site-header nav>a{padding:12px 0}.site-header .demo-menu{align-self:flex-start;padding:12px 18px}.site-header .services-dropdown{position:static;min-width:0;padding:4px 10px;background:transparent}.site-header .services-dropdown a{font-size:15px}
 .opening{min-height:0;height:calc(100svh - 68px);max-height:650px;padding:25px 5%;gap:25px}.opening h1{font-size:clamp(30px,7.8vw,46px)!important}.opening .hero-logo{margin-top:18px;max-width:200px;flex-shrink:0}
 .mission-hero,.os-hero{padding:25px 0 35px;min-height:0}.hero-columns{grid-template-columns:1fr;gap:18px;margin-top:22px}.hero-columns h1{margin:0}.hero-aside p,.os-hero>p{font-size:16px;line-height:1.5;margin-bottom:14px}.hero-aside strong,.os-hero>strong{font-size:17px}.hero-aside .text-link{margin-top:12px;font-size:14px}
 .narrative-line{font-size:clamp(20px,5.6vw,28px)!important}.narrative-sticky{padding-left:5%;padding-right:5%}
 .animated-profile{margin:0;padding:16px 4%}.profile-stage{position:relative;display:block;min-height:0}.profile-stage .map{height:min(440px,calc(100svh - 110px));max-height:none;width:100%;margin:0}.profile-stage .map-center{visibility:hidden}.profile-stage .profile-story{position:absolute;left:50%;top:50%;translate:-50% -50%;width:54%;padding:12px 6px;min-height:0;background:rgba(255,255,255,.96);z-index:8;text-align:center}.profile-story-icon{display:none}.profile-story #profile-label{font-size:14px!important;margin:0 0 6px;letter-spacing:0}.profile-story #profile-message{font-size:14px!important;line-height:1.35;min-height:0;margin:0}.profile-stage[data-profile-index="0"] #profile-label{font-size:20px!important;color:#16343d}.profile-stage[data-profile-index="0"] #profile-message{display:none}.profile-steps{justify-content:center;margin-top:8px}.profile-steps button{padding:9px}.profile-stage .node{width:70px;font-size:13px;gap:3px}.profile-stage .node .icon{width:42px;height:42px}.profile-stage .node svg{width:35px;height:35px}.profile-stage .node.is-focused{transform:translate(var(--move-x),var(--move-y)) scale(1.25)}.profile-stage .att,.profile-stage .emo{top:5%}.profile-stage .mem,.profile-stage .dec{bottom:5%}
 .diagnostic-visual{margin:0 3%;padding:28px 4% 22px}.visual-intro{grid-template-columns:1fr;gap:12px;margin-bottom:20px}.visual-intro>p{font-size:14px;max-width:none}.campaign-selector{display:flex;flex-wrap:nowrap;gap:5px;margin:20px 0 12px}.campaign-selector button{padding:10px 5px;font-size:clamp(10px,2.8vw,13px);flex:1;white-space:nowrap}.campaign-objective{font-size:14px;line-height:1.4;margin-bottom:12px}
 .indicator-list .indicator-row{grid-template-columns:92px minmax(35px,1fr) 104px;gap:8px;min-height:64px;padding:10px 0}.indicator-row .pillar-name{font-size:12px;gap:5px}.indicator-row .pillar-name svg{width:20px;height:20px}.indicator-row .insight-tag{grid-column:auto;font-size:10px;padding:8px 5px;line-height:1.3;min-height:36px}.insight-tag svg{width:13px;height:13px;margin-right:2px}.indicator-track i{height:8px}.gain-track,[data-gain-style=continuous] .gain-track{padding:12px 0}
 .pillar-detail{right:0;width:100%;padding:24px 18px}.pillar-detail h3{font-size:19px}.pillar-detail p{font-size:14px}
 .variant-grid{gap:12px;margin-top:22px}.variant-heading{height:82px;min-height:82px;gap:8px}.variant-heading h3{font-size:15px;white-space:nowrap}.recommendation-tag{font-size:10px;padding:8px 3px;white-space:nowrap;min-height:36px}.variant-pillar{height:65px;padding:9px 0}.variant-pillar .pillar-name{flex-direction:row;align-items:center;font-size:11px;gap:3px;margin-bottom:12px;white-space:nowrap}.variant-pillar .pillar-name svg{width:17px;height:17px}.variant-recommendation{left:-100%;right:-100%;top:80px;padding:25px 15px}.variant-recommendation h3{font-size:18px}.variant-recommendation p{font-size:14px}
 .mission-benefit,.mission-preparation,.delivery-detail{grid-template-columns:1fr;gap:20px}.mission-benefit{padding:45px 0}.mission-benefit p:not(.eyebrow),.mission-preparation p,.delivery-detail li{font-size:16px}.mission-process{padding-bottom:45px}.process-chain{grid-template-columns:1fr;margin:25px 0;gap:10px}.process-chain h3{font-size:21px;margin:10px 0}.process-chain p{font-size:15px}.process-arrow{transform:rotate(90deg);justify-self:start;font-size:25px}.delivery-detail{padding:22px}.mission-preparation{padding:20px 0 45px}.mission-preparation h3{font-size:21px}.mission-contact,.os-close,.closing{padding:40px 5%}.mission-contact>p,.os-close p,.closing>p{font-size:23px}.mission-contact>a,.os-close>a,.closing>a{font-size:29px}.closing>small{margin:20px 0 30px}
 .services,.trust,.human{padding-top:40px;padding-bottom:40px}.section-intro,.service p,.human p:not(.eyebrow),.trust p,.proofs p{font-size:16px}.service h3{font-size:24px}.service{min-height:0;padding:24px 0;gap:12px}.service strong{font-size:18px}.proofs{gap:20px;margin:30px 0}.proofs h3{font-size:21px}.comparison{margin:25px 0;padding:20px 12px}.comparison-title h3{font-size:22px}
 .section-nav{top:68px;font-size:12px;padding:10px 5%;gap:6px}.os-section,.science-section,.trace-section{padding:45px 0;scroll-margin-top:125px}.science-grid,.indicator-explain,.founder,.capabilities{grid-template-columns:1fr;gap:25px}.science-section p,.indicator-explain p,.trace-section>.wrap>p,.capabilities p,.founder p,.questions details p{font-size:16px}.questions summary{font-size:16px}.corpus{font-size:16px;padding:20px}.science-map .os-cognitive-map{height:320px}.os-cognitive-map .map-center{max-width:52%;padding:12px}.os-cognitive-map .map-center strong{font-size:15px}.os-cognitive-map .map-center span{font-size:13px}.os-cognitive-map .node{font-size:12px;width:70px}.os-cognitive-map .node .icon{width:40px;height:40px}.os-cognitive-map .node svg{width:32px;height:32px}.founder{padding:35px 0}.trace-chain{grid-template-columns:1fr;gap:8px}.trace-chain h3{font-size:20px}.trace-chain p{font-size:15px}th,td{font-size:13px;padding:12px}.reading-guide{padding:22px}
 .site-footer{padding:26px 5%;gap:18px;margin:0;width:100%;text-align:left}.site-footer .footer-brand img{width:145px}.site-footer nav{position:static;display:flex;flex-basis:100%;order:2;gap:20px;padding:0;font-size:12px}.site-footer .footer-copyright{order:3;margin:0!important;font-size:11px}.site-footer .footer-linkedin{margin-left:auto}.closing:has(.site-footer){padding-bottom:0}.closing .site-footer{width:calc(100% + 10vw);margin-left:-5vw;margin-top:30px}
 dialog.contact-section{padding:38px 20px;max-height:90svh}.form-grid{grid-template-columns:1fr;gap:0}
}
/* Ajustements mobiles : héros plein écran et priorité à la longueur des barres. */
@media(max-width:800px){
 .mission-hero,.os-hero{min-height:calc(100svh - 68px);display:flex;flex-direction:column;justify-content:center;padding-top:24px;padding-bottom:32px}.mission-hero .back{margin-bottom:12px}.hero-columns{margin-top:18px}
 .opening .hero-logo{width:180px;max-width:none;height:58.5px;transform:none}.hero-logo .logo-symbol-window{width:52.875px;height:58.5px}.hero-logo img{width:180px;height:58.5px}.hero-logo .logo-name-window{margin-left:4.5px;width:122.625px;height:58.5px}.hero-logo .logo-name-slide{width:122.625px;height:58.5px}.hero-logo .logo-name-slide img{left:-57.375px}
 .indicator-list .indicator-row{grid-template-columns:78px minmax(0,1fr) 76px;gap:7px}.indicator-row .pillar-name{font-size:11px;gap:4px}.indicator-row .pillar-name svg{width:17px;height:17px}.indicator-row .insight-tag{font-size:9px;min-height:30px;padding:5px 3px}.insight-tag svg{width:11px;height:11px}.recommendation-tag{font-size:9px;padding:6px 3px;min-height:30px}
 .profile-stage:not([data-profile-index="0"]) #profile-label{display:none}
 .profile-stage[data-profile-index="0"] .map-center{visibility:visible;max-width:53%;padding:15px 12px;font-size:14px}.profile-stage[data-profile-index="0"] .map-center strong{font-size:17px}.profile-stage[data-profile-index="0"] .map-center.is-focused{transform:translate(-50%,-50%) scale(1.12)}
 .profile-stage[data-profile-index="0"] .profile-story{top:calc(50% - 94px);width:58%;padding:8px;background:rgba(255,255,255,.96)}
 .profile-stage[data-profile-index="0"] #profile-label{font-size:0!important;margin:0}.profile-stage[data-profile-index="0"] #profile-label:after{content:'Le profil cognitif au regard de';font-size:16px;line-height:1.25;display:block;font-weight:800}.profile-stage[data-profile-index="0"] .profile-steps{position:absolute;top:190px;left:50%;translate:-50% 0;white-space:nowrap}
}
/* Accueil mobile : objectif dégagé et une mission par écran. */
@media(max-width:800px){
 .profile-stage .profile-steps{display:none!important}
 .profile-stage[data-profile-index="0"] .profile-story{background:transparent;box-shadow:none;border:0;backdrop-filter:none}
 .profile-stage[data-profile-index="0"] .map-center{border-radius:22px}
 #missions .service{min-height:calc(100svh - 68px);grid-template-columns:24px minmax(0,1fr) 22px;grid-template-rows:auto auto;align-content:center;align-items:start;column-gap:12px;row-gap:25px;padding:35px 0;margin:0}
 #missions .service+.service{margin-top:0}
 #missions .service h3{font-size:25px;line-height:1.18}
 #missions .service .mission-title{font-size:20px;line-height:1.25;margin-bottom:16px}
 #missions .service .mission-delay{font-size:15px;line-height:1.4}
 #missions .service>div>p:not(.mission-deliverable){font-size:14px;line-height:1.55;margin-bottom:0}
 #missions .service p strong{font-size:inherit;line-height:inherit}
 #missions .service .number{font-size:17px}
 #missions .service .arrow{font-size:25px}
}
/* Deux contours arrondis, sans outline pendant le zoom du centre. */
@media(max-width:800px){
 .profile-stage .map-center{outline:none!important;border:0!important;box-shadow:none!important;border-radius:22px}
 .profile-stage .map-center::before,.profile-stage .map-center::after{content:'';position:absolute;pointer-events:none;background:transparent;border:1px solid #13bbaa;border-radius:inherit;inset:0}
 .profile-stage .map-center::after{inset:-7px;border-color:#b9e7e0;border-radius:29px}
 dialog.contact-section{width:min(420px,92vw);padding:32px 18px 20px;max-height:88svh}
 dialog.contact-section h2{font-size:23px!important;margin-bottom:10px}
 dialog.contact-section>p{font-size:13px;line-height:1.4;margin-bottom:14px}
 dialog.contact-section form label{font-size:12px;margin-bottom:10px}
 dialog.contact-section form input,dialog.contact-section form textarea{font-size:16px;line-height:1.25;padding:8px 10px;margin-top:4px}
 dialog.contact-section form textarea{height:90px;min-height:70px;resize:vertical}
 dialog.contact-section .form-grid{gap:0}
 dialog.contact-section .privacy-note,dialog.contact-section .email-alternative{font-size:11px;line-height:1.4;margin:12px 0}
 dialog.contact-section form button[type=submit]{font-size:13px;padding:10px 14px}
 dialog.contact-section .form-status:empty{display:none}
}
.mobile-objective-frame{display:none}
@media(max-width:800px){
 .profile-stage .map-center::before,.profile-stage .map-center::after{content:none!important;display:none!important}
 .profile-stage .map-center{background:transparent!important;border:0!important;outline:0!important;box-shadow:none!important;isolation:isolate}
 .profile-stage .map-center .mobile-objective-frame{display:block;position:absolute;inset:-8px;width:calc(100% + 16px);height:calc(100% + 16px);z-index:-1;overflow:visible}
 .profile-stage .map-center>span,.profile-stage .map-center>strong{position:relative;border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important}
}
/* Ordinateur : les trois missions réunies dans une vue compacte. */
@media(min-width:801px){
 #missions{padding:30px 0 35px}
 #missions>h2{font-size:clamp(30px,3vw,44px);line-height:1.12;margin-bottom:12px;max-width:none}
 #missions>h2 br{display:none}
 #missions>.section-intro{font-size:17px;margin-bottom:18px}
 #missions .service{grid-template-columns:32px 1fr 1.35fr 26px;gap:22px;min-height:0;padding:18px 0}
 #missions .service+.service{margin-top:0}
 #missions .service h3{font-size:clamp(22px,2vw,29px);line-height:1.15}
 #missions .service .mission-title{font-size:19px;line-height:1.25;margin:0 0 7px}
 #missions .service .mission-delay{font-size:14px;line-height:1.35}
 #missions .service>div>p:not(.mission-deliverable){font-size:14px;line-height:1.45;margin:0}
 #missions .service p strong{font-size:inherit}
 #missions .number{font-size:19px}
 #missions .arrow{font-size:27px}
}
@media(min-width:801px) and (max-height:780px){
 #missions{padding:20px 0}
 #missions>h2{font-size:30px}
 #missions>.section-intro{margin-bottom:10px;font-size:15px}
 #missions .service{padding:12px 0;gap:18px}
 #missions .service h3{font-size:23px}
 #missions .service .mission-title{font-size:17px}
 #missions .service>div>p:not(.mission-deliverable){font-size:13px;line-height:1.4}
}
/* La section bénéfice ne contient qu'un bloc : aucune colonne vide. */
.mission-benefit{display:block}.mission-benefit>div{width:100%;max-width:1000px}.mission-benefit h2{max-width:28ch}.mission-benefit p:not(.eyebrow){max-width:65ch}
.site-header{transition:transform .25s ease;will-change:transform}.site-header.header-hidden{transform:translateY(-100%)}.site-header:focus-within,.site-header.nav-open{transform:translateY(0)}
.site-header>a:first-child{border:0;box-shadow:none;background:transparent}.site-header>a:first-child:not(:focus-visible){outline:none}
@media(prefers-reduced-motion:reduce){.site-header{transition:none}}
@media(max-width:800px){
 .mission-benefit{padding:32px 0}.mission-benefit h2{max-width:none;font-size:26px!important}.mission-benefit h2 br{display:none}.mission-benefit p:not(.eyebrow){font-size:15px}
 .diagnostic-visual{padding:20px 4% 16px}.visual-intro{gap:8px;margin-bottom:12px}.visual-intro h2{font-size:23px!important;line-height:1.15!important}.visual-intro>p{font-size:12px;line-height:1.4}.campaign-selector{margin:12px 0 8px}.campaign-selector button{padding:8px 4px}.campaign-objective{font-size:12px;margin-bottom:6px}
 .indicator-list .indicator-row{min-height:51px;padding:7px 0}.variant-grid{margin-top:12px}.variant-heading{height:68px;min-height:68px}.variant-pillar{height:53px;padding:6px 0}.variant-pillar .pillar-name{margin-bottom:9px}
 .section-nav{transition:top .25s ease}body.header-scrolled-down .section-nav{top:0}
}
@media(min-width:801px){
 .mission-benefit{padding:50px 0}.mission-benefit h2{font-size:clamp(30px,3.3vw,46px)}.mission-benefit p:not(.eyebrow){font-size:19px}
 .mission-process{padding-bottom:45px}.process-chain{margin:30px 0;gap:18px}.process-chain h3{font-size:23px}.process-chain p{font-size:16px}.delivery-detail{padding:25px}.delivery-detail li{font-size:17px;margin-bottom:10px}
 .mission-preparation{padding:35px 0 50px;gap:55px}.mission-preparation h2{font-size:32px}.mission-preparation p{font-size:17px}
 .diagnostic-visual{padding-top:35px;padding-bottom:25px}.visual-intro{margin-bottom:25px;gap:40px}.visual-intro h2{font-size:34px}.visual-intro>p{font-size:17px}.campaign-selector{margin:20px 0 12px}.campaign-objective{font-size:18px}.indicator-row{min-height:75px}.variant-grid{margin-top:25px}.variant-heading{min-height:78px}.variant-pillar{padding:12px 0}
 .trust{padding:45px 0}.proofs{margin:35px 0;gap:35px}.human{padding-bottom:55px;gap:55px}.human p:not(.eyebrow){font-size:19px}.human img{max-height:340px}.comparison{padding:28px;margin:25px 0}
 .os-section,.science-section,.trace-section{padding-top:55px;padding-bottom:55px}.capabilities{gap:35px;margin-top:30px}.capabilities p,.science-section p,.indicator-explain p{font-size:18px}.trace-chain{margin-top:30px}.founder{padding-bottom:45px}.section-nav{transition:top .25s ease}body.header-scrolled-down .section-nav{top:0}
}
/* Hiérarchie des missions et fin de page commune. */
#missions .service+.service{border-top:1px solid #16343d26}
@media(min-width:801px){
 #missions{min-height:calc(100svh - 104px);display:flex;flex-direction:column;justify-content:center;padding:35px 0}
 #missions>h2{font-size:clamp(38px,3.5vw,54px);line-height:1.12;margin-bottom:16px}
 #missions>.section-intro{font-size:18px;margin-bottom:22px}
 #missions .service{padding:21px 0;grid-template-columns:32px 1fr 1.35fr 26px}
 #missions .service h3{font-size:clamp(25px,2.15vw,33px)}
 #missions .service .mission-title{font-size:21px}
 #missions .service>div>p:not(.mission-deliverable){font-size:15px}
}
.closing,.mission-contact,.os-close{padding:clamp(32px,6svh,65px) 6%;margin-bottom:0}
.closing>p,.mission-contact>p{font-size:clamp(24px,3vw,40px);margin-bottom:22px}
.closing>a,.mission-contact>a,.os-close>a{font-size:clamp(29px,4vw,58px);line-height:1.2}
.closing>small{margin:22px auto 0;font-size:13px;max-width:65ch}
.site-footer{padding:26px 6%;gap:20px;width:100%;margin:0}
.site-footer .footer-copyright{margin:0!important;line-height:1.4;font-size:12px}
@media(max-width:800px){
 .closing,.mission-contact,.os-close{padding:35px 5%}
 .closing>a,.mission-contact>a,.os-close>a{font-size:29px}
 .closing>p,.mission-contact>p{font-size:23px}
 .site-footer{padding:22px 5%;gap:15px}
 .site-footer .footer-brand img{width:135px}
 .site-footer .footer-copyright{font-size:11px}
}
/* Accueil : nom de mission et délai réunis, retour naturel sur petits écrans. */
#missions .service .mission-title{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:14px;row-gap:4px}
#missions .service .mission-title .mission-delay{display:inline;margin:0;white-space:nowrap;font-weight:400}
/* Priorité aux noms des services dans la section missions. */
@media(min-width:801px){
 #missions .service{grid-template-columns:30px .8fr 1.6fr 26px;column-gap:22px}
 #missions .service h3{font-size:clamp(22px,1.8vw,28px)}
 #missions .service .mission-title{font-size:clamp(25px,2.25vw,34px);line-height:1.2}
 #missions .service .mission-title .mission-delay{font-size:15px}
}
@media(max-width:800px){
 #missions .service .mission-title{font-size:25px;line-height:1.2}
 #missions .service h3{font-size:22px}
}
