/* Vitrine publique — clair, ivoire et verts profonds, motion design maîtrisé.
   Les animations n'utilisent que transform / opacity / stroke-dashoffset (composition GPU) ;
   « prefers-reduced-motion » les remplace par un affichage direct. */
.ac{--marge:clamp(18px,5vw,72px);--max:1240px;background:var(--fond)}
.ac em{font-style:italic;color:var(--vert-700)}
.ac-section{padding:clamp(80px,12vw,160px) var(--marge);max-width:calc(var(--max) + 2 * var(--marge));margin:0 auto;position:relative}
.ac-entete{max-width:780px;margin-bottom:clamp(36px,6vw,72px)}
.ac-h2{font-size:clamp(38px,5.4vw,68px);line-height:1.04;letter-spacing:-.02em;margin:10px 0 0}
.ac-intro{font-size:clamp(16px,1.4vw,18px);color:var(--encre-2);margin:22px 0 0;max-width:640px}
.ac-illus{font-size:12px;color:var(--mu);margin:8px 0 0;letter-spacing:.02em}
.ac-centre{text-align:center}
.btn-l{min-height:52px;padding:14px 26px;font-size:14px}
.ac-duree{padding:2px 8px;border-radius:99px;background:var(--vert-100);color:var(--vert-800);font-size:11.5px}

/* ---------- Navigation ---------- */
.ac-nav{position:fixed;inset:0 0 auto;z-index:50;display:flex;align-items:center;gap:20px;padding:14px var(--marge);transition:background .3s,box-shadow .3s,padding .3s}
.ac-nav.colle{background:rgba(248,245,238,.86);backdrop-filter:saturate(1.5) blur(16px);-webkit-backdrop-filter:saturate(1.5) blur(16px);box-shadow:0 1px 0 var(--bd);padding-block:10px}
.ac-liens{display:flex;gap:4px;margin:0 auto}
.ac-liens a{padding:9px 14px;border-radius:99px;text-decoration:none;color:var(--encre-2);font:500 14px var(--sans);transition:background .2s,color .2s}
.ac-liens a:hover{background:rgba(11,90,62,.07);color:var(--vert-900)}
.ac-liens a.actif{color:var(--vert-900);background:var(--vert-100)}
.ac-connexion{margin-left:auto}
.ac-liens+.ac-burger+.ac-connexion{margin-left:0}
.ac-burger{display:none;width:44px;height:44px;border-radius:50%;border:1px solid var(--bd);background:var(--papier);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:5px}
.ac-burger span{display:block;width:16px;height:2px;background:var(--encre);border-radius:2px;transition:transform .25s}
.ac-burger[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}
.ac-burger[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}

/* ---------- Hero ---------- */
.ac-hero{position:relative;padding:clamp(120px,16vw,170px) var(--marge) 40px;overflow:hidden;background:radial-gradient(80% 60% at 70% 0%,#eef5ef 0%,rgba(238,245,239,0) 60%),radial-gradient(50% 40% at 0% 30%,#f5ecd8 0%,rgba(245,236,216,0) 70%),var(--fond)}
.ac-grille-iso{position:absolute;inset:0;opacity:.55;pointer-events:none;
  background-image:linear-gradient(30deg,rgba(11,90,62,.06) 1px,transparent 1px),linear-gradient(150deg,rgba(11,90,62,.06) 1px,transparent 1px);
  background-size:44px 25.4px;mask-image:radial-gradient(70% 60% at 50% 40%,#000 0%,transparent 75%);-webkit-mask-image:radial-gradient(70% 60% at 50% 40%,#000 0%,transparent 75%)}
.ac-hero-texte{position:relative;max-width:980px;margin:0 auto;text-align:center}
.ac-titre{font-size:clamp(46px,8vw,104px);line-height:.98;letter-spacing:-.03em;margin:14px 0 22px;font-weight:500}
.ac-titre span{display:inline-block}
.ac-titre em{display:block;color:var(--vert-700)}
.ac-lead{font-size:clamp(16px,1.6vw,19px);color:var(--encre-2);max-width:700px;margin:0 auto 32px}
.ac-cta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.ac-apparait{opacity:0;transform:translateY(18px);animation:apparait .9s cubic-bezier(.2,.8,.2,1) forwards}
.ac-apparait:nth-child(2){animation-delay:.08s}.ac-apparait:nth-child(3){animation-delay:.18s}.ac-apparait:nth-child(4){animation-delay:.28s}
@keyframes apparait{to{opacity:1;transform:none}}

/* Vidéo en perspective qui se redresse au défilement (--p de 0 à 1, piloté par accueil.js) */
.ac-video-scene{--p:0;position:relative;max-width:1120px;margin:clamp(48px,7vw,84px) auto 0;perspective:1600px}
.ac-video{margin:0;transform:rotateX(calc((1 - var(--p)) * 14deg)) scale(calc(.9 + var(--p) * .1));transform-origin:50% 0;transition:transform .1s linear;opacity:0;animation:apparait 1.1s .35s cubic-bezier(.2,.8,.2,1) forwards}
.ac-video-cadre{position:relative;border-radius:22px;overflow:hidden;background:#e9e2d1;box-shadow:0 2px 4px rgba(10,42,31,.06),0 40px 80px -30px rgba(10,42,31,.45),0 0 0 1px rgba(10,42,31,.06);aspect-ratio:16/9}
.ac-video video{width:100%;height:100%;object-fit:cover;display:block;background:#efe8d8}
.ac-video video::cue{background:rgba(6,32,26,.78);color:#fffdf8;font-family:Montserrat,system-ui,sans-serif;font-size:clamp(13px,1.6vw,20px);line-height:1.35}
.ac-grand-lecture{position:absolute;left:50%;top:50%;width:84px;height:84px;margin:-42px 0 0 -42px;border-radius:50%;border:0;background:rgba(255,253,248,.94);color:var(--vert-700);cursor:pointer;display:grid;place-items:center;box-shadow:0 18px 40px -16px rgba(10,42,31,.6);transition:transform .25s,opacity .25s}
.ac-grand-lecture svg{width:34px;height:34px;margin-left:4px}
.ac-grand-lecture:hover{transform:scale(1.06)}
.ac-video.lecture .ac-grand-lecture{opacity:0;pointer-events:none;transform:scale(.8)}
.ac-son{position:absolute;right:16px;top:16px;display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:99px;border:0;background:rgba(6,32,26,.78);color:#fffdf8;font:600 13px var(--sans);cursor:pointer;backdrop-filter:blur(6px)}
.ac-son svg{width:18px;height:18px}
.ac-son:hover{background:var(--vert-800)}
.ac-commandes{position:absolute;inset:auto 0 0;display:flex;align-items:center;gap:6px;padding:28px 12px 10px;background:linear-gradient(to top,rgba(6,32,26,.72),transparent);color:#fffdf8;opacity:0;transform:translateY(6px);transition:opacity .25s,transform .25s}
.ac-video:hover .ac-commandes,.ac-video:focus-within .ac-commandes,.ac-video.pause-vue .ac-commandes{opacity:1;transform:none}
.ac-commandes button{width:40px;height:40px;border-radius:10px;border:0;background:transparent;color:inherit;cursor:pointer;display:grid;place-items:center}
.ac-commandes button:hover{background:rgba(255,255,255,.14)}
.ac-commandes svg{width:20px;height:20px;fill:currentColor}
.ac-commandes [data-cmd=st][aria-pressed=false]{opacity:.55}
.ac-video:not(.lecture) .i-pause,.ac-video.lecture .i-lire{display:none}
.ac-video.muet .i-son,.ac-video:not(.muet) .i-muet{display:none}
.ac-temps{font:500 12px var(--sans);font-variant-numeric:tabular-nums;white-space:nowrap;padding:0 4px}
#ac-prog{flex:1;min-height:0;height:4px;padding:0;border:0;background:rgba(255,255,255,.3);accent-color:#c9a96a;border-radius:4px;cursor:pointer}
.ac-video-erreur{position:absolute;inset:auto 16px 16px;padding:12px 14px;border-radius:12px;background:rgba(255,253,248,.95);color:var(--encre);font-size:14px}
.ac-video-erreur p{margin:0}
.ac-video figcaption{font-size:13px;color:var(--mu);margin-top:14px;text-align:center}
.ac-transcription{max-width:720px;margin:10px auto 0;text-align:left}
.ac-transcription summary{cursor:pointer;color:var(--vert-700);font-weight:600;text-align:center;list-style:none}
.ac-transcription summary::-webkit-details-marker{display:none}
.ac-transcription summary::after{content:" ↓"}
.ac-transcription[open] summary::after{content:" ↑"}
.ac-transcription p{color:var(--encre-2);font-size:15px}
.ac-flottant{position:absolute;z-index:2;display:flex;flex-direction:column;gap:1px;padding:12px 16px;border-radius:14px;background:rgba(255,253,248,.92);border:1px solid var(--bd);box-shadow:0 20px 40px -24px rgba(10,42,31,.45);backdrop-filter:blur(8px);transform:translate3d(0,calc(var(--dy,0) * 1px),0);opacity:0;animation:apparait .8s forwards}
.ac-flottant b{font:600 22px/1.1 var(--serif);color:var(--encre)}
.ac-f-l{font:600 10px var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--or-txt)}
.ac-flottant small{font-size:11.5px;color:var(--mu)}
.ac-f1{left:-34px;top:16%;animation-delay:.9s}.ac-f1 b{color:var(--crit)}
.ac-f2{right:-30px;top:8%;animation-delay:1.1s}.ac-f2 b{color:var(--vert-700)}
.ac-f3{right:6%;bottom:-26px;animation-delay:1.3s}
.ac-preuves{list-style:none;margin:clamp(56px,8vw,96px) auto 0;padding:0;max-width:1120px;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--bd)}
.ac-preuves li{padding:22px 18px 0;display:flex;flex-direction:column;gap:6px;border-left:1px solid var(--bd)}
.ac-preuves li:first-child{border-left:0;padding-left:0}
.ac-preuves b{font:500 clamp(40px,4.4vw,56px)/1 var(--serif);color:var(--vert-800);font-variant-numeric:tabular-nums}
.ac-preuves span{font-size:13.5px;color:var(--encre-2);max-width:220px}

/* ---------- Apparition au défilement ---------- */
.ac-revele{opacity:0;transform:translateY(28px);transition:opacity .9s cubic-bezier(.2,.8,.2,1),transform .9s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--d,0) * 90ms)}
.ac-revele.vu{opacity:1;transform:none}

/* ---------- Constat ---------- */
.ac-probleme-grille{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ac-carte-p{background:var(--papier);border:1px solid var(--bd);border-radius:20px;padding:26px;box-shadow:var(--ombre)}
.ac-carte-p h3{font-size:27px;margin:20px 0 8px}
.ac-carte-p p{margin:0;color:var(--encre-2)}
.ac-carte-p .ac-illus{margin-top:12px}
.ac-mini-courbe{position:relative;height:110px;border-radius:14px;background:linear-gradient(180deg,#fdf7f6,#fbeaea);padding:12px}
.ac-mini-courbe svg{width:100%;height:100%}
.ac-trace{stroke-dasharray:260;stroke-dashoffset:260;transition:stroke-dashoffset 1.6s .3s cubic-bezier(.6,0,.2,1)}
.vu .ac-trace{stroke-dashoffset:0}
.ac-badge-chiffre{position:absolute;right:14px;top:10px;font:600 30px var(--serif);color:var(--crit)}
.ac-docs-epars{position:relative;height:110px;border-radius:14px;background:linear-gradient(180deg,#f7f3ea,#efe8d8);overflow:hidden}
.ac-docs-epars span{position:absolute;padding:6px 10px;border-radius:8px;background:var(--papier);border:1px solid var(--bd-2);font:600 11.5px var(--sans);color:var(--encre-2);box-shadow:0 8px 16px -10px rgba(10,42,31,.4);transition:transform 1.2s cubic-bezier(.2,.8,.2,1)}
.ac-docs-epars span:nth-child(1){left:8%;top:14%;transform:rotate(-8deg)}.ac-docs-epars span:nth-child(2){left:52%;top:10%;transform:rotate(6deg)}
.ac-docs-epars span:nth-child(3){left:28%;top:44%;transform:rotate(3deg)}.ac-docs-epars span:nth-child(4){left:62%;top:52%;transform:rotate(-5deg)}
.ac-docs-epars span:nth-child(5){left:6%;top:66%;transform:rotate(7deg)}
.vu .ac-docs-epars span:nth-child(1){transform:rotate(-14deg) translate(-6px,4px)}.vu .ac-docs-epars span:nth-child(2){transform:rotate(12deg) translate(8px,-4px)}
.vu .ac-docs-epars span:nth-child(4){transform:rotate(-10deg) translate(6px,6px)}
.ac-sablier{height:110px;border-radius:14px;background:linear-gradient(180deg,#f2f7f3,#e4f0e8);display:grid;place-items:center}
.ac-sablier svg{width:70px;height:70px;transition:transform 1.4s cubic-bezier(.6,0,.2,1)}
.vu .ac-sablier svg{transform:rotate(180deg)}

/* ---------- Méthode : récit au défilement ---------- */
.ac-methode{max-width:none;background:linear-gradient(180deg,var(--fond) 0%,#f1ebdd 18%,#f1ebdd 82%,var(--fond) 100%)}
.ac-methode>.ac-entete{max-width:var(--max);margin-inline:auto;padding-right:40%}
.ac-recit{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:start}
.ac-recit-visuel{position:sticky;top:calc(50vh - min(34vh,300px));height:min(68vh,600px);display:grid;place-items:center}
.ac-ecran{width:100%;height:100%;border-radius:22px;background:var(--papier);border:1px solid var(--bd);box-shadow:0 40px 80px -40px rgba(10,42,31,.45);overflow:hidden;display:flex;flex-direction:column}
.ac-ecran-barre{display:flex;align-items:center;gap:6px;padding:12px 16px;border-bottom:1px solid var(--bd);background:var(--papier-2)}
.ac-ecran-barre i{width:10px;height:10px;border-radius:50%;background:var(--bd-2)}
.ac-ecran-barre span{margin-left:10px;font:600 11px var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--or-txt)}
.ac-ecran-corps{position:relative;flex:1;overflow:hidden}
.ac-scene{position:absolute;inset:0;display:grid;place-items:center;padding:22px;opacity:0;transform:scale(.97) translateY(14px);transition:opacity .6s,transform .8s cubic-bezier(.2,.8,.2,1);pointer-events:none}
.ac-scene.actif{opacity:1;transform:none}
.ac-scene img{max-width:100%;max-height:100%;object-fit:contain;border-radius:12px;box-shadow:0 20px 40px -26px rgba(10,42,31,.5)}
.ac-iso-docs,.ac-graphe{width:100%;height:100%;overflow:visible}
.ac-iso-t{font:600 13px var(--sans);fill:#fffdf8;letter-spacing:.08em}
.ac-iso-l{font:600 10.5px var(--sans);fill:#33433b}
.ac-doc{transition:transform 1s cubic-bezier(.2,.8,.2,1),opacity 1s;transition-delay:calc(var(--i) * 110ms)}
.ac-scene-docs.rassemble .ac-doc{transform:translate(calc(var(--tx) * 1px),calc(var(--ty) * 1px)) scale(.5);opacity:0}
.ac-doc{transform-box:fill-box;transform-origin:center}
.ac-plateforme{transform-origin:210px 220px;transition:transform .6s 1s cubic-bezier(.3,1.6,.5,1)}
.ac-scene-docs.rassemble .ac-plateforme{transform:scale(1.06)}
.ac-g-t{font:600 11px var(--sans);fill:#14241d}.ac-g-s{font:500 9.5px var(--sans);fill:#5c675f}.ac-g-b{fill:#fffdf8}
.ac-liens-g path{stroke-dasharray:240;stroke-dashoffset:240;transition:stroke-dashoffset 1.1s cubic-bezier(.6,0,.2,1)}
.ac-scene-causes.actif .ac-liens-g path{stroke-dashoffset:0}
.ac-liens-g path:nth-child(5){transition-delay:1s}
.ac-noeud{opacity:0;transform:translateY(8px);transition:opacity .5s,transform .5s;transition-delay:calc(var(--i) * 140ms)}
.ac-scene-causes.actif .ac-noeud{opacity:1;transform:none}
.ac-noeud:last-child{transition-delay:1.3s}
.ac-pieces{display:flex;gap:clamp(28px,6vw,80px);align-items:flex-end;justify-content:center;height:70%}
.ac-pile{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}
.ac-pile::before{content:"";width:86px;height:calc(var(--n) * 16px);border-radius:43px/12px;background:repeating-linear-gradient(180deg,#c08a2a 0 12px,#9c6d1b 12px 16px);box-shadow:0 18px 30px -16px rgba(122,92,28,.8);transform:scaleY(0);transform-origin:bottom;transition:transform 1s cubic-bezier(.3,1.4,.5,1)}
.ac-pile-r::before{background:repeating-linear-gradient(180deg,#137a52 0 12px,#0b5a3e 12px 16px);box-shadow:0 18px 30px -16px rgba(11,90,62,.8);transition-delay:.25s}
.ac-scene-pieces.actif .ac-pile::before{transform:none}
.ac-pile b{font:600 clamp(22px,2.4vw,30px) var(--serif);color:var(--encre)}
.ac-pile span{font-size:12.5px;color:var(--mu)}
.ac-etapes{list-style:none;margin:0;padding:0}
.ac-etape{position:relative;min-height:70vh;display:flex;flex-direction:column;justify-content:center;padding:40px 0 40px 22px;transition:color .5s}
.ac-etape::before{content:"";position:absolute;left:0;top:30%;bottom:30%;width:3px;border-radius:3px;background:var(--bd);transition:background .5s,top .5s,bottom .5s}
.ac-etape.actif::before{background:var(--vert-700);top:22%;bottom:22%}
.ac-etape:not(.actif) h3,.ac-etape:not(.actif) p,.ac-etape:not(.actif) li{color:var(--mu)}
.ac-num{font:500 15px var(--serif);color:var(--or-txt);letter-spacing:.1em}
.ac-etape h3{font-size:clamp(30px,3.2vw,42px);margin:6px 0 14px}
.ac-etape p{color:var(--encre-2);margin:0 0 14px;font-size:16px}
.ac-etape .pastille{align-self:flex-start;margin-top:4px}
.ac-coches{list-style:none;padding:0;margin:0 0 16px;display:grid;gap:8px}
.ac-coches li{display:flex;gap:10px;font-size:15px;color:var(--encre-2)}
.ac-coches li::before{content:"";flex:none;width:20px;height:20px;margin-top:2px;border-radius:50%;background:var(--vert-100) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m6 12.5 4 4 8-9' fill='none' stroke='%230b5a3e' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/12px no-repeat}
.ac-formule{display:inline-block;padding:10px 14px;border-radius:12px;background:var(--papier);border:1px solid var(--bd);font:500 14px var(--sans)!important;color:var(--encre)!important}
.ac-formule span{font-weight:700;color:var(--vert-700)}

/* ---------- Amélioration continue ---------- */
.ac-deux{display:grid;grid-template-columns:1fr 1fr 1.25fr;gap:20px;align-items:stretch}
.ac-colonne{padding:28px;border-radius:20px;background:var(--papier);border:1px solid var(--bd);box-shadow:var(--ombre)}
.ac-colonne h3{font-size:30px;margin:14px 0 12px}
.ac-colonne ul{margin:0;padding-left:18px;color:var(--encre-2);display:grid;gap:8px}
.ac-etiquette{display:inline-block;padding:4px 12px;border-radius:99px;font:600 11.5px var(--sans);letter-spacing:.06em}
.ac-e-crit{background:var(--crit-bg);color:var(--crit)}.ac-e-ok{background:var(--ok-bg);color:var(--ok)}
.ac-capture{margin:0;border-radius:20px;overflow:hidden;background:var(--papier);border:1px solid var(--bd);box-shadow:0 30px 60px -36px rgba(10,42,31,.5)}
.ac-capture img{width:100%;height:auto}
.ac-capture figcaption{padding:10px 16px;font-size:12.5px;color:var(--mu);border-top:1px solid var(--bd)}
.ac-deux .ac-capture{align-self:center}
.ac-garde{max-width:780px;margin:36px auto 0;text-align:center;color:var(--encre-2);font-size:16px}

/* ---------- Pilotage ---------- */
.ac-mosaique{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.ac-m3{grid-column:1/-1}
.ac-fonctions{list-style:none;padding:0;margin:40px 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.ac-fonctions li{display:flex;flex-direction:column;gap:6px;padding-top:16px;border-top:2px solid var(--vert-700)}
.ac-fonctions b{font:600 21px/1.2 var(--serif)}
.ac-fonctions span{font-size:14px;color:var(--encre-2)}

/* ---------- Pour qui ---------- */
.ac-profils{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ac-profil{padding:30px;border-radius:20px;background:var(--papier);border:1px solid var(--bd);box-shadow:var(--ombre);transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s}
.ac-profil:hover{transform:translateY(-4px);box-shadow:var(--ombre-l)}
.ac-profil h3{font-size:30px;margin:18px 0 8px}
.ac-profil p{margin:0;color:var(--encre-2)}
.ac-p-ic{width:52px;height:52px;border-radius:14px;background:var(--vert-100);display:grid;place-items:center}
.ac-p-ic svg{width:26px;height:26px;fill:none;stroke:var(--vert-700);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* ---------- Confiance ---------- */
.ac-confiance{max-width:none;background:linear-gradient(180deg,var(--fond),#eef5ef)}
.ac-confiance-grille{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(28px,6vw,80px);align-items:start}
.ac-confiance-grille>div>p:not(.surtitre){color:var(--encre-2);font-size:16px;margin:22px 0}
.ac-statut{padding:28px;border-radius:20px;background:var(--papier);border:1px solid var(--bd);box-shadow:var(--ombre)}
.ac-statut h3{font:600 12px var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--ok);margin:0 0 10px}
.ac-statut h3+ul+h3{color:var(--or-txt);margin-top:22px}
.ac-statut ul{margin:0;padding-left:18px;display:grid;gap:6px;color:var(--encre-2)}
.ac-futur{color:var(--mu)!important}

/* ---------- Conclusion ---------- */
.ac-final{position:relative;text-align:center;padding:clamp(90px,12vw,150px) var(--marge);overflow:hidden;background:radial-gradient(70% 70% at 50% 100%,#e4f0e8 0%,rgba(228,240,232,0) 70%),#eef5ef}
.ac-final-iso{max-width:620px;margin:0 auto 18px}
.ac-final-iso svg{width:100%;height:auto;overflow:visible}
.ac-ville>g{transform-box:fill-box;transform-origin:bottom;transform:scaleY(0);transition:transform .9s cubic-bezier(.3,1.3,.5,1);transition-delay:calc(var(--i) * 110ms)}
.ac-final.vu .ac-ville>g{transform:none}
.ac-final-courbe{stroke-dasharray:520;stroke-dashoffset:520;transition:stroke-dashoffset 1.6s .7s cubic-bezier(.6,0,.2,1)}
.ac-final.vu .ac-final-courbe{stroke-dashoffset:0}
.ac-final p{color:var(--encre-2);max-width:560px;margin:16px auto 28px}
.ac-final .surtitre{margin:0 auto;text-align:center}
.ac-pied{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:36px var(--marge);border-top:1px solid var(--bd);background:var(--fond);font-size:13.5px;color:var(--mu)}
.ac-pied p{margin:10px 0 0;max-width:420px}
.ac-pied nav{display:flex;gap:18px;flex-wrap:wrap;align-items:center}
.ac-pied a{color:var(--encre-2)}

/* ---------- Responsive ---------- */
@media (max-width:1080px){
  .ac-liens{display:none}
  .ac-burger{display:flex;margin-left:auto}
  .ac-liens.ouvert{display:flex;flex-direction:column;position:absolute;top:100%;left:12px;right:12px;padding:10px;background:var(--papier);border:1px solid var(--bd);border-radius:16px;box-shadow:var(--ombre-l)}
  .ac-liens.ouvert a{padding:14px}
  .ac-deux{grid-template-columns:1fr 1fr}.ac-deux .ac-capture{grid-column:1/-1}
  .ac-fonctions{grid-template-columns:1fr 1fr}
  .ac-f1{left:-8px}.ac-f2{right:-8px}
}
@media (max-width:860px){
  .ac-recit{grid-template-columns:1fr}
  .ac-recit-visuel{top:72px;height:44vh;z-index:2}
  .ac-methode>.ac-entete{padding-right:0}
  .ac-etape{min-height:auto;padding:28px 0;opacity:1}
  .ac-probleme-grille,.ac-profils{grid-template-columns:1fr}
  .ac-confiance-grille{grid-template-columns:1fr}
  .ac-mosaique{grid-template-columns:1fr}
  .ac-preuves{grid-template-columns:1fr 1fr;row-gap:24px}
  .ac-preuves li:nth-child(3){border-left:0;padding-left:0}
  .ac-flottant{display:none}
}
@media (max-width:560px){
  .ac-nav .marque span{display:none}
  .ac-connexion{padding-inline:16px}
  .ac-deux{grid-template-columns:1fr}
  .ac-fonctions{grid-template-columns:1fr}
  .ac-video-cadre{border-radius:14px}
  .ac-grand-lecture{width:64px;height:64px;margin:-32px 0 0 -32px}
  .ac-son span{display:none}.ac-son{padding:10px}
  .ac-temps{display:none}
  .ac-recit-visuel{height:38vh}
}
@media (prefers-reduced-motion:reduce){
  .ac-apparait,.ac-video,.ac-flottant{animation:none;opacity:1;transform:none}
  .ac-video{transform:none!important}
  .ac-revele{opacity:1;transform:none;transition:none}
  .ac-trace,.ac-liens-g path,.ac-final-courbe{stroke-dashoffset:0;transition:none}
  .ac-ville>g,.ac-pile::before{transform:none;transition:none}
  .ac-scene,.ac-doc,.ac-noeud{transition:none}
  .ac-noeud{opacity:1;transform:none}
}

/* ---------- Scènes « Calculs » et « Détection » (illustrations vectorielles, chiffres du moteur) ---------- */
.ac-scene-calc,.ac-scene-detect{padding:14px}
.ac-sc{width:100%;height:100%;overflow:visible}
.sc-tete{font:600 13px var(--sans);fill:var(--encre);letter-spacing:.02em}
.sc-sous{font:500 12px var(--sans);fill:var(--mu)}
.sc-leg text{font:500 11px var(--sans);fill:var(--mu)}
.sc-lab{font:600 11px var(--sans);fill:var(--mu);letter-spacing:.1em}
.sc-val{font:500 34px var(--serif);fill:var(--encre)}
.sc-delta{font:700 13px var(--sans)}
.sc-note{font:500 11.5px var(--sans);fill:var(--mu)}
.sc-form{font:500 13px var(--sans);fill:var(--encre)}
.sc-form-b{font-weight:700;fill:var(--vert-700)}
.sc-puce{font:700 12px var(--sans)}
.sc-prio{font:700 10.5px var(--sans);letter-spacing:.08em}
.sc-titre{font:600 14px var(--sans);fill:var(--encre)}
.sc-mes{font:500 11.5px var(--sans);fill:var(--mu)}
.sc-chiffre{font:600 24px var(--serif)}
.sc-barre{transform-box:fill-box;transform-origin:left center;transform:scaleX(0);transition:transform 1s cubic-bezier(.2,.8,.2,1) .35s}
.sc-b2{transition-delay:.6s}
.ac-scene-calc.actif .sc-barre{transform:none}
.ac-tuile,.sc-ligne{opacity:0;transform:translateY(10px);transition:opacity .5s,transform .6s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--i) * 110ms)}
.sc-ligne{transform:translateX(14px)}
.ac-scene.actif .ac-tuile,.ac-scene.actif .sc-ligne{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.sc-barre,.ac-tuile,.sc-ligne{transform:none!important;opacity:1!important;transition:none!important}}
.sc-etroit{display:none}
.ac-ecran-inline{display:none}
@media (max-width:860px){
  .ac-recit-visuel{display:none}
  .ac-ecran-inline{display:block;margin:6px 0 18px;padding:12px;border-radius:18px;background:var(--papier);border:1px solid var(--bd);box-shadow:var(--ombre)}
  .ac-scene-inline{position:static;inset:auto;padding:0;pointer-events:auto}
  .ac-scene-inline:not(.ac-scene-calc):not(.ac-scene-detect){aspect-ratio:7/5}
  .ac-scene-inline img{max-height:none}
  .sc-large{display:none}.sc-etroit{display:block}
}
@media (max-width:860px){
  .ac-scene-inline.ac-scene-pieces{aspect-ratio:auto;display:flex;flex-direction:column;align-items:center;gap:10px;padding:18px 0 6px}
  .ac-scene-inline .ac-pieces{height:auto}
  .ac-scene-inline .ac-pile::before{width:70px}
}
.ac-scene-inline .ac-illus{font-size:12px!important;margin:0!important;color:var(--mu)!important}

/* ---- Le tableau de bord : boucles animées (images réelles, dossier fictif) ---- */
.ac-tableau{background:linear-gradient(180deg,var(--fond) 0%,var(--fond-2) 100%)}
.ac-tb-grille{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;max-width:1240px;margin:0 auto}
.ac-tb{background:var(--papier);border:1px solid var(--bd);border-radius:20px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 24px 50px -34px rgba(10,42,31,.45);transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s}
.ac-tb:hover{transform:translateY(-4px);box-shadow:0 34px 60px -32px rgba(10,42,31,.55)}
.ac-tb-media{aspect-ratio:16/9;background:var(--fond-2);border-bottom:3px solid var(--or);overflow:hidden}
.ac-tb-media video{width:100%;height:100%;object-fit:cover;object-position:top left;display:block}
.ac-tb-sur{margin:16px 20px 0;font-size:11px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--or-txt)}
.ac-tb h3{margin:6px 20px 8px;font-family:var(--serif);font-weight:500;font-size:24px;line-height:1.15;color:var(--encre)}
.ac-tb p:last-child{margin:0 20px 20px;color:var(--encre-2);font-size:14.5px;line-height:1.55}
@media (max-width:1024px){.ac-tb-grille{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.ac-tb-grille{grid-template-columns:1fr}.ac-tb h3{font-size:21px}}
@media (prefers-reduced-motion:reduce){.ac-tb,.ac-tb:hover{transition:none;transform:none}}
