/* Thème Barreau : mise en page propre aux gabarits (espacements de sections, rythme vertical).
   Repris tel quel de design/04-maquettes/pages.css (préfixe bdgt- remplacé par bdgt-).
   Tous les composants viennent de components.css (UI Kit v5.2) ; ce fichier ne crée aucun composant. */

/* En-tête compact au défilement (UI Kit §3.2) : l'emplacement garde la hauteur de l'en-tête complet pour éviter un saut de mise en page */
@media (min-width: 1024px) {
  .bdgt-header-slot .bdg-header--compact { position: fixed; top: 0; left: 0; right: 0; }
}

/* Sections de l'accueil : fonds alternés blanc et gris 50 (design system §6) */
.bdgt-section { padding-block: var(--bdg-space-16); }
.bdgt-section--tight { padding-block: var(--bdg-space-10) var(--bdg-space-4); }
.bdgt-section--alt { background: var(--bdg-color-background-alt); }
@media (max-width: 767px) { .bdgt-section { padding-block: var(--bdg-space-12); } }

/* Pages intérieures */
.bdgt-crumbs { padding-top: var(--bdg-space-6); }
.bdgt-page-head { display: grid; gap: var(--bdg-space-4); padding-block: var(--bdg-space-6) var(--bdg-space-8); }
.bdgt-page-head .bdg-lead { max-width: 60ch; }
.bdgt-page { padding-block: var(--bdg-space-8) var(--bdg-space-16); }
.bdgt-narrow { max-width: calc(760px + 2 * var(--bdg-layout-margin)); }
.bdgt-narrow .bdg-h1 { margin-bottom: var(--bdg-space-8); }
.bdgt-stack { padding-bottom: var(--bdg-space-16); }
.bdgt-filters { margin-top: var(--bdg-space-6); }
.bdgt-pagination { margin-top: var(--bdg-space-10); }
.bdgt-notlisted { margin: var(--bdg-space-8) 0 0; }
/* Annuaire, noms proches (brief 18) : intertitre entre le bloc « aucun résultat » et les cartes, puis bloc des conseils */
.bdgt-proches { margin: var(--bdg-space-8) 0 var(--bdg-space-4); }
.bdgt-proches-suite { margin-top: var(--bdg-space-8); }
.bdgt-after { display: flex; flex-wrap: wrap; gap: var(--bdg-space-4) var(--bdg-space-8); margin-top: var(--bdg-space-8); }

/* Cartes de ressource à trois par ligne : icône de format réduite */
@media (min-width: 1024px) { .bdgt-resources .bdg-card__format { width: 72px; } }

/* Lot 2 : gabarits à deux colonnes (grille bdg-layout de l'UI Kit) et rythme vertical du contenu principal */
.bdgt-cols { padding-top: var(--bdg-space-6); }
.bdgt-block { margin-top: var(--bdg-space-8); }
.bdgt-lead { margin-top: var(--bdg-space-4); max-width: 60ch; }
.bdgt-list-filters { margin-top: var(--bdg-space-6); }
.bdgt-tabs { margin-top: var(--bdg-space-6); }
.bdgt-event-facts { display: grid; gap: var(--bdg-space-2); }
.bdgt-after-video { margin: var(--bdg-space-3) 0 0; }
.bdgt-linked { max-width: 560px; }
.bdgt-linked__title { margin-bottom: var(--bdg-space-5); }

/* ---------- Lot 3 : pages institutionnelles, documentation, contact, pages utilitaires ---------- */
.bdgt-cols .bdg-page-head { padding-top: 0; }
.bdgt-bio-title { margin-top: var(--bdg-space-2); }
.bdgt-bio-role { margin-top: var(--bdg-space-2); }
.bdgt-links { margin-top: var(--bdg-space-3); }
.bdgt-sub { margin-bottom: var(--bdg-space-6); }
.bdgt-block-lg { margin-top: var(--bdg-space-12); }
.bdgt-flat { margin: 0; }
.bdgt-measure { max-width: 70ch; }
.bdgt-contact { padding-bottom: var(--bdg-space-16); }
.bdgt-forms { display: grid; gap: var(--bdg-space-12); align-content: start; }
.bdgt-anchor { scroll-margin-top: var(--bdg-space-8); }
.bdgt-faq { display: grid; gap: var(--bdg-space-10); max-width: 80ch; }
.bdgt-plain-list { list-style: none; margin: 0; padding: 0; }
.bdgt-results { max-width: 90ch; }

/* ---------- Brief 08 : bloc du Bâtonnier sur la page du Conseil ---------- */
.bdgt-lead-block { padding-bottom: var(--bdg-space-12); }

/* ---------- Propre à WordPress ---------- */
/* Barre d'administration : l'en-tête compact fixé se place dessous */
@media (min-width: 1024px) { .admin-bar .bdgt-header-slot .bdg-header--compact { top: 32px; } }
/* Texte réservé aux lecteurs d'écran (classe native de WordPress) */
.screen-reader-text { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
/* Blocs de l'éditeur : coins carrés, alignements simples */
.bdg-prose .wp-block-button__link, .bdg-prose .wp-block-image img, .bdg-prose .wp-block-file__button { border-radius: var(--bdg-radius-none); }
.bdg-prose .aligncenter { margin-inline: auto; text-align: center; }
/* Plan du site et page 404 : espace sous le contenu */
.bdgt-accueil-vide { padding-block: var(--bdg-space-10); }

/* Pied de page collé en bas (UI Kit v5.3) : la barre d'administration de WordPress occupe 32 px (46 px sur mobile) */
.bdg-site.admin-bar { min-height: calc(100vh - 32px); min-height: calc(100dvh - 32px); }
@media (max-width: 782px) { .bdg-site.admin-bar { min-height: calc(100vh - 46px); min-height: calc(100dvh - 46px); } }

/* Membre du Conseil sans portrait : initiales sur fond neutre, comme les vignettes de l'annuaire */
.bdgt-portrait-initiales { font-size: 52px; line-height: 1; font-weight: var(--bdg-font-weight-bold); letter-spacing: .04em; color: var(--bdg-color-text-primary); }

/* Bandeau d'accueil : cadrage vertical de l'image, calculé d'après le réglage « Cadrage vertical » (point d'intérêt gardé au centre) */
.bdg-hero__photo img { object-position: 50% var(--bdgt-cadrage-mobile, 50%); }
@media (min-width: 1024px) { .bdg-hero__photo img { object-position: 50% var(--bdgt-cadrage-ordinateur, 50%); } }

/* Accueil, ordre des sections réglable (décision 67) : la bande des coordonnées est blanche quand la règle des fonds le demande */
.bdg-contact--band.bdgt-contact--blanc { background: var(--bdg-color-background-page); }

/* ---------- Brief 14 : anciens Bâtonniers ---------- */
/* Mention (« premier Bâtonnier », « intérimaire ») : sous le nom, en texte secondaire */
.bdgt-batonnier__mention { margin: var(--bdg-space-1) 0 0; font-size: var(--bdg-font-size-small); line-height: var(--bdg-font-line-height-small); color: var(--bdg-color-text-secondary); }
/* Fiche sans période : la colonne de la période reste vide, le portrait et le nom gardent l'alignement de la liste */
@media (min-width: 768px) { .bdgt-batonnier--sans-periode > :first-child { grid-column: 2; } }
/* Brief 19 : initiales à la taille de l'emplacement (96 px de large sur mobile, 120 px à partir de 768 px), dans le
   rapport des vignettes de l'annuaire ; image cadrée comme au Conseil de l'Ordre */
.bdg-batonnier__photo .bdgt-portrait-initiales { font-size: 32px; }
.bdg-batonnier__photo img { display: block; object-position: center 20%; }
@media (min-width: 768px) { .bdg-batonnier__photo .bdgt-portrait-initiales { font-size: 40px; } }

/* ---------- Brief 14 ter : accueil, ordre des sections réglable (décision 67) ---------- */
/* Sur fond gris, les tuiles passent en blanc (les cartes le sont déjà) */
.bdgt-section--alt .bdg-tile:not(:hover):not(:focus-visible):not(.is-hover):not(.is-focus) { background: var(--bdg-color-background-page); }

/* ---------- Brief 21 : agenda ---------- */
/* Carte d'événement de l'accueil : thème limité à trois lignes, par sécurité */
.bdgt-clamp-3 { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; line-clamp: 3; overflow: hidden; }
/* Fiche d'événement : thème en chapô sous le titre, à la taille des chapôs du contenu rédactionnel (décision 76) */
.bdgt-event-theme { color: var(--bdg-color-text-secondary); }
/* Fiche d'événement : le badge de statut suit le surtitre, au-dessus du titre, comme sur les cartes. */
.bdgt-event-meta { align-items: center; gap: var(--bdg-space-2) var(--bdg-space-3); }
.bdgt-event-meta .bdg-badge { align-self: center; }
@media (min-width: 768px) { .bdg-layout--text .bdg-layout__main .bdgt-event-theme { font-size: var(--bdg-prose-lead-font-size); line-height: var(--bdg-prose-lead-line-height); } }

/* --- Plan du site (brief 23, hors maquettes) : démarches en bandeau noir, une carte par rubrique ; titre seul en tête (0.6.13) --- */
.bdgt-plan__demarches { padding-block: var(--bdg-space-10); background: var(--bdg-color-background-dark); color: var(--bdg-color-text-inverse); }
.bdgt-plan__demarches-titre { margin: 0 0 var(--bdg-space-6); font-size: var(--bdg-font-size-h4); line-height: var(--bdg-font-line-height-h4); font-weight: var(--bdg-font-weight-bold); color: var(--bdg-color-text-inverse); }
.bdgt-plan__demarches-titre::after { content: ""; display: block; width: 48px; height: var(--bdg-border-width-accent); margin-top: var(--bdg-space-3); background: var(--bdg-color-border-accent); }
.bdgt-plan__demarches-liste { display: grid; grid-template-columns: 1fr; gap: var(--bdg-space-2); margin: 0; padding: 0; list-style: none; }
@media (min-width: 768px) { .bdgt-plan__demarches-liste { grid-template-columns: repeat(2, 1fr); column-gap: var(--bdg-layout-gutter); } }
@media (min-width: 1024px) {
  .bdgt-plan__demarches-liste { grid-template-columns: repeat(4, 1fr); }
  .bdgt-plan__demarches-liste--3 { grid-template-columns: repeat(3, 1fr); }
  .bdgt-plan__demarches-liste--2 { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 768px) { .bdgt-plan__demarches-liste--1 { grid-template-columns: minmax(0, 1fr); max-width: calc(50% - var(--bdg-layout-gutter) / 2); } }
.bdgt-plan__demarches .bdg-aside-link { height: 100%; padding-inline: 0; border-top: var(--bdg-border-width-hairline) solid var(--bdg-color-border-on-dark); }
.bdgt-plan__demarches .bdg-aside-link:focus-visible, .bdgt-plan__demarches .bdg-aside-link.is-focus { padding-inline: var(--bdg-space-3); }
.bdgt-plan { padding-block: var(--bdg-space-12) var(--bdg-space-16); }
.bdgt-plan__grille { display: grid; grid-template-columns: 1fr; gap: var(--bdg-layout-gutter); }
@media (min-width: 768px) { .bdgt-plan__grille { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .bdgt-plan__grille { grid-template-columns: repeat(3, 1fr); } }
.bdgt-plan__carte { display: flex; flex-direction: column; min-width: 0; padding: var(--bdg-space-6); background: var(--bdg-color-background-page); box-shadow: var(--bdg-shadow-card); border-top: var(--bdg-border-width-accent) solid var(--bdg-color-border-accent); }
.bdgt-plan__titre { margin: 0 0 var(--bdg-space-4); font-size: var(--bdg-font-size-h4); line-height: var(--bdg-font-line-height-h4); font-weight: var(--bdg-font-weight-bold); }
.bdgt-plan__titre a:hover, .bdgt-plan__titre a.is-hover { color: var(--bdg-interactive-hover-color); }
.bdgt-plan__titre a:focus-visible, .bdgt-plan__titre a.is-focus { color: var(--bdg-focus-block-color); background-color: var(--bdg-focus-block-bg); }
.bdgt-plan__liste { margin: 0; padding: 0; list-style: none; }
.bdgt-plan__liste li + li { border-top: var(--bdg-border-width-hairline) solid var(--bdg-color-border-subtle); }
.bdgt-plan__lien { display: flex; align-items: center; justify-content: space-between; gap: var(--bdg-space-3); padding: var(--bdg-space-3) 0; font-size: var(--bdg-font-size-small); line-height: var(--bdg-font-line-height-small); }
.bdgt-plan__lien .bdg-icon { flex: none; width: var(--bdg-icon-size-md); height: var(--bdg-icon-size-md); color: var(--bdg-color-icon-decorative-on-light); }
.bdgt-plan__lien:hover, .bdgt-plan__lien.is-hover { color: var(--bdg-interactive-hover-color); }
.bdgt-plan__lien:focus-visible, .bdgt-plan__lien.is-focus { color: var(--bdg-focus-block-color); background-color: var(--bdg-focus-block-bg); }
.bdgt-plan__lien[aria-current="page"] { font-weight: var(--bdg-font-weight-bold); }
.bdgt-plan__carte--page { padding: 0; background: var(--bdg-color-background-alt); box-shadow: none; }
.bdgt-plan__tuile { display: flex; flex-direction: column; flex: 1; padding: var(--bdg-space-6); }
.bdgt-plan__tuile .bdgt-plan__titre { font-size: var(--bdg-font-size-h3); line-height: var(--bdg-font-line-height-h3); }
.bdgt-plan__acces { display: inline-flex; align-items: center; gap: var(--bdg-space-2); margin-top: auto; padding-top: var(--bdg-space-6); font-size: var(--bdg-font-size-small); line-height: 1.3; font-weight: var(--bdg-font-weight-bold); }
.bdgt-plan__acces .bdg-icon { width: var(--bdg-icon-size-md); height: var(--bdg-icon-size-md); }
.bdgt-plan__tuile:hover, .bdgt-plan__tuile.is-hover, .bdgt-plan__tuile:focus-visible, .bdgt-plan__tuile.is-focus { color: var(--bdg-focus-block-color); background-color: var(--bdg-focus-block-bg); }

/* Documentation : sous-type en complément du type dans l’en-tête d’une ressource (base documentaire du 10 octobre 2026) */
.bdg-article-head__meta .bdgt-sous-type { color: var(--bdg-color-text-secondary); }
