/* ═══════════════════════════════════════════════════════════════════════════
   WE-FORM — socle graphique des pages publiques de formation continue.
   ───────────────────────────────────────────────────────────────────────────
   Servi tel quel depuis /assets/ : ces pages sont statiques, hors build Vite.
   Un seul fichier pour les quatre pages — corriger une couleur ici les corrige
   toutes. Palette WE-FORM : teal dominant, orange en ACCENT seulement
   (règle 60/30/10), jamais l'orange comme couleur de fond principale.
   ═══════════════════════════════════════════════════════════════════════════ */

:root{
  --teal-900:#062E2D; --teal-700:#0D5C5A; --teal-500:#1A8A87; --teal-100:#E6F4F3;
  --orange:#E8752A; --orange-100:#FFF1E6;
  --ink:#0F172A; --gris:#64748B; --gris-clair:#94A3B8;
  --bord:#E2E8F0; --fond:#F8FAFC; --blanc:#fff;
  --ombre:0 1px 3px rgba(15,23,42,.06); --ombre-h:0 14px 34px -14px rgba(6,46,45,.35);
  --r:14px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0; background:var(--fond); color:var(--ink);
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  font-size:16px; line-height:1.65; -webkit-font-smoothing:antialiased;
}

/* ─── Barre de navigation ─── */
.wf-nav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--bord)}
.wf-nav .in{max-width:1080px;margin:0 auto;padding:11px 20px;display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.wf-nav img{height:30px;display:block}
.wf-nav a{color:var(--gris);text-decoration:none;font-size:13.5px;font-weight:700}
.wf-nav a:hover{color:var(--teal-700)}
.wf-nav .cta{margin-left:auto;background:var(--orange);color:#fff;padding:9px 17px;border-radius:9px;font-size:13.5px}
.wf-nav .cta:hover{color:#fff;background:#cf6420}

/* ─── En-tête de page ─── */
.wf-hero{background:linear-gradient(140deg,var(--teal-900) 0%,var(--teal-700) 55%,var(--teal-500) 100%);color:#fff;padding:56px 20px 60px;position:relative;overflow:hidden}
.wf-hero::after{content:"";position:absolute;right:-90px;top:-90px;width:340px;height:340px;border-radius:50%;background:rgba(232,117,42,.16)}
.wf-hero .in{max-width:1080px;margin:0 auto;position:relative;z-index:1}
.wf-hero .kicker{display:inline-block;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.24);border-radius:999px;padding:5px 14px;font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;margin-bottom:16px}
.wf-hero h1{margin:0 0 14px;font-size:clamp(28px,4.4vw,42px);font-weight:900;letter-spacing:-.02em;line-height:1.15}
.wf-hero p{margin:0;font-size:clamp(15px,1.9vw,18px);opacity:.93;max-width:660px;line-height:1.6}
.wf-hero .actions{display:flex;gap:11px;flex-wrap:wrap;margin-top:26px}

/* ─── Boutons ─── */
.wf-btn{display:inline-block;border:none;border-radius:10px;padding:13px 22px;font-size:15px;font-weight:800;cursor:pointer;text-decoration:none;transition:transform .12s,box-shadow .15s,background .15s}
.wf-btn:hover{transform:translateY(-1px)}
.wf-btn.o{background:var(--orange);color:#fff}.wf-btn.o:hover{background:#cf6420;box-shadow:0 10px 24px -10px rgba(232,117,42,.8)}
.wf-btn.t{background:var(--teal-700);color:#fff}.wf-btn.t:hover{background:var(--teal-900)}
.wf-btn.b{background:rgba(255,255,255,.14);color:#fff;border:1.5px solid rgba(255,255,255,.4)}
.wf-btn.b:hover{background:rgba(255,255,255,.24)}
.wf-btn.g{background:#fff;color:var(--teal-700);border:1.5px solid var(--bord)}
.wf-btn.g:hover{border-color:var(--teal-700)}

/* ─── Sections ─── */
.wf-sec{max-width:1080px;margin:0 auto;padding:54px 20px}
.wf-sec.serre{padding-top:26px}
.wf-sec h2{font-size:clamp(21px,3vw,29px);font-weight:900;margin:0 0 10px;letter-spacing:-.015em;color:var(--teal-900)}
.wf-sec h2 .num{color:var(--orange)}
.wf-sec .chapeau{font-size:16px;color:var(--gris);margin:0 0 30px;max-width:720px}
.wf-sec h3{font-size:17px;font-weight:800;margin:26px 0 9px;color:var(--teal-700)}

/* ─── Cartes ─── */
.wf-grille{display:grid;gap:16px}
.wf-grille.g2{grid-template-columns:repeat(2,1fr)}
.wf-grille.g3{grid-template-columns:repeat(3,1fr)}
.wf-grille.g4{grid-template-columns:repeat(4,1fr)}
.wf-carte{background:var(--blanc);border:1px solid var(--bord);border-radius:var(--r);padding:22px;box-shadow:var(--ombre)}
.wf-carte h3{margin:0 0 7px;font-size:16.5px;color:var(--teal-700)}
.wf-carte p{margin:0;font-size:14.5px;color:#475569}
.wf-carte .ico{font-size:26px;line-height:1;margin-bottom:11px;display:block}
.wf-carte.acc{border-left:4px solid var(--orange)}

/* ─── Étapes numérotées ─── */
.wf-etapes{counter-reset:et;display:grid;gap:14px}
.wf-etape{background:var(--blanc);border:1px solid var(--bord);border-radius:var(--r);padding:20px 22px 20px 68px;position:relative;box-shadow:var(--ombre)}
.wf-etape::before{counter-increment:et;content:counter(et);position:absolute;left:20px;top:19px;width:32px;height:32px;border-radius:9px;background:var(--teal-700);color:#fff;font-weight:900;font-size:15px;display:flex;align-items:center;justify-content:center}
.wf-etape.qui-vous::before{background:var(--orange)}
.wf-etape h3{margin:0 0 5px;font-size:16.5px;color:var(--teal-900)}
.wf-etape p{margin:0;font-size:14.5px;color:#475569}
.wf-etape .par{display:inline-block;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;border-radius:6px;padding:2px 9px;margin-bottom:7px}
.wf-etape .par.nous{background:var(--teal-100);color:var(--teal-700)}
.wf-etape .par.vous{background:var(--orange-100);color:#B45309}
.wf-etape .par.opco{background:#EDE9FE;color:#6D28D9}

/* ─── Tableaux ─── */
.wf-tbl{width:100%;border-collapse:collapse;font-size:14.5px;background:var(--blanc);border:1px solid var(--bord);border-radius:var(--r);overflow:hidden}
.wf-tbl th{background:var(--teal-900);color:#fff;text-align:left;padding:12px 15px;font-size:13px;font-weight:800}
.wf-tbl td{padding:12px 15px;border-top:1px solid var(--bord);vertical-align:top}
.wf-tbl tr:nth-child(even) td{background:#FBFDFD}
.wf-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}

/* ─── Encarts ─── */
.wf-note{border-radius:12px;padding:16px 20px;font-size:14.5px;line-height:1.6;margin:20px 0}
.wf-note.info{background:var(--teal-100);border-left:4px solid var(--teal-500);color:#134E4A}
.wf-note.attention{background:#FFFBEB;border-left:4px solid #F59E0B;color:#78350F}
.wf-note b{font-weight:800}

/* ─── Schémas ─── */
.wf-schema{background:var(--blanc);border:1px solid var(--bord);border-radius:var(--r);padding:20px;box-shadow:var(--ombre);margin:22px 0}
.wf-schema svg{width:100%;height:auto;display:block}
.wf-schema figcaption{font-size:12.5px;color:var(--gris);margin-top:12px;text-align:center}

/* ─── Pied de page ─── */
.wf-pied{background:var(--teal-900);color:#B9DEDD;padding:38px 20px;font-size:13.5px;margin-top:40px}
.wf-pied .in{max-width:1080px;margin:0 auto}
.wf-pied a{color:#fff;text-decoration:none;font-weight:700}
.wf-pied .legal{margin-top:16px;padding-top:16px;border-top:1px solid rgba(255,255,255,.14);font-size:12px;opacity:.8;line-height:1.7}

/* ─── Questions fréquentes ─── */
.wf-faq details{background:var(--blanc);border:1px solid var(--bord);border-radius:11px;padding:15px 19px;margin-bottom:9px}
.wf-faq summary{font-weight:800;font-size:15px;cursor:pointer;color:var(--teal-700);list-style:none}
.wf-faq summary::-webkit-details-marker{display:none}
.wf-faq summary::before{content:"+ ";font-weight:900;color:var(--orange)}
.wf-faq details[open] summary::before{content:"– "}
.wf-faq p{margin:11px 0 0;font-size:14.5px;color:#475569}

/* ─── LES SCHÉMAS RESTENT LISIBLES SUR UN TÉLÉPHONE ───────────────────────
   Mesuré : sur un écran de 375 px, un schéma en viewBox 980 se rendait à
   298 px de large — son texte de 11 px tombait à 3,3 px, illisible. Sur petit
   écran, le schéma garde donc une largeur minimale et c'est son cadre qui
   défile horizontalement : on fait glisser du doigt plutôt que de plisser
   les yeux. Le reste de la page, lui, ne déborde jamais. */
@media(max-width:820px){
  .wf-schema{overflow-x:auto;-webkit-overflow-scrolling:touch}
  .wf-schema svg{min-width:900px}
  .wf-schema figcaption{position:sticky;left:0}
  .wf-schema::after{content:"↔ faites glisser le schéma";display:block;font-size:11px;color:var(--gris-clair);text-align:center;margin-top:4px;position:sticky;left:0}
}

@media(max-width:820px){
  .wf-grille.g4{grid-template-columns:repeat(2,1fr)}
  .wf-grille.g3{grid-template-columns:1fr}
  .wf-grille.g2{grid-template-columns:1fr}
  .wf-sec{padding:38px 18px}
  .wf-hero{padding:40px 18px 44px}
}
@media(max-width:520px){ .wf-grille.g4{grid-template-columns:1fr} }
@media print{ .wf-nav,.wf-hero .actions{display:none} body{background:#fff} }
