/* Layout : bandeaux pleine largeur, contenu centré 1200px ; une ligne d'offres, une ligne de solutions, méthode en 4 étapes */
:root{
 --bg:#F7F5F0;--surface:#FFFFFF;--ink:#142D4E;--muted:#4C5B70;--accent:#087F83;--accent-ink:#065F62;--accent-soft:#E1F0EF;
 --cta:#C4553F;--cta-hover:#A94532;--cta-soft:#FBE7E1;--line:#E3DFD6;--dark:#142D4E;--dark-muted:#B7C4D6;--tint:#EAF3F2;
 --r:8px;--rl:14px;--hw:600;
 --f-head:'Source Serif 4', Georgia, serif;--f-body:'Source Sans 3', 'Segoe UI', system-ui, sans-serif;
 --coral:#E77861;color-scheme:light;
}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--f-body);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:var(--accent-ink)}
h1,h2,h3{font-family:var(--f-head);font-weight:var(--hw);color:var(--ink);text-wrap:balance;margin:0;letter-spacing:-.01em}
h1{font-size:clamp(36px,4.6vw,58px);line-height:1.06}
h2{font-size:clamp(28px,3.2vw,40px);line-height:1.12}
h3{font-size:21px;line-height:1.25}
p{margin:0}
.wrap{max-width:1200px;margin:0 auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
.narrow{max-width:820px}
.sel{user-select:text}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:4px}
.ico{width:26px;height:26px}.ico-s{width:18px;height:18px;flex:none}.ico-t{width:24px;height:24px;color:var(--accent);flex:none}.ico-c{width:20px;height:20px;color:var(--accent);flex:none;margin-top:3px}.ico-e{width:18px;height:18px}

/* barre de direction */
.dirbar{background:var(--dark);color:var(--dark-muted);font-size:13px;font-weight:600;letter-spacing:.02em}
.dirbar .wrap{padding-block:6px}

/* en-tête */
.site-header{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:var(--surface);border-bottom:1px solid var(--line)}
.nav-row{display:flex;align-items:center;gap:24px;min-height:78px}
.hdr-tag{flex:1;min-width:0;font-size:14px;color:var(--muted);margin-left:4px;padding-left:20px;border-left:1px solid var(--line);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hdr-cta{margin-left:auto}
.hdr-cta .btn{padding:12px 18px;font-size:15px;white-space:nowrap}
.nav-band{border-top:1px solid var(--line)}
.d3 .nav-band{border-top-color:#1D3456}
.d3 .hdr-tag{color:var(--dark-muted);border-left-color:#2C4466}
.brand{display:block;flex:none}
.brand .logo{object-fit:contain}
.brand .logo{height:40px;width:auto}
#site-nav{display:flex;align-items:center}
.menu{list-style:none;margin:0 0 0 -10px;padding:0;display:flex;flex-wrap:wrap;gap:2px 6px}
.menu>li{position:relative}
.menu .top{display:block;padding:13px 10px;font-size:15px;font-weight:600;color:var(--ink);text-decoration:none;border-radius:6px;white-space:nowrap}
.menu .top{transition:background .15s,color .15s}
.menu .top:hover,.menu>li:focus-within>.top,.menu>li:hover>.top{background:var(--accent-soft);color:var(--accent-ink)}
.menu>li.current>.top{color:var(--accent-ink)}
.menu>li.current>.top{box-shadow:inset 0 -2px 0 var(--accent)}
.sub{list-style:none;margin:0;padding:8px;position:absolute;left:0;top:100%;min-width:260px;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:0 18px 40px -18px rgba(15,30,50,.35);visibility:hidden;opacity:0;transform:translateY(4px);transition:opacity .15s,transform .15s,visibility .15s}
.menu>li:hover .sub,.menu>li:focus-within .sub{visibility:visible;opacity:1;transform:none}
.sub a{display:block;padding:9px 12px;border-radius:8px;color:var(--ink);text-decoration:none;font-size:15px}
.sub a:hover{background:var(--accent-soft);color:var(--accent-ink)}
.menu-toggle{display:none;font:inherit;font-weight:700;color:var(--ink);background:transparent;border:1.5px solid var(--line);border-radius:8px;padding:9px 14px;cursor:pointer}

/* boutons */
.btn{display:inline-flex;align-items:center;gap:10px;font-weight:700;font-size:16px;text-decoration:none;padding:14px 22px;border-radius:var(--r);border:2px solid transparent;transition:background .15s,color .15s,border-color .15s;cursor:pointer;font-family:var(--f-body);line-height:1.2}
.btn-cta{background:var(--cta);color:#fff}.btn-cta:hover{background:var(--cta-hover);color:#fff}
.btn-accent{background:var(--accent);color:#fff}.btn-accent:hover{background:var(--accent-ink);color:#fff}
.btn-ghost{border-color:var(--ink);color:var(--ink);background:transparent}.btn-ghost:hover{background:var(--ink);color:#fff}
.btn-s{padding:10px 16px;font-size:15px}
.link{display:inline-flex;align-items:center;gap:8px;font-weight:700;color:var(--accent-ink);text-decoration:none}
.link:hover{text-decoration:underline;text-underline-offset:4px}
.actions{display:flex;flex-wrap:wrap;gap:12px}
.center-actions{display:flex;justify-content:center;margin-top:36px}

/* typographie de section */
.eyebrow{display:flex;align-items:center;gap:8px;font-family:var(--f-body);font-size:13.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-ink);margin-bottom:12px}
.lead{font-size:19px;color:var(--muted);max-width:62ch}
.kicker{font-weight:700;color:var(--accent-ink)}
.sublabel{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:22px 0 10px}
.shead{display:flex;flex-direction:column;gap:12px;margin-bottom:36px;max-width:820px}
.shead.center{align-items:center;text-align:center;margin-left:auto;margin-right:auto}
.shead.center .lead{text-align:center}
.shead.row{flex-direction:row;justify-content:space-between;align-items:end;flex-wrap:wrap;max-width:none}
.todo{display:inline-block;margin-top:14px;font-size:13.5px;font-weight:700;color:#7A4A10;background:#FFF1D6;border:1px dashed #D9A44A;border-radius:6px;padding:5px 10px}

/* bandeaux */
.band{padding-block:88px}
.band.alt{background:var(--surface)}
.band.tint{background:var(--tint)}
.grid-2,.grid-3,.grid-4{display:grid;gap:20px}
.grid-2{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))}
.grid-3{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}
.grid-4{grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr))}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--rl);padding:28px;display:flex;flex-direction:column;gap:12px;min-width:0}
.band.alt .card{background:var(--bg)}
.ico-badge{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:var(--accent-soft);color:var(--accent-ink);flex:none}
.ico-badge.b-cta{background:var(--cta-soft);color:var(--cta-hover)}

/* hero accueil */
.hero{background:var(--bg);overflow:hidden}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:48px;align-items:center;padding-block:64px}
.hero-text{display:flex;flex-direction:column;gap:22px;min-width:0}
.hero h1 .hl{color:inherit}
.hero-note{font-weight:700;color:var(--ink);display:flex;align-items:center;gap:10px}
.hero-note::before{content:"";width:28px;height:2px;background:var(--coral)}
.hero-media{min-width:0}
.hero-img{width:100%;height:auto;aspect-ratio:562/364;object-fit:cover}

/* enjeux */
.enjeu{display:flex;flex-direction:column;gap:10px;padding:26px;background:var(--surface);border:1px solid var(--line);border-radius:var(--rl);text-decoration:none;color:var(--ink);transition:transform .15s,box-shadow .15s,border-color .15s}
.enjeu:hover{transform:translateY(-3px);border-color:var(--accent);box-shadow:0 18px 36px -24px rgba(15,30,50,.5)}
.enjeu-ico{display:inline-flex;width:48px;height:48px;align-items:center;justify-content:center;border-radius:50%;background:var(--accent-soft);color:var(--accent-ink)}
.enjeu-q{font-family:var(--f-head);font-weight:var(--hw);font-size:20px;line-height:1.25}
.enjeu-a{color:var(--muted);font-size:16px;flex-grow:1}

/* offres */
.offer h3{font-size:24px}
.offer p:not(.kicker){color:var(--muted);flex-grow:1}

/* applications */
.app-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--rl);overflow:hidden;display:flex;flex-direction:column;min-width:0}
.app-shot{display:block;background:var(--tint);border-bottom:1px solid var(--line)}
.app-shot img{width:100%;aspect-ratio:292/147;object-fit:cover}
.app-body{padding:24px;display:flex;flex-direction:column;gap:10px;flex-grow:1}
.app-body h3{display:flex;align-items:center;gap:10px}
.app-body p:not(.kicker){color:var(--muted);flex-grow:1;font-size:16px}

/* méthode */
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:20px;counter-reset:s}
.step{position:relative;display:flex;flex-direction:column;gap:8px;padding:26px;border-radius:var(--rl);background:var(--surface);border:1px solid var(--line)}
.step-ico{display:inline-flex;width:56px;height:56px;align-items:center;justify-content:center;border-radius:50%;background:var(--accent-soft);color:var(--accent-ink)}
.step:nth-child(2) .step-ico{background:var(--cta-soft);color:var(--cta-hover)}
.step-n{position:absolute;top:22px;right:24px;font-family:var(--f-head);font-weight:var(--hw);font-size:34px;color:var(--line);line-height:1}
.step p{color:var(--muted);font-size:16px}
.method-goal{margin-top:28px;font-size:18px;max-width:70ch}

/* split image / texte */
.split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:56px;align-items:center}
.split.flip .split-media{order:-1}
.split-text{display:flex;flex-direction:column;gap:14px;min-width:0}
.split-text>.btn,.split-text>.link{align-self:flex-start;margin-top:10px}
.split-media{min-width:0}
.split-media img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:var(--rl)}
.split-media.shot img{aspect-ratio:auto;object-fit:contain;background:var(--surface);border:1px solid var(--line);box-shadow:0 24px 50px -30px rgba(15,30,50,.5)}
.checks,.dots{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.checks li{display:flex;gap:10px}
.checks.cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:8px 18px}
.dots li{position:relative;padding-left:18px}.dots li::before{content:"";position:absolute;left:0;top:.6em;width:7px;height:7px;border-radius:50%;background:var(--coral)}
.two-lists{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:4px 32px}
.usage{background:var(--accent-soft);border-radius:var(--rl);padding:4px 20px 18px}
.usage .sublabel{color:var(--accent-ink)}
.numlist{margin:0;padding-left:1.3em;display:flex;flex-direction:column;gap:8px}

/* page hero intérieur */
.phero{background:var(--surface);border-bottom:1px solid var(--line)}
.phero-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:40px;padding-block:64px;align-items:center}
.phero.with-media .phero-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}
.phero-text{display:flex;flex-direction:column;gap:16px;min-width:0}
.phero-media img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:var(--rl)}
.subnav{display:flex;gap:8px;flex-wrap:wrap;padding-block:20px}
.subnav a{padding:9px 16px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);text-decoration:none;font-weight:600;font-size:15px}
.subnav a:hover{border-color:var(--accent);color:var(--accent-ink)}

/* tarifs */
.pricing{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:16px;margin-top:40px}
.price{border:1px solid var(--line);border-radius:var(--rl);padding:24px;background:var(--bg);display:flex;flex-direction:column;gap:6px}
.price.featured{background:var(--dark);border-color:var(--dark)}
.price.featured h3,.price.featured .pval{color:#fff}.price.featured .pmeta{color:var(--dark-muted)}
.pval{font-family:var(--f-head);font-weight:var(--hw);font-size:32px}.pval small{font-size:15px;font-weight:500;color:var(--muted)}
.price.featured .pval small{color:var(--dark-muted)}
.pmeta{font-size:15px;color:var(--muted)}
.mini-app{display:flex;gap:14px;align-items:flex-start;padding:22px;background:var(--surface);border:1px solid var(--line);border-radius:var(--rl);text-decoration:none;color:var(--muted)}
.mini-app strong{color:var(--ink);font-size:18px}
.mini-app:hover{border-color:var(--accent)}

/* formations */
.tag{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent-ink)}
.formation h3{flex-grow:1}
.fmeta{display:flex;gap:16px;color:var(--muted);font-weight:600;font-size:15px}
.factions{display:flex;align-items:center;gap:16px}

/* références */
.clients{list-style:none;margin:0 0 36px;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:12px}
.clients li{display:flex;align-items:center;justify-content:center;text-align:center;min-height:76px;padding:12px;border:1px solid var(--line);border-radius:var(--rl);background:var(--surface);font-weight:700;color:var(--muted)}
.band.alt .clients li{background:var(--bg)}
.cas dl{margin:0;display:grid;gap:4px}
.cas dt{font-size:12.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:10px}
.cas dd{margin:0;font-weight:600}
.cas-n{font-family:var(--f-head);font-weight:var(--hw);font-size:22px;color:var(--accent-ink)}
.temoignage blockquote{margin:0;font-size:19px;font-style:italic;color:var(--muted)}
.temoignage figcaption{font-weight:700;color:var(--ink)}
.temoignage .tem-cat{margin:0;font-size:12.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-ink)}
.temoignage blockquote{font-size:17.5px;line-height:1.6}

/* cabinet */
.portrait-ph{aspect-ratio:4/3;border-radius:var(--rl);background:linear-gradient(160deg,var(--accent-soft),var(--tint));display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--accent-ink)}
.portrait-ph span{font-family:var(--f-head);font-weight:var(--hw);font-size:72px}
.portrait-ph p{font-weight:600}
.avatar{display:inline-flex;width:64px;height:64px;border-radius:50%;align-items:center;justify-content:center;background:var(--dark);color:#fff;font-weight:800;font-size:20px}
.expert.join{background:var(--cta-soft)!important;border-color:transparent}

/* ressources */
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}
.chip{font:inherit;font-size:15px;font-weight:600;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:9px 16px;cursor:pointer}
.chip[aria-pressed="true"]{background:var(--ink);color:#fff;border-color:var(--ink)}
.art-card{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--rl);overflow:hidden;text-decoration:none;color:var(--ink);transition:transform .15s,box-shadow .15s}
.art-card:hover{transform:translateY(-3px);box-shadow:0 18px 36px -24px rgba(15,30,50,.5)}
.art-card.big{grid-column:1/-1}
.art-band{display:flex;justify-content:space-between;gap:12px;padding:18px 22px;min-height:96px;align-items:flex-start;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.art-card.big .art-band{min-height:150px}
.tone-navy .art-band,.art-hero.tone-navy{background:var(--dark);color:#fff}
.tone-teal .art-band,.art-hero.tone-teal{background:var(--accent);color:#fff}
.tone-coral .art-band,.art-hero.tone-coral{background:var(--coral);color:#1E2A3A}
.art-body{display:flex;flex-direction:column;gap:10px;padding:22px;flex-grow:1}
.art-title{font-family:var(--f-head);font-weight:var(--hw);font-size:22px;line-height:1.22}
.art-card.big .art-title{font-size:30px}
.art-ex{color:var(--muted);font-size:16px;flex-grow:1}
.art-hero{padding-block:56px}
.art-hero h1{color:inherit;font-size:clamp(32px,4.2vw,50px)}
.crumb{font-size:14px;font-weight:700;margin-bottom:16px}.crumb a{color:inherit}
.art-meta{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:18px;font-weight:600;font-size:15px;opacity:.9}
.art-content{padding-block:56px}
.prose{font-size:18px;line-height:1.75;max-width:68ch;color:var(--ink)}
.prose>*+*{margin-top:1em}
.prose h2{margin-top:1.9em;font-size:28px}.prose h3{margin-top:1.5em;font-size:20px}
.prose h2+*,.prose h3+*{margin-top:.6em}
.prose ul,.prose ol{padding-left:1.3em;display:flex;flex-direction:column;gap:.45em;margin-bottom:0}
.prose li::marker{color:var(--accent);font-weight:700}
.prose blockquote{margin-left:0;margin-right:0;padding:18px 22px;background:var(--accent-soft);border-radius:var(--rl);font-style:italic;font-size:20px;color:var(--accent-ink)}
.help{margin-top:44px;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between}
.help p{color:var(--muted)}

/* contact */
.contact-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:28px;align-items:start}
.form fieldset{border:0;margin:0;padding:0}
.form legend{font-weight:700;margin-bottom:10px}
.opts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:1fr;gap:10px}
@media (max-width:640px){.opts{grid-template-columns:repeat(2,minmax(0,1fr))}}
.opt{position:relative}
.opt input{position:absolute;opacity:0;inset:0}
.opt span{display:flex;align-items:center;justify-content:center;text-align:center;height:100%;min-height:56px;box-sizing:border-box;padding:8px 14px;line-height:1.25;border:1.5px solid var(--line);border-radius:14px;font-weight:600;cursor:pointer;background:var(--surface)}
.opt input:checked+span{background:var(--ink);border-color:var(--ink);color:#fff}
.opt input:focus-visible+span{outline:3px solid var(--accent);outline-offset:2px}
.fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:16px;margin-top:8px}
.fields label{display:flex;flex-direction:column;gap:6px;font-weight:600;font-size:15px}
.fields .full{grid-column:1/-1}
.fields input,.fields textarea{font:inherit;font-weight:400;padding:12px 14px;border:1.5px solid var(--line);border-radius:10px;background:var(--bg);color:var(--ink)}
.fields input:focus,.fields textarea:focus{border-color:var(--accent);outline:none}
.form .btn{align-self:flex-start}
.form-error{color:#A12C1C;font-weight:600}
.form-ok{color:var(--accent-ink);font-weight:600}
.contact-side{display:flex;flex-direction:column;gap:20px}
.side p{display:flex;gap:10px;align-items:flex-start}
.side-media img{border-radius:var(--rl);width:100%;aspect-ratio:355/207;object-fit:cover}

/* bandeau contact */
.cta-band{background:var(--dark);color:#fff;overflow:hidden}
.cta-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:40px;align-items:center;padding-block:64px}
.cta-text{display:flex;flex-direction:column;gap:18px;align-items:flex-start}
.cta-text h2{color:#fff}
.cta-text p{color:var(--dark-muted);max-width:56ch}
.cta-media img{width:100%;aspect-ratio:562/300;object-fit:cover;border-radius:var(--rl)}

/* pied de page */
.site-footer{background:var(--surface);color:var(--muted);font-size:15px;border-top:1px solid var(--line)}
.fgrid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr);gap:40px;padding-block:48px;align-items:start}
.fbrand{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.fbrand .logo{height:44px;width:auto;max-width:100%;object-fit:contain}
.fbrand p{max-width:40ch}
.fcontact p+p{margin-top:8px}
.flinks{display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.flinks a{font-weight:600}
.fh{font-weight:700;color:var(--ink);margin-bottom:10px}
.site-footer a{color:var(--accent-ink);text-decoration:none}.site-footer a:hover{text-decoration:underline;text-underline-offset:3px}
.fbottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding-block:20px;border-top:1px solid var(--line);font-size:14px}
.fbottom a{color:var(--muted)}

/* ===== Direction 1 : expertise & clarté ===== */
.d1 h1,.d1 h2{letter-spacing:-.015em}
.d1 .hero{background:linear-gradient(90deg,var(--bg) 0 46%,transparent 46%)}
.d1 .hero-grid{padding-block:0;gap:0;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.d1 .hero-text{padding-block:72px;padding-right:40px}
.d1 .hero-media{align-self:stretch;margin-right:calc(-1 * max(20px, (100vw - 1200px)/2 + 20px))}
.d1 .hero-img{height:100%;aspect-ratio:auto;min-height:440px}
.d1 .shead h2::before{content:"";display:block;width:44px;height:3px;background:var(--coral);margin-bottom:16px}
.d1 .shead.center h2::before{margin-left:auto;margin-right:auto}
.d1 .card,.d1 .enjeu,.d1 .app-card,.d1 .step{box-shadow:0 1px 2px rgba(20,45,78,.05)}

/* ===== Direction 2 : proximité & accompagnement ===== */
.d2{--coral:#E77861}
.d2 .hero-grid{padding-block:0;gap:0}
.d2 .hero-text{padding-block:72px;padding-right:48px}
.d2 .hero-text h1 .hl{color:var(--accent)}
.d2 .hero-media{align-self:stretch;margin-right:calc(-1 * max(20px, (100vw - 1200px)/2 + 20px))}
.d2 .hero-img{height:100%;aspect-ratio:auto;min-height:440px;border-radius:220px 0 0 0}
.d2 .card,.d2 .enjeu,.d2 .app-card,.d2 .step,.d2 .art-card{box-shadow:0 10px 30px -18px rgba(22,48,79,.25);border-color:transparent}
.d2 .band.tint{border-radius:48px 48px 0 0}
.d2 .split-media img,.d2 .phero-media img{border-radius:24px 120px 24px 24px}
.d2 .cta-band{border-radius:56px 56px 0 0}
.d2 .cta-media img{border-radius:120px 24px 24px 24px}
.d2 .step-ico,.d2 .ico-badge,.d2 .enjeu-ico{border-radius:20px}

/* ===== Direction 3 : pilotage & solutions métiers ===== */
.d3 .site-header{background:var(--dark);border-bottom-color:#1D3456}
.d3 .menu .top{color:#E6ECF5}
.d3 .menu .top:hover,.d3 .menu>li:hover>.top,.d3 .menu>li:focus-within>.top{background:rgba(60,196,190,.18);color:#9FE6E2}
.d3 .menu>li.current>.top{color:#7FD9D4}
.d3 .menu>li.current>.top{box-shadow:inset 0 -2px 0 #3CC4BE}
.d3 .menu-toggle{color:#fff;border-color:#2C4466}
.d3 .dirbar{background:#081628}
.d3 .hero{background:var(--dark);background-image:radial-gradient(circle at 85% 20%,rgba(60,196,190,.16),transparent 45%),radial-gradient(circle at 10% 90%,rgba(231,120,97,.12),transparent 40%)}
.d3 .hero h1,.d3 .hero .hero-note{color:#fff}
.d3 .hero h1 .hl{color:#7FD9D4}
.d3 .hero .lead{color:var(--dark-muted)}
.d3 .hero .eyebrow{color:#7FD9D4}
.d3 .hero .btn-ghost{border-color:#fff;color:#fff}.d3 .hero .btn-ghost:hover{background:#fff;color:var(--dark)}
.d3 .hero-img{border-radius:12px;box-shadow:0 30px 60px -30px rgba(0,0,0,.6)}
.d3 .phero{background:var(--dark);border-bottom:0}
.d3 .phero h1{color:#fff}.d3 .phero .lead{color:var(--dark-muted)}.d3 .phero .eyebrow{color:#7FD9D4}
.d3 .shead h2::before{content:"";display:block;width:36px;height:4px;border-radius:2px;background:var(--coral);margin-bottom:14px}
.d3 .shead.center h2::before{margin-left:auto;margin-right:auto}
.d3 .step-n{color:#D3DAE5}

/* images réelles */
.portrait-media{display:flex;justify-content:center;align-items:center}
.portrait-media img{aspect-ratio:4/5;object-fit:cover;object-position:50% 20%;width:100%;max-width:340px;height:auto;margin:0 auto}
.clients li img{max-height:58px;max-width:78%;width:auto;max-width:100%;object-fit:contain;mix-blend-mode:multiply}
.clients li{background:#fff!important}
.f-img{width:calc(100% + 56px);margin:-28px -28px 6px;aspect-ratio:16/8;object-fit:cover;border-radius:var(--rl) var(--rl) 0 0;max-width:none}
.avatar-img{width:84px;height:84px;border-radius:50%;object-fit:cover}
.art-img{position:relative;display:block}
.art-img img{width:100%;aspect-ratio:16/9;object-fit:cover}
.art-card.big .art-img img{aspect-ratio:21/8}
.art-tag{position:absolute;left:16px;top:16px;background:rgba(255,255,255,.94);color:var(--ink);font-size:12.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:5px 10px;border-radius:6px}
.art-card .art-band{min-height:0!important;padding:14px 22px 0;background:transparent!important;color:var(--muted)!important;font-size:13px}
.art-cover{margin-top:-28px;position:relative}
.art-cover img{width:100%;aspect-ratio:21/9;object-fit:cover;border-radius:var(--rl);box-shadow:0 24px 48px -30px rgba(15,30,50,.6)}
.art-hero{padding-bottom:84px}

/* responsive */
@media (max-width:1100px){
 .hdr-tag{display:none}
 .hdr-cta{margin-left:auto}
 .menu .top{padding:13px 7px;font-size:14.5px}
}
@media (max-width:980px){
 .menu-toggle{display:inline-block}
 .nav-band{display:none}
 .nav-band.open{display:block}
 #site-nav{padding-bottom:16px}
 .menu{flex-direction:column;margin:0}
 .sub{position:static;visibility:visible;opacity:1;transform:none;box-shadow:none;border:0;padding:0 0 6px 12px;min-width:0;background:transparent}
 .sub a{padding:6px 12px;font-size:14.5px}
 .d3 .sub a{color:#C9D3E1}
}
@media (max-width:960px){
 .hero-grid,.split,.phero.with-media .phero-grid,.contact-grid,.cta-grid{grid-template-columns:minmax(0,1fr)}
 .split.flip .split-media{order:0}
 .d1 .hero,.d2 .hero{background:var(--bg)}
 .d1 .hero-text,.d2 .hero-text{padding:48px 0 32px}
 .d1 .hero-media,.d2 .hero-media{margin-right:0}
 .d1 .hero-img,.d2 .hero-img{min-height:0;aspect-ratio:562/364;border-radius:var(--rl)}
 .d2 .hero-img{border-radius:120px 24px 24px 24px}
 .fgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .fbrand{grid-column:1/-1}
 .band{padding-block:64px}
}
@media (max-width:520px){
 body{font-size:16px}
 .hdr-cta{display:none}
 .menu-toggle{margin-left:auto}
 .fgrid{grid-template-columns:minmax(0,1fr)}
 .brand .logo{height:34px}
 .lead{font-size:17px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.phero h1{font-size:clamp(28px,3.2vw,40px);line-height:1.12}

.subnav{align-items:center}
.subnav-label{font-weight:700;color:var(--muted);font-size:14px;margin-right:4px}
.narrow-block{max-width:860px;display:flex;flex-direction:column;gap:18px}
.split-text>p strong,.phero-text p strong{color:var(--ink)}
.cta-text p strong{color:#fff}
.d3 .phero-text p{color:var(--dark-muted)}.d3 .phero-text p strong{color:#fff}
@media (min-width:981px){section[id^="conseil-"] .split{align-items:start}section[id^="conseil-"] .split-media{position:sticky;top:150px}}

/* ===== Page Conseil — d'après la maquette ===== */
.cx-hero{position:relative;background:var(--surface);overflow:hidden;border-bottom:1px solid var(--line)}
.cx-hero-media{position:absolute;inset:0 0 0 auto;width:52%}
.cx-hero-media img{width:100%;height:100%;object-fit:cover;object-position:28% 30%}
.cx-hero-media::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--surface) 0%,color-mix(in srgb,var(--surface) 60%,transparent) 14%,transparent 34%);z-index:1}
.cx-hero-in{position:relative;z-index:2}
.cx-hero-text{max-width:min(560px,50%);padding-block:72px;display:flex;flex-direction:column;gap:16px}
.cx-hero-text h1{font-size:clamp(28px,3.2vw,40px);line-height:1.15}
.cx-kicker{display:flex;align-items:center;gap:12px;margin:0;font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-ink)}
.cx-kicker::before{content:"";width:28px;height:2px;background:var(--cta,#E77861);background:var(--cta)}
.cx-strip{background:var(--bg);border-bottom:1px solid var(--line)}
.cx-strip-in{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}
.cx-strip a{display:flex;flex-direction:column;align-items:center;gap:10px;padding:26px 12px;text-align:center;text-decoration:none;color:var(--ink);font-weight:600;font-size:15px;line-height:1.3;border-left:1px solid var(--line);transition:background .15s,color .15s}
.cx-strip a:first-child{border-left:0}
.cx-strip a:hover{background:var(--accent-soft);color:var(--accent-ink)}
.cx-strip-ico{width:30px;height:30px;color:var(--accent-ink)}
.cx-sec{padding-block:80px;background:var(--bg)}
.cx-sec.alt{background:var(--surface)}
.cx-sec .split{align-items:start}
.cx-num{display:flex;align-items:center;gap:14px;margin:0;font-size:13px;font-weight:700;color:var(--accent-ink);letter-spacing:.06em}
.cx-num::after{content:"";width:52px;height:2px;background:var(--cta)}
.cx-title{display:flex;align-items:center;gap:14px;font-size:clamp(28px,3.2vw,40px);line-height:1.12}
.cx-title-ico{width:40px;height:40px;flex:none;color:var(--accent-ink);stroke-width:1.6}
.cx-sub{margin:0;font-size:19px;font-weight:700;color:var(--accent-ink);line-height:1.4}
.cx-callout{background:var(--accent-soft);border-left:4px solid var(--accent);border-radius:0 12px 12px 0;padding:14px 20px 10px;margin-top:6px}
.cx-callout-h{display:flex;align-items:center;gap:8px;margin:0 0 4px;font-weight:700;color:var(--accent-ink)}
.cx-callout .dots{margin:0}
.cx-link{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;margin-top:8px;font-weight:700;color:var(--cta-ink,var(--cta));text-decoration:none}
.cx-link:hover{text-decoration:underline;text-underline-offset:4px}
.cx-sec .split-media img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--rl);box-shadow:0 18px 40px -24px rgba(15,30,50,.35)}
@media (min-width:981px){.cx-sec .split-media{position:sticky;top:150px}}
.cx-final{background:var(--surface);overflow:hidden;border-top:1px solid var(--line)}
.cx-final-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center}
.cx-final-text{display:flex;flex-direction:column;gap:18px;align-items:flex-start;padding-block:72px}
.cx-final-media{align-self:stretch;margin-right:calc(-1 * max(20px,(100vw - 1200px)/2 + 20px))}
.cx-final-media img{width:100%;height:100%;min-height:320px;object-fit:cover;border-radius:220px 0 0 0}
.d3 .cx-hero{background:var(--dark)}
.d3 .cx-hero-media::before{background:linear-gradient(90deg,var(--dark) 0%,color-mix(in srgb,var(--dark) 60%,transparent) 14%,transparent 34%)}
.d3 .cx-hero-text h1{color:#fff}.d3 .cx-hero-text p{color:var(--dark-muted)}.d3 .cx-hero-text strong{color:#fff}.d3 .cx-kicker{color:#7FD9D4}
@media (max-width:980px){
 .cx-hero-media{position:relative;width:100%;height:260px}
 .cx-hero-media::before{background:linear-gradient(0deg,var(--surface) 0%,transparent 40%)}
 .d3 .cx-hero-media::before{background:linear-gradient(0deg,var(--dark) 0%,transparent 40%)}
 .cx-hero-text{max-width:none;padding-block:28px 48px}
 .cx-strip-in{grid-template-columns:repeat(2,minmax(0,1fr))}
 .cx-strip a{border-left:0;border-top:1px solid var(--line);flex-direction:row;justify-content:flex-start;text-align:left;padding:14px 8px}
 .cx-sec{padding-block:56px}
 .cx-final-in{grid-template-columns:minmax(0,1fr)}
 .cx-final-media{margin-right:0}.cx-final-media img{border-radius:120px 0 0 0;min-height:220px}
 .cx-final-text{padding-block:56px 0}
}

/* ajustements maquette */
.cx-hero-text{padding-block:80px 88px;max-width:min(600px,48%)}
.cx-hero-text h1{font-size:clamp(30px,3.4vw,44px);line-height:1.12}
.cx-hero-text .lead{max-width:44ch}
.cx-sec{padding-block:48px}
.cx-sec .split{align-items:center}
@media (min-width:981px){.cx-sec .split-media{position:static}}
.cx-callout{display:flex;align-items:center;gap:14px;padding:16px 20px;font-weight:600;color:var(--ink);border-radius:0 8px 8px 0}
.cx-spark{width:22px;height:22px;flex:none;color:var(--accent-ink)}
.cx-num::after{width:60px;height:1.5px}
.cx-final-media img{border-radius:0;border-top-left-radius:240px 100%}
@media (max-width:980px){.cx-hero-text{max-width:none;padding-block:16px 48px}.cx-final-media img{border-top-left-radius:140px 100%}}

.inline-link{color:var(--accent-ink);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.qualiopi-wrap{display:flex;justify-content:center}
.qualiopi-logo{width:100%;max-width:420px;aspect-ratio:auto!important;object-fit:contain!important;background:#fff;border-radius:var(--rl);padding:28px}
.qualiopi-card{width:100%;max-width:420px;background:#fff;border:1px solid var(--line);border-radius:var(--rl);padding:36px 34px;display:flex;flex-direction:column;gap:12px;box-shadow:0 18px 40px -26px rgba(15,30,50,.35)}
.q-kicker{margin:0;font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.q-name{margin:0;font-family:var(--f-head);font-weight:800;font-size:46px;line-height:1;color:#1D2B6B}
.q-cat{margin:0;font-size:17px;color:var(--ink)}
.q-note{margin:0;font-size:13.5px;color:var(--muted);border-top:1px solid var(--line);padding-top:12px}
.d3 .phero .inline-link{color:#7FD9D4}
.qualiopi-card .qualiopi-logo{width:100%;max-width:none;padding:0;border-radius:0;background:none;aspect-ratio:auto;object-fit:contain}
.phero-media .qualiopi-card img{aspect-ratio:auto!important;border-radius:0!important}
.cx-hero-media img{object-position:72% 30%}
@media (max-width:980px){.cx-hero-media img{object-position:70% 15%}}
@media (min-width:761px) and (max-width:960px){
 .cx-sec .split{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px}
 .cx-sec .split.flip .split-media{order:-1}
}

.sm-wrap{display:flex;flex-direction:column;gap:28px}
.sm-wrap .shead{max-width:820px}
.sm-step{margin:0;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent-ink)}
.sm-axe h3{margin-top:2px}
.sm-sub{margin:12px 0 -8px}
.sm-usage{display:flex;gap:14px;align-items:flex-start;padding:20px 22px;background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:0 var(--rl) var(--rl) 0}
.band.alt .sm-usage{background:var(--bg)}
.sm-usage h3{font-size:17px;line-height:1.3;margin:0 0 6px}
.sm-usage p{margin:0;font-size:15px;color:var(--muted)}
.sm-uico{width:26px;height:26px;flex:none;color:var(--accent-ink);margin-top:2px}
.sm-wrap .actions{display:flex;flex-wrap:wrap;gap:12px}
.over-4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:1100px){.over-4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.over-4{grid-template-columns:minmax(0,1fr)}}
.mini-app span{min-width:0;overflow-wrap:anywhere}.over-4 .mini-app strong{overflow-wrap:anywhere}
.clients-full{grid-template-columns:repeat(6,minmax(0,1fr))}
.clients-full li{min-height:96px}
.clients-full li img{max-height:64px;max-width:90%}
@media (max-width:1100px){.clients-full{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:600px){.clients-full{grid-template-columns:repeat(2,minmax(0,1fr))}}
.pdfv{position:fixed;inset:0;z-index:1000;background:rgba(10,20,35,.72);display:flex;flex-direction:column;padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px)}
.pdfv-bar{display:flex;align-items:center;gap:16px;justify-content:space-between;padding:12px max(16px,4vw);background:var(--surface);border-bottom:1px solid var(--line)}
.pdfv-title{font-weight:700;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.pdfv-close{flex:none;border:1px solid var(--line);background:var(--bg);color:var(--ink);font:inherit;font-weight:700;padding:8px 14px;border-radius:8px;cursor:pointer}
.pdfv-close:hover{border-color:var(--accent);color:var(--accent-ink)}
.pdfv-body{flex:1;overflow:auto;display:flex;flex-direction:column;align-items:center;gap:16px;padding:24px 16px}
.pdfv-page{background:#fff;box-shadow:0 10px 30px -12px rgba(0,0,0,.5);max-width:100%;height:auto!important}
.pdfv-msg{color:#fff;margin:40px 0}
.form-ok p{margin:0 0 8px}.form-ok .btn{margin-top:4px}

.hero-img.home-hero{object-position:42% 50%}
.hero-media:has(.home-hero){margin-right:0;align-self:center;display:flex;justify-content:center}
.hero .hero-img.home-hero{height:auto;min-height:0;width:100%;max-width:500px;aspect-ratio:3/2;object-position:50% 50%;border-radius:var(--rl);box-shadow:0 24px 48px -28px rgba(0,0,0,.45)}
.hero .hero-text h1{font-size:clamp(30px,3.4vw,44px);line-height:1.12}

.req{color:#C0392B;font-weight:700}
.form-req{font-size:.88rem;color:var(--muted,#5b6472);margin:0}
.form [aria-invalid=true]{border-color:#C0392B!important;box-shadow:0 0 0 3px rgba(192,57,43,.15)}
.form button[disabled]{opacity:.7;cursor:wait}
.mdl{position:fixed;inset:0;z-index:1000;background:rgba(10,20,35,.55);display:flex;align-items:center;justify-content:center;padding:16px;animation:mdlf .2s ease}
.mdl-box{background:#fff;color:#1b2533;max-width:460px;width:100%;border-radius:var(--rl,14px);padding:34px 28px 28px;text-align:center;box-shadow:0 30px 70px -20px rgba(0,0,0,.45)}
.mdl-ico{width:62px;height:62px;border-radius:50%;margin:0 auto 16px;display:flex;align-items:center;justify-content:center;font-size:30px;font-weight:800}
.mdl-ico.ok{background:#E3F4EE;color:#1E7A5A}.mdl-ico.ko{background:#FBE7E4;color:#C0392B}
.mdl-box h2{font-size:1.45rem;margin:0 0 10px;color:#14284B}
.mdl-txt{margin:0 0 8px;color:#4a5563;line-height:1.55}
.mdl-note{font-size:.82rem;color:#7a8391;background:#F4F5F7;border-radius:8px;padding:8px 10px;margin:10px 0 0}
.mdl-act{margin-top:22px;display:flex;justify-content:center}
@keyframes mdlf{from{opacity:0}to{opacity:1}}

.app-links{display:flex;flex-wrap:wrap;gap:8px 20px;align-items:center}
.link.ext{font-weight:600;opacity:.85}
.ext-link .ico-s{width:15px;height:15px}
.mini-title{color:inherit;text-decoration:none}.mini-title:hover strong{color:var(--accent-ink)}
.mini-ext{margin-top:8px;font-size:15px}
.d3 .phero .inline-link{color:#7FD9D4}
.sm-real .sublabel{margin:4px 0 12px}.sm-real-links{display:flex;flex-wrap:wrap;gap:10px}

/* ===== Responsive smartphone ===== */
figure.temoignage{margin:0}
@media (max-width:960px){
 .d1 .hero-grid,.d2 .hero-grid,.d3 .hero-grid{grid-template-columns:minmax(0,1fr);gap:0}
 .d3 .hero-grid{gap:28px}
 .hero-media:has(.home-hero){padding-bottom:40px}
 .hero .hero-img.home-hero{max-width:100%}
}
@media (max-width:600px){
 .clients{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .clients li{min-height:72px;padding:10px}
 .clients li img{max-height:46px}
 .hero-text .actions,.cta-text .actions{flex-direction:column;align-items:stretch}
 .hero-text .actions .btn{justify-content:center}
 .mdl-box{padding:28px 20px 22px}
 .pdfv-bar{padding:10px 14px}
}
