/* =====================================================================
   tp-lisible.css - TELEPILOTE SAS - feuille de lisibilite de telepilote.org
   Version 07/10/2026 (v4, apres relecture) - publiee le 07/10/2026, chargee par tpls/blocks/head.php.
   A charger APRES toutes les autres feuilles (y compris tp-a11y.css),
   en fichier separe, HORS optimiseur T3 (les selecteurs [style*="..."]
   contiennent des espaces que l'optimiseur supprimerait).
   Objectifs valides par le dirigeant :
   - texte courant du contenu : 17 px ordinateur, 16 px mobile (<= 767 px),
     interligne 1,6 a 1,7 ;
   - une seule police de texte : Exo 2 (deja chargee par le site) ;
   - plus de texte justifie ; lignes de 75 caracteres environ au maximum ;
   - notes et legendes 15 px minimum ; pied de page 15 px minimum ;
   - titres : h2 30 px (mobile 24), h3 24 px (mobile 20).
   Les styles en ligne (5 273 attributs style) n'ont aucun !important :
   les surcharges ci-dessous utilisent !important et sont TOUJOURS
   limitees a la zone de contenu (#t3-mainbody, #t3-department),
   au pied de page (#t3-footer) ou au menu (#t3-mainnav).
   Composants laisses tels quels (deja dimensionnes) : .tp-hero, .tp-projects,
   .tp-card, .tp-btn, .tp-catdl, .tp-marquee, .tp-logo - sauf textes < 14 px.
   Polices d'icones jamais touchees (FontAwesome, simple-line-icons, Glyphicons).
   ===================================================================== */

/* ---------------------------------------------------------------------
   0. Variables
   --------------------------------------------------------------------- */
:root {
  --tp-fs: 17px;          /* texte courant ordinateur */
  --tp-note: 15px;        /* notes, sources, legendes */
  --tp-lh: 1.65;          /* interligne du texte courant */
  --tp-h1: 36px;
  --tp-h2: 30px;
  --tp-h3: 24px;
  --tp-h3c: 20px;         /* h3 compact : FAQ, tableaux, encadres, cartes */
  --tp-h4: 20px;
  --tp-measure: 37em;     /* ~74 caracteres par ligne (0,5 em par caractere) */
  --tp-font: 'Exo 2', Arial, 'Helvetica Neue', sans-serif;
}
@media (max-width: 767px) {
  :root {
    --tp-fs: 16px;
    --tp-h1: 28px;
    --tp-h2: 24px;
    --tp-h3: 20px;
    --tp-h3c: 18px;
    --tp-h4: 18px;
  }
}

/* ---------------------------------------------------------------------
   1. Taille et interligne de base de la zone de contenu
   Tout ce qui herite (paragraphes, listes, cellules sans taille propre)
   passe a 17 px / 16 px.
   --------------------------------------------------------------------- */
#t3-mainbody,
#t3-department,
.t3-masthead {
  font-size: var(--tp-fs);
  line-height: var(--tp-lh);
}
/* cellules de tableau : le gabarit force line-height 1.5 */
:is(#t3-mainbody, #t3-department) :is(td, th) {
  line-height: 1.6;
}
/* elements Bootstrap/Joomla qui fixent une petite taille par classe */
:is(#t3-mainbody, #t3-department) :is(blockquote, .lead, address, dd, dt, .form-control, select, input, textarea),
:is(#t3-mainbody, #t3-department) .blog .items-row :is(.article-intro, .article-introtext),
:is(#t3-mainbody, #t3-department) :is(.financing-card ul li, .financing-hub .financing-intro, .financing-cta p),
:is(#t3-mainbody, #t3-department) :is(div.itemIntroText, .itemFullText, .genericItemIntroText) {
  font-size: var(--tp-fs) !important;
}
:is(#t3-mainbody, #t3-department) :is(.btn, a.btn-financing, .tp-cta-primary, .tp-cta-secondary, .readmore a, button) {
  font-size: 16px !important;
}
:is(#t3-mainbody, #t3-department) :is(.tp-formation-info .info-label, .tp-formation-info .info-value, .label, .badge, .tp-sector-badge) {
  font-size: 15px !important;
}
:is(#t3-mainbody, #t3-department) :is(.tags a, .tags span > a, .item-page .tags a.label, .itemTagsBlock ul li a, .catItemTagsBlock ul li a) {
  font-size: 15px !important;
  line-height: 1.3 !important;
}
/* meta K2 / Joomla (dates, barre d'outils, auteur) */
:is(#t3-mainbody, #t3-department) :is(.itemHeader span.itemDateCreated, .itemToolbar ul li, .itemToolbar ul li a, .catItemDateCreated, .article-info, .article-info dd, .article-aside, .pagination, .pager, .itemRatingLog, div.k2Pagination ul li a, div.k2Pagination ul li span) {
  font-size: 15px !important;
}

/* ---------------------------------------------------------------------
   2. Tailles en ligne trop petites (style="font-size: ...")
   1 169 valeurs en px dans le contenu, dont 557 sous 16 px, + pt/em/rem/mots-cles.
   Elles remontent a la taille courante. Titres et composants exclus.
   --------------------------------------------------------------------- */
:is(#t3-mainbody, #t3-department) :is(
  [style*="font-size: 9px"],
  [style*="font-size:9px"],
  [style*="font-size: 10px"],
  [style*="font-size:10px"],
  [style*="font-size: 10.5px"],
  [style*="font-size:10.5px"],
  [style*="font-size: 11px"],
  [style*="font-size:11px"],
  [style*="font-size: 11.5px"],
  [style*="font-size:11.5px"],
  [style*="font-size: 12px"],
  [style*="font-size:12px"],
  [style*="font-size: 12.16px"],
  [style*="font-size:12.16px"],
  [style*="font-size: 12.5px"],
  [style*="font-size:12.5px"],
  [style*="font-size: 13px"],
  [style*="font-size:13px"],
  [style*="font-size: 13.5px"],
  [style*="font-size:13.5px"],
  [style*="font-size: 14px"],
  [style*="font-size:14px"],
  [style*="font-size: 14.5px"],
  [style*="font-size:14.5px"],
  [style*="font-size: 15px"],
  [style*="font-size:15px"],
  [style*="font-size: 15.5px"],
  [style*="font-size:15.5px"],
  [style*="font-size: 16px"],
  [style*="font-size:16px"],
  [style*="font-size: 8pt"],
  [style*="font-size:8pt"],
  [style*="font-size: 9pt"],
  [style*="font-size:9pt"],
  [style*="font-size: 10pt"],
  [style*="font-size:10pt"],
  [style*="font-size: 11pt"],
  [style*="font-size:11pt"],
  [style*="font-size: 12pt"],
  [style*="font-size:12pt"],
  [style*="font-size: x-small"],
  [style*="font-size:x-small"],
  [style*="font-size: small"],
  [style*="font-size:small"],
  [style*="font-size: medium"],
  [style*="font-size:medium"],
  [style*="font-size: 0.9em"],
  [style*="font-size:0.9em"],
  [style*="font-size: 0.95em"],
  [style*="font-size:0.95em"],
  [style*="font-size: 1.02rem"],
  [style*="font-size:1.02rem"],
  [style*="font-size: 0.95rem"],
  [style*="font-size:0.95rem"],
  [style*="font-size: 1.15rem"],
  [style*="font-size:1.15rem"]
):not(:is(h1, h2, h3, h4, h5, h6, .tp-hero, .tp-hero *, .tp-projects *, .tp-marquee *, .tp-btn, .fa, .glyphicon, [class*="fa-"], [class*="icon"])) {
  font-size: var(--tp-fs) !important;
}
/* interlignes fixes en px qui ecraseraient un texte plus grand */
:is(#t3-mainbody, #t3-department) :is([style*="line-height: 20px"], [style*="line-height:20px"]) {
  line-height: 1.5 !important;
}
:is(#t3-mainbody, #t3-department) :is(p, li, div, td, span)[style*="line-height: 1.5"]:not([style*="line-height: 1.5px"]) {
  line-height: var(--tp-lh) !important;
}

/* ---------------------------------------------------------------------
   3. Notes, sources et legendes : 15 px minimum
   (placees APRES la section 2 : meme specificite, la derniere gagne)
   --------------------------------------------------------------------- */
:is(#t3-mainbody, #t3-department) :is(
  [style*="font-size: 0.7em"],
  [style*="font-size:0.7em"],
  [style*="font-size: 0.75em"],
  [style*="font-size:0.75em"],
  [style*="font-size: 0.8em"],
  [style*="font-size:0.8em"],
  [style*="font-size: 0.85em"],
  [style*="font-size:0.85em"],
  [style*="font-size: 0.85rem"],
  [style*="font-size:0.85rem"],
  .tp-sources,
  small,
  .small,
  figcaption,
  .wp-caption-text,
  span.itemImageCaption,
  span.itemImageCredits,
  .itemVideoCaption
):not(:is(h1, h2, h3, h4, h5, h6, .tp-hero, .tp-hero *, .tp-projects *, .tp-marquee *, .tp-btn, .fa, .glyphicon, [class*="fa-"], [class*="icon"])) {
  font-size: var(--tp-note) !important;
  line-height: 1.55 !important;
}

/* ---------------------------------------------------------------------
   4. Une seule police de texte : Exo 2
   Toutes les polices du contenu viennent de styles en ligne
   (Verdana 58, -apple-system 7, Calibri/Tahoma/Arial Rounded 27).
   --------------------------------------------------------------------- */
:is(#t3-mainbody, #t3-department, #t3-footer, .t3-spotlight, .t3-contentslider, .t3-navhelper) [style*="font-family"]:not(:is(.fa, .glyphicon, [class*="fa-"], [class*="icon"], code, pre, kbd, samp)) {
  font-family: var(--tp-font) !important;
}
:is(#t3-mainbody, #t3-department) :is(h1, h2, h3, h4, h5, h6) {
  font-family: var(--tp-font) !important;
}

/* ---------------------------------------------------------------------
   5. Alignement : plus de texte justifie
   --------------------------------------------------------------------- */
:is(#t3-mainbody, #t3-department) :is([style*="text-align: justify"], [style*="text-align:justify"], [align="justify"]) {
  text-align: left !important;
}

/* ---------------------------------------------------------------------
   6. Longueur de ligne : ~75 caracteres maximum pour le corps des articles
   Uniquement p/ul/ol/blockquote ENFANTS DIRECTS du corps d'article.
   Jamais dans les tableaux, cartes, grilles, encadres (fond, bordure, flex).
   Les paragraphes centres ne sont pas limites (ils resteraient decales).
   --------------------------------------------------------------------- */
:is(#t3-mainbody, #t3-department) :is(.article-content, .article-intro, [itemprop="articleBody"], .tp-page, .category-desc, .itemFullText, .itemIntroText, .tp-fiche-section, .tp-section, .tp-qfaq, .tp-faq, .tp-cpf-faq, .tp-cats-compare, .markdown, article.formation-drone, article[style] > section[id], #faq-formation-drone) > :is(p, ul, ol, blockquote, dl):not([style*="center"], [align="center"], [style*="background"], [style*="border"], [style*="flex"], [style*="grid"], [style*="column"]),
:is(#t3-mainbody, #t3-department) :is(.article-content, .article-intro, [itemprop="articleBody"], .tp-page, .category-desc, .itemFullText, .itemIntroText, .tp-fiche-section, .tp-section, .tp-qfaq, .tp-faq, .tp-cpf-faq, .tp-cats-compare, .markdown, article.formation-drone, article[style] > section[id], #faq-formation-drone) > :is(div, section, header, strong, b, span):not([class]):not([style*="center"], [align="center"], [style*="background"], [style*="border"], [style*="flex"], [style*="grid"], [style*="column"]) > :is(p, ul, ol, blockquote, dl):not([style*="center"], [align="center"], [style*="background"], [style*="border"], [style*="flex"], [style*="grid"], [style*="column"]) {
  max-width: var(--tp-measure);
}
/* Accueil (module .custom) : paragraphes et listes de premier niveau SANS image
   (les images flottantes de l'accueil sont dans des paragraphes : on ne les deplace pas).
   Regle separee : :has() inconnu => seule cette regle est ignoree. */
#t3-department .custom > :is(p, ul, ol):not([style*="center"], [align="center"], [style*="background"], [style*="border"], [style*="flex"], [style*="grid"], [style*="column"]):not(:has(img, iframe, video, picture, table)) {
  max-width: var(--tp-measure);
}
/* Cartes du gabarit blog : extrait a hauteur limitee (max-height 200 px dans le gabarit).
   Le texte passe de 13,5 a 16-17 px : on relache la hauteur pour garder le meme volume d'extrait.
   Le fondu blanc du gabarit (::after) est invisible sur les encadres fonces et la coupe
   peut trancher une ligne : on ajoute un masque de sortie (56 px) qui marche sur tout fond.
   Reperes en px fixes (194 -> 250 px) : un extrait court (moins de 194 px) n'est jamais estompe. */
:is(#t3-mainbody, #t3-department) .blog .items-row :is(.article-intro, .article-introtext) {
  max-height: 250px;
  -webkit-mask-image: linear-gradient(to bottom, #000 194px, transparent 250px);
  mask-image: linear-gradient(to bottom, #000 194px, transparent 250px);
}

/* ---------------------------------------------------------------------
   6 bis. Longs paragraphes centres : alignes a gauche
   Paragraphes centres places directement dans le corps d'article (hors encadre,
   hors image, video ou bouton) : ex. « Accessibilite : si vous avez des besoins... ».
   Les encadres d'appel a l'action (fond colore) et les titres restent centres.
   Les extraits des cartes du gabarit blog (.items-row) gardent leur centrage d'origine.
   --------------------------------------------------------------------- */
:is(#t3-mainbody, #t3-department) :is(.article-content, .article-intro, .tp-page, .category-desc, .itemFullText) > p:is([style*="text-align: center"], [style*="text-align:center"], [align="center"]):not([style*="background"]):not([style*="border"]):not(.items-row *):not(:has(img, iframe, video, picture, svg, object, embed, .btn, .tp-btn, a[style*="background"], a[style*="padding"])) {
  text-align: left !important;
  max-width: var(--tp-measure);
}
@media (max-width: 767px) {
  /* accueil, mobile : « Depuis 2014, le campus... » (5 lignes centrees) et son lien */
  #t3-department .custom > div:not([class]):not([style*="background"]) > p:is([style*="text-align: center"], [style*="text-align:center"]):not(:has(img, iframe, video, picture)) {
    text-align: left !important;
  }
}

/* ---------------------------------------------------------------------
   7. Titres du contenu : echelle coherente
   H1 de l'introduction de l'accueil (.tp-hero__title) et titre
   « Quel est votre projet ? » (.tp-projects__title) NON modifies.
   Les h1 masques par le gabarit restent masques (seule la taille change).
   --------------------------------------------------------------------- */
:is(#t3-mainbody, #t3-department) h1:not(.tp-hero__title) {
  font-size: var(--tp-h1) !important;
  line-height: 1.2 !important;
}
:is(#t3-mainbody, #t3-department) h2:not(.tp-projects__title) {
  font-size: var(--tp-h2) !important;
  line-height: 1.25 !important;
}
:is(#t3-mainbody, #t3-department) h3 {
  font-size: var(--tp-h3) !important;
  line-height: 1.3 !important;
}
:is(#t3-mainbody, #t3-department) h4 {
  font-size: var(--tp-h4) !important;
  line-height: 1.35 !important;
}
:is(#t3-mainbody, #t3-department) :is(h5, h6) {
  font-size: var(--tp-fs) !important;
  line-height: 1.4 !important;
}
/* h3 compacts : questions de FAQ, titres dans tableaux, encadres, cartes */
:is(#t3-mainbody, #t3-department) :is(td:not([style*="background"]), th, aside, li, .tp-faq, .tp-qfaq, .tp-cpf-faq, #faq-formation-drone, .financing-card, [style*="flex"]) h3 {
  font-size: var(--tp-h3c) !important;
}
/* titre-etiquette « En un coup d'oeil » (h2 13 px majuscules dans un encadre lateral) */
:is(#t3-mainbody, #t3-department) aside h2[style] {
  font-size: 16px !important;
  line-height: 1.3 !important;
}
/* titres des cartes de categorie (gabarit blog, colonnes de 265 a 309 px) */
:is(#t3-mainbody, #t3-department) .blog .items-row :is(h2, .page-header h2) {
  font-size: 20px !important;
  line-height: 1.3 !important;
}

/* ---------------------------------------------------------------------
   8. Composants deja dimensionnes : seuls les petits textes remontent
   (H1 .tp-hero__title et titre .tp-projects__title jamais modifies)
   --------------------------------------------------------------------- */
/* introduction de l'accueil : pastille 12,5 px, lien catalogue 13 px, badges video 12-13 px,
   preuves 14 px, texte d'introduction 16 px */
/* (interligne remis a 1.5 comme avant : la base du contenu passe a 1.65) */
.tp-hero, .tp-projects, .tp-marquee { line-height: 1.5; }
.tp-hero { font-size: 15px; }
.tp-hero .tp-hero__lead { font-size: var(--tp-fs) !important; }
.tp-hero :is(.tp-hero__eyebrow, .tp-hero__proof, .tp-hero__proof a, .tp-hero__prooflink) { font-size: 15px !important; }
.tp-hero #tp-video-hero span[style] { font-size: 15px !important; }
/* cartes « Quel est votre projet ? » : surtitre 12 px, lien « Voir le parcours » 14 px */
.tp-card .tp-card__kicker { font-size: 14px; }
.tp-card .tp-card__go { font-size: 15px !important; }

/* ---------------------------------------------------------------------
   9. Menu principal
   Ordinateur : 12 px -> 14 px (majuscules), meganu 13 px -> 15 px.
   Mobile (panneau deplie) : 16 px.
   --------------------------------------------------------------------- */
@media (min-width: 768px) {
  #t3-mainnav .navbar-nav > li > a { font-size: 14px !important; }
  #t3-mainnav .t3-megamenu .mega-nav > li a,
  #t3-mainnav .t3-megamenu .dropdown-menu .mega-nav > li a,
  #t3-mainnav .t3-megamenu .mega-caption,
  #t3-mainnav .dropdown-menu > li > a { font-size: 15px !important; }
}
@media (max-width: 767px) {
  /* les libelles longs passent a la ligne au lieu d'etre coupes ; marge droite pour la fleche */
  #t3-mainnav .t3-navbar-collapse .navbar-nav a,
  #t3-mainnav .t3-navbar-collapse .navbar-nav .dropdown-header,
  #t3-mainnav .t3-navbar-collapse .navbar-nav .mega-group > a { font-size: 16px !important; line-height: 1.4 !important; white-space: normal !important; padding-right: 40px !important; }
}
/* En-tete ordinateur : bloc « TELEPILOTE SAS / Centre de certification... / Admission » 13 px -> 15 px.
   Sur mobile ce bloc est volontairement a font-size 0 (tp-a11y.css) : on n'y touche pas. */
@media (min-width: 768px) {
  #t3-header .tp-head-id { font-size: 15px; line-height: 1.5; }
}

/* ---------------------------------------------------------------------
   10. Modules de l'accueil et fil d'Ariane
   --------------------------------------------------------------------- */
.t3-spotlight, .t3-contentslider { font-size: 16px; }
.t3-spotlight :is(li, a, p), .t3-contentslider :is(.ja-slidenews-item, p, a) { font-size: 16px; }
.t3-spotlight .module-title { font-size: 15px; }
.t3-navhelper, .t3-navhelper .breadcrumb { font-size: 15px; }
/* bloc « Acces rapide » (cartes en ligne dans .t3-navhelper de l'accueil) : 12 px -> 15 px, 15 px -> 16 px */
:is(.t3-spotlight, .t3-contentslider, .t3-navhelper) .custom :is(
  [style*="font-size: 9px"],
  [style*="font-size:9px"],
  [style*="font-size: 10px"],
  [style*="font-size:10px"],
  [style*="font-size: 11px"],
  [style*="font-size:11px"],
  [style*="font-size: 12px"],
  [style*="font-size:12px"],
  [style*="font-size: 13px"],
  [style*="font-size:13px"],
  [style*="font-size: 14px"],
  [style*="font-size:14px"]
):not(:is(h1, h2, h3, h4, h5, h6, .fa, [class*="fa-"], [class*="icon"])) {
  font-size: 15px !important;
}
:is(.t3-spotlight, .t3-contentslider, .t3-navhelper) .custom :is([style*="font-size: 15px"], [style*="font-size:15px"]):not(:is(h1, h2, h3, h4, h5, h6)) {
  font-size: 16px !important;
}

/* ---------------------------------------------------------------------
   11. Pied de page : 15 px minimum
   (styles en ligne en em : 0.95em = 11,4 px, 0.8em = 9,1 px sur une base de 12 px)
   Seul le style change : le texte legal n'est pas modifie.
   --------------------------------------------------------------------- */
#t3-footer, #t3-footer .t3-copyright { font-size: 15px; }
#t3-footer .footer-telepilote { font-size: 15px !important; line-height: 1.6 !important; }
#t3-footer .footer-telepilote :is([style*="font-size:0.95em"], [style*="font-size: 0.95em"], [style*="font-size:0.8em"], [style*="font-size: 0.8em"]) { font-size: 15px !important; }
#t3-footer .footer-telepilote :is([style*="font-size:1.25em"], [style*="font-size: 1.25em"]) { font-size: 20px !important; }
/* bouton « Materiel professionnel : TELEPILOTE Store » : bloc pleine colonne, 2 lignes centrees */
#t3-footer .footer-telepilote a[href*="telepilote.store"][style*="inline-block"] {
  display: block !important;
  text-align: center !important;
  line-height: 1.35 !important;
  padding: 9px 12px !important;
}

/* =====================================================================
   12. Correctifs apres relecture (07/10/2026)
   Specificites calculees pour battre les sections 2, 3 et 7 :
   section 2 et 3 = (1,2,0) ; h3 compacts = (1,1,2) ; cartes blog = (1,3,1).
   ===================================================================== */

/* 12.1 Flottants : un bloc flex/grille ou un encadre ne se loge plus a cote
   d'une image flottante devenue plus courte que le texte (ou plus haute que lui).
   - /formation-drone : rangee de preuves sous le logo Qualiopi ;
   - MANEX : encadre « Mise a jour » a cote de l'image DJI. */
:is(#t3-mainbody, #t3-department) .tp-page > div:is([style*="display: flex"], [style*="display:flex"], [style*="display: grid"], [style*="display:grid"]),
:is(#t3-mainbody, #t3-department) .article-content > div[style*="#fff4ec"] {
  clear: both;
}

/* 12.2 Etiquettes en capitales (style en ligne text-transform: uppercase) :
   surtitres, libelles Duree / Modalite, Sommaire, Prochaine etape, en-tetes de tableau.
   Taille des notes (15 px), sous la valeur (17/16 px) : la hiérarchie revient. */
:is(#t3-mainbody, #t3-department) :is(p, div, span, th, td, a, strong, li, small):is([style*="text-transform: uppercase"], [style*="text-transform:uppercase"]):not(.tp-hero *, .tp-projects *, .tp-btn) {
  font-size: var(--tp-note) !important;
}
:is(#t3-mainbody, #t3-department) :is(p, div, span, th, td, a, strong, li, small, h2, h3, h4, h5, h6):is([style*="text-transform: uppercase"], [style*="text-transform:uppercase"])[style*="letter-spacing"]:not(.tp-hero *, .tp-projects *, .tp-btn) {
  letter-spacing: .06em !important;
}
/* titres-etiquettes en capitales (« Pourquoi cette formation », « En un coup d'oeil »,
   « Examen DGAC... ») : taille du texte courant, en gras, au lieu de 20-24 px */
:is(#t3-mainbody, #t3-department) :is(h2, h3, h4, h5, h6)[style*="text-transform"]:is([style*="text-transform: uppercase"], [style*="text-transform:uppercase"]) {
  font-size: var(--tp-fs) !important;
  line-height: 1.35 !important;
}
/* pastilles du bandeau (RS6765, France Competences...) : 13 -> 15 px */
:is(#t3-mainbody, #t3-department) span[style*="border-radius: 999px"][style*="font-size"] {
  font-size: var(--tp-note) !important;
}
/* coches et numeros dans un rond de 20 px : taille d'origine (12 px), sinon ils debordent du rond */
:is(#t3-mainbody, #t3-department) span[style*="border-radius: 50%"][style*="width: 20px"] {
  font-size: 12px !important;
}

/* 12.3 Bandeau des fiches RS (article > header a degrade) : son h2 est le titre visible
   de la page (h1 masque). Il garde 34 px (28 px sur mobile), au-dessus des h2 de section. */
:is(#t3-mainbody, #t3-department) article > header[style*="gradient"] h2 {
  font-size: 34px !important;
  line-height: 1.2 !important;
}
@media (max-width: 767px) {
  :is(#t3-mainbody, #t3-department) article > header[style*="gradient"] h2 { font-size: 28px !important; }
}

/* 12.4 Sous-titre des pages categorie (small dans h2.page-subtitle) : c'est un titre,
   pas une note. Sur sa propre ligne, 17 px. */
:is(#t3-mainbody, #t3-department) :is(.page-header, .page-subheader) :is(.page-subtitle, .page-title, h1, h2) small {
  display: block;
  font-size: 17px !important;
  line-height: 1.35 !important;
  margin-top: 4px;
}
/* liste des sous-categories en bas de page (h3.page-header.item-title) : liens, pas titres */
:is(#t3-mainbody, #t3-department) h3.page-header.item-title {
  font-size: 18px !important;
}

/* 12.5 Cartes du gabarit blog : surtitres en capitales des fiches plus discrets dans l'extrait */
:is(#t3-mainbody, #t3-department) .blog .items-row .article-intro :is([style*="text-transform: uppercase"], [style*="text-transform:uppercase"]) {
  font-size: 14px !important;
  letter-spacing: .04em !important;
}

/* 12.6 Colonne de lecture : les h2 du corps d'article (soulignes d'un filet par le gabarit)
   suivent la meme largeur que les paragraphes (37 x 17 px = 629 px) : plus d'effet
   « en escalier » entre filets pleine largeur et texte a 629 px.
   Les h3/h4 (sans filet) ne sont pas limites : ils ne rallongent pas la page.
   (en px : un max-width en em se calculerait sur la taille du titre) */
:is(#t3-mainbody, #t3-department) :is(.article-content, .article-intro, [itemprop="articleBody"], .tp-page, .category-desc, .itemFullText, .itemIntroText, .tp-fiche-section, .tp-section, .tp-qfaq, .tp-faq, .tp-cpf-faq, .tp-cats-compare, .markdown, article.formation-drone, article[style] > section[id], #faq-formation-drone) > h2:not([style*="center"], [align="center"], [style*="background"], [style*="border"], [style*="flex"], [style*="grid"], [style*="column"]),
:is(#t3-mainbody, #t3-department) :is(.article-content, .article-intro, [itemprop="articleBody"], .tp-page, .category-desc, .itemFullText, .itemIntroText, .tp-fiche-section, .tp-section, .tp-qfaq, .tp-faq, .tp-cpf-faq, .tp-cats-compare, .markdown, article.formation-drone, article[style] > section[id], #faq-formation-drone) > :is(div, section, header, strong, b, span):not([class]):not([style*="center"], [align="center"], [style*="background"], [style*="border"], [style*="flex"], [style*="grid"], [style*="column"]) > h2:not([style*="center"], [align="center"], [style*="background"], [style*="border"], [style*="flex"], [style*="grid"], [style*="column"]) {
  max-width: calc(37 * var(--tp-fs));
}
/* encadre « Mentions reglementaires » (section a bordure) : lignes de lecture */
:is(#t3-mainbody, #t3-department) section[style*="border"] > :is(p, ul) {
  max-width: 46em;
}

/* 12.7 Tableaux */
/* tableau comparatif a 7 colonnes du hub des certifications : 15 px */
:is(#t3-mainbody, #t3-department) table.tp-table-certifs[style] {
  font-size: var(--tp-note) !important;
}
@media (max-width: 767px) {
  :is(#t3-mainbody, #t3-department) .tp-table-certifs :is(td, th) { padding: 8px !important; vertical-align: top; }
  /* fiches RS, « 5. Competences attestees » : le tableau tient dans 322 px */
  :is(#t3-mainbody, #t3-department) section#competences :is(td, th) {
    padding: 12px 10px !important;
    font-size: var(--tp-note) !important;
  }
  :is(#t3-mainbody, #t3-department) section#competences th:is([style*="text-transform: uppercase"], [style*="text-transform:uppercase"]) {
    font-size: 14px !important;
    letter-spacing: .03em !important;
  }
  /* anciens tableaux colles depuis Word (attribut cellpadding, sans classe) : 15 px.
     (marges internes inchangees : le gabarit les met deja a 0) */
  #t3-mainbody .item-page table[cellpadding]:not([class]) :is(td, th) {
    font-size: var(--tp-note) !important;
  }
  #t3-mainbody .item-page table[cellpadding]:not([class]) :is(td, th) [style*="font-size"] {
    font-size: var(--tp-note) !important;
  }
}

/* 12.8 Etiquettes (tags) : espacement vertical, plus de bordures qui se chevauchent */
:is(#t3-mainbody, #t3-department) .tags a.label {
  display: inline-block;
  margin: 0 4px 6px 0;
}
/* la liste suit l'article (dont le dernier element est le bouton « Precedent ») */
:is(#t3-mainbody, #t3-department) :is(article, .pager, .pagenav) + .tags {
  margin-top: 12px;
}

/* 12.9 Chapo encadre a barre orange (17 px en ligne) : Exo 2 est plus petite a l'oeil
   que Verdana a taille egale -> 18 px pour rester au-dessus du texte courant */
:is(#t3-mainbody, #t3-department) p[style*="border-left: 4px solid #ff6600"][style*="font-size: 17px"] {
  font-size: 18px !important;
}

/* numeros de telephone cliquables : jamais coupes en fin de ligne (« 09 / 83 40 97 04 ») */
:is(#t3-mainbody, #t3-department, #t3-footer) a[href^="tel:"] {
  white-space: nowrap;
}

/* 12.10 K2 : colonne de metadonnees et navigation precedent / suivant (liens tronques) */
:is(#t3-mainbody, #t3-department) :is(.itemCategory, .itemNavigation .itemNavigationTitle, .itemNavigation a.itemPrevious, .itemNavigation a.itemNext) {
  font-size: var(--tp-note) !important;
}
@media (min-width: 768px) {
  /* slogan de l'en-tete K2 « Centre de formation pilote drone civil » : 10 px -> 14 px */
  #t3-header .site-slogan { font-size: 14px; }
}

/* 12.11 Menus deroulants ordinateur : libelles a 15 px, largeur 200 -> 260 px,
   marge droite pour la fleche des sous-menus */
@media (min-width: 992px) {
  #t3-mainnav .dropdown-menu { min-width: 260px; }
  #t3-mainnav .dropdown-menu li > a { padding-right: 28px; }
}
