/* pilotrh-jetons.css */
/* ==========================================================================
   V131 - Identité visuelle PILOT'RH : jetons de design (variables --pr-…).
   Ajouté automatiquement en tête de chaque regroupement CSS (pilotrh_css()).
   Les composants communs (boutons, bannières, en-tête) sont dans
   css/pilotrh-identite.css, chargé en dernier par includes/header.php.
   ========================================================================== */
:root {
  /* Couleurs de marque : marine + violet */
  --pr-navy: #1b155f;          --pr-navy-rgb: 27 21 95;        /* fonds sombres (pied de page, bandeaux) */
  --pr-ink: #121d5a;           --pr-ink-rgb: 18 29 90;         /* texte principal et titres */
  --pr-violet-900: #29217f;    --pr-violet-900-rgb: 41 33 127; /* texte fort, survol */
  --pr-violet: #5136d9;        --pr-violet-rgb: 81 54 217;     /* accent : liens, éléments actifs */
  --pr-violet-500: #6337f4;    --pr-violet-500-rgb: 99 55 244; /* fin du dégradé */
  --pr-violet-300: #aaa5f2;    --pr-violet-300-rgb: 170 165 242; /* accent clair, sur fond sombre */
  --pr-violet-200: #d0cff3;    --pr-violet-200-rgb: 208 207 243;
  --pr-violet-100: #eeefff;    --pr-violet-100-rgb: 238 239 255; /* fonds teintés */
  /* Dégradés signature bleu → violet (uniquement dans les dégradés, jamais en aplat) */
  --pr-blue: #2a72dc;          --pr-blue-rgb: 42 114 220;
  --pr-magenta: #a52bd9;       --pr-magenta-rgb: 165 43 217;
  /* Boutons principaux et bandeaux : texte blanc lisible sur toute la longueur (≥ 4,5:1) */
  --pr-gradient: linear-gradient(110deg, var(--pr-blue), var(--pr-violet-500) 60%, var(--pr-magenta));
  /* Mots mis en valeur dans les titres (texte en dégradé, grands caractères) */
  --pr-gradient-text: linear-gradient(100deg, #087bff, #354aff 52%, #9900e9);

  /* Neutres */
  --pr-surface: #ffffff;       --pr-surface-rgb: 255 255 255;
  --pr-surface-alt: #f4f7ff;   --pr-surface-alt-rgb: 244 247 255; /* fonds de section et de bannière */
  --pr-line: #dde2f3;          --pr-line-rgb: 221 226 243;     /* bordures, séparateurs */
  --pr-subtle: #646c90;        --pr-subtle-rgb: 100 108 144;   /* mentions, texte tertiaire (contraste ≥ 4,5:1 sur les fonds clairs) */
  --pr-muted: #535d83;         --pr-muted-rgb: 83 93 131;      /* texte secondaire */
  --pr-on-dark: #e9e9ff;       --pr-on-dark-rgb: 233 233 255;  /* texte sur fond sombre */

  /* États (le vert-sarcelle est réservé au succès) */
  --pr-success: #176b5a;       --pr-success-rgb: 23 107 90;
  --pr-success-bg: #e4f4ef;    --pr-success-bg-rgb: 228 244 239;
  --pr-warning: #7d5700;       --pr-warning-rgb: 125 87 0;
  --pr-warning-bg: #fff4dc;    --pr-warning-bg-rgb: 255 244 220;
  --pr-error: #a32222;         --pr-error-rgb: 163 34 34;
  --pr-error-bg: #fdecec;      --pr-error-bg-rgb: 253 236 236;
  --pr-etoile: #e5a100;        --pr-etoile-rgb: 229 161 0;     /* étoiles des notes (témoignages) */

  /* Typographie (la police Inter n'est pas embarquée : pile système cohérente sinon) */
  --pr-font: "Inter", "Segoe UI", system-ui, -apple-system, "Helvetica Neue", Roboto, Arial, sans-serif;
  --pr-h1: clamp(2rem, 1.35rem + 2.1vw, 3.2rem);          /* 32 → 51 px */
  --pr-h1-banner: clamp(1.75rem, 1.3rem + 1.4vw, 2.5rem); /* 28 → 40 px, titres posés sur une image */
  --pr-h2: clamp(1.5rem, 1.25rem + 0.9vw, 2.1rem);        /* 24 → 34 px */
  --pr-h3: clamp(1.15rem, 1.08rem + 0.3vw, 1.3rem);       /* 18 → 21 px */

  /* Formes et mise en page */
  --pr-radius-sm: 10px;
  --pr-radius: 16px;
  --pr-radius-lg: 24px;
  --pr-radius-btn: 12px;
  --pr-bordure-bloc: 1.5px;                              /* contour en dégradé des blocs (pilotrh-identite.css) */
  --pr-container: 1200px;
  --pr-gutter: 24px;
  --pr-banner-gap: 24px;       /* espace entre l'en-tête et la bannière */
}
@media (max-width: 640px) { :root { --pr-gutter: 16px; --pr-banner-gap: 16px; } }

/* pilotrh-theme.css */
/* PILOT'RH V114 - harmonisation des pages publiques sur la palette de l'accueil V63. */
:root{--pr114-ink:var(--pr-ink);--pr114-deep:var(--pr-violet-900);--pr114-primary:var(--pr-violet);--pr114-purple:var(--pr-violet);--pr114-sky:var(--pr-violet-300);--pr114-muted:var(--pr-muted);--pr114-soft:var(--pr-surface-alt);--pr114-line:var(--pr-line);--pr114-gradient:var(--pr-gradient)}
body:not(.pr-admin-page){--pr59-deep:var(--pr-violet-900);--pr59-deeper:var(--pr-ink);--pr59-teal:var(--pr-violet-300);--pr59-coral:var(--pr-violet-300);--pr59-ink:var(--pr-ink);--pr59-text:var(--pr-muted);--pr59-border:var(--pr-violet-100);--pr59-soft:var(--pr-line);--primary:var(--pr-violet);--primary-color:var(--pr-violet);--accent:var(--pr-violet);--color-primary:var(--pr-violet);--color-accent:var(--pr-violet);accent-color:var(--pr-violet);color:var(--pr114-ink)}
body:not(.pr-admin-page) .pr-header{background:rgba(255,255,255,.97)!important;border-bottom:1px solid var(--pr-violet-100)!important;box-shadow:0 4px 24px rgb(var(--pr-violet-900-rgb) / 0.065)}
body:not(.pr-admin-page) .pr36-top{background:var(--pr-line)!important}
body:not(.pr-admin-page) .pr36-account,body:not(.pr-admin-page) .pr-nav a,body:not(.pr-admin-page) .pr36-expand{color:var(--pr-violet-900)!important}
body:not(.pr-admin-page) .pr-nav a:hover,body:not(.pr-admin-page) .pr36-account:hover{color:var(--pr-violet)!important}
body:not(.pr-admin-page) .pr36-submenu{background:var(--pr-surface)!important;border-color:var(--pr-line)!important;box-shadow:0 18px 38px rgb(var(--pr-violet-900-rgb) / 0.15)!important}
body:not(.pr-admin-page) .pr36-submenu a:hover{background:var(--pr-line)!important}
body:not(.pr-admin-page) .pr-nav .pr42-contact-button,body:not(.pr-admin-page) .pr-nav .pr-rdv-button{color:var(--pr-surface)!important;background:var(--pr114-gradient)!important;border-color:transparent!important;box-shadow:0 7px 20px rgb(var(--pr-violet-rgb) / 0.2)!important}
body:not(.pr-admin-page) .pr36-signature{color:var(--pr-violet-900)!important}
/* Do not touch photo banners: keep their own art direction and overlay geometry. */
body:not(.pr-admin-page) :is(main,.rv-main) :is(h1,h2,h3){color:var(--pr114-ink)}
body:not(.pr-admin-page) :is(main,.rv-main) a:not([class]):hover{color:var(--pr-violet)}
body:not(.pr-admin-page) :is(main,.rv-main) :is(input,textarea,select):focus-visible{outline:2px solid var(--pr-violet);outline-offset:2px;border-color:var(--pr-violet)}
body:not(.pr-admin-page) :is(main,.rv-main) :is(button,input[type=submit],input[type=button]):not(.is-secondary):not([class*=secondary]):not([class*=outline]){border-radius:10px}
body:not(.pr-admin-page) :is(main,.rv-main) :is(.rv86-primary,.rv-btn-primary,.btn-primary,.pr-btn-primary,.pr59-btn-primary){background:var(--pr114-gradient);color:var(--pr-surface);border-color:transparent;box-shadow:0 9px 22px rgb(var(--pr-violet-rgb) / 0.18)}
body:not(.pr-admin-page) :is(main,.rv-main) :is(.rv86-primary,.rv-btn-primary,.btn-primary,.pr-btn-primary,.pr59-btn-primary):hover{background:var(--pr-gradient);color:var(--pr-surface)}
body:not(.pr-admin-page) :is(main,.rv-main) :is(.rv86-access,.rv-card,.pr-card){border-color:var(--pr114-line);border-radius:16px}
body:not(.pr-admin-page) :is(main,.rv-main) :is(.rv86-kicker,.pr-kicker){color:var(--pr-violet)}
@media(max-width:760px){body:not(.pr-admin-page) :is(main,.rv-main) :is(input,select,textarea){max-width:100%}}

/* V116 - charte publique, surcharge ciblee apres V114. Administration exclue. */
:root{--pr116-navy:var(--pr-ink);--pr116-blue:var(--pr-violet);--pr116-violet:var(--pr-violet);--pr116-magenta:var(--pr-violet);--pr116-lavender:var(--pr-surface-alt);--pr116-border:var(--pr-line);--pr116-gradient:var(--pr-gradient)}
body:not(.pr-admin-page){--pr-teal:var(--pr-violet);--pr18-teal:var(--pr-violet);--pr18-deep:var(--pr-ink);--pr18-ink:var(--pr-ink);--pr18-sage:var(--pr-surface-alt);--pr18-coral:var(--pr-violet);--pr59-teal:var(--pr-violet);--pr59-coral:var(--pr-violet);--pr114-ink:var(--pr-ink);--pr114-deep:var(--pr-ink);--pr114-primary:var(--pr-violet);--pr114-gradient:var(--pr116-gradient);--primary:var(--pr-violet);--primary-color:var(--pr-violet);--accent:var(--pr-violet);accent-color:var(--pr-violet)}
body:not(.pr-admin-page) :is(.pr-header .pr-brand-subtitle,.pr-header .pr-nav a,.pr-header .pr-menu-toggle){color:var(--pr116-navy)!important}
body:not(.pr-admin-page) :is(.pr-header .pr-nav a:hover,.pr-header .pr-nav a[aria-current=page]){background:var(--pr116-lavender)!important;color:var(--pr-violet)!important}
body:not(.pr-admin-page) :is(.pr18-footer.pr-footer,.pr-legal-next,.pr-cookie-banner){background:var(--pr-ink)!important;color:var(--pr-surface)!important}
body:not(.pr-admin-page) :is(.pr18-footer-contact,.pr18-mobile-rdv,.pr-cookie-banner button){background:var(--pr116-gradient)!important;color:var(--pr-surface)!important}
body:not(.pr-admin-page) :is(.pr18-faq-heading span,.pr18-faq summary:after,.pr18-faq details a,.pr-legal-kicker,.pr-legal-breadcrumb a,.pr-legal-toc a:hover,.pr-legal-section a,.pr-legal-next a,.rdv-privacy a,.pr23-back,.pr23-breadcrumb a,.pr23-help a,.pr23-support a){color:var(--pr-violet)!important}
body:not(.pr-admin-page) :is(.pr-legal-main,.pr23-account-page){color:var(--pr116-navy)}
body:not(.pr-admin-page) :is(.pr-legal-hero,.pr23-hero){background:linear-gradient(115deg,var(--pr-surface-alt),var(--pr-surface) 88%)!important;border-color:var(--pr116-border)!important}
body:not(.pr-admin-page) :is(.pr-legal-toc,.pr-legal-meta span,.pr-legal-number,.pr-legal-section code,.pr23-card-icon,.pr23-support,.pr23-help){background:var(--pr-surface-alt)!important;color:var(--pr-ink)!important;border-color:var(--pr116-border)!important}
body:not(.pr-admin-page) :is(.pr-legal-main h1,.pr-legal-main h2,.pr-legal-toc strong,.pr23-hero h1,.pr23-card h2,.pr23-support strong,.rdv-intro h1){color:var(--pr-ink)!important}
body:not(.pr-admin-page) :is(.pr23-eyebrow,.pr23-card-icon,.pr23-details dt){color:var(--pr-violet)!important}
body:not(.pr-admin-page) :is(.pr23-avatar,#buttonModifierMotDePasse,.pr-pill,.ag-btn:not(.ag-danger):not(.ag-secondary)){background:var(--pr116-gradient)!important;color:var(--pr-surface)!important;border-color:transparent!important}
body:not(.pr-admin-page) #buttonModifierMotDePasse:hover{filter:brightness(.92)}
body:not(.pr-admin-page) :is(.pr23-field input:focus,.pr-search:focus){outline-color:var(--pr-violet-300)!important;border-color:var(--pr-violet)!important}
body:not(.pr-admin-page) :is(.pr23-card,.pr23-field input,.pr18-faq details){border-color:var(--pr116-border)!important}
body:not(.pr-admin-page) :is(.pr23-show input,.rv-main input[type=checkbox],.rv-main input[type=radio]){accent-color:var(--pr-violet)}
body:not(.pr-admin-page) :is(.pr-legal-notice){background:var(--pr-surface-alt)!important;border-left-color:var(--pr-violet)!important;color:var(--pr-violet-900)!important}
body:not(.pr-admin-page) .pr-legal-next a{background:var(--pr-surface)!important}
body:not(.pr-admin-page) .pr-cookie-banner a{color:var(--pr-violet-100)!important}
body:not(.pr-admin-page) :is(.pr23-account-page a,.pr-legal-main a,.rv-main a):focus-visible{outline:3px solid var(--pr-violet);outline-offset:3px}
@media(max-width:760px){body:not(.pr-admin-page) :is(.pr23-card,.pr-legal-main,.rv-main){min-width:0}body:not(.pr-admin-page) :is(.pr23-field input,.rv-main input,.rv-main select,.rv-main textarea){max-width:100%;box-sizing:border-box}}

/* V119 - ajustements cibles de la page Services RH V52 ; pas de modification des traitements. */
body:not(.pr-admin-page).v52-body{
 --v52-navy:var(--pr-ink);--v52-navy-2:var(--pr-violet-900);--v52-coral:var(--pr-violet);
 --v52-coral-dark:var(--pr-violet);--v52-cream:var(--pr-surface-alt);--v52-soft:var(--pr-surface-alt);
 --v52-line:var(--pr-line);--v52-text:var(--pr-ink);--v52-muted:var(--pr-muted);
}
body:not(.pr-admin-page).v52-body .v52-hero{background:linear-gradient(135deg,var(--pr-surface) 0%,var(--pr-surface-alt) 70%,var(--pr-line) 100%)}
body:not(.pr-admin-page).v52-body :is(.v52-btn-primary,.v52-cta-primary){background:var(--pr-gradient);border-color:transparent;color:var(--pr-surface)}
body:not(.pr-admin-page).v52-body :is(a,button,input,select,textarea):focus-visible{outline:3px solid var(--pr-violet);outline-offset:3px}

/* V120: consolidation des composants publics historiques, sans regle globale de recoloration. */
body:not(.pr-admin-page) .pr23-account-page :is(.pr23-card,.pr23-hero,.pr23-support){border-color:var(--pr-line)}
body:not(.pr-admin-page) .pr23-account-page :is(.pr23-card a,.pr23-details a){color:var(--pr-violet)}
body:not(.pr-admin-page) :is(.v46-shell,.v46-detail) :is(a,.v46-eyebrow){color:var(--pr-violet)}
body:not(.pr-admin-page) :is(.v46-shell,.v46-detail) :is(h1,h2,h3){color:var(--pr-ink)}
body:not(.pr-admin-page) :is(.v46-shell,.v46-detail) :is(button,input[type=submit]):focus-visible{outline:3px solid var(--pr-violet);outline-offset:3px}
body:not(.pr-admin-page).pr74-prendre-rdv :is(input,select,textarea):focus-visible{outline:3px solid var(--pr-violet);outline-offset:3px}

/* V121 - correction des 7 pages publiques signalees; selecteurs confines aux pages. */
body:not(.pr-admin-page) :is(.v109-drh,.v109-missions,.v51-paie){color:var(--pr-ink)}
body:not(.pr-admin-page) :is(.v109-drh,.v109-missions,.v51-paie) :is(.w34-crumb,.w34-crumb a,.w34-kicker){color:var(--pr-violet)}
body:not(.pr-admin-page) :is(.v109-drh,.v109-missions,.v51-paie) :is(.w34-section h2,.w34-hero h1,.w34-hero h2){color:var(--pr-ink)}
body:not(.pr-admin-page) :is(.v109-drh,.v109-missions,.v51-paie) :is(.w34-content p,.w34-hero p){color:var(--pr-muted)}
body:not(.pr-admin-page) :is(.v109-drh,.v109-missions,.v51-paie) .w34-section{border-color:var(--pr-line)}
body:not(.pr-admin-page) :is(.v109-drh,.v109-missions,.v51-paie) .w34-hero{background:var(--pr-surface-alt)}
body:not(.pr-admin-page) :is(.v109-drh,.v109-missions,.v51-paie) .w34-cta{background:var(--pr-ink)}
body:not(.pr-admin-page) :is(.v109-drh,.v109-missions,.v51-paie) .w34-btn{background:var(--pr-gradient);color:white}
body:not(.pr-admin-page) .v109-formations .v48-hero{background:var(--pr-surface-alt)}
body:not(.pr-admin-page) .v109-formations :is(.v48-hero h1,.v48-theme h2){color:var(--pr-ink)}
body:not(.pr-admin-page) .v109-formations .v48-eyebrow{color:var(--pr-violet)}
body:not(.pr-admin-page) .v109-formations .v48-btn{background:var(--pr-violet);color:white}
body:not(.pr-admin-page) .v109-formations .v48-btn.v48-outline{background:white;color:var(--pr-violet)!important;border-color:var(--pr-violet-300)}
body:not(.pr-admin-page) .v109-formations .v48-theme{border-color:var(--pr-line)}
body:not(.pr-admin-page) .rv85 :is(.rv85-hero,.rv85-panel){border-color:var(--pr-line)}
body:not(.pr-admin-page) .temo-page :is(a,button,input,textarea):focus-visible,
body:not(.pr-admin-page) .rv85 :is(a,button,input,select):focus-visible,
body:not(.pr-admin-page) .pr104-partners-page a:focus-visible{outline:3px solid var(--pr-violet);outline-offset:3px}
body:not(.pr-admin-page) .pr104-partners-page :is(.v47-tag,.v47-card a,.pr104-kicker){color:var(--pr-violet)}


/* pilotrh-visibilite.css */
/* V142 - Visibilité du site public : message aux visiteurs, bandeau administrateur, page de réglage. */

/* Message « Contenus bientôt disponibles » à la place des contenus masqués */
.pr142-bientot {
  box-sizing: border-box;
  max-width: 760px;
  margin: 28px auto;
  padding: 34px 30px;
  border: 1px solid var(--pr-line);
  border-radius: var(--pr-radius-lg);
  background: var(--pr-surface-alt);
  color: var(--pr-ink);
  text-align: center;
}
.pr142-bientot p { margin: 0 auto; max-width: 560px; color: var(--pr-muted); line-height: 1.6; }
.pr142-bientot .pr142-bientot-titre {
  margin-bottom: 10px;
  font-size: var(--pr-h3, 22px);
  font-weight: 800;
  color: var(--pr-ink);
}
.pr142-bientot-lien {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 20px;
  padding: 11px 20px;
  border-radius: var(--pr-radius-btn);
  background: var(--pr-violet);
  color: var(--pr-surface) !important;
  font-weight: 700;
  text-decoration: none;
}
.pr142-bientot-lien:hover, .pr142-bientot-lien:focus-visible { background: var(--pr-violet-900); }

/* Bandeau vu par l'administrateur au-dessus d'une rubrique masquée */
.pr142-bandeau {
  box-sizing: border-box;
  max-width: 1200px;
  margin: 18px auto;
  padding: 12px 18px;
  border: 1px solid rgb(var(--pr-warning-rgb) / 0.35);
  border-radius: var(--pr-radius-sm);
  background: var(--pr-warning-bg);
  color: var(--pr-warning);
  font-size: 15px;
  line-height: 1.5;
  text-align: left;
}
.pr142-bandeau a { color: var(--pr-warning); font-weight: 700; text-decoration: underline; }

/* Page d'administration : une carte par rubrique avec son interrupteur */
.pr142-rubriques { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin: 0 0 22px; padding: 0; list-style: none; }
.pr142-rubrique {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 20px;
  border: 1px solid var(--pr-line);
  border-radius: var(--pr-radius);
  background: var(--pr-surface);
}
.pr142-rubrique h3 { margin: 0; font-size: 19px; }
.pr142-rubrique p { margin: 0; color: var(--pr-muted); font-size: 14px; line-height: 1.5; }
.pr142-rubrique-pied { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-top: auto; padding-top: 6px; }
.pr142-etat { border-radius: 100px; padding: 5px 10px; font-size: 12px; font-weight: 700; background: var(--pr-success-bg); color: var(--pr-success); }
.pr142-etat.is-masque { background: var(--pr-warning-bg); color: var(--pr-warning); }

.pr142-switch { display: inline-flex; align-items: center; gap: 10px; cursor: pointer; font-weight: 650; }
.pr142-switch input {
  appearance: none;
  position: relative;
  flex: none;
  width: 46px;
  height: 26px;
  margin: 0;
  border-radius: 100px;
  background: var(--pr-line);
  cursor: pointer;
  transition: background .2s;
}
.pr142-switch input::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 3px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: var(--pr-surface);
  box-shadow: 0 1px 3px rgb(var(--pr-ink-rgb) / 0.25);
  transition: transform .2s;
}
.pr142-switch input:checked { background: var(--pr-violet); }
.pr142-switch input:checked::after { transform: translateX(20px); }
.pr142-switch input:focus-visible { outline: 3px solid var(--pr-violet-300); outline-offset: 2px; }

@media (max-width: 700px) {
  .pr142-rubriques { grid-template-columns: 1fr; }
  .pr142-bientot { margin: 20px 16px; padding: 26px 20px; }
  .pr142-bandeau { margin: 14px 16px; }
}
@media (prefers-reduced-motion: reduce) {
  .pr142-switch input, .pr142-switch input::after { transition: none; }
}

/* pilotrh-formation.css */
/* V150 - Page d'une formation (/formation/<adresse>) et repères « En ligne / Sur devis » du catalogue. */
.cat150-item-fin{display:flex;align-items:center;flex-wrap:wrap;gap:10px;justify-content:flex-end}
.cat150-badge{display:inline-flex;align-items:center;border-radius:999px;padding:5px 12px;font-size:13px;font-weight:650;background:var(--pr-surface);color:var(--pr-muted);border:1px solid var(--pr-line);white-space:nowrap}
.cat150-badge.cat150-en-ligne{background:var(--pr-violet-100);color:var(--pr-violet-900);border-color:var(--pr-violet-200)}
.v49-item .v50-info{text-decoration:none}

.cat150-page{max-width:1180px}
.cat150-fil{font-size:14px;color:var(--pr-muted);margin:0 0 18px}
.cat150-fil a{text-decoration:none}
.cat150-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;padding:30px 32px;border-radius:var(--pr-radius-lg);background:var(--pr-surface-alt);border:1px solid var(--pr-line);margin-bottom:28px}
.cat150-hero h1{font-size:var(--pr-h1);line-height:1.15;margin:8px 0 12px}
.cat150-resume{font-size:1.08rem;color:var(--pr-ink);margin:0 0 16px;max-width:62ch}
.cat150-reperes{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.cat150-reperes li{border-radius:999px;padding:5px 12px;font-size:13px;font-weight:600;background:var(--pr-surface);border:1px solid var(--pr-line);color:var(--pr-ink)}
.cat150-couverture{width:min(340px,32vw);aspect-ratio:16/10;object-fit:cover;border-radius:var(--pr-radius)}
.cat150-corps{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:32px;align-items:start}
.cat150-bloc{margin:0 0 28px}
.cat150-bloc h2{font-size:var(--pr-h3);margin:0 0 10px}
.cat150-bloc p{margin:0;line-height:1.65}
.cat150-sommaire{margin:0;padding:0;list-style:none;counter-reset:cat150;border:1px solid var(--pr-line);border-radius:var(--pr-radius)}
.cat150-sommaire li{counter-increment:cat150;display:flex;justify-content:space-between;gap:16px;padding:13px 16px;border-top:1px solid var(--pr-line)}
.cat150-sommaire li:first-child{border-top:0}
.cat150-sommaire li span::before{content:counter(cat150) ". ";font-weight:700;color:var(--pr-violet)}
.cat150-sommaire small{color:var(--pr-muted);white-space:nowrap}
.cat150-lecon h3{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.cat150-lecon h3 small{font-weight:400;color:var(--pr-muted);font-size:.85rem}
.cat150-lecon video{width:100%;border-radius:12px;background:var(--pr-ink);margin-top:8px}
.cat150-num{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--pr-violet);color:var(--pr-on-dark);font-size:14px;font-weight:800}
.cat150-encart{position:sticky;top:110px;padding:22px;border:1px solid var(--pr-line);border-radius:var(--pr-radius-lg);background:var(--pr-surface);box-shadow:0 12px 32px rgb(var(--pr-ink-rgb) / 0.06)}
.cat150-encart h2{font-size:1.15rem;margin:0 0 8px}
.cat150-encart p{margin:0 0 14px;line-height:1.55}
.cat150-encart .v48-btn{width:100%;box-sizing:border-box;margin:0 0 10px;text-align:center}
.cat150-encart form{margin:0}
.cat150-encart hr{border:0;border-top:1px solid var(--pr-line);margin:18px 0}
.cat150-actions{display:grid;gap:0}
.cat150-petit{font-size:14px;color:var(--pr-muted)}
@media(max-width:900px){
 .cat150-hero{grid-template-columns:1fr;padding:22px}
 .cat150-couverture{width:100%}
 .cat150-corps{grid-template-columns:1fr}
 .cat150-encart{position:static;order:-1}
}
/* V152 - Achat en ligne dans l'encart de la page d'une formation, et page de confirmation. */
.cat150-prix{font-size:1.9rem;font-weight:800;color:var(--pr-ink);margin:4px 0 10px!important}
.cat150-prix small{font-size:.8rem;font-weight:600;color:var(--pr-muted)}
.cat150-achat{display:grid;gap:10px;margin:0 0 12px}
.cat150-achat label{display:grid;gap:4px;font-weight:600;font-size:14px}
.cat150-achat input:not([type=checkbox]){border:1px solid var(--pr-line);border-radius:9px;padding:10px;font:inherit}
.cat150-achat .cat150-case{display:flex;align-items:flex-start;gap:8px;font-weight:400;font-size:13px;line-height:1.45}
.cat150-achat .cat150-case input{margin-top:3px;accent-color:var(--pr-violet)}
.cat150-confirmation{position:static;max-width:640px;margin:20px auto}
.cat150-confirmation h1{font-size:var(--pr-h2);margin:0 0 14px}

