/* ===========================================================================================
   LA CHARTE APEX — reproduction stricte de la maquette de reference (21/10/2026).

   D OU ELLE VIENT. Les regles sont EXTRAITES de la feuille de style de la maquette, pas reecrites :
   memes valeurs, memes points de rupture (1000, 760, 680, 600 px), memes proportions de grille.
   Les reinterpreter aurait produit une ressemblance, pas une reproduction.

   POURQUOI UN FICHIER A PART. La maquette porte sa propre echelle d espacement — 34, 27, 22, 19,
   13 px — et la traduire dans celle du depot (4/8/12/16/20/24/32) l aurait deformee. Le test
   `echelle` garde les quatre feuilles du depot, ou aucune valeur brute n entre ; cette charte-ci
   est un systeme importe, avec sa propre coherence, et elle reste chez elle.

   POURQUOI TOUT EST PREFIXE PAR `.home`. Un ecran temoin ne doit en deplacer aucun autre. La
   maquette nomme `--ink`, `--muted` et `--line` — trois jetons qui EXISTENT DEJA dans le depot,
   avec d autres valeurs. Les poser sur `:root` aurait repeint les 839 autres pages d un seul coup ;
   ils sont donc poses sur `.home`.
   =========================================================================================== */

/* LE TITRE DU HEROS EST UN <h1>, ET LA MAQUETTE DIT <h2>. Elle vit dans un document d audit qui
   a deja son h1 ; une vraie page doit porter le sien. Les selecteurs sont donc elargis a h1 —
   l aspect ne change pas d un pixel, mais sans cela la regle « le titre occupe les deux colonnes »
   ne s appliquait plus, et a 375 px le titre se cassait au milieu d un mot : « Comprendre.Es /
   sayer. » C est l oeil qui l a vu ; la sonde mesurait la grille du parent et la trouvait juste. */
/* LES JETONS ONT DEMENAGE A LA RACINE. Quand la charte ne tenait que l accueil, ils etaient poses
   ici pour ne pas repeindre les 839 autres pages. Maintenant que TOUT le site la porte, ils vivent
   dans `assets/style.css` — une seule palette, un seul endroit ou la changer. Il ne reste ici que
   les deux noms propres a la maquette, rendus a ce que la racine declare : si la palette bouge,
   l accueil bouge avec elle, et ne peut plus deriver en silence. */
body.home{
  --ink:var(--fg); --paper:var(--sheet);
  background:var(--bg); color:var(--ink);
}
/* LES COULEURS DE LA MAQUETTE, EN JETONS. Elles valent exactement ce que la maquette
   ecrivait : le rendu clair est inchange, au caractere pres. Les nommer permet au theme
   sombre de les redefinir sans toucher a une seule regle. */
body.home{
  --c-fff:#fff;
  --c-24383008:#24383008;
  --c-d9cbee:#d9cbee;
  --c-cdbddf:#cdbddf;
  --c-24383014:#24383014;
  --c-d9cdee:#d9cdee;
  --c-748579:#748579;
  --c-fff0de:#fff0de;
  --c-ddc7a6:#ddc7a6;
  --c-eaf4ff:#eaf4ff;
  --c-bed4e5:#bed4e5;
  --c-fce9e5:#fce9e5;
  --c-e3c3bb:#e3c3bb;
  --c-8e9d92:#8e9d92;
  --c-cddce7:#cddce7;
  --c-dcebf6:#dcebf6;
  --c-dfc9aa:#dfc9aa;
  --c-fff9:#fff9;
  --c-d1c5e4:#d1c5e4;
  --c-c8d9be:#c8d9be;
  --c-eeedfc:#eeedfc;
  --c-cbbce2:#cbbce2;
  --c-ffffff6b:#ffffff6b;
  --c-4e4069:#4e4069;
  --c-ffe09a:#ffe09a;
  --c-fffaf0:#fffaf0;
  --c-e4d8f7:#e4d8f7;
  --c-593d84:#593d84;
  --c-dbeccf:#dbeccf;
  --c-f6dbdc:#f6dbdc;
  --c-ec9e65:#ec9e65;
  --c-fffc:#fffc;
  --c-9d8bce:#9d8bce;
  --c-83ad88:#83ad88;
  --c-563a82:#563a82;
  --c-fffd:#fffd;
  --c-c9d9c3:#c9d9c3;
}

/* LE THEME SOMBRE DE L ACCUEIL. La maquette n en a pas : ces valeurs ne sont pas copiees,
   elles sont DERIVEES — meme teinte, meme saturation (plafonnee pour les grandes surfaces),
   et la clarte retournee. Une surface tres claire devient un fond profond, une encre
   devient une encre claire, une couleur franche garde sa force. Le resultat est MESURE
   dans la page : zero nœud de texte sous son seuil de contraste. */
@media (prefers-color-scheme:dark){:root:not([data-theme=light]) body.home{
  --c-fff:#171717;
  --c-24383008:#b3cec308;
  --c-d9cbee:#241a33;
  --c-cdbddf:#3c2b4f;
  --c-24383014:#b3cec314;
  --c-d9cdee:#231a32;
  --c-748579:#c3cbc5;
  --c-fff0de:#281f15;
  --c-ddc7a6:#55452e;
  --c-eaf4ff:#131b25;
  --c-bed4e5:#2a3e4d;
  --c-fce9e5:#271714;
  --c-e3c3bb:#4f322a;
  --c-8e9d92:#c3cbc5;
  --c-cddce7:#283b4a;
  --c-dcebf6:#16222b;
  --c-dfc9aa:#53432d;
  --c-fff9:#17171799;
  --c-d1c5e4:#37294c;
  --c-c8d9be:#394e2d;
  --c-eeedfc:#141325;
  --c-cbbce2:#392a4f;
  --c-ffffff6b:#1717176b;
  --c-4e4069:#b1a5c8;
  --c-ffe09a:#50442b;
  --c-fffaf0:#231d12;
  --c-e4d8f7:#1f172c;
  --c-593d84:#a78fcb;
  --c-dbeccf:#24321a;
  --c-f6dbdc:#2c1617;
  --c-ec9e65:#f3c09b;
  --c-fffc:#171717cc;
  --c-9d8bce:#bcb0de;
  --c-83ad88:#bbd2be;
  --c-563a82:#a38acb;
  --c-fffd:#171717dd;
  --c-c9d9c3:#374a2f;
}}
:root[data-theme=dark] body.home{
  --c-fff:#171717;
  --c-24383008:#b3cec308;
  --c-d9cbee:#241a33;
  --c-cdbddf:#3c2b4f;
  --c-24383014:#b3cec314;
  --c-d9cdee:#231a32;
  --c-748579:#c3cbc5;
  --c-fff0de:#281f15;
  --c-ddc7a6:#55452e;
  --c-eaf4ff:#131b25;
  --c-bed4e5:#2a3e4d;
  --c-fce9e5:#271714;
  --c-e3c3bb:#4f322a;
  --c-8e9d92:#c3cbc5;
  --c-cddce7:#283b4a;
  --c-dcebf6:#16222b;
  --c-dfc9aa:#53432d;
  --c-fff9:#17171799;
  --c-d1c5e4:#37294c;
  --c-c8d9be:#394e2d;
  --c-eeedfc:#141325;
  --c-cbbce2:#392a4f;
  --c-ffffff6b:#1717176b;
  --c-4e4069:#b1a5c8;
  --c-ffe09a:#50442b;
  --c-fffaf0:#231d12;
  --c-e4d8f7:#1f172c;
  --c-593d84:#a78fcb;
  --c-dbeccf:#24321a;
  --c-f6dbdc:#2c1617;
  --c-ec9e65:#f3c09b;
  --c-fffc:#171717cc;
  --c-9d8bce:#bcb0de;
  --c-83ad88:#bbd2be;
  --c-563a82:#a38acb;
  --c-fffd:#171717dd;
  --c-c9d9c3:#374a2f;
}


.home .eyebrow{display:block;font-size:13px;letter-spacing:.07em;text-transform:uppercase;font-weight:700;color:var(--muted);margin-bottom:12px}
.home .jumpnav a,.home .example-questions button,.home .example-questions a,.home .pill,.home .mock-nav a,.home .mock-nav-mobile summary{transition:border-color .16s ease,box-shadow .16s ease}
.home .jumpnav a:hover,.home .jumpnav a:focus-visible,.home .example-questions button:hover,.home .example-questions a:hover,.home .example-questions button:focus-visible,.home .example-questions a:focus-visible,.home .pill:hover,.home .pill:focus-visible,.home .mock-nav a:hover,.home .mock-nav a:focus-visible,.home .mock-nav-mobile summary:hover,.home .mock-nav-mobile summary:focus-visible{border-color:var(--violet);box-shadow:inset 0 0 0 1px var(--violet)}
.home .small{font-size:14px;color:var(--muted)}
.home .mock{background:var(--c-fff);border:1px solid var(--line);border-radius:24px;box-shadow:0 14px 40px var(--c-24383008)}
.home .mock-nav{position:relative;display:flex;justify-content:space-between;gap:18px;align-items:center;padding:18px 26px;border-bottom:1px solid var(--line)}
.home .mock-nav-desktop{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.home .mock-nav a{border:1px solid transparent;border-radius:22px;padding:8px 12px;font-size:14px;min-height:44px;display:flex;align-items:center;text-decoration:none}
.home .mock-nav-mobile{display:none;border:0;padding:0}
.home .mock-nav-mobile summary{border:1px solid var(--c-d9cbee);border-radius:12px;padding:8px 14px;min-height:44px;background:var(--tone-lilac);list-style:none}
.home .mock-nav-mobile summary::-webkit-details-marker{display:none}
.home .mock-mobile-links{position:absolute;top:calc(100% - 4px);right:12px;width:min(270px,calc(100vw - 52px));z-index:5;padding:8px;border:1px solid var(--c-cdbddf);border-radius:14px;background:var(--tone-lilac);box-shadow:0 12px 24px var(--c-24383014)}
.home .mock-mobile-links a{border-color:transparent;padding:10px 12px;display:block}
.home .mock-main{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:20px;padding:34px 34px 20px;align-items:center}
.home .mock-main>*{min-width:0}.home .mock-main h2,.home .mock-main h1{font-size:clamp(32px,4vw,48px);line-height:1.09;max-width:15ch;margin-bottom:16px}
.home .mock-main p{color:var(--muted);max-width:39ch}
.home .hero-art{width:100%;height:210px}
.home .search-area{padding:22px 24px;margin:0 24px 22px;border:1px solid var(--c-d9cdee);border-radius:18px;background:var(--tone-lilac)}
.home .search-area label{font-size:16px;font-weight:650;display:block;margin-bottom:8px}
.home .search-row{display:flex;gap:10px}
.home .search-row input{min-width:0;flex:1;border:1.5px solid var(--c-748579);border-radius:12px;background:var(--c-fff);padding:12px 14px;color:var(--ink);height:52px}
.home .primary{border:1px solid var(--deep);border-radius:12px;background:var(--deep);color:var(--c-fff);padding:12px 20px;font-weight:650;min-height:48px;max-width:100%;text-align:center}
/* Les chips de niveau sont des LIENS, pas des boutons : ils naviguent. Meme aspect, semantique
   juste — un bouton qui change de page est un lien deguise. */
.home .example-questions a{text-decoration:none;display:inline-flex;align-items:center}
.home .example-questions{display:flex;gap:8px;flex-wrap:wrap;margin-top:13px}
.home .example-questions button,.home .example-questions a{background:var(--c-fff0de);border:1px solid var(--c-ddc7a6);color:var(--ink);border-radius:24px;padding:9px 13px;font-size:14px;min-height:44px;max-width:100%;white-space:normal}
.home .example-questions button:nth-child(2),.home .example-questions a:nth-child(2){background:var(--c-eaf4ff);border-color:var(--c-bed4e5)}
.home .example-questions button:nth-child(3),.home .example-questions a:nth-child(3){background:var(--c-fce9e5);border-color:var(--c-e3c3bb)}
.home .filters{display:flex;justify-content:space-between;gap:18px;align-items:end;margin-top:18px}
.home .filters .small{max-width:60ch}
.home .filters label{font-size:14px;margin:0 0 5px}
.home .filters select{background:var(--c-fff);border:1px solid var(--c-8e9d92);color:var(--ink);border-radius:8px;padding:8px;min-height:44px;max-width:100%}
.home .filters>div{min-width:170px}
.home .status{font-size:14px;margin:16px 0 0;color:var(--muted);min-height:23px}
.home .results{display:grid;gap:12px;margin-top:12px}
.home .mock-caption{margin:14px 0 0;font-size:14px;color:var(--muted)}
@media(max-width:1000px){
  .home .grid3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .home .grid3>.box:last-child:nth-child(odd){grid-column:1/-1}
  .home .intro{grid-template-columns:minmax(0,1fr)}
  .home .intro .badge{justify-self:start}
  .home .swatches{grid-template-columns:repeat(3,minmax(0,1fr))}
  .home .art-cards{grid-template-columns:repeat(3,minmax(0,1fr))}
  .home .grid2{grid-template-columns:1fr}
  .home .mock-main{padding:26px}
  .home .filters{align-items:start}
  .home .filters>p{min-width:0}
  .home .mock-nav{padding:16px 20px}
  .home .mock-nav-desktop{gap:0}
  .home .mock-nav a{padding:8px;font-size:14px}
}
@media(max-width:760px){
  .home .doc-top{align-items:start}
  .home .doc-links{gap:8px;justify-content:flex-end}
  .home .mock-nav-desktop{display:none}
  .home .mock-nav-mobile{display:block}
  .home .mock-main{grid-template-columns:1fr;padding:24px 20px 16px;gap:4px}.home .mock-main h2,.home .mock-main h1{max-width:100%}
  .home .hero-art{height:130px}
  .home .search-row{flex-wrap:wrap}
  .home .search-row input{flex-basis:100%;width:100%}
  .home .search-row .primary{width:100%}
  .home .search-area{margin:0 14px 18px;padding:18px}
  .home .filters{display:block}
  .home .filters>div{margin-top:14px;min-width:0}
  .home .filters select{width:100%}
  .home .art-cards{grid-template-columns:1fr;padding:0 14px 18px;gap:12px}
  .home .art-card{display:grid;grid-template-columns:104px minmax(0,1fr);gap:0 12px;align-items:center;padding:12px}
  .home .art-card svg{height:90px;grid-row:1/3}
  .home .art-card b{align-self:end;font-size:16px}
  .home .art-card small{align-self:start;font-size:14px}
  .home .flow{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .home .flow>span{display:none}
}
@media(max-width:680px){
  .home .wrap{width:calc(100% - 24px)}
  .home .doc-top{display:block;padding:16px 0}
  .home .doc-links{justify-content:flex-start;display:block;margin-top:8px;font-size:13px}
  .home .doc-links>a{display:inline-block;margin-top:8px;min-height:32px}
  .home .intro{padding:26px 0 22px;gap:16px}
  .home .eyebrow{font-size:12px}
  .home .jumpnav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .home .jumpnav a{padding:10px;font-size:14px;line-height:1.4;border-radius:15px;min-width:0}
  .home .section{padding:34px 0}
  .home .grid3,.home .grid2{grid-template-columns:1fr}
  .home .grid3>.box:last-child:nth-child(odd){grid-column:auto}
  .home .box{padding:20px}
  .home .mock-nav{padding:12px 16px}
  .home .mock-main{padding:20px 18px 12px}.home .mock-main h2,.home .mock-main h1{font-size:32px}
  .home .mock-main .eyebrow{font-size:11px}
  .home .mock-main p{font-size:16px}
  .home .search-area{margin:0 12px 16px;padding:16px}
  .home .search-area label{font-size:16px}
  .home .search-row input{padding:11px 10px}
  .home .example-questions{display:grid;grid-template-columns:1fr;gap:8px}
  .home .example-questions button,.home .example-questions a{text-align:left;font-size:15px;padding:10px 13px}
  .home .art-cards{padding:0 12px 16px}
  .home .art-card{grid-template-columns:90px minmax(0,1fr);gap:0 10px}
  .home .swatches{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .home .swatch p{margin:8px;font-size:12px}
  .home .swatch div{height:44px}
  .home .flow{grid-template-columns:1fr}
  .home .result{padding:15px}
  .home .result h3{font-size:18px}
  .home .result details{font-size:15px}
  .home .table-wrap{overflow:visible;background:transparent;border:0}
  .home table{display:block;min-width:0;width:100%;table-layout:auto}
  .home thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
  .home tbody{display:grid;gap:14px}
  .home tbody tr{display:block;border:1px solid var(--c-cddce7);border-radius:14px;background:var(--tone-blue);padding:6px 0}
  .home td,.home td:first-child{display:block;width:100%;padding:9px 16px;border:0;font-weight:400}
  .home td:first-child{background:var(--c-dcebf6);border-radius:12px 12px 0 0;font-weight:700}
  .home td::before{content:attr(data-label);display:block;font-size:12px;font-weight:700;color:var(--muted);margin-bottom:3px}
  .home td:empty{display:none}
  .home .prompt-text{font-size:14px;padding:12px}
  .home .prompt-link{width:100%;font-size:15px}
  .home .small,.home .mock-caption{font-size:14px}
}
@media(prefers-reduced-motion:reduce){
  .home{scroll-behavior:auto}
  .home .jumpnav a,.home .example-questions button,.home .example-questions a,.home .pill,.home .mock-nav a,.home .mock-nav-mobile summary{transition:none}
}
@media print{
  .home{background:var(--c-fff)}
  .home .wrap{width:100%}
  .home .mock{box-shadow:none}
  .home .doc-links,.home .jumpnav,.home .prompt-text,.home .mock-nav-mobile{display:none}
  .home .section{padding:24px 0}
  .home .table-wrap{overflow:visible}
  .home table{font-size:12px}
  .home h1{font-size:38px}
}
.home .doc-top,.home .mock-nav{border-bottom:0}
.home .section.band-apricot{--band-bg:var(--tone-apricot)}
.home .section.band-sage{--band-bg:var(--tone-sage)}
.home .section.band-blue{--band-bg:var(--tone-blue)}
.home .section.band-lilac{--band-bg:var(--tone-lilac)}
.home .section.band-rose{--band-bg:var(--tone-rose)}
/* LE DEPOT MASQUE `h1 br` SOUS 750 PX (assets/style.css) : sur un telephone, la coupure ecrite
   dans un titre de cours y gacherait une ligne. LE HEROS DE LA MAQUETTE, LUI, PORTE SA COUPURE —
   « Comprendre. / Essayer. Avancer. » — et le balisage de reference ne met aucun espace autour du
   `<br>` : masquee, la coupure donnait « Comprendre.Essayer. ». Elle est rendue au seul heros de
   l accueil, et l espace est desormais ECRIT dans le balisage, pour que la phrase reste juste meme
   si une regle venait a masquer la coupure ailleurs. */
.home .hero-copy h1 br{display:inline}
.home .audience-hero{align-items:center;gap:38px;padding:34px}
.home .hero-copy>p{font-size:18px;max-width:34ch}
.home .hero-illustration{width:min(290px,100%);height:180px;display:block;margin-top:12px}
.home .entry-paths{display:grid;gap:13px}
.home .entry-label{margin:0;font-weight:650;color:var(--ink)}
.home .entry-path{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:94px;padding:19px 20px;border:1px solid var(--c-dfc9aa);border-radius:17px;text-decoration:none;color:var(--ink);background:var(--tone-apricot);transition:border-color .16s,box-shadow .16s}
.home .entry-path>span:first-child{min-width:0}
.home .entry-path strong{display:block;font-size:18px;font-weight:700}
.home .entry-path small{display:block;font-size:15px;line-height:1.5;color:var(--muted);margin-top:3px}
.home .entry-path em{font-size:12px;font-style:normal;display:inline-block;padding:2px 8px;border-radius:15px;background:var(--c-fff9);vertical-align:middle;margin-left:5px}
.home .entry-parent{background:var(--tone-lilac);border-color:var(--c-d1c5e4)}
.home .entry-teacher{background:var(--tone-sage);border-color:var(--c-c8d9be)}
/* AJOUT AU-DELA DE LA MAQUETTE (09/11/2026) : la quatrieme entree, « Etablissement », qui mene a la page de l ERP
   (/erp). Elle prend la quatrieme teinte de la charte, le bleu, et la bordure que la charte donne deja a ce bleu
   (chips de niveau) : deux jetons qui ont leur valeur sombre, rien de nouveau a regler. */
.home .entry-school{background:var(--tone-blue);border-color:var(--c-bed4e5)}
.home .entry-arrow{font-size:23px;color:var(--violet);flex:none}
.home .entry-path:hover,.home .entry-path:focus-visible{border-color:var(--violet);box-shadow:inset 0 0 0 1px var(--violet)}
.home .landing-band{margin:22px 20px;padding:34px;border:0;border-radius:22px;min-width:0}.home .landing-band h2,.home .landing-band h1{font-size:clamp(27px,3vw,36px);line-height:1.17}
.home .learning-band{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:34px;background:var(--tone-apricot)}
.home .band-illustration svg{display:block;width:100%;height:250px}
.home .band-copy{min-width:0}
.home .band-copy>p{max-width:49ch}
.home .learning-steps{list-style:none;padding:0;margin:18px 0}
.home .learning-steps li{position:relative;padding-left:27px;margin:9px 0}
.home .learning-steps li:before{content:'✓';position:absolute;left:0;font-weight:800;color:var(--deep)}
.home .text-action{display:inline-flex;align-items:center;gap:12px;min-height:44px;padding:7px 0;font-weight:650;text-decoration:underline}
.home .audience-band{background:var(--c-eeedfc);padding:34px}
.home .audience-intro{margin-bottom:22px;color:var(--muted)}
.home .audience-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:28px}
.home .audience-tabs [role=tab]{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;min-width:110px;padding:11px 17px;border:1px solid var(--c-cbbce2);border-radius:12px;background:var(--c-ffffff6b);color:var(--ink);font-size:16px;font-weight:600}
.home .audience-tabs [role=tab][aria-selected=true]{background:var(--violet);border-color:var(--violet);color:var(--c-fff)}
.home .audience-tabs [role=tab]:hover{border-color:var(--violet);box-shadow:inset 0 0 0 1px var(--violet)}
.home .coming-label{font-size:12px;font-weight:600;white-space:nowrap;padding:2px 7px;border-radius:14px;background:var(--c-fff9);color:var(--c-4e4069)}
.home .audience-tabs [aria-selected=true] .coming-label{background:var(--c-fff);color:var(--c-4e4069)}
.home .audience-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:36px}
.home .audience-panel h3{font-size:clamp(23px,2.5vw,28px);line-height:1.25}
.home .audience-panel p,.home .audience-panel li{font-size:16px}
.home .audience-action{display:inline-flex;text-decoration:none;margin-top:10px;align-items:center;justify-content:center}
.home .audience-panel .example-label{font-size:13px;margin:12px 0 0;color:var(--muted)}
.home .audience-panel figure{margin:0;padding:27px;border-radius:20px;background:var(--c-ffe09a);min-width:0}
.home .audience-panel figcaption{font-size:17px;font-weight:700;line-height:1.4}
.home .path-figure>figcaption{margin-bottom:18px}
.home .path-figure ol{list-style:none;padding:0;margin:0;display:grid;gap:11px}
.home .path-figure li{display:flex;align-items:center;gap:13px;background:var(--c-fffaf0);padding:13px 15px;border-radius:12px;margin:0}
.home .path-figure li>span{display:grid;place-items:center;flex:none;width:30px;height:30px;border-radius:50%;background:var(--c-e4d8f7);color:var(--c-593d84);font-weight:700}
.home .path-figure li>div{min-width:0}
.home .path-figure b,.home .path-figure small{display:block}
.home .path-figure small{font-size:14px;color:var(--muted)}
.home .path-figure>p{font-size:13px;margin:16px 0 0;color:var(--muted)}
.home .audience-panel .parent-figure{background:var(--c-dbeccf);text-align:center}
.home .parent-figure svg{display:block;width:100%;height:220px}
.home .parent-figure p{font-size:14px;margin:10px 0 0}
.home .audience-panel .future-figure{background:var(--c-f6dbdc);text-align:center}
.home .future-figure>p{font-size:14px;margin:12px 0 0}
.home .future-books{height:150px;display:flex;justify-content:center;align-items:end;gap:11px;margin:0 0 24px}
.home .future-books span{display:block;width:42px;height:110px;border-radius:9px;background:var(--c-ec9e65);transform:rotate(-9deg);border:5px solid var(--c-fffc)}
.home .future-books span:nth-child(2){height:132px;transform:rotate(4deg);background:var(--c-9d8bce)}
.home .future-books span:nth-child(3){height:98px;transform:rotate(12deg);background:var(--c-83ad88)}
.home .offer-status{font-size:14px!important;font-weight:700;color:var(--c-563a82);display:inline-block;padding:7px 12px;background:var(--c-fffd);border-radius:12px}
.home .teacher-context{font-size:14px!important;color:var(--muted);margin-bottom:0}
@media(max-width:1000px){
  .home .audience-hero{gap:24px;padding:28px}
  .home .hero-illustration{height:150px}
  .home .landing-band{padding:27px;gap:24px}
  .home .audience-panel{gap:24px}
  .home .audience-panel figure{padding:21px}
  .home .entry-path{padding:17px}
}
@media(max-width:760px){
  .home .audience-hero{grid-template-columns:1fr;gap:16px;padding:24px 20px}
  .home .hero-copy{display:grid;grid-template-columns:minmax(0,1fr) 110px;gap:0 10px;align-items:center}.home .hero-copy .eyebrow,.home .hero-copy h2,.home .hero-copy h1{grid-column:1/-1}.home .hero-copy h2,.home .hero-copy h1{font-size:34px}
  .home .hero-copy>p{font-size:16px;margin-bottom:0}
  .home .hero-illustration{height:105px;grid-column:2;grid-row:3;margin:0;width:100%}
  .home .entry-paths{gap:10px}
  .home .entry-path{min-height:82px;padding:15px 17px}
  .home .entry-path strong{font-size:17px}
  .home .entry-path small{font-size:15px}
  .home .landing-band{margin:16px 14px;padding:24px}
  .home .learning-band{grid-template-columns:1fr;gap:16px}
  .home .learning-band .band-copy{grid-row:1}
  .home .band-illustration svg{height:175px}
  .home .audience-panel{grid-template-columns:1fr;gap:24px}
  .home .audience-panel figure{padding:21px}
  .home .parent-figure svg{height:180px}
  .home .audience-tabs{gap:9px;margin-bottom:24px}
  .home .audience-tabs [role=tab]{flex:1 1 auto}
  .home .section{padding:26px;margin:20px 0}
  .home .section>.grid3,.home .section>.grid2{gap:16px}
}
@media(max-width:600px){
  .home .audience-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .home .audience-tabs [role=tab]{min-width:0;padding:11px 10px}
  .home .audience-tabs [role=tab]:last-child{grid-column:1/-1}
  .home .landing-band{margin:14px 12px;padding:22px 18px}
  .home .audience-panel .example-label{font-size:13px}
  .home .audience-action{width:100%}.home .hero-copy h2,.home .hero-copy h1{font-size:32px}
  .home .audience-hero{padding:20px 18px}
  .home .hero-copy{grid-template-columns:minmax(0,1fr) 88px}
  .home .hero-illustration{height:90px}
  .home .entry-path strong{font-size:17px}
  .home .entry-path small{font-size:14px}
  .home .entry-path em{font-size:12px}
  .home .section{padding:24px 18px;border-radius:20px}
  .home .section>.grid3,.home .section>.grid2{gap:14px}
  .home .section .table-wrap{margin-top:12px}
  .home .audience-panel figure{padding:18px}
  .home .path-figure li{padding:12px}
  .home .audience-panel li{font-size:16px}.home .landing-band h2 br,.home .landing-band h1 br{display:none}
}
@media(prefers-reduced-motion:reduce){
  .home .entry-path{transition:none}
}
.home .selection-mark{display:none;font-weight:800}
.home .audience-tabs [aria-selected="true"] .selection-mark{display:inline}

/* ---------------------------------------------------------------------------------------------
   AJOUT AU-DELA DE LA MAQUETTE, et il est signale comme tel.

   La maquette ne contient pas la FAQ de l accueil ; ses depliants preexistent au portage et la
   sonde les trouve a 24 PX, sur les cinq largeurs. Un <summary> est un controle : il se touche du
   doigt comme un bouton. La regle reprend la cible et le contour de la charte, sans rien inventer
   d autre.
   --------------------------------------------------------------------------------------------- */
.home details summary{min-height:44px;display:flex;align-items:center;gap:10px;cursor:pointer;
  border-radius:12px;outline-offset:3px}
.home details summary:hover,.home details summary:focus-visible{outline:2px solid var(--violet)}

/* UNE REPONSE DE RECHERCHE. Ces regles viennent de la maquette : elles etaient parties avec
   celles du document d audit, alors qu elles habillent justement ce que la recherche ramene. */
.home .result{border:1px solid var(--c-c9d9c3);border-radius:13px;padding:18px;background:var(--tone-sage);min-width:0;display:block;text-decoration:none;color:var(--ink)}
.home .result:hover,.home .result:focus-visible{border-color:var(--violet);box-shadow:inset 0 0 0 1px var(--violet)}
.home .result h3{margin:0 0 8px;font-size:19px}
.home .result p{font-size:16px;margin:0 0 9px}
.home .result .meta{font-size:14px;color:var(--muted);margin:0}

/* LE RAIL A ETE RETIRE DE TOUT LE SITE, dans `assets/style.css` : l accueil n a plus besoin
   d une regle pour lui seul, et le site n a plus deux mises en page selon la page ou l on est. */
