/* Home isb-formation.fr : « relire l'offre de formation avant de signer ».
   Charte : global.css (Young Serif / Onest, #35231d, #c34b22, #f2ecea, cartes 45 px, ombre dure 0 5px 0, boutons .button). */
@font-face{font-family:"Young Serif";src:url("/fonts/charte/young-serif-latin.woff2") format("woff2");font-weight:400 700;font-style:normal;font-display:swap}
@font-face{font-family:"Onest";src:url("/fonts/charte/onest-latin.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Onest";src:url("/fonts/charte/onest-latin-ext.woff2") format("woff2");font-weight:100 900;font-style:normal;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
html:root{--f-titre:'Young Serif',Georgia,'Times New Roman',serif;--f-texte:'Onest',system-ui,-apple-system,'Segoe UI',sans-serif}
html:root body{font-family:var(--f-texte)}
html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-stopped{overflow:hidden}

/* en-tête : même colonne que la page (1100 px), menu lisible, plus de bandeau défilant */
[data-bandeau]{display:none!important}
:is(#tn-a#tn-b#tn-c,header) nav:not(nav nav){zoom:1!important}
:is(#tn-a#tn-b#tn-c,header) nav:not(nav nav) [data-usine='logo']{zoom:1!important}
html body .site-header .site-nav{width:min(100% - 32px,1100px)!important;max-width:1100px;height:84px;margin-inline:auto!important;gap:28px;padding:0;flex:none}
html body .site-header .brand-link img{height:46px;width:auto}
html body .site-header .nav-menu{margin-left:auto;gap:30px}
html body .site-header .nav-menu a{font-size:15px;font-weight:500;color:#35231d;white-space:nowrap!important}
html body .site-header .search-link{font-size:15px;font-weight:500;padding:9px 16px;white-space:nowrap!important}
html body .site-header .search-link:hover{background:#f2ecea}

/* pied de page : le bandeau de fin et le pied sombre ne font qu'un bloc, à la largeur des sections */
html body .uf-block[data-avant-footer]{width:min(100% - 32px,1100px);max-width:1100px;margin:120px auto 0;background:#35231d;color:#fff;border:0;border-radius:45px 45px 0 0;font-family:var(--f-texte)}
html body .uf-block[data-avant-footer] .about-banner{background:transparent;grid-template-columns:minmax(0,1fr) auto;gap:40px;padding:56px 60px 44px;border-bottom:1px solid color-mix(in srgb,#fff 16%,#35231d)}
html body .uf-block[data-avant-footer] .brand-name{display:none}
html body .uf-block[data-avant-footer] .about-banner>div{grid-column:1}
html body .uf-block[data-avant-footer] h2{font-family:var(--f-titre);font-weight:400;letter-spacing:-.01em;color:#fff;font-size:clamp(24px,2.6vw,32px);line-height:1.2;margin:0 0 10px;max-width:30ch}
html body .uf-block[data-avant-footer] p{color:color-mix(in srgb,#fff 78%,#35231d);font-size:16px}
html body .uf-block[data-avant-footer] .af-button{grid-column:2;grid-row:1;align-self:center;background:#fff;color:#35231d!important;border:1px solid #fff;border-radius:999px;min-height:48px;padding:12px 24px;font-size:16px;font-weight:500;text-decoration:none}
html body .uf-block[data-avant-footer] .af-button:hover{background:#c34b22;border-color:#c34b22;color:#fff!important}
html body .site-footer .footer-brand .button{background:transparent;color:#fff;border:1px solid #fff;border-radius:999px;padding:12px 24px;font-weight:500;margin-top:6px}
html body .site-footer .footer-brand .button:hover{background:#fff;color:#35231d}
html body .site-header .search-link,.tn-home .button,.tn-bascule,.tn-bascule button{border-radius:999px!important}
html body .uf-block[data-avant-footer]+.site-footer,html body .site-footer{margin-top:0;border-radius:0}
html body .uf-block[data-avant-footer]~.site-footer{margin-top:0;border-radius:0}

.tn-home{--encre:#35231d;--brique:#c34b22;--gris:#f2ecea;--blanc:#fff;
  --encre-2:color-mix(in srgb,#35231d 74%,#fff);--encre-3:color-mix(in srgb,#35231d 18%,#fff);--surligne:color-mix(in srgb,#c34b22 30%,#fff);--brique-pale:color-mix(in srgb,#c34b22 10%,#fff);
  --trait:1px solid #35231d;--ombre:0 5px 0 #35231d;--rayon:45px;--col:min(100% - 32px,1100px);
  color:var(--encre);background:var(--blanc);font-family:var(--f-texte);overflow:clip}
.tn-home h1,.tn-home h2,.tn-home h3{font-family:var(--f-titre);font-weight:400;letter-spacing:-.015em;color:var(--encre)}
.tn-home mark{background:linear-gradient(transparent 58%,var(--surligne) 58%,var(--surligne) 92%,transparent 92%);color:inherit;padding:0 .05em;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.tn-home svg{width:18px;height:18px;flex:none}
.tn-home ul,.tn-home ol{list-style:none;margin:0;padding:0}
.tn-home figure{margin:0}
:where(.tn-home) p{margin:0}

/* grammaire commune : pastille, titre centré à fin surlignée, carte grise à ombre dure */
.tn-kicker{display:inline-flex;align-items:center;gap:9px;background:var(--blanc);color:var(--encre);border:var(--trait);border-radius:999px;padding:5px 14px 5px 10px;font-size:13.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;line-height:1.3}
.tn-kicker:before{content:"";width:9px;height:9px;border-radius:50%;background:var(--brique);box-shadow:0 0 0 3px var(--brique-pale)}
.tn-section{width:var(--col);margin-inline:auto;padding-top:120px}
.tn-tete{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:780px;margin:0 auto 52px}
.tn-tete h2{font-size:clamp(32px,4vw,48px);line-height:1.1;margin:20px 0 0;text-wrap:balance}
.tn-tete p{margin-top:18px;max-width:62ch;color:var(--encre-2);font-size:18px;line-height:1.6;text-wrap:pretty}
.tn-carte{background:var(--gris);border:var(--trait);border-radius:var(--rayon);box-shadow:var(--ombre)}
.tn-mini{margin-bottom:14px;font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--encre-2)}
.tn-lien{display:inline-flex;align-items:center;gap:8px;font-weight:500;text-decoration:underline;text-decoration-color:var(--brique);text-decoration-thickness:2px;text-underline-offset:5px}
.tn-lien:hover{text-decoration-color:var(--encre)}
.tn-jauge5{display:inline-flex;gap:4px}.tn-jauge5 i{width:22px;height:6px;border-radius:3px;background:var(--encre-3);transition:background .3s}
.tn-home .button{gap:10px;font-weight:500;transition:background .2s,color .2s}
.tn-home .button:hover{background:var(--brique);border-color:var(--encre);color:var(--blanc)}
.tn-home .button-outline:hover{background:var(--gris);color:var(--encre)}
.tn-home a:focus-visible,.tn-home button:focus-visible,.tn-home input:focus-visible,.tn-home [tabindex]:focus-visible{outline:3px solid var(--encre);outline-offset:3px}
.tn-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px}
.tn-home button{cursor:pointer;color:var(--encre)}

/* ---------- hero : la proposition de formation relue à côté du rendez-vous de relecture ---------- */
.tn-hero{width:var(--col);margin-inline:auto;display:grid;grid-template-columns:minmax(0,400px) minmax(0,1fr);align-items:center;gap:44px;padding-block:64px 56px;min-height:min(calc(100svh - var(--header-h,85px)),820px)}
.tn-hero-copie{min-width:0}
.tn-hero h1{font-family:'Young Serif',Georgia,serif;font-size:clamp(40px,3.9vw,55px);line-height:1.06;margin:24px 0 0;text-wrap:balance}
.tn-chapeau{font-size:18.5px;line-height:1.6;color:var(--encre-2);max-width:46ch;margin:22px 0 30px}
.tn-reperes{display:grid;grid-template-columns:repeat(3,auto);justify-content:start;margin-top:40px!important;border-top:1px solid var(--encre-3);padding-top:22px!important}
.tn-reperes li{display:flex;flex-direction:column;gap:2px;padding-right:28px;margin-right:28px;border-right:1px solid var(--encre-3)}
.tn-reperes li:last-child{border:0;margin:0;padding:0}
.tn-reperes b{font-family:'Young Serif',Georgia,serif;font-weight:400;font-size:36px;line-height:1.1;color:var(--brique)}
.tn-reperes span{font-size:15px;color:var(--encre-2)}

.tn-scene{min-width:0;display:grid;grid-template-columns:repeat(20,minmax(0,1fr));align-items:center}
.tn-scene-photo{grid-area:1/1/2/12;margin-block:16px;position:relative;border:var(--trait);border-radius:var(--rayon);overflow:hidden;box-shadow:var(--ombre);aspect-ratio:4/5;background:var(--gris)}
.tn-scene-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 40%}
.tn-scene-legende{position:absolute;left:18px;bottom:18px;width:100%;max-width:calc(100% - 36px);background:var(--blanc);border:var(--trait);border-radius:16px;padding:9px 14px;font-size:13.5px;line-height:1.35;color:var(--encre-2)}
.tn-scene-legende b{display:block;color:var(--encre);font-size:14px;font-weight:600}
.tn-offre{grid-area:1/10/2/21;position:relative;z-index:2;background:var(--blanc);border:var(--trait);border-radius:28px;box-shadow:0 5px 0 #35231d,0 30px 60px -30px color-mix(in srgb,#35231d 45%,transparent);padding:20px 20px 16px}
.tn-offre-tete{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:4px 12px}
.tn-offre-tete>span:first-child{display:contents}
.tn-offre-tete>span:first-child small{grid-column:1/-1}
.tn-offre-tete>span:first-child small{display:block;font-size:11.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--encre-2)}
.tn-offre-tete strong{display:block;font-family:'Young Serif',Georgia,serif;font-weight:400;font-size:19px;line-height:1.2;margin-top:3px}
.tn-offre-compte{text-align:right;font-size:12px;line-height:1.3;color:var(--encre-2);white-space:nowrap}
.tn-offre-compte b{display:block;font-family:'Young Serif',Georgia,serif;font-weight:400;font-size:30px;line-height:1;color:var(--brique)}.tn-offre-compte b small{font-size:16px;color:var(--encre-2)}
.tn-offre-barre{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;margin:12px 0 6px}
.tn-offre-barre i{height:5px;border-radius:3px;background:var(--encre-3);transition:background .35s}
.tn-offre-barre i.on{background:var(--brique)}
.tn-ligne{position:relative;display:grid;grid-template-columns:18px minmax(0,1fr) 24px;align-items:center;gap:10px;padding:6px 8px;border-bottom:1px dashed var(--encre-3)}
.tn-ligne:last-child{border-bottom:0}
.tn-ligne:before{content:"";position:absolute;inset:3px -2px;border-radius:9px;background:var(--surligne);transform:scaleX(0);transform-origin:left;transition:transform .7s cubic-bezier(.6,.1,.2,1);z-index:0}
.tn-ligne.is-actif:before{transform:scaleX(1)}
.tn-ligne>*{position:relative;z-index:1}
.tn-ligne-num{font-size:13px;font-weight:600;color:var(--encre-2)}
.tn-ligne-txt strong{display:block;font-size:14.5px;font-weight:600;line-height:1.3}
.tn-ligne-txt small{display:block;font-size:13px;line-height:1.35;color:var(--encre-2);max-height:0;overflow:hidden;opacity:0;transition:max-height .4s,opacity .4s}
.tn-ligne.is-actif .tn-ligne-txt small{max-height:3em;opacity:1}
.tn-ligne-etat{width:22px;height:22px;border-radius:50%;border:1.5px solid color-mix(in srgb,#35231d 35%,#fff);display:grid;place-items:center;transition:background .3s,border-color .3s}
.tn-ligne-etat svg{width:13px!important;height:13px!important;stroke:var(--blanc);stroke-width:3;opacity:0;transition:opacity .3s}
.tn-ligne.is-vu .tn-ligne-etat{background:var(--brique);border-color:var(--brique)}
.tn-ligne.is-vu .tn-ligne-etat svg{opacity:1}
.tn-offre-notes{display:grid;margin-top:8px}
.tn-note{grid-area:1/1;padding:11px 13px;border-radius:16px;background:var(--gris);font-size:14px;line-height:1.42;opacity:0;visibility:hidden;transition:opacity .35s}
.tn-note.is-actif{opacity:1;visibility:visible}
.tn-note span{display:block;font-size:11.5px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--brique);margin-bottom:3px}
.tn-note a{display:flex;align-items:center;gap:6px;margin-top:6px;font-weight:600;font-size:13.5px;text-decoration:underline;text-decoration-color:var(--brique);text-underline-offset:4px}
.tn-note a svg{width:15px;height:15px}
.tn-offre-signature{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid var(--encre)}
.tn-offre-signature span{font-family:'Young Serif',Georgia,serif;font-size:16px;white-space:nowrap}
.tn-offre-signature b{white-space:nowrap;font-size:12.5px;font-weight:600;border:1px dashed var(--encre-2);border-radius:999px;padding:4px 12px;color:var(--encre-2);transition:background .35s,color .35s}
.tn-offre[data-etat="fini"] .tn-offre-signature b{background:var(--encre);color:var(--blanc);border:1px solid var(--encre)}
.tn-offre[data-etat="fini"] .tn-offre-signature span{color:var(--brique)}

/* ---------- programme : un extrait annoté, version commerciale ou sérieuse ---------- */
.tn-prog-grille{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:32px;align-items:stretch}
.tn-doc{min-width:0;background:var(--blanc);border:var(--trait);border-radius:var(--rayon);box-shadow:var(--ombre);padding:34px 36px 28px;position:relative}
.tn-doc-haut{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:18px;border-bottom:1px solid var(--encre)}
.tn-doc-titre small{display:block;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--encre-2)}
.tn-doc-titre strong{display:block;font-family:'Young Serif',Georgia,serif;font-weight:400;font-size:26px;line-height:1.2;margin-top:4px}
.tn-bascule{display:inline-flex;border:var(--trait);border-radius:15px;padding:3px;background:var(--gris);flex:none}
.tn-bascule button{border:0;background:transparent;border-radius:12px;padding:8px 14px;font-size:14.5px;font-weight:500;min-height:40px}
.tn-bascule button[aria-pressed="true"]{background:var(--encre);color:var(--blanc)}
.tn-doc-lignes li{display:grid;grid-template-columns:minmax(0,1fr) 196px;gap:22px;align-items:center;padding:14px 0;border-bottom:1px dashed var(--encre-3)}
.tn-doc-texte{font-size:16px;line-height:1.5;min-height:3em}
.tn-doc-texte b{display:block;font-size:12.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--encre-2);margin-bottom:2px}
.tn-doc-texte span{display:block;background-image:linear-gradient(var(--surligne),var(--surligne));background-repeat:no-repeat;background-size:0 38%;background-position:0 88%;transition:background-size .6s calc(var(--n)*.12s) ease}
.tn-doc[data-mode="flou"] .tn-doc-texte span{background-image:linear-gradient(var(--brique-pale),var(--brique-pale));background-size:100% 100%;text-decoration:underline wavy color-mix(in srgb,#c34b22 70%,#fff);text-decoration-thickness:1.5px;text-underline-offset:5px}
.tn-doc[data-mode="serieux"] .tn-doc-texte span{background-size:100% 38%}
.tn-doc-marge{font-size:13.5px;line-height:1.35;font-weight:600}
.tn-doc-marge span{display:flex;align-items:center;gap:9px}
.tn-doc-marge i{flex:none;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:14px}
.tn-doc-marge .tn-v-flou{color:var(--brique)}.tn-doc-marge .tn-v-flou i{border:1.5px solid var(--brique);font-weight:700}
.tn-doc-marge .tn-v-serieux i{background:var(--encre);color:var(--blanc)}.tn-doc-marge .tn-v-serieux svg{width:13px;height:13px;stroke-width:3}
.tn-doc[data-mode="flou"] .tn-v-serieux,.tn-doc[data-mode="serieux"] .tn-v-flou{display:none!important}
.tn-doc-pied{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding-top:18px}
.tn-doc-score{font-size:15px;color:var(--encre-2)}.tn-doc-score b{font-family:'Young Serif',Georgia,serif;font-weight:400;font-size:26px;color:var(--brique);margin-right:2px}
.tn-doc-pied .tn-lien{margin-left:auto}
.tn-doc[data-mode="serieux"] .tn-jauge5 i{background:var(--brique)}
.tn-prog-photo{position:relative;min-width:0;border:var(--trait);border-radius:var(--rayon);overflow:hidden;box-shadow:var(--ombre);background:var(--gris);min-height:420px;max-height:480px}
.tn-prog-photo img{position:absolute;inset:0;width:100%!important;height:100%!important;max-width:none;object-fit:cover;object-position:22% 45%}
.tn-prog-photo figcaption{position:absolute;left:18px;right:18px;bottom:18px;background:var(--blanc);border:var(--trait);border-radius:20px;padding:14px 16px;font-size:14.5px;line-height:1.45;color:var(--encre-2)}
.tn-prog-photo figcaption b{display:block;color:var(--brique);font-size:12px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:3px}

/* ---------- choix : titre ou certification, en ligne ou présentiel ---------- */
.tn-choix-grille{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:32px;align-items:stretch}
.tn-titre{min-width:0;padding:36px;display:flex;flex-direction:column}
.tn-titre-q1{font-family:'Young Serif',Georgia,serif;font-size:24px;margin-bottom:14px}
.tn-puces{display:flex;flex-wrap:wrap;gap:8px}
.tn-puces button{border:var(--trait);background:var(--blanc);border-radius:999px;padding:8px 14px;font-size:14.5px;min-height:42px}
.tn-puces button[aria-pressed="true"]{background:var(--encre);color:var(--blanc)}
.tn-titre-panneaux{display:grid;margin:22px 0 20px}
.tn-identite{margin:0 0 22px;flex:1;display:flex;flex-direction:column;justify-content:flex-end}
.tn-identite-tete,.tn-identite div{display:grid;grid-template-columns:86px minmax(0,1fr) minmax(0,1fr);gap:12px;padding:8px 0;border-bottom:1px dashed var(--encre-3);font-size:13.5px;line-height:1.4}
.tn-identite-tete{font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--encre);border-bottom:1px solid var(--encre)}
.tn-identite dt{font-weight:600}.tn-identite dd{margin:0;color:var(--encre-2)}
.tn-titre-reponse{grid-area:1/1;display:flex;flex-direction:column;gap:12px;opacity:0;visibility:hidden;transition:opacity .35s}
.tn-titre-reponse.is-actif{opacity:1;visibility:visible}
.tn-titre-reponse p{background:var(--blanc);border:var(--trait);border-radius:20px;padding:16px 18px;font-size:16.5px;line-height:1.45}
.tn-titre-reponse p span{display:block;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--brique);margin-bottom:4px}
.tn-titre-point{font-family:'Young Serif',Georgia,serif;font-size:19px!important}
.tn-format{min-width:0;overflow:hidden;display:flex;flex-direction:column}
.tn-format-photo{position:relative;aspect-ratio:16/9;border-bottom:var(--trait);overflow:hidden}
.tn-format-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 35%}
.tn-format-photo figcaption{position:absolute;left:16px;bottom:14px;background:var(--blanc);border:var(--trait);border-radius:999px;padding:5px 14px;font-size:13.5px;font-weight:500}
.tn-format-corps{padding:26px 32px 30px}
.tn-format-score{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;font-size:14.5px;font-weight:600;margin-bottom:12px}
.tn-format-score b{font-family:'Young Serif',Georgia,serif;font-weight:400;font-size:24px;color:var(--brique);vertical-align:-2px}
.tn-format-balance{height:8px;border-radius:4px;background:var(--encre);position:relative;overflow:hidden}
.tn-format-balance i{position:absolute;inset:0 auto 0 0;width:var(--p);background:var(--brique)}
.tn-format-lignes{margin-bottom:18px!important}
.tn-format-ligne{display:grid;grid-template-columns:minmax(0,1fr) 128px minmax(0,1fr);align-items:center;gap:10px;padding:8px 0;border-bottom:1px dashed var(--encre-3);font-size:14px;line-height:1.35;transition:background .3s}
.tn-format-ligne strong{text-align:center;font-size:13px;font-weight:600;border:var(--trait);border-radius:999px;padding:4px 6px;background:var(--blanc)}
.tn-fl-ligne{text-align:right;color:var(--encre-2)}.tn-fl-salle{color:var(--encre-2)}
.cote-ligne .tn-fl-ligne,.cote-salle .tn-fl-salle{color:var(--encre);font-weight:600}
.cote-ligne .tn-fl-ligne:after,.cote-salle .tn-fl-salle:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--brique);margin:0 7px;vertical-align:1px}
.tn-format-ligne.is-actif strong{background:var(--encre);color:var(--blanc)}

/* ---------- financement : simulation chiffrée et pistes sans CPF ---------- */
.tn-fin-grille{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:32px;align-items:stretch}
.tn-sim{min-width:0;padding:34px 36px;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:34px;background:var(--blanc)}
.tn-sim-reglages{display:flex;flex-direction:column;gap:22px;justify-content:center}
.tn-sim-reglages label{display:flex;flex-direction:column;gap:8px;font-size:14.5px;font-weight:500}
.tn-sim-reglages label>span{display:flex;justify-content:space-between;gap:10px}
.tn-sim-reglages output{font-family:'Young Serif',Georgia,serif;font-size:17px;color:var(--brique);white-space:nowrap}
.tn-sim input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:30px;background:transparent;margin:0}
.tn-sim input[type=range]::-webkit-slider-runnable-track{height:6px;border-radius:3px;background:var(--encre-3)}
.tn-sim input[type=range]::-moz-range-track{height:6px;border-radius:3px;background:var(--encre-3)}
.tn-sim input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;border-radius:50%;background:var(--blanc);border:2px solid var(--encre);box-shadow:0 2px 0 var(--encre);margin-top:-9px}
.tn-sim input[type=range]::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--blanc);border:2px solid var(--encre)}
.tn-sim-resultat{background:var(--gris);border:var(--trait);border-radius:28px;padding:24px}
.tn-sim-reste small{display:block;font-size:12.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--encre-2)}
.tn-sim-reste b{display:block;margin-top:4px;font-family:'Young Serif',Georgia,serif;font-weight:400;font-size:52px;line-height:1.1;color:var(--encre)}
.tn-sim-barre{display:flex;height:22px;border-radius:11px;overflow:hidden;border:var(--trait);background:var(--blanc);margin:14px 0 16px}
.tn-sim-barre i{display:block;height:100%;transition:width .5s cubic-bezier(.6,.1,.2,1)}
.tn-b-cpf{background:var(--encre)}.tn-b-emp{background:color-mix(in srgb,#c34b22 45%,#fff)}.tn-b-vous{background:var(--brique)}
.tn-sim-legende li{display:grid;grid-template-columns:12px minmax(0,1fr) auto;align-items:center;gap:10px;padding:6px 0;font-size:14.5px;border-bottom:1px dashed var(--encre-3)}
.tn-sim-legende li>i{width:12px;height:12px;border-radius:3px}
.tn-sim-legende b{font-weight:600;white-space:nowrap}
.tn-sim-note{grid-column:1/-1;margin-top:14px!important;font-size:13.5px;line-height:1.5;color:var(--encre-2)}
.tn-sim-note .tn-lien{margin-top:6px;color:var(--encre);font-size:14.5px}
.tn-situs{min-width:0;padding:34px;display:flex;flex-direction:column}
.tn-onglets{display:flex;flex-wrap:wrap;gap:8px}
.tn-onglets button{border:var(--trait);background:var(--blanc);border-radius:999px;padding:8px 14px;font-size:14.5px;min-height:42px}
.tn-onglets button[aria-selected="true"]{background:var(--encre);color:var(--blanc)}
.tn-situ-panneaux{display:grid;margin:20px 0 16px;flex:1}
.tn-situ{grid-area:1/1;margin:0;display:flex;flex-direction:column;gap:10px;opacity:0;visibility:hidden;transition:opacity .35s}
.tn-situ.is-actif{opacity:1;visibility:visible}
.tn-situ div{background:var(--blanc);border:var(--trait);border-radius:20px;padding:14px 16px}
.tn-situ dt{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--brique)}
.tn-situ dd{margin:3px 0 0;font-size:16px;line-height:1.45}
.tn-situ-regle{font-size:14.5px;line-height:1.45;color:var(--encre-2);margin-bottom:16px!important}
.tn-situ-regle b{color:var(--encre);margin-right:6px}

/* ---------- refus : la notification surlignée et la liste de contrôle ---------- */
.tn-refus-grille{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:32px;align-items:stretch}
.tn-lettre{min-width:0;background:var(--blanc);border:var(--trait);border-radius:10px 10px 10px 10px;box-shadow:var(--ombre),14px 14px 0 -1px var(--gris),14px 14px 0 0 var(--encre);padding:40px 44px;font-size:16px;line-height:1.6;display:flex;flex-direction:column;gap:14px;margin-right:14px}
.tn-lettre-tete{display:flex;justify-content:space-between;gap:12px;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--encre-2);padding-bottom:12px;border-bottom:1px solid var(--encre)}
.tn-lettre-objet{font-weight:600}
.tn-motifs{display:flex;flex-direction:column;gap:8px}
.tn-motifs li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;align-items:start;cursor:default}
.tn-motifs li .tn-surligne{display:block}
.tn-motifs li b{width:26px;height:26px;border-radius:50%;border:1.5px solid var(--brique);color:var(--brique);display:grid;place-items:center;font-size:13px;margin-top:1px;transition:background .3s,color .3s}
.tn-motifs li.is-lu b{background:var(--brique);color:var(--blanc)}
.tn-surligne{background-image:linear-gradient(var(--surligne),var(--surligne));background-repeat:no-repeat;background-size:0 100%;transition:background-size .8s cubic-bezier(.6,.1,.2,1);-webkit-box-decoration-break:clone;box-decoration-break:clone;padding:1px 2px;border-radius:3px}
.tn-motifs li.is-lu .tn-surligne,.tn-surligne-fin.is-lu{background-size:100% 100%}
.tn-lettre-pj{margin-top:auto!important;font-size:14px;line-height:1.5;color:var(--encre-2);border-top:1px dashed var(--encre-3);padding-top:12px}
.tn-lettre-pj b{display:block;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--encre)}
.tn-lettre-signe{font-family:'Young Serif',Georgia,serif;text-align:right}
.tn-refus-liste{min-width:0;padding:32px;display:flex;flex-direction:column;gap:8px}
.tn-refus-haut{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:4px}
.tn-refus-haut .tn-mini{margin:0}
.tn-refus-compte{font-size:16px;color:var(--encre-2)}.tn-refus-compte b{font-family:'Young Serif',Georgia,serif;font-weight:400;font-size:30px;color:var(--brique)}
.tn-case{display:grid;grid-template-columns:26px minmax(0,1fr);gap:12px;align-items:start;background:var(--blanc);border:var(--trait);border-radius:18px;padding:11px 14px;cursor:pointer;font-size:14.5px;line-height:1.4;transition:box-shadow .3s,transform .3s}
.tn-case input{position:absolute;opacity:0;width:1px;height:1px}
.tn-case strong{display:block;font-size:15px}
.tn-case-boite{width:24px;height:24px;border:1.5px solid var(--encre);border-radius:7px;display:grid;place-items:center;margin-top:1px;transition:background .25s}
.tn-case-boite svg{width:14px!important;height:14px!important;stroke:var(--blanc);stroke-width:3;opacity:0}
.tn-case input:checked+.tn-case-boite{background:var(--brique);border-color:var(--brique)}
.tn-case input:checked+.tn-case-boite svg{opacity:1}
.tn-case input:focus-visible+.tn-case-boite{outline:3px solid var(--encre);outline-offset:2px}
.tn-case.is-cible{box-shadow:0 0 0 3px var(--surligne)}
.tn-refus-verdict{margin:6px 0 8px!important;font-weight:600;font-size:15px;border-radius:14px;padding:10px 14px;background:var(--brique-pale);color:var(--brique)}
.tn-refus-verdict .tn-v-pret{display:none}
.tn-refus-verdict[data-etat="5"]{background:var(--encre);color:var(--blanc)}
.tn-refus-verdict[data-etat="5"] .tn-v-pret{display:inline}.tn-refus-verdict[data-etat="5"] .tn-v-reprendre{display:none}

/* ---------- parcours : cinq rubriques, cinq photos ---------- */
.tn-rail{display:grid;grid-template-columns:repeat(5,1fr);margin:0 0 26px!important;position:relative}
.tn-rail:before{content:"";position:absolute;left:10%;right:10%;top:17px;height:2px;background:var(--encre-3)}
.tn-rail li{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;font-size:14.5px;font-weight:600;color:var(--encre-2)}
.tn-rail b{width:36px;height:36px;border-radius:50%;border:var(--trait);background:var(--blanc);display:grid;place-items:center;font-family:'Young Serif',Georgia,serif;font-weight:400;font-size:16px;color:var(--encre);transition:background .3s,color .3s}
.tn-rail li.is-actif{color:var(--encre)}.tn-rail li.is-actif b{background:var(--brique);color:var(--blanc);border-color:var(--brique)}
.tn-rubs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-rows:1fr;gap:24px}
.tn-rub{grid-column:span 2;min-width:0;overflow:hidden;display:flex;flex-direction:column;background:var(--blanc);transition:box-shadow .35s}
.tn-rub:nth-child(4){grid-column:2/4}.tn-rub:nth-child(5){grid-column:4/6}
.tn-rub.is-actif{box-shadow:0 5px 0 #35231d,0 0 0 3px var(--surligne)}
.tn-rub-photo{position:relative;aspect-ratio:4/3;flex:none;overflow:hidden;border-bottom:var(--trait);background:var(--gris)}
.tn-rub-photo img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.tn-rub:hover .tn-rub-photo img{transform:scale(1.03)}
.tn-rub-photo figcaption{position:absolute;left:14px;top:14px;background:var(--blanc);border:var(--trait);border-radius:999px;padding:3px 12px;font-size:13px;font-weight:600}
.tn-rub.is-actif .tn-rub-photo figcaption{background:var(--brique);color:var(--blanc);border-color:var(--brique)}
.tn-rub-corps{padding:22px 24px 24px;display:flex;flex-direction:column;flex:1;min-width:0}
.tn-rub-tete{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.tn-rub-tete a{font-family:'Young Serif',Georgia,serif;font-size:21px;line-height:1.2;text-decoration:none}
.tn-rub-tete a:hover{text-decoration:underline;text-decoration-color:var(--brique)}
.tn-rub-tete span{font-size:13px;font-weight:600;color:var(--brique);white-space:nowrap}
.tn-rub-q{font-size:14.5px;line-height:1.45;color:var(--encre-2);margin:8px 0 12px!important}
.tn-rub-guides{margin-bottom:16px!important}
.tn-rub-guides a{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:8px 0;border-top:1px dashed var(--encre-3);text-decoration:none;font-size:15px;line-height:1.35;font-weight:500}
.tn-rub-guides a:hover span{text-decoration:underline;text-decoration-color:var(--brique);text-underline-offset:4px}
.tn-rub-guides small{font-size:12.5px;color:var(--encre-2);white-space:nowrap}
.tn-rub-service{margin-top:auto;font-size:14.5px}

/* ---------- rédaction : qui signe quoi ---------- */
.tn-qsq{padding:30px 34px;display:grid;grid-template-columns:minmax(0,1.75fr) minmax(0,1fr);gap:30px}
.tn-qsq-ligne{display:grid;grid-template-columns:minmax(0,2.1fr) repeat(5,minmax(0,1.05fr));align-items:center;gap:6px;padding:9px 10px;border-radius:18px;transition:background .3s}
.tn-qsq-entete{font-size:13px;font-weight:600;letter-spacing:0;text-transform:none;color:var(--encre-2);text-align:center}
.tn-qsq-entete span:first-child{text-align:left}
.tn-qsq-ligne[data-tn-auteur]{cursor:pointer}
.tn-qsq-ligne.is-actif{background:var(--blanc);box-shadow:inset 0 0 0 1px var(--encre)}
.tn-qsq-nom{display:flex;align-items:center;gap:12px;min-width:0}
.tn-qsq-nom img{width:52px;height:52px;border-radius:50%;object-fit:cover;border:var(--trait);flex:none}
.tn-qsq-nom strong{display:block;font-size:15.5px}
.tn-qsq-nom small{display:none;font-size:12.5px;color:var(--encre-2);line-height:1.3}
.tn-qsq-case{justify-self:center;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;font-size:15px;color:var(--encre-3)}
.tn-qsq-case.on{background:var(--brique);color:var(--blanc);font-family:'Young Serif',Georgia,serif;font-size:17px}
.tn-qsq-total{border-top:1px solid var(--encre);border-radius:0;margin-top:6px;font-weight:600;font-size:14px;text-align:center}
.tn-qsq-total span:first-child{text-align:left}
.tn-auteur-fiches{display:grid;align-items:stretch}
.tn-auteur-fiche{grid-area:1/1;display:flex;flex-direction:column;background:var(--blanc);border:var(--trait);border-radius:28px;padding:24px 24px 18px;opacity:0;visibility:hidden;transition:opacity .35s}
.tn-auteur-fiche.is-actif{opacity:1;visibility:visible}
.tn-af-tete{display:flex;align-items:center;gap:16px}
.tn-af-tete img{width:76px;height:76px;border-radius:50%;object-fit:cover;border:var(--trait);flex:none}
.tn-af-tete h3{font-size:23px;line-height:1.15;margin:0}
.tn-af-tete p{font-size:13.5px;line-height:1.35;color:var(--encre-2);margin-top:4px}
.tn-af-chiffres{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:18px 0 16px!important;padding:12px 0;border-block:1px solid var(--encre)}
.tn-af-chiffres span{display:flex;flex-direction:column;font-size:12.5px;line-height:1.3;color:var(--encre-2)}
.tn-af-chiffres b{font-family:'Young Serif',Georgia,serif;font-weight:400;font-size:28px;line-height:1.1;color:var(--brique)}
.tn-auteur-bio{font-size:15px;line-height:1.55;color:var(--encre-2);margin-bottom:12px!important}
.tn-auteur-fiche h3 a{text-decoration:none}.tn-auteur-fiche h3 a:hover{text-decoration:underline;text-decoration-color:var(--brique)}
.tn-auteur-fiche ul{margin-top:auto!important}
.tn-auteur-fiche li a{display:block;padding:8px 0;border-top:1px dashed var(--encre-3);font-size:15px;line-height:1.35;text-decoration:none}
.tn-auteur-fiche li a:hover{text-decoration:underline;text-decoration-color:var(--brique)}

/* ---------- questions ---------- */
.tn-moments{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.tn-moment{min-width:0;display:flex;flex-direction:column;gap:12px}
.tn-moment-nom{display:flex;align-items:center;gap:10px;font-family:'Young Serif',Georgia,serif;font-size:21px}
.tn-moment-nom b{width:32px;height:32px;border-radius:50%;background:var(--brique);color:var(--blanc);display:grid;place-items:center;font-weight:400;font-size:15px}
.tn-moment details{background:var(--gris);border:var(--trait);border-radius:24px;padding:16px 20px}
.tn-moment details[open]{background:var(--blanc);box-shadow:var(--ombre)}
.tn-moment summary{cursor:pointer;font-weight:600;font-size:16px;line-height:1.4;list-style:none}
.tn-moment summary::-webkit-details-marker{display:none}
.tn-moment details p{margin:10px 0!important;font-size:15px;line-height:1.55;color:var(--encre-2)}
.tn-moment details .tn-lien{font-size:14px}
.tn-appel{margin-top:40px;padding:30px 36px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.tn-appel p{max-width:54ch;font-size:16.5px;line-height:1.55}
.tn-appel .tn-actions{flex:none}

/* ---------- tablette ---------- */
@media (max-width:1060px){
  .tn-hero{grid-template-columns:minmax(0,1fr);gap:40px;min-height:0}
  .tn-scene{max-width:640px}
  .tn-prog-grille,.tn-choix-grille,.tn-fin-grille,.tn-refus-grille,.tn-qsq{grid-template-columns:minmax(0,1fr)}
  .tn-prog-photo{min-height:0;aspect-ratio:1/1;max-width:480px}
  .tn-rubs{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:auto}
  .tn-rub,.tn-rub:nth-child(4),.tn-rub:nth-child(5){grid-column:span 1}
  .tn-moments{grid-template-columns:minmax(0,1fr)}
  .tn-appel{flex-direction:column;align-items:flex-start}
}

/* ---------- mobile : la fiche monte juste sous le titre et les boutons ---------- */
@media (max-width:700px){
  [data-bandeau],.announcement-bar{display:none!important}
  html body .site-header .site-nav{height:68px;gap:10px}
  html body .site-header .brand-link img{height:36px}
  html body .uf-block[data-avant-footer]{margin-top:80px;border-radius:30px 30px 0 0}
  html body .uf-block[data-avant-footer] .about-banner{grid-template-columns:minmax(0,1fr);padding:36px 24px 30px;gap:20px}
  html body .uf-block[data-avant-footer] .af-button{grid-column:1;grid-row:auto;justify-self:start}
  .tn-section{padding-top:84px}
  .tn-tete{margin-bottom:32px}
  .tn-tete p{font-size:16px}
  .tn-hero{display:flex;flex-direction:column;align-items:stretch;gap:0;padding-block:22px 40px}
  .tn-hero-copie{display:contents}
  .tn-h-kicker{order:1;align-self:flex-start;font-size:12px}
  .tn-hero h1{order:2;font-size:clamp(34px,9.6vw,40px);margin-top:14px}
  .tn-h-chapeau{order:3;font-size:16.5px;line-height:1.5;margin:14px 0 20px}
  .tn-h-suite{display:none}
  .tn-h-actions{order:4;display:grid;grid-template-columns:1fr 1fr;gap:10px}
  .tn-h-actions .button{padding:10px 12px;font-size:15px}
  .tn-hero .tn-scene{order:5;margin-top:36px;max-width:none;display:flex;flex-direction:column}
  .tn-scene-photo{order:1;margin:0;aspect-ratio:1/1;border-radius:30px}
  .tn-scene-photo img{object-position:50% 30%}
  .tn-scene-legende{top:14px;bottom:auto;left:14px;padding:7px 12px;font-size:12.5px}
  .tn-scene-legende b{font-size:13px}
  .tn-offre{order:2;margin:-56px 10px 0;padding:16px 16px 14px}
  .tn-h-reperes{order:6}
  .tn-reperes li{padding-right:16px;margin-right:16px}
  .tn-reperes b{font-size:30px}.tn-reperes span{font-size:13.5px}
  .tn-doc{padding:24px 20px}
  .tn-doc-haut{flex-direction:column}
  .tn-doc-lignes li{grid-template-columns:minmax(0,1fr);gap:8px}
  .tn-doc-texte{min-height:0}
  .tn-titre,.tn-situs,.tn-refus-liste{padding:24px 20px}
  .tn-format-corps{padding:22px 18px 24px}
  .tn-format-ligne{grid-template-columns:minmax(0,1fr) minmax(0,1fr);row-gap:6px}
  .tn-format-ligne strong{grid-column:1/-1;grid-row:1;justify-self:start}
  .tn-fl-ligne{text-align:left}
  .tn-sim{grid-template-columns:minmax(0,1fr);padding:24px 20px;gap:24px}
  .tn-sim-reste b{font-size:42px}
  .tn-lettre{padding:26px 22px;font-size:15px;margin-right:10px}
  .tn-lettre-tete{flex-direction:column;gap:2px}
  .tn-rail{display:none}
  .tn-rubs{grid-template-columns:minmax(0,1fr);gap:20px}
  .tn-qsq{padding:22px 14px}
  .tn-qsq-ligne{grid-template-columns:minmax(0,1.6fr) repeat(5,minmax(0,1fr));padding:8px 4px;gap:2px}
  .tn-qsq-entete{font-size:10px;letter-spacing:0}
  .tn-qsq-nom img{width:36px;height:36px}
  .tn-qsq-nom small{display:none}
  .tn-qsq-nom strong{font-size:13px}
  .tn-qsq-case{width:28px;height:28px;font-size:13px}
  .tn-appel{padding:24px 20px}
  /* 25/10/2026 (garde isb-formation.fr, colonne_etroite) : à 390 px la toile ne fait que 358 px ; toute boîte
     encaissant deux marges internes empilait son texte sous 300 px. Les grilles « pastille + texte » s'empilent
     et les cartes resserrent leur marge pour que la colonne de lecture repasse au-dessus du seuil du socle. */
  .tn-lettre{padding:26px 18px;margin-right:0}
  .tn-motifs li{grid-template-columns:minmax(0,1fr);gap:6px}
  .tn-refus-liste{padding:26px 12px}
  .tn-case{grid-template-columns:minmax(0,1fr);gap:8px;padding:11px 12px}
  .tn-qsq{padding:22px 12px}
  .tn-auteur-fiche{padding:18px 12px 14px}
}

@media (prefers-reduced-motion:reduce){
  .tn-home *{transition:none!important;animation:none!important}
}

/* le garde-fou du socle plafonne les images hors hero à 480 px : ici chaque photo couvre son cadre */
.tn-home .tn-prog-photo img,.tn-home .tn-rub-photo img,.tn-home .tn-format-photo img,.tn-home .tn-scene-photo img{max-height:none!important}
.tn-home .tn-rub:nth-child(4) .tn-rub-photo img{object-position:74% 50%}
