/* Pages publiques servies par l'application (cas d'usage, centre de confiance, affiliation) et
   sections ajoutees a l'accueil (canaux, collegues IA, modules, securite). S'appuie sur les jetons de
   home.css (--purple, --ink, --muted, --line, --radius). Proprietes logiques (inline/block) : RTL natif.
   Animations des portraits sur transform/opacity, coupees par prefers-reduced-motion. */

.kp-main{min-height:60vh}
.kp-header{height:auto;min-height:72px;position:sticky;top:0;z-index:40;background:rgba(255,255,255,.92);backdrop-filter:saturate(1.4) blur(10px);border-block-end:1px solid var(--line)}
.kp-header .nav-wrap{min-height:72px;height:auto}
.kp-nav{display:flex;align-items:center;gap:22px;font-weight:700;font-size:14px;color:#334336}
.kp-nav a{padding-block:8px;border-block-end:2px solid transparent}
.kp-nav a:hover,.kp-nav a[aria-current="page"]{color:var(--purple-dark);border-block-end-color:var(--purple)}
@media (max-width:900px){.kp-nav-wide{display:none}}
@media (max-width:640px){.kp-header .nav-wrap{flex-wrap:wrap;row-gap:2px;padding-block:8px}.kp-nav{order:3;flex-basis:100%;gap:18px;font-size:13px;overflow-x:auto}.kp-header .nav-cta{display:none}}
.kp-nav a{white-space:nowrap}

.kp-hero{padding:72px 0 40px;background:linear-gradient(180deg,#f4faf3 0%,#fff 100%)}
.kp-hero h1{font-size:clamp(30px,5vw,48px);line-height:1.08;letter-spacing:-.02em;color:var(--navy);margin-block-end:14px;max-width:22ch}
.kp-hero p{font-size:17px;line-height:1.6;color:#425145;max-width:62ch}
.kp-crumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:13px;color:var(--muted);margin-block-end:18px}
.kp-crumbs a{color:#397146;font-weight:700}
.kp-section{padding:48px 0 72px}

.kp-filters{display:flex;flex-wrap:wrap;gap:8px;margin-block:8px 28px}
.kp-chip{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border-radius:999px;border:1px solid #e0dbd3;background:#fff;color:#334336;font-weight:700;font-size:13px}
.kp-chip:hover{border-color:var(--purple)}
.kp-chip[aria-current="page"]{background:var(--purple);border-color:var(--purple);color:#fff}
.kp-chip small{font-weight:600;opacity:.75}

.kp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}
@media (max-width:420px){.kp-grid{grid-template-columns:1fr}}
.kp-card{display:flex;flex-direction:column;gap:14px;padding:22px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:0 10px 30px rgba(69,63,51,.04);min-width:0}
.kp-card h2,.kp-card h3{font-size:18px;line-height:1.3;color:var(--navy);margin:0}
.kp-card p{margin:0;color:#425145;line-height:1.6;font-size:14.5px}
.kp-card a.kp-card-link{color:#397146;font-weight:800;font-size:14px;display:inline-flex;align-items:center;gap:8px;margin-block-start:auto}
.kp-card a.kp-card-link:hover{text-decoration:underline}
.kp-card a.kp-card-link svg{transform:none}
[dir="rtl"] .kp-card a.kp-card-link svg,[dir="rtl"] .kp-rtl-flip{transform:scaleX(-1)}
.kp-tag{display:inline-flex;align-items:center;min-height:26px;padding:0 10px;border-radius:999px;background:var(--lavender);color:#2a6339;font-size:12px;font-weight:800;letter-spacing:.02em}
.kp-tags{display:flex;flex-wrap:wrap;gap:6px}
.kp-tags li{list-style:none;display:inline-flex;min-height:26px;align-items:center;padding:0 10px;border-radius:8px;background:#f4f4f8;color:#3d4a3f;font-size:12.5px;font-weight:600}
.kp-tags{padding:0;margin:0}

.kp-agent{display:flex;align-items:center;gap:12px;min-width:0}
.kp-agent b{display:block;color:var(--navy);font-size:15px}
.kp-agent small{display:block;color:var(--muted);font-size:12.5px}
.kp-face{position:relative;display:inline-flex;flex-shrink:0;width:52px;height:52px;border-radius:999px;isolation:isolate}
.kp-face>span.kp-portrait{position:relative;z-index:1;display:flex;width:100%;height:100%;border-radius:999px;overflow:hidden}
.kp-face>span.kp-portrait svg{width:100%;height:100%}
.kp-face::before{content:"";position:absolute;inset:-4px;border-radius:999px;border:2px solid rgba(16,185,129,.55);animation:kp-pulse 2.6s ease-in-out infinite}
.kp-face .kdp-bust{transform-box:view-box;transform-origin:48px 96px;animation:kp-breathe 5s ease-in-out infinite}
.kp-face .kdp-eyes{transform-box:view-box;transform-origin:48px 46px;animation:kp-blink 6s step-end infinite}
.kp-face.kp-face-lg{width:84px;height:84px}
@keyframes kp-breathe{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-.6px) scale(1.012)}}
@keyframes kp-blink{0%,94%,100%{transform:scaleY(1)}96%{transform:scaleY(.1)}}
@keyframes kp-pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(1.05)}}
@media (prefers-reduced-motion:reduce){.kp-face::before,.kp-face .kdp-bust,.kp-face .kdp-eyes{animation:none!important}}

.kp-detail{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:28px;align-items:start}
@media (max-width:900px){.kp-detail{grid-template-columns:1fr}}
.kp-steps{counter-reset:kp;display:flex;flex-direction:column;gap:12px;padding:0;margin:0}
.kp-steps li{counter-increment:kp;list-style:none;display:flex;gap:14px;align-items:flex-start;padding:16px;border:1px solid var(--line);border-radius:16px;background:#fff;line-height:1.55}
.kp-steps li::before{content:counter(kp);flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:999px;background:var(--purple);color:#fff;font-weight:800;font-size:13px}
.kp-aside dl{margin:0;display:flex;flex-direction:column;gap:6px}
.kp-aside dt{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-block-start:10px}
.kp-aside dd{margin:0;color:var(--navy);font-weight:600}
.kp-note{font-size:13px;color:var(--muted);line-height:1.55}

.kp-facts{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}
.kp-fact-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:var(--lavender);color:var(--purple-dark)}
.kp-trust{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;margin:0}
.kp-trust div{padding:16px;border:1px dashed #d9d5cd;border-radius:16px}
.kp-trust dt{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.kp-trust dd{margin:6px 0 0;color:var(--navy);font-weight:600;overflow-wrap:anywhere}
.kp-trust dd.kp-empty{color:#8e8a82;font-weight:500;font-style:italic}

.kp-cta{margin-block-start:36px;padding:28px;border-radius:var(--radius);background:linear-gradient(135deg,#093919,#42754f);color:#fff;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}
.kp-cta h2{margin:0;font-size:22px;color:#fff}
.kp-cta p{margin:4px 0 0;color:rgba(255,255,255,.85)}

.kp-footer{padding-block:36px 24px}
.kp-footer-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-block-end:18px}
.kp-footer-links{display:flex;flex-wrap:wrap;gap:16px;font-weight:700;font-size:14px}

/* Accueil : sections ajoutees (vague 6) */
.kp-home-band{padding:84px 0}
.kp-home-band.kp-soft{background:#fcf8f0}
.kp-channels{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px;margin-block-start:28px;padding:0}
.kp-channels li{list-style:none;display:flex;flex-direction:column;gap:6px;padding:18px;border:1px solid var(--line);border-radius:18px;background:#fff}
.kp-channels b{color:var(--navy);font-size:15px}
.kp-channels small{color:var(--muted);line-height:1.5;font-size:13px}
.kp-team{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px;margin-block-start:28px}
.kp-modules{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;margin-block-start:28px;padding:0}
.kp-modules li{list-style:none;padding:18px;border-radius:18px;background:#fff;border:1px solid var(--line)}
.kp-modules b{display:block;color:var(--navy);margin-block-end:4px}
.kp-modules span{color:#425145;font-size:13.5px;line-height:1.55}
.steps-grid.kp-steps-4{grid-template-columns:repeat(4,1fr)}
@media (max-width:1080px){.steps-grid.kp-steps-4{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.steps-grid.kp-steps-4{grid-template-columns:1fr}}
.kp-step-agents{display:flex;gap:6px;justify-content:center;padding-block:10px}
.sr-only{position:absolute;inline-size:1px;block-size:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.kp-h2{font-size:22px;line-height:1.25;color:var(--navy);margin-block:0 16px}
.kp-h3{font-size:17px;color:var(--navy);margin-block:24px 10px}
.kp-card .kp-h2{margin-block-start:8px}

/* Solutions (super-pouvoirs) */
.kp-power{transition:transform .2s ease,box-shadow .2s ease}
.kp-power:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(69,63,51,.09)}
.kp-power-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.kp-power-agent{display:inline-flex;align-items:center;gap:10px;min-width:0}
.kp-power-agent img,.kp-power-agent svg{width:44px;height:44px;border-radius:999px;object-fit:cover;flex-shrink:0;background:#f4faf3}
.kp-power-agent small{color:var(--muted);font-weight:700;font-size:13px}
.kp-power-time{flex-shrink:0;padding:4px 10px;border-radius:999px;background:var(--lavender);color:var(--purple-dark);font-weight:800;font-size:12px}
@media (prefers-reduced-motion:reduce){.kp-power,.kp-power:hover{transition:none;transform:none}}

/* Accueil : cartes flottantes animees du heros (option 3) */
.kp-float{animation:kp-float 6s ease-in-out infinite}
.kp-float-b{animation-delay:-2s;animation-duration:7s}
.kp-float-c{animation-delay:-4s;animation-duration:8s}
@keyframes kp-float{0%,100%{translate:0 0}50%{translate:0 -10px}}
.hero-visual .float-call{z-index:3}
.kp-float-chip{position:absolute;z-index:4;inset-inline-end:8%;bottom:-6px;display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:14px;background:#fff;border:1px solid #efeae2;box-shadow:0 22px 50px #263e2b1f}
.kp-float-chip img{width:28px;height:28px;border-radius:999px;object-fit:cover}
.kp-float-chip span{display:flex;flex-direction:column;gap:2px}
.kp-float-chip b{font-size:10px;color:var(--navy)}
.kp-float-chip small{font-size:9px;color:#9c9790}
a.kp-power{color:inherit;text-decoration:none}
a.kp-power:focus-visible{outline:2px solid var(--purple);outline-offset:3px}
@media (max-width:580px){.kp-float-chip{display:none}}
@media (prefers-reduced-motion:reduce){.kp-float{animation:none}}

/* Accueil : icones des canaux et des modules (pictogrammes generiques, aucun logo de marque) */
.kp-ic{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:13px;margin-block-end:8px;background:#e5f3ec;color:#2f6a40}
.kp-ic .ico{width:21px;height:21px}
.kp-modules .kp-ic{margin-block-end:10px}
.kp-ic.ch-site,.kp-ic.kp-ic-0{background:#e5f3ec;color:#2f6a40}
.kp-ic.ch-wa,.kp-ic.kp-ic-1{background:#def5ef;color:#127a63}
.kp-ic.ch-msg,.kp-ic.kp-ic-2{background:#e6eefc;color:#3557b7}
.kp-ic.ch-tg,.kp-ic.kp-ic-3{background:#e2f2fb;color:#1f6f9a}
.kp-ic.ch-slack,.kp-ic.kp-ic-4{background:#f1e8f7;color:#6b3f8f}
.kp-ic.ch-phone,.kp-ic.kp-ic-5{background:#fdece6;color:#b5502f}
.kp-channels li,.kp-modules li{transition:transform .2s ease,box-shadow .2s ease}
.kp-channels li:hover,.kp-modules li:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(69,63,51,.07)}
@media (prefers-reduced-motion:reduce){.kp-channels li,.kp-modules li{transition:none}.kp-channels li:hover,.kp-modules li:hover{transform:none}}
