/* ===== Page « À propos » (chargée après expertise.css ; classes propres préfixées .ap-) =====
   Identité : éditoriale et humaine. Typographie large, colonnes de lecture, une vraie photo.
   Pas d'animation en boucle. */
.ap-lines{position:absolute;inset:0;pointer-events:none;
  background-image:repeating-linear-gradient(90deg,rgba(140,128,255,.06) 0 1px,transparent 1px 160px);
  -webkit-mask-image:radial-gradient(110% 90% at 75% 30%,#000 25%,transparent 80%);mask-image:radial-gradient(110% 90% at 75% 30%,#000 25%,transparent 80%)}

/* 01 Premier écran : texte seul, pleine largeur */
.ap-hero{min-height:min(78svh,720px);background:radial-gradient(60% 70% at 88% 18%,rgba(79,61,255,.30),transparent 70%),linear-gradient(180deg,#070C1D 0%,var(--night-2) 100%)}
.ap-hero h1{max-width:18ch;font-size:clamp(40px,6vw,92px);line-height:1}
.ap-hero .ap-brand{display:block;color:var(--accent);letter-spacing:-.02em}
.ap-hero .lead{max-width:680px;font-size:clamp(17px,1.5vw,21px)}

/* En-têtes et colonnes */
.ap-head{max-width:880px;margin-bottom:48px}
.ap-head h2,.ap-side h2{margin:16px 0 18px;font-size:clamp(30px,3.6vw,48px);line-height:1.08;letter-spacing:-.03em}
.ap-head .lead{margin:0}
.ap-split{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:72px;align-items:start}
.ap-side{position:sticky;top:160px}
.ap-side>p{color:var(--text);margin:0 0 28px;font-size:17px;line-height:1.6}
@media(max-width:960px){.ap-split{grid-template-columns:1fr;gap:28px}.ap-side{position:static}}

/* 02 Histoire */
.ap-story{background:var(--paper);padding:120px 0 100px}
.ap-prose p{font-size:clamp(17px,1.35vw,19px);line-height:1.7;color:var(--text);margin:0 0 20px;max-width:62ch}
.ap-prose p:first-child{font-size:clamp(19px,1.6vw,22px);line-height:1.6;color:var(--ink)}
.ap-prose p:last-child{margin:0;font-size:16px;color:var(--muted)}
@media(max-width:640px){.ap-story{padding:84px 0 70px}}

/* 03 Organisation + direction */
.ap-org{background:var(--mist);padding:110px 0 100px}
.ap-roles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.ap-role{position:relative;padding:28px 26px 26px;border-radius:20px;background:#fff;border:1px solid var(--line)}
.ap-role.core{background:var(--blue);border-color:var(--blue);color:#fff}
.ap-role .n{font:600 13px var(--body);letter-spacing:.08em;color:var(--muted)}
.ap-role.core .n{color:#CFC9FF}
.ap-role h3{margin:18px 0 12px;font-size:21px;line-height:1.22}
.ap-role p{margin:0;font-size:15.5px;line-height:1.6;color:var(--text)}
.ap-role.core p{color:#E7E4FF}
.ap-lead{margin-top:16px;display:grid;grid-template-columns:220px 1fr;gap:36px;align-items:center;padding:16px 36px 16px 16px;border-radius:22px;background:#fff;border:1px solid var(--line)}
.ap-photo{margin:0}
.ap-photo img{display:block;width:100%;height:260px;object-fit:cover;object-position:50% 22%;border-radius:14px}
.ap-lead-txt .k{font:600 12px var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--blue)}
.ap-lead-txt p{margin:10px 0 0;font-size:17px;line-height:1.6;color:var(--text)}
.ap-who{display:flex;flex-wrap:wrap;gap:12px 40px;margin:22px 0 0}
.ap-who dt{font:700 20px var(--display);letter-spacing:-.01em;color:var(--ink)}
.ap-who dd{margin:4px 0 0;font-size:14.5px;color:var(--muted)}
@media(max-width:960px){.ap-roles{grid-template-columns:1fr}}
@media(max-width:640px){.ap-org{padding:80px 0 70px}.ap-lead{grid-template-columns:1fr;gap:20px;padding:14px 14px 22px}.ap-photo img{height:300px}.ap-lead-txt{padding:0 8px}}

/* 04 Trajectoire */
.ap-growth{position:relative;background:var(--night);color:#fff;padding:120px 0 110px;overflow:hidden}
.ap-growth .wrap{position:relative}
.ap-growth .lead{color:#C3CBE3}
.ap-growth h3{font-size:20px;line-height:1.25;color:#fff}
/* Trois axes de développement */
.ap-pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.ap-pillars article{padding:28px 26px 26px;border-radius:20px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-top:3px solid var(--accent)}
.ap-pillars p{margin:12px 0 0;font-size:15.5px;line-height:1.6;color:#C3CBE3}
/* Objectifs */
.ap-goals{margin-top:16px;padding:28px 30px 20px;border-radius:20px;border:1px dashed rgba(255,255,255,.22)}
.ap-goals h3{display:flex;align-items:center;gap:12px}
.ap-goals h3 i{flex:none;width:10px;height:10px;border-radius:50%;border:2px solid #C8C2FF}
.ap-goals ul{list-style:none;margin:16px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 28px}
.ap-goals li{position:relative;padding:12px 0 12px 22px;border-top:1px solid rgba(255,255,255,.08);font-size:15.5px;line-height:1.55;color:#DCE2F0}
.ap-goals li::before{content:"";position:absolute;left:2px;top:22px;width:8px;height:1.5px;background:#C8C2FF}
@media(max-width:960px){.ap-pillars,.ap-goals ul{grid-template-columns:1fr}}
@media(max-width:640px){.ap-growth{padding:84px 0 76px}.ap-pillars article{padding:24px 20px}.ap-goals{padding:24px 18px 14px}}

/* 05 Pratiques */
.ap-ways{background:var(--paper);padding:120px 0 100px}
.ap-quote{margin:0;padding:24px 26px;border-radius:18px;background:#fff;border:1px solid var(--line)}
.ap-quote p{margin:0;font:500 17px/1.55 var(--display);color:var(--ink)}
.ap-quote footer{margin-top:12px;font-size:13.5px;color:var(--muted)}
.ap-quote cite{font-style:normal}
.ap-list{list-style:none;margin:0;padding:0;counter-reset:ap}
.ap-list li{counter-increment:ap;position:relative;padding:28px 0 28px 64px;border-top:1px solid var(--line)}
.ap-list li:last-child{border-bottom:1px solid var(--line)}
.ap-list li::before{content:counter(ap,decimal-leading-zero);position:absolute;left:0;top:31px;font:600 13px var(--body);letter-spacing:.08em;color:var(--blue)}
.ap-list h3{font-size:clamp(20px,1.8vw,24px);line-height:1.25}
.ap-list p{margin:10px 0 0;font-size:16px;line-height:1.65;color:var(--text);max-width:60ch}
@media(max-width:640px){.ap-ways{padding:84px 0 70px}.ap-list li{padding-left:44px}}

/* 06 Implantations, écosystème, informations */
.ap-places{background:var(--mist);padding:110px 0 100px}
.ap-info{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.ap-block{display:flex;flex-direction:column;gap:14px;padding:28px 26px;border-radius:20px;background:#fff;border:1px solid var(--line)}
.ap-block .k{font:600 12px var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--blue)}
.ap-block address{font-style:normal;display:flex;flex-direction:column;gap:3px;font-size:15px;line-height:1.5;color:var(--text)}
.ap-block address b{font:700 17px var(--display);color:var(--ink)}
.ap-block address a{font-weight:600;color:var(--ink);text-decoration:none}
.ap-block p{margin:0;font-size:15px;line-height:1.6;color:var(--text)}
.ap-block p b{color:var(--ink)}
.ap-doc{display:flex;flex-direction:column;gap:2px;padding:12px 14px;border-radius:12px;border:1px solid var(--line);text-decoration:none;transition:border-color .3s,background .3s}
.ap-doc:hover{border-color:var(--blue);background:var(--paper)}
.ap-doc b{font:600 15.5px/1.3 var(--display);color:var(--ink)}
.ap-doc span{font-size:13px;color:var(--muted)}
.ap-block .ap-legal{font-size:13.5px;color:var(--muted)}
@media(max-width:960px){.ap-info{grid-template-columns:1fr}}
@media(max-width:640px){.ap-places{padding:80px 0 70px}.ap-block{padding:24px 20px}}

/* 07 Appel final */
.ap-final h2{max-width:16ch}
.ap-next{position:relative;margin-top:34px;display:flex;justify-content:center;flex-wrap:wrap;gap:8px 28px}
.ap-next a{color:#C3CBE3;font-size:15px;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.25);padding-bottom:2px}
.ap-next a:hover{color:#fff;border-color:var(--accent)}
