/* Point Franchises — système v2 : jetons et composants communs. Aucune ressource externe. */
@font-face{font-family:Lato;font-style:normal;font-weight:400;font-display:swap;src:local("Lato Regular"),local("Lato-Regular"),url("../fonts/Lato-Regular.woff2") format("woff2")}
@font-face{font-family:Lato;font-style:italic;font-weight:400;font-display:swap;src:local("Lato Italic"),local("Lato-Italic"),url("../fonts/Lato-Italic.woff2") format("woff2")}
@font-face{font-family:Lato;font-style:normal;font-weight:700;font-display:swap;src:local("Lato Bold"),local("Lato-Bold"),url("../fonts/Lato-Bold.woff2") format("woff2")}
@font-face{font-family:Lato;font-style:italic;font-weight:700;font-display:swap;src:local("Lato Bold Italic"),local("Lato-BoldItalic"),url("../fonts/Lato-BoldItalic.woff2") format("woff2")}
@font-face{font-family:Lato;font-style:normal;font-weight:900;font-display:swap;src:local("Lato Black"),local("Lato-Black"),url("../fonts/Lato-Black.woff2") format("woff2")}
@font-face{font-family:Lato;font-style:italic;font-weight:900;font-display:swap;src:local("Lato Black Italic"),local("Lato-BlackItalic"),url("../fonts/Lato-BlackItalic.woff2") format("woff2")}

:root{
  --fond:#F6F4F0;--blanc:#fff;--brun:#2D2A25;--brun-survol:#3A3631;--noir:#0F0F0F;
  --gris-600:#5F5A52;--gris-400:#9A958C;--gris-200:#E4E0D9;--filet:#EFEBE5;
  --jaune:#F8BD2A;--jaune-survol:#E5AC1D;--framboise:#C9316A;--lien-survol:#8A6500;
  --erreur:#A94438;--erreur-fond:#FBEAE7;--succes:#3D7A5B;--succes-fond:#E9F4ED;
  --rayon:6px;--rayon-petit:4px;--ombre:0 1px 2px rgba(15,15,15,.06);--ombre-haute:0 4px 12px rgba(15,15,15,.10);
  --police:Lato,Helvetica,Arial,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--fond);color:var(--brun);font-family:var(--police);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}
a{color:var(--brun);text-decoration:underline;text-underline-offset:3px}
a:hover{color:var(--lien-survol)}
/* U9 (lot 22, vague 2) : anneau brun et liseré blanc, lisibles sur fond clair comme sur fond brun ; le jaune reste aux actions de documentation */
:focus-visible{outline:2px solid var(--brun);outline-offset:2px;box-shadow:0 0 0 2px var(--blanc)}
.evitement{position:absolute;left:16px;top:-100px;z-index:1000;background:var(--blanc);color:var(--brun);padding:10px 16px;border-radius:var(--rayon-petit);font-weight:700}
.evitement:focus{top:8px}
img{max-width:100%}
button{font-family:inherit}
summary::-webkit-details-marker{display:none}
summary{list-style:none}
.visuellement-cache{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.icone-externe{display:inline-block;margin-left:4px;vertical-align:-1px}

/* Mise en page */
.conteneur{max-width:1180px;margin:0 auto;padding:0 20px}
.page-principale{max-width:1180px;margin:0 auto;padding:16px 20px 48px;display:flex;flex-direction:column;gap:20px}
.grille-page{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;align-items:start}
.colonne-principale{display:flex;flex-direction:column;gap:20px;min-width:0}
.colonne-laterale{display:flex;flex-direction:column;gap:12px}
@media (max-width:999px){.grille-page{grid-template-columns:minmax(0,1fr)}}

/* Typographie */
.titre-page{margin:0;font-size:32px;font-weight:900;line-height:1.15;letter-spacing:-.01em;text-wrap:balance}
.titre-page--moyen{font-size:34px}
.soulignement{display:block;width:36px;height:4px;border-radius:2px;background:var(--jaune)}
.entete-page{display:flex;flex-direction:column;gap:6px}
.sous-titre{margin:0;font-size:18px;color:var(--gris-600)}
.titre-section{margin:0;font-size:24px;font-weight:700;line-height:1.2}
.titre-section--petit{font-size:22px;line-height:1.25}
.libelle{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--gris-600)}
.texte-secondaire{font-size:14px;color:var(--gris-600)}
.meta{font-size:13px;color:var(--gris-600)}
.ligne-titre{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px}
.lien-fleche{display:inline-flex;align-items:center;gap:6px;min-height:36px;font-size:14px;font-weight:700;text-decoration:none}
.lien-fleche:hover{text-decoration:underline}
/* Article précédent / suivant (audit SEO n° 19, action 1) : deux liens sous l'article, composants existants (libellé, titre) */
.articles-voisins{margin-top:32px;padding-top:20px;border-top:1px solid var(--filet);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.articles-voisins__lien{display:flex;flex-direction:column;gap:4px;text-decoration:none;color:var(--brun)}
.articles-voisins__lien .libelle{display:inline-flex;align-items:center;gap:4px}
.articles-voisins__lien--suivant{grid-column:2;text-align:right;align-items:flex-end}
.articles-voisins__titre{font-size:15px;font-weight:700;line-height:1.35;text-wrap:pretty}
.articles-voisins__lien:hover .articles-voisins__titre{text-decoration:underline}
@media (max-width:640px){.articles-voisins{grid-template-columns:minmax(0,1fr)}.articles-voisins__lien--suivant{grid-column:auto}}
.lien-fleche svg,.btn svg{flex-shrink:0}
@media (max-width:640px){.titre-page{font-size:26px}.titre-page--moyen{font-size:26px}}

/* Blocs */
.bloc{background:var(--blanc);border:1px solid var(--gris-200);border-radius:var(--rayon);padding:16px 18px}
.bloc--large{padding:18px 20px}
.bloc__titre{margin:0 0 6px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--gris-600);display:flex;align-items:center;gap:8px}
.bloc__titre::before{content:"";width:8px;height:8px;border-radius:2px;background:var(--jaune);flex-shrink:0}
.classement{margin:0;padding:0;list-style:none;font-size:14px}
.classement li{display:flex;gap:12px;align-items:center;min-height:40px;border-top:1px solid var(--filet)}
.classement a{text-decoration:none}
.classement a:hover{text-decoration:underline}
.classement__rang{font-size:20px;font-weight:900;color:var(--noir);width:20px;text-align:center;line-height:1}
.classement--logos li{min-height:52px}
.classement--logos img{width:40px;height:40px;object-fit:contain;border:1px solid var(--gris-200);border-radius:var(--rayon-petit);background:var(--blanc);padding:2px}
.classement--logos a{font-weight:700}
.classement--compte li{justify-content:space-between;gap:8px}
.classement--compte a{font-weight:700}
.classement--compte span{color:var(--gris-600);font-size:13px;font-variant-numeric:tabular-nums}
.liste-simple{margin:0;padding:0;list-style:none;font-size:14px}
.liste-simple li{padding:10px 0;border-top:1px solid var(--filet);display:flex;flex-direction:column;gap:2px}
.liste-simple time{font-size:12px;color:var(--gris-600)}
.liste-simple a{text-decoration:none;font-weight:700;line-height:1.35;display:block}
.liste-simple a:hover{text-decoration:underline}
.liste-simple__meta{display:flex;flex-wrap:wrap;gap:2px 8px;align-items:center;font-size:12px;color:var(--gris-600)}
.liste-simple__meta strong{font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.encart-cession{display:flex;flex-direction:column;gap:8px}
.encart-cession p{margin:0}
.encart-cession__lien{font-size:15px;line-height:1.4;text-wrap:pretty}
.encart-cession__lien a{font-weight:700;text-decoration:none}
.encart-cession__lien a:hover{text-decoration:underline}
.encart-cession__lien svg{display:inline-block;vertical-align:-2px;margin-left:6px}
.encart-cession__note{font-size:12px;color:var(--gris-600)}

/* Boutons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 18px;border-radius:var(--rayon);font-family:inherit;font-weight:700;font-size:15px;border:1px solid transparent;cursor:pointer;text-decoration:none;white-space:nowrap}
.btn--primaire{background:var(--jaune);color:var(--brun);border-color:var(--jaune)}
.btn--primaire:hover{background:var(--jaune-survol);border-color:var(--jaune-survol);color:var(--brun)}
.btn--secondaire{background:var(--blanc);color:var(--brun);border-color:var(--brun)}
.btn--secondaire:hover{background:var(--fond);color:var(--brun)}
.btn--tertiaire{background:var(--blanc);color:var(--brun);border-color:var(--gris-200)}
.btn--tertiaire:hover{border-color:var(--brun);color:var(--brun)}
.btn--sombre{background:var(--brun);color:var(--blanc);border-color:var(--brun)}
.btn--sombre:hover{background:var(--brun-survol);color:var(--blanc)}
.btn--fantome{background:transparent;color:var(--blanc);border-color:rgba(255,255,255,.5)}
.btn--fantome:hover{background:var(--blanc);color:var(--brun)}
.btn--grand{min-height:48px;font-size:16px}
.btn--petit{min-height:36px;padding:0 10px;font-size:14px}
.btn--moyen{min-height:40px;padding:0 14px;font-size:14px}
.btn--bloc{width:100%;display:flex}
.btn--icone{width:44px;padding:0}
.btn-selection{background:var(--blanc);color:var(--brun);border-color:var(--brun)}
.btn-selection:hover{background:var(--fond);color:var(--brun)}
.btn-selection[aria-pressed="true"]{background:var(--brun);color:var(--blanc)}
.btn-selection[aria-pressed="true"]:hover{background:var(--brun-survol)}
.btn-selection .si-non-coche,.btn-selection[aria-pressed="true"] .si-coche{display:inline-flex}
.btn-selection .si-coche,.btn-selection[aria-pressed="true"] .si-non-coche{display:none}
.btn-selection--coin{position:absolute;top:6px;right:6px;z-index:1;width:32px;height:32px;min-height:0;padding:0;border-radius:var(--rayon)}
.bouton-lien{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0;border:0;background:none;font-family:inherit;font-size:14px;font-weight:700;color:var(--brun);cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.bouton-lien:hover{color:var(--lien-survol)}
@media (max-width:640px){.btn-selection--compact .btn__libelle{display:none}}

/* En-tête */
.entete{background:var(--blanc);border-bottom:1px solid var(--gris-200);position:relative;z-index:5}
.entete__barre{max-width:1180px;margin:0 auto;padding:0 20px;min-height:64px;display:flex;align-items:center;gap:12px}
.entete__logo{display:flex;align-items:center;flex-shrink:0;text-decoration:none}
.entete__logo img{height:26px;width:auto;display:block}
.entete__espace{flex:1}
.entete__referencer{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border:1px solid var(--gris-200);border-radius:var(--rayon);background:var(--blanc);color:var(--brun);font-size:14px;font-weight:700;text-decoration:none;white-space:nowrap}
/* Survol et focus en framboise (Sébastien, 02/11) : blanc sur #C9316A = 5,08:1 ; au repos, rien ne change */
.entete__referencer:hover,.entete__referencer:focus{border-color:var(--framboise);background:var(--framboise);color:var(--blanc)}
.entete__selection{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:0 10px 0 12px;border:1px solid var(--brun);border-radius:var(--rayon);background:var(--blanc);color:var(--brun);font-size:14px;font-weight:700;cursor:pointer}
.entete__selection:hover{background:var(--fond)}
.compteur{min-width:24px;height:24px;padding:0 7px;border-radius:999px;background:var(--jaune);color:var(--brun);font-weight:900;font-size:13px;display:grid;place-items:center;font-variant-numeric:tabular-nums}
.compteur--vide{background:var(--fond);color:var(--gris-600);font-weight:700}
.entete__burger{display:none;width:44px;height:44px;place-items:center;border:none;background:transparent;color:var(--brun);cursor:pointer;border-radius:var(--rayon)}
.entete__burger:hover{background:var(--fond)}
.entete__burger .icone-fermer{display:none}
.entete__burger[aria-expanded="true"] .icone-menu{display:none}
.entete__burger[aria-expanded="true"] .icone-fermer{display:block}
.entete__menu{border-top:1px solid var(--filet)}
.entete__menu ul{max-width:1180px;margin:0 auto;padding:0 12px;list-style:none;display:flex;flex-wrap:wrap;align-items:stretch}
.entete__menu li{display:flex;flex:1 1 auto}
.entete__menu a{display:inline-flex;flex:1;justify-content:center;align-items:center;min-height:44px;padding:0 6px;font-size:13px;font-weight:700;color:var(--brun);text-decoration:none;border-bottom:3px solid transparent;white-space:nowrap}
.entete__menu a:hover,.entete__menu a[aria-current="page"]{border-bottom-color:var(--jaune);color:var(--brun)}
.entete__menu-mobile{display:none;flex-direction:column;padding:4px 0 16px;border-top:1px solid var(--filet)}
.entete__menu-mobile a{display:flex;align-items:center;min-height:48px;padding:0 20px;font-size:16px;font-weight:700;color:var(--brun);text-decoration:none;border-bottom:1px solid var(--filet)}
.entete__menu-mobile .entete__referencer-mobile{display:flex;align-items:center;justify-content:center;min-height:48px;margin:16px 20px 0;border:1px solid var(--brun);border-radius:var(--rayon);background:var(--blanc);font-size:15px}
.entete__menu-mobile .entete__referencer-mobile:hover,.entete__menu-mobile .entete__referencer-mobile:focus{border-color:var(--framboise);background:var(--framboise);color:var(--blanc)}
.entete.est-ouvert .entete__menu-mobile{display:flex}
@media (max-width:640px){
  .entete__menu,.entete__referencer,.entete__selection .entete__selection-libelle{display:none}
  .entete__burger{display:grid}
}

/* Pied de page */
.pied{border-top:3px solid var(--jaune);background:var(--brun);color:var(--gris-200);font-size:14px;line-height:1.5}
.pied__colonnes{max-width:1180px;margin:0 auto;padding:40px 20px 32px;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:32px}
.pied__titre{margin:0 0 12px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--gris-200)}
.pied ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:2px}
.pied a{color:var(--blanc);text-decoration:none;display:inline-flex;align-items:center;min-height:36px}
.pied a:hover{text-decoration:underline;color:var(--blanc)}
.pied__legal{border-top:1px solid rgba(255,255,255,.14)}
.pied__legal-ligne{max-width:1180px;margin:0 auto;padding:12px 20px;display:flex;flex-wrap:wrap;gap:8px 24px;align-items:center;justify-content:space-between;font-size:13px}
.pied__legal nav{display:flex;flex-wrap:wrap;gap:0 20px;align-items:center}
.pied__legal a,.pied__cookies{min-height:40px}
.pied__cookies{font:inherit;font-size:13px;color:var(--blanc);background:none;border:0;padding:0;cursor:pointer;display:inline-flex;align-items:center}
.pied__cookies:hover{text-decoration:underline}
.pied__marque{color:var(--gris-200);padding:8px 0}

/* Fil d'Ariane */
.ariane{font-size:13px;color:var(--gris-600)}
.ariane ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px;line-height:1.5}
.ariane li{display:flex;align-items:baseline;gap:8px}
.ariane a{color:var(--gris-600);text-decoration:none;text-wrap:pretty}
.ariane a:hover{text-decoration:underline;color:var(--brun)}
.ariane li::after{content:"›";color:var(--gris-400)}
.ariane li:last-child::after{content:none}
.ariane [aria-current="page"]{color:var(--brun);font-weight:700}
@media (max-width:640px){
  .ariane{overflow-x:auto;padding-bottom:6px}
  .ariane ol{flex-wrap:nowrap}
  .ariane li{flex-shrink:0;white-space:nowrap}
}

/* Texte SEO repliable */
.texte-seo{display:flex;flex-direction:column;gap:8px}
.texte-seo h2{margin:0}
.texte-seo p{margin:0;font-size:15px;line-height:1.55;text-wrap:pretty;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.texte-seo.est-ouvert p{display:block;-webkit-line-clamp:none}
.texte-seo .bouton-lien{align-self:flex-start}

/* Blocs de maillage */
.maillage{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}
.maillage h2{margin:0 0 10px;font-size:16px;font-weight:700;line-height:1.3;text-wrap:pretty}
.maillage ol{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:4px 16px;font-size:14px}
.maillage li{display:flex;gap:10px;align-items:baseline}
.maillage li::before{counter-increment:maillage;content:counter(maillage);font-size:13px;font-weight:900;color:var(--gris-600);width:16px;text-align:right;flex-shrink:0}
.maillage ol{counter-reset:maillage}
.maillage a{text-decoration:none;min-height:28px;display:inline-flex;align-items:center}
.maillage a:hover{text-decoration:underline}

/* Carte enseigne */
.barre-outils{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:center;justify-content:space-between;padding:12px 16px}
.barre-outils__gauche{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center}
.barre-outils__compteur{margin:0;font-size:14px;font-weight:700;line-height:1.4}
.tri{display:flex;gap:6px;align-items:center}
.tri label{font-size:13px;color:var(--gris-600);white-space:nowrap}
.tri select{font:inherit;font-size:14px;font-weight:700;padding:0 10px;min-height:36px;border:1px solid var(--gris-200);border-radius:var(--rayon-petit);background:var(--blanc);color:var(--brun)}
.tri__ordre{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--gris-200);border-radius:var(--rayon-petit);background:var(--blanc);color:var(--brun);cursor:pointer}
.tri__ordre:hover{border-color:var(--brun)}
.cartes{display:flex;flex-direction:column;gap:12px;margin:0;padding:0;list-style:none}
.carte-enseigne{background:var(--blanc);border:1px solid var(--gris-200);border-radius:var(--rayon);padding:20px;display:grid;grid-template-columns:96px minmax(200px,1fr) 140px 228px;gap:24px;align-items:start}
.carte-enseigne:hover{box-shadow:var(--ombre)}
.carte-enseigne__logo{display:block;text-decoration:none}
.carte-enseigne__logo img,.carte-enseigne__initiales{width:96px;height:96px;object-fit:contain;border:1px solid var(--gris-200);border-radius:var(--rayon);background:var(--blanc);display:block;padding:4px}
.carte-enseigne__initiales{background:var(--fond);display:grid;place-items:center;font-size:28px;font-weight:900}
.carte-enseigne__corps{display:flex;flex-direction:column;gap:6px;min-width:0}
.carte-enseigne__nom{margin:0;font-size:18px;font-weight:700;line-height:1.25;overflow-wrap:anywhere}
.carte-enseigne__nom a{text-decoration:none}
.carte-enseigne__nom a:hover{text-decoration:underline}
.carte-enseigne__desc{margin:0;font-size:14px;line-height:1.5;color:var(--gris-600);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-wrap:pretty}
.carte-enseigne__chiffres{margin:0;display:flex;flex-direction:column;gap:12px}
.chiffre dt{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--gris-600)}
.chiffre dd{margin:2px 0 0;font-size:20px;font-weight:900;line-height:1.15;color:var(--noir);font-variant-numeric:tabular-nums}
.carte-enseigne__actions{display:flex;flex-direction:column;gap:8px}
.carte-enseigne__actions-ligne{display:grid;grid-template-columns:1fr 1fr;gap:8px}
@media (max-width:1083px){
  .carte-enseigne{grid-template-columns:64px minmax(0,1fr);gap:12px;padding:16px;align-items:center}
  .carte-enseigne__logo img,.carte-enseigne__initiales{width:64px;height:64px;padding:3px;font-size:20px}
  .carte-enseigne__chiffres,.carte-enseigne__actions{grid-column:1/-1}
  .carte-enseigne__chiffres{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .carte-enseigne__chiffres .chiffre{background:var(--fond);border-radius:var(--rayon-petit);padding:10px 12px}
  .carte-enseigne__actions .btn--primaire{min-height:48px;font-size:16px}
}
.etat-vide{display:flex;flex-direction:column;gap:18px;padding:24px}
.etat-vide__tete{display:flex;gap:14px;align-items:flex-start}
.etat-vide__icone{width:40px;height:40px;border-radius:999px;background:var(--fond);color:var(--gris-600);display:grid;place-items:center;flex-shrink:0}
.etat-vide h2{margin:0;font-size:20px;font-weight:700;line-height:1.25;text-wrap:pretty}
.etat-vide p{margin:0;font-size:14px;color:var(--gris-600)}
.zones-superieures{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}
.zone-superieure{display:flex;flex-direction:column;gap:4px;padding:16px 18px;border:1px solid var(--brun);border-radius:var(--rayon);text-decoration:none;color:var(--brun)}
.zone-superieure:hover{background:var(--fond);color:var(--brun)}
.zone-superieure--discrete{border-color:var(--gris-200)}
.zone-superieure--discrete:hover{border-color:var(--brun);background:var(--blanc)}
.zone-superieure strong{font-size:16px;font-weight:700}
.zone-superieure .lien-fleche{min-height:0;font-size:13px;color:var(--gris-600);font-weight:400}

/* Carte article */
.carte-article{position:relative;background:var(--blanc);border:1px solid var(--gris-200);border-radius:var(--rayon);padding:16px;display:grid;grid-template-columns:80px minmax(0,1fr);gap:16px;align-items:start}
.carte-article:hover{box-shadow:var(--ombre);border-color:var(--gris-400)}
.carte-article--sans-logo{display:flex;flex-direction:column;gap:8px;padding:18px 20px}
.carte-article__logo{position:relative;z-index:1}
.carte-article__logo img{width:80px;height:80px;object-fit:contain;border:1px solid var(--gris-200);border-radius:var(--rayon);background:var(--blanc);display:block;padding:4px}
.carte-article--petite{grid-template-columns:72px minmax(0,1fr);gap:14px}
.carte-article--petite .carte-article__logo img{width:72px;height:72px}
.carte-article__corps{display:flex;flex-direction:column;gap:6px;min-width:0}
.carte-article__meta{display:flex;flex-wrap:wrap;gap:4px 8px;align-items:center;font-size:13px;color:var(--gris-600)}
.carte-article__meta a{position:relative;z-index:1;font-weight:700;text-decoration:none}
.carte-article__meta a:hover{text-decoration:underline}
.carte-article__titre{margin:0;font-size:17px;font-weight:700;line-height:1.3;text-wrap:pretty}
.carte-article__titre a{text-decoration:none}
.carte-article__titre a:hover{text-decoration:underline}
.carte-article__titre a::after{content:"";position:absolute;inset:0}
.carte-article__extrait{margin:0;font-size:15px;color:var(--gris-600);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.carte-article__suite{position:relative;z-index:1;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex;align-items:center;gap:6px;min-height:32px;align-self:flex-start}
.carte-article__suite:hover{text-decoration:underline}
.grille-articles{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px}
.grille-articles--trois{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
@media (max-width:640px){.carte-article{grid-template-columns:56px minmax(0,1fr);padding:14px}.carte-article__logo img{width:56px;height:56px}}

/* Pagination */
.pagination{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:14px;padding:12px}
.pagination a,.pagination span{min-width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--gris-200);border-radius:var(--rayon);text-decoration:none;font-weight:700;padding:0 10px;gap:6px}
.pagination a:hover{border-color:var(--brun);color:var(--brun)}
.pagination [aria-current="page"]{background:var(--jaune);border-color:var(--jaune);color:var(--brun)}
.pagination [aria-disabled="true"]{color:var(--gris-400)}
.pagination__points{min-width:24px;border:0;color:var(--gris-400);padding:0}
.pagination__etat{margin-left:auto;font-size:13px;color:var(--gris-600);border:0;height:auto;min-width:0;padding:0;font-weight:400}
/* S1 (lot 22) : libellés Précédent / Suivant, « … » et état sans la bordure de « .pagination span » (cadre dans le cadre) */
.pagination .btn__libelle,.pagination .pagination__etat,.pagination .pagination__points{border:0;min-width:0;height:auto;padding:0}
.pagination .pagination__points{min-width:24px}
/* S1 (lot 22) : toutes les pages à un clic, en petits liens texte sous le pager (13 px, cibles de 24 px, WCAG 2.5.8) */
.pagination-toutes{display:flex;flex-wrap:wrap;align-items:center;gap:0 2px;margin:-8px 12px 0;font-size:13px;color:var(--gris-600)}
.pagination-toutes span:first-child{margin-right:6px}
.pagination-toutes a,.pagination-toutes [aria-current]{display:inline-flex;align-items:center;justify-content:center;min-width:24px;min-height:24px;padding:0 2px;color:var(--gris-600)}
.pagination-toutes [aria-current]{font-weight:700;color:var(--brun)}
@media (max-width:480px){.pagination{gap:4px}.pagination a,.pagination span{min-width:36px;height:36px;padding:0 6px}.pagination .btn__libelle{display:none}.pagination__etat{flex-basis:100%;margin-left:0}}

/* Alphabet */
.alphabet{position:sticky;top:0;z-index:4;background:var(--blanc);border:1px solid var(--gris-200);border-radius:var(--rayon);padding:8px;display:flex;flex-wrap:wrap;gap:4px;font-size:14px;align-items:center}
.alphabet a,.alphabet span{min-width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--rayon-petit);text-decoration:none;font-weight:700;padding:0 6px}
.alphabet a:hover{background:var(--fond);color:var(--brun)}
.alphabet [aria-current="page"]{background:var(--jaune);color:var(--brun)}
.alphabet [aria-disabled="true"]{color:var(--gris-400)}
.alphabet__separateur{width:1px;height:20px;background:var(--gris-200);margin:0 4px;min-width:0;padding:0}

/* Formulaires */
.champ{display:flex;flex-direction:column;gap:6px}
.champ label,.champ legend{font-size:14px;font-weight:700;padding:0}
.champ legend{margin-bottom:6px}
.champ .aide{font-weight:400;color:var(--gris-600)}
.saisie{font:inherit;font-size:15px;padding:0 12px;min-height:44px;border:1px solid var(--gris-200);border-radius:var(--rayon-petit);background:var(--blanc);color:var(--brun);width:100%}
textarea.saisie{padding:10px 12px;resize:vertical;min-height:64px}
.saisie[aria-invalid="true"]{border-color:var(--erreur)}
.champ__erreur{font-size:13px;font-weight:700;color:var(--erreur)}
.champ--pleine{grid-column:1/-1}
.grille-champs{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.grille-champs--une{grid-template-columns:minmax(0,1fr)}
@media (max-width:640px){.grille-champs{grid-template-columns:minmax(0,1fr)}}
fieldset.champ{border:none;margin:0;padding:0;min-width:0}
.segments{display:flex;gap:8px}
.segment{flex:1 1 0;display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 10px;border:1px solid var(--gris-200);background:var(--blanc);border-radius:var(--rayon-petit);cursor:pointer;font-size:14px;font-weight:700;text-align:center;line-height:1.2}
.segment:hover{border-color:var(--brun)}
.segment input{width:16px;height:16px;margin:0;accent-color:var(--brun);flex-shrink:0}
.segment.est-coche,.segment:has(input:checked){border-color:var(--brun);background:var(--fond)}
.segments--serres{gap:6px}
.segments--serres .segment{padding:0 6px;font-size:13px;white-space:nowrap}
.case{display:flex;align-items:center;gap:10px;min-height:44px;font-size:15px;cursor:pointer}
.case input{width:18px;height:18px;margin:0;accent-color:var(--brun)}
.mention-legale{margin:0;font-size:12px;color:var(--gris-600);line-height:1.5}
.mention-legale a{color:var(--brun)}
.alerte{display:flex;gap:12px;align-items:flex-start;border-radius:var(--rayon);padding:12px 14px;font-size:14px}
.alerte--erreur{background:var(--erreur-fond);border:1px solid var(--erreur)}
.alerte--succes{background:var(--succes-fond);padding:16px 18px;gap:14px}
.alerte--succes .alerte__icone{width:36px;height:36px;border-radius:999px;background:var(--succes);color:var(--blanc);display:grid;place-items:center;flex-shrink:0}
.alerte--succes strong{color:var(--succes);font-size:16px;display:block}

/* Modale de documentation */
.modale{position:fixed;inset:0;z-index:100;background:rgba(15,15,15,.45);display:none;align-items:center;justify-content:center;padding:12px}
.modale.est-ouverte,.modale--statique{display:flex}
.modale--statique{position:static;border-radius:var(--rayon);padding:40px 24px}
.modale__boite{background:var(--blanc);border-radius:var(--rayon);box-shadow:var(--ombre-haute);width:100%;max-width:920px;max-height:94vh;display:grid;grid-template-columns:320px minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);overflow:hidden}
.modale__panneau{grid-row:1/-1;background:var(--brun);color:var(--blanc);padding:28px 28px 24px;display:flex;flex-direction:column;gap:20px;overflow:auto}
.modale__enseigne{display:flex;gap:14px;align-items:center}
.modale__enseigne img,.modale__enseigne .initiales{width:64px;height:64px;object-fit:contain;border-radius:var(--rayon);background:var(--blanc);display:block;padding:4px;flex-shrink:0}
.modale__enseigne .initiales{background:var(--fond);color:var(--brun);display:grid;place-items:center;font-size:20px;font-weight:900}
.modale__enseigne-nom{font-size:18px;font-weight:700;line-height:1.25;overflow-wrap:anywhere}
.modale__enseigne-secteur{font-size:13px;color:var(--gris-200)}
.modale__chiffres{margin:0;display:flex;flex-direction:column;gap:10px;border-top:1px solid rgba(255,255,255,.14);padding-top:16px}
.modale__chiffres div{display:flex;justify-content:space-between;gap:12px;align-items:baseline}
.modale__chiffres dt{font-size:13px;color:var(--gris-200)}
.modale__chiffres dd{margin:0;font-size:16px;font-weight:900;font-variant-numeric:tabular-nums}
.modale__selection{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;border-top:1px solid rgba(255,255,255,.14)}
.modale__selection li{display:flex;gap:10px;align-items:center;min-height:52px;border-bottom:1px solid rgba(255,255,255,.14)}
.modale__selection img,.modale__selection .initiales{width:36px;height:36px;object-fit:contain;border-radius:var(--rayon-petit);background:var(--blanc);padding:2px;flex-shrink:0}
.modale__selection .initiales{background:var(--fond);color:var(--brun);display:grid;place-items:center;font-size:12px;font-weight:900}
.modale__selection span{flex:1;font-size:14px;font-weight:700;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.modale__retirer{width:36px;height:36px;display:grid;place-items:center;border:none;background:transparent;color:var(--gris-200);cursor:pointer;border-radius:var(--rayon-petit);flex-shrink:0}
.modale__retirer:hover{background:var(--brun-survol);color:var(--blanc)}
.modale__etapes{margin-top:auto;display:flex;flex-direction:column;gap:10px}
.modale__barre{display:flex;gap:6px}
.modale__barre span{height:6px;flex:1;border-radius:3px;background:rgba(255,255,255,.25)}
.modale__barre span.est-fait{background:var(--blanc)}
.modale__etape-libelle{font-size:13px;color:var(--gris-200)}
.modale__contenu{padding:28px 32px 24px;display:flex;flex-direction:column;gap:20px;min-width:0;overflow:auto}
.modale__tete{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.modale__tete h2{margin:0;font-size:24px;font-weight:700;line-height:1.2}
.modale__tete p{margin:4px 0 0;font-size:14px;color:var(--gris-600)}
.modale__fermer{width:44px;height:44px;display:grid;place-items:center;border:none;background:var(--fond);color:var(--brun);cursor:pointer;border-radius:var(--rayon);flex-shrink:0}
.modale__fermer:hover{background:var(--gris-200)}
.modale__formulaire{display:flex;flex-direction:column;gap:20px}
.modale__pied{display:flex;flex-direction:column;gap:12px}
.modale__boutons{display:flex;gap:10px}
.modale__boutons .btn--primaire{flex:1}
.modale__barre-mobile{display:none;background:var(--brun);color:var(--blanc);padding:10px 12px 10px 16px;gap:12px;align-items:center}
.modale__barre-mobile img{width:44px;height:44px;object-fit:contain;border-radius:var(--rayon-petit);background:var(--blanc);padding:3px;flex-shrink:0}
.modale__barre-mobile .modale__fermer{background:transparent;color:var(--blanc)}
.modale__barre-mobile strong{display:block;font-size:15px;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.modale__barre-mobile small{font-size:12px;color:var(--gris-200)}
.modale__succes{display:flex;flex-direction:column;gap:16px;padding:8px 0}
.modale__succes p{margin:0;font-size:14px;color:var(--gris-600)}
.modale__succes-actions{display:flex;gap:10px;flex-wrap:wrap}
.est-cache{display:none !important}
@media (max-width:640px){
  .modale__boite{grid-template-columns:minmax(0,1fr)}
  .modale__panneau{display:none}
  .modale__barre-mobile{display:flex}
  .modale__contenu{padding:16px 16px 20px}
  .modale__tete .modale__fermer{display:none}
}

/* Hub géographique */
.bandeau{position:relative;border-radius:var(--rayon);overflow:hidden;background:var(--brun);color:var(--blanc);min-height:400px;display:flex;flex-direction:column;justify-content:flex-end}
.bandeau__photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 55%}
.bandeau__voile{position:absolute;inset:0;background:linear-gradient(180deg,rgba(45,42,37,.05) 0%,rgba(45,42,37,.45) 40%,rgba(45,42,37,.92) 100%)}
.bandeau__contenu{position:relative;padding:120px 32px 28px;display:flex;flex-direction:column;gap:14px}
.bandeau__sur-titre{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--gris-200)}
.bandeau h1{margin:0;font-size:40px;font-weight:900;line-height:1.1;letter-spacing:-.01em;text-wrap:balance;max-width:720px}
.bandeau__stats{margin:0;display:flex;flex-wrap:wrap;gap:12px 36px}
.bandeau__stats dt{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--gris-200)}
.bandeau__stats dd{margin:2px 0 0;font-size:32px;font-weight:900;line-height:1.1;font-variant-numeric:tabular-nums}
.bandeau p{margin:0;font-size:16px;color:var(--fond);text-wrap:pretty;max-width:720px}
.credit-photo{margin:0;font-size:12px;color:var(--gris-600);text-align:right}
/* Crédit de la photo dans la bannière, en bas à droite (Sébastien, 01/11) : texte HTML blanc 12 px sur le bas du voile
   (≈ 92 % sombre, contraste > 10:1 même sur ciel clair) + ombre ; dans la marge basse du contenu, jamais sur l'accroche.
   Mobile : sous l'accroche, dans la bannière (pas de place à côté). Texte inchangé (licence CC BY). */
.bandeau .bandeau__credit{position:absolute;right:14px;bottom:6px;margin:0;max-width:calc(100% - 28px);font-size:12px;line-height:16px;color:#fff;text-align:right;text-shadow:0 1px 2px rgba(0,0,0,.8)}
.bandeau-groupe{display:flex;flex-direction:column;gap:6px}
@media (max-width:640px){.bandeau{min-height:360px}.bandeau__contenu{padding:96px 16px 20px}
.bandeau .bandeau__credit{position:relative;right:auto;bottom:auto;max-width:none;padding:0 16px 10px}.bandeau h1{font-size:28px}}
/* Contenu en haut du bloc : centré, le champ laissait 90 à 120 px vides sous le haut de la carte (Sébastien, 01/11) */
.hub-filtres{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:24px;align-items:start;padding:24px;overflow:hidden}
.hub-filtres__champ{display:flex;flex-direction:column;gap:10px}
.hub-filtres__champ label{font-size:14px;font-weight:700}
.recherche{position:relative;max-width:460px}
.recherche svg{position:absolute;left:12px;top:13px}
.recherche .saisie{padding-left:38px}
.puces{display:flex;flex-wrap:wrap;gap:8px}
.puce{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 12px;border:1px solid var(--gris-200);border-radius:999px;font-size:14px;font-weight:700;text-decoration:none;color:var(--brun);background:var(--blanc)}
.puce:hover{border-color:var(--brun);color:var(--brun)}
.puce span{font-weight:400;color:var(--gris-600);font-variant-numeric:tabular-nums}
.puces__vide{font-size:14px;color:var(--gris-600);min-height:36px;display:none;align-items:center}
.carte-france{margin:0;display:flex;flex-direction:column;gap:8px;align-items:center}
.carte-france svg{width:100%;max-width:360px;height:auto;display:block}
.carte-france path{transition:fill .15s}
.carte-france a:hover path,.carte-france a:focus path{fill:var(--gris-400)}
.carte-france .est-active path,.carte-france .est-active:hover path{fill:var(--framboise)}
.carte-france figcaption{font-size:13px;color:var(--gris-600);text-align:center}
@media (max-width:859px){.hub-filtres{grid-template-columns:minmax(0,1fr)}}
/* U8 (lot 22, revue UX n° 18 M3) : hub sans photo, bandeau sans le haut vide et carte de France réduite (160 px),
   pour que la 1re carte enseigne arrive au premier écran (1 280 × 900) */
.bandeau--compact{min-height:0}
.bandeau--compact .bandeau__contenu{padding:24px 32px 20px}
.hub-filtres--compact{grid-template-columns:minmax(0,1fr) 200px;padding:16px 24px}
.hub-filtres--compact .carte-france svg{max-width:160px}
.hub-filtres--compact.hub-filtres--sans-champ{grid-template-columns:minmax(0,200px)}
@media (max-width:859px){.hub-filtres--compact{grid-template-columns:minmax(0,1fr)}}
@media (max-width:640px){.bandeau--compact .bandeau__contenu{padding:24px 16px 20px}}
.rubriques{display:flex;flex-direction:column;gap:12px}
.rubrique{display:flex;flex-direction:column;gap:14px;padding:18px 20px}
.rubrique__tete{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 16px}
.rubrique h3{margin:0;font-size:18px;font-weight:700;line-height:1.25}
.rubrique h3 a{text-decoration:none}
.rubrique h3 a:hover{text-decoration:underline}
.rubrique__compte{font-size:14px;color:var(--gris-600)}
.rubrique__compte strong{color:var(--noir);font-weight:900}
.logos-grille{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px 8px}
.logos-grille a{display:flex;flex-direction:column;align-items:center;gap:6px;text-decoration:none;color:var(--brun);text-align:center}
.logos-grille img,.logos-grille .initiales{width:56px;height:56px;object-fit:contain;border:1px solid var(--gris-200);border-radius:var(--rayon);background:var(--blanc);padding:3px}
.logos-grille .initiales{background:var(--fond);display:grid;place-items:center;font-size:16px;font-weight:900}
.logos-grille span{font-size:12px;font-weight:700;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
@media (max-width:640px){.logos-grille{grid-template-columns:repeat(4,minmax(0,1fr))}}
.rubrique__autres{font-size:13px;line-height:1.75;color:var(--gris-600)}
.rubrique__autres summary{cursor:pointer;display:inline-flex;align-items:center;gap:6px;min-height:36px;font-size:14px;font-weight:700;color:var(--brun);text-decoration:underline;text-underline-offset:3px}
.rubrique__autres summary:hover{color:var(--lien-survol)}
.rubrique__autres[open] summary svg{transform:rotate(180deg)}
.rubrique__autres p{margin:4px 0 0;text-wrap:pretty}
.rubrique__autres a{color:var(--brun);text-decoration:none}
.rubrique__autres a:hover{text-decoration:underline}
.rubrique__pied{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;justify-content:space-between}
.rubriques-compactes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}
.rubrique--compacte{padding:12px 14px;gap:6px;min-width:0}
.rubrique--compacte h3{font-size:15px;line-height:1.3;text-wrap:pretty}
.rubrique--compacte .rubrique__compte{font-size:13px;white-space:nowrap}
.noms-colonnes{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:0 12px;font-size:13px;line-height:1.3}
.noms-colonnes li{min-width:0}
.noms-colonnes a{display:block;min-height:26px;padding:4px 0;text-decoration:none;overflow-wrap:anywhere}
.noms-colonnes a:hover{text-decoration:underline}
.rubrique--compacte .lien-fleche{min-height:28px;font-size:13px}
@media (max-width:739px){.rubriques-compactes{grid-template-columns:minmax(0,1fr)}}
.index-secteurs{display:flex;flex-direction:column;gap:12px;scroll-margin-top:16px}
.index-secteurs ul{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:2px 24px;font-size:14px}
.index-secteurs li{display:flex;justify-content:space-between;gap:8px;border-bottom:1px solid var(--filet)}
.index-secteurs a{text-decoration:none;min-height:34px;display:inline-flex;align-items:center}
.index-secteurs a:hover{text-decoration:underline}
.index-secteurs li span{color:var(--gris-600);font-variant-numeric:tabular-nums;min-height:34px;display:inline-flex;align-items:center}
.zones-voisines{margin:0;padding:0;list-style:none;font-size:14px}
.zones-voisines li{border-top:1px solid var(--filet)}
.zones-voisines a{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:44px;text-decoration:none;font-weight:700}
.zones-voisines a:hover{text-decoration:underline}

/* Article */
.article{display:flex;flex-direction:column;gap:20px;min-width:0}
.article__tete{padding:28px 24px;display:flex;flex-direction:column;gap:14px}
.article__meta{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;font-size:13px;color:var(--gris-600)}
.article__chapeau{margin:0;font-size:18px;line-height:1.5;color:var(--gris-600);text-wrap:pretty}
.article__corps{padding:28px 24px;display:flex;flex-direction:column;gap:18px;font-size:17px;line-height:1.65;max-width:760px}
.article__corps p{margin:0;text-wrap:pretty}
.article__corps h2{margin:14px 0 0;font-size:22px;font-weight:700;line-height:1.3}
.article__corps blockquote{margin:0;padding:4px 0 4px 20px;border-left:3px solid var(--jaune);font-size:19px;font-weight:700;line-height:1.45;color:var(--brun)}
.article__corps .encadre{background:var(--fond);border-radius:var(--rayon);padding:16px 18px;font-size:15px;line-height:1.55}
.article__corps .encadre strong{display:block;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--gris-600);margin-bottom:4px}
.article__corps ul{margin:0;padding-left:22px}
.article__signature{font-size:14px;color:var(--gris-600)}
.sommaire-article{padding:16px 18px}
.sommaire-article ol{margin:0;padding:0 0 0 18px;font-size:14px;display:flex;flex-direction:column;gap:6px}
.sommaire-article a{text-decoration:none}
.sommaire-article a:hover{text-decoration:underline}
.encart-enseigne{display:flex;flex-direction:column;gap:14px;padding:20px}
.encart-enseigne__tete{display:flex;gap:14px;align-items:center}
.encart-enseigne__tete img{width:64px;height:64px;object-fit:contain;border:1px solid var(--gris-200);border-radius:var(--rayon);background:var(--blanc);padding:3px;flex-shrink:0}
.encart-enseigne__nom{margin:0;font-size:18px;font-weight:700;line-height:1.25}
.encart-enseigne__accroche{margin:0;font-size:15px;font-weight:700;line-height:1.4;text-wrap:pretty}
.encart-enseigne__desc{margin:0;font-size:14px;color:var(--gris-600);line-height:1.5}
.encart-enseigne .btn{width:100%}
.bloc-fin{background:var(--brun);color:var(--blanc);border-radius:var(--rayon);padding:24px;display:flex;flex-direction:column;gap:12px}
.bloc-fin h2{margin:0;font-size:22px;font-weight:700;line-height:1.25}
.bloc-fin p{margin:0;font-size:15px;color:var(--gris-200)}
.bloc-fin__actions{display:flex;flex-wrap:wrap;gap:8px}

/* Fiche enseigne */
.fiche-photo{margin:0;height:360px;border-radius:var(--rayon);overflow:hidden;background:var(--gris-200)}
.fiche-photo img{width:100%;height:100%;object-fit:cover;display:block}
.fiche-photo + .grille-page{margin-top:-68px}
.fiche-identite{display:flex;flex-direction:column;gap:16px;padding:24px;position:relative}
.fiche-identite__tete{display:flex;gap:16px;align-items:center}
.fiche-identite__tete img,.fiche-identite__initiales{width:96px;height:96px;object-fit:contain;border:1px solid var(--gris-200);border-radius:var(--rayon);background:var(--blanc);padding:6px;flex-shrink:0}
.fiche-identite__initiales{background:var(--fond);display:grid;place-items:center;font-size:28px;font-weight:900}
.fiche-identite h1{margin:0;font-size:32px;font-weight:900;line-height:1.1;letter-spacing:-.01em}
.fiche-identite__slogan{margin:4px 0 0;font-size:15px;color:var(--gris-600)}
.fiche-chiffres{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.fiche-chiffres .chiffre{background:var(--fond);border-radius:var(--rayon-petit);padding:10px 12px}
.fiche-infos{margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px 24px}
.fiche-infos dt{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--gris-600)}
.fiche-infos dd{margin:2px 0 0;font-size:16px;font-weight:700}
.fiche-section{display:flex;flex-direction:column;gap:12px;padding:24px}
.fiche-section h2{margin:0;font-size:22px;font-weight:700;line-height:1.25}
.fiche-section p{margin:0;font-size:16px;line-height:1.6;text-wrap:pretty}
.fiche-section ul{margin:0;padding-left:22px;line-height:1.6}
.fiche-section figure{margin:0}
.fiche-section figure img{width:100%;height:auto;border-radius:var(--rayon);display:block}
.fiche-section figcaption{font-size:12px;color:var(--gris-600);margin-top:6px}
.zones-implantation{border-top:1px solid var(--filet);padding-top:14px;display:flex;flex-direction:column;gap:10px}
.zones-implantation h3{margin:0}
.zones-implantation ul{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:8px}
.zones-implantation li a{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:0 14px;border:1px solid var(--brun);border-radius:999px;font-size:14px;font-weight:700;text-decoration:none}
.zones-implantation li a:hover{background:var(--fond)}
.zones-implantation li a span{font-weight:400;color:var(--gris-600)}
.zones-implantation p{margin:0;font-size:14px;color:var(--gris-600)}
.fiche-cta{position:sticky;top:16px;display:flex;flex-direction:column;gap:14px;padding:20px}
.fiche-cta__chiffres{margin:0;display:flex;flex-direction:column;gap:14px}
.fiche-cta__chiffres dd{font-size:40px}
.fiche-cta__chiffres dd.petit{font-size:24px}
.fiche-cta__actions{display:flex;flex-direction:column;gap:8px}
.fiche-cta__note{margin:0;font-size:13px;color:var(--gris-600);line-height:1.5}
.barre-mobile{display:none;position:sticky;bottom:0;z-index:6;background:var(--blanc);border-top:1px solid var(--gris-200);padding:10px 16px;gap:8px}
@media (max-width:640px){
  .fiche-photo{height:200px}.fiche-photo + .grille-page{margin-top:-56px}
  .fiche-identite h1{font-size:26px}.fiche-identite__tete img,.fiche-identite__initiales{width:64px;height:64px;padding:4px}
  .barre-mobile{display:flex}.barre-mobile .btn{flex:1}
  .fiche-cta{position:static}
}

/* Annuaire */
.populaires{display:flex;flex-direction:column;gap:12px}
.grille-vedettes{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;align-items:stretch}
.grille-vedettes li{display:flex;position:relative}
.vedette{display:grid;grid-template-rows:72px 40px 20px;justify-items:center;align-items:start;gap:8px;width:100%;background:var(--blanc);border:1px solid var(--gris-200);border-radius:var(--rayon);padding:16px 12px;text-decoration:none;text-align:center;position:relative;color:var(--brun)}
.vedette:hover{box-shadow:var(--ombre);border-color:var(--gris-400);color:var(--brun)}
/* U10 (lot 22, vague 2) : grilles sans trou, colonnes = diviseur du nombre de vignettes (6 à l'accueil, 10 à l'annuaire) */
@media (min-width:1000px){.grille-vedettes:has(>li:nth-child(6):last-child){grid-template-columns:repeat(6,minmax(0,1fr))}.grille-vedettes:has(>li:nth-child(10):last-child){grid-template-columns:repeat(5,minmax(0,1fr))}}
@media (min-width:641px) and (max-width:999px){.grille-vedettes:has(>li:nth-child(6):last-child){grid-template-columns:repeat(3,minmax(0,1fr))}.grille-vedettes:has(>li:nth-child(10):last-child){grid-template-columns:repeat(5,minmax(0,1fr))}}
.vedette__rang{position:absolute;top:8px;left:10px;font-size:12px;font-weight:900;color:var(--gris-600)}
.vedette img{width:72px;height:72px;object-fit:contain;border:1px solid var(--gris-200);border-radius:var(--rayon);background:var(--blanc);padding:4px}
.vedette__nom{font-size:14px;font-weight:700;line-height:1.25;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.vedette__secteur{font-size:13px;color:var(--gris-600);line-height:1.25}
.grille-lettres{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px}
.grille-lettres a{display:flex;align-items:baseline;justify-content:space-between;gap:8px;background:var(--blanc);border:1px solid var(--gris-200);border-radius:var(--rayon);padding:10px 14px;text-decoration:none;min-height:44px}
.grille-lettres a:hover{border-color:var(--brun);color:var(--brun)}
.grille-lettres strong{font-size:20px;font-weight:900}
.grille-lettres span{font-size:13px;color:var(--gris-600);font-variant-numeric:tabular-nums}
.liste-annuaire{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}
.ligne-enseigne{background:var(--blanc);border:1px solid var(--gris-200);border-radius:var(--rayon);padding:14px 18px;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:14px;align-items:center}
.ligne-enseigne:hover{box-shadow:var(--ombre)}
.ligne-enseigne__logo img,.ligne-enseigne__logo .initiales{width:64px;height:64px;object-fit:contain;border:1px solid var(--gris-200);border-radius:var(--rayon);background:var(--blanc);display:block;padding:3px}
.ligne-enseigne__logo .initiales{background:var(--fond);display:grid;place-items:center;font-size:18px;font-weight:900}
.ligne-enseigne__corps{display:flex;flex-direction:column;gap:3px;min-width:0}
.ligne-enseigne h3{margin:0;font-size:16px;font-weight:700;line-height:1.25;overflow-wrap:anywhere}
.ligne-enseigne h3 a{text-decoration:none}
.ligne-enseigne h3 a:hover{text-decoration:underline}
.ligne-enseigne__desc{margin:0;font-size:14px;line-height:1.45;color:var(--gris-600);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-wrap:pretty}
.ligne-enseigne__chiffres{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:16px;min-width:200px}
.ligne-enseigne__chiffres dt{font-size:11px}
.ligne-enseigne__chiffres dd{font-size:17px;white-space:nowrap}
.ligne-enseigne__chiffres-inline{display:none;margin:2px 0 0;font-size:13px;color:var(--gris-600);flex-wrap:wrap;gap:4px 10px}
.ligne-enseigne__chiffres-inline strong{color:var(--noir);font-weight:900}
.ligne-enseigne__actions{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.liste-annuaire--compacte .ligne-enseigne{padding:10px 14px;grid-template-columns:auto minmax(0,1fr) auto}
.liste-annuaire--compacte .ligne-enseigne__logo img,.liste-annuaire--compacte .ligne-enseigne__logo .initiales{width:48px;height:48px}
.liste-annuaire--compacte .ligne-enseigne__chiffres{display:none}
.liste-annuaire--compacte .ligne-enseigne__chiffres-inline{display:flex}
.liste-annuaire--compacte .ligne-enseigne__desc{-webkit-line-clamp:1}
@media (max-width:1099px){.ligne-enseigne{grid-template-columns:auto minmax(0,1fr) auto}.ligne-enseigne__chiffres{display:none}.ligne-enseigne__chiffres-inline{display:flex}}
@media (max-width:640px){.ligne-enseigne{grid-template-columns:48px minmax(0,1fr)}.ligne-enseigne__logo img,.ligne-enseigne__logo .initiales{width:48px;height:48px}.ligne-enseigne__actions{grid-column:1/-1;justify-content:flex-start}}
.lettres-voisines{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:14px}
.lettres-voisines a{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-weight:700;text-decoration:none}
.lettres-voisines a:hover{text-decoration:underline}
.lettres-voisines a[rel="next"]{margin-left:auto}

/* Index */
.intro-seo{max-width:760px;display:flex;flex-direction:column;gap:6px}
.intro-seo p{margin:0;font-size:16px;color:var(--gris-600);line-height:1.55;text-wrap:pretty;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.intro-seo.est-ouvert p{display:block}
.intro-seo .bouton-lien{align-self:flex-start;min-height:32px}
[data-replier][hidden]{display:none}
.onglets{display:inline-flex;flex-wrap:wrap;background:var(--blanc);border:1px solid var(--gris-200);border-radius:var(--rayon);padding:3px;gap:2px;font-size:14px}
.onglets a,.onglets span{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border-radius:var(--rayon-petit);text-decoration:none;font-weight:700}
.onglets a:hover{background:var(--fond);color:var(--brun)}
.onglets [aria-current="page"]{background:var(--jaune);color:var(--brun)}
.recherche-index{display:flex;flex-direction:column;gap:10px;padding:20px 22px}
.recherche-index label{font-size:16px;font-weight:700}
.recherche-index form{display:flex;gap:8px;align-items:flex-start}
.recherche-index .recherche{flex:1;max-width:none}
.suggestions{position:absolute;z-index:5;top:48px;left:0;right:0;margin:0;padding:6px 0;list-style:none;background:var(--blanc);border:1px solid var(--gris-200);border-radius:var(--rayon);box-shadow:var(--ombre-haute);max-height:280px;overflow:auto;display:none}
.suggestions.est-ouverte{display:block}
.suggestions li{display:flex;justify-content:space-between;gap:12px;align-items:center;min-height:40px;padding:0 14px;cursor:pointer;font-size:15px}
.suggestions li:hover,.suggestions li[aria-selected="true"]{background:var(--fond)}
.suggestions li span{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--gris-600)}
.suggestions__vide{color:var(--gris-600);font-size:14px;cursor:default}
.recherche-index .aide{font-size:13px;color:var(--gris-600);min-height:20px}
.grille-populaires{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}
.grille-populaires a{display:flex;align-items:center;gap:12px;background:var(--blanc);border:1px solid var(--gris-200);border-radius:var(--rayon);padding:12px 14px;text-decoration:none;min-height:56px}
.grille-populaires a:hover{border-color:var(--brun);color:var(--brun)}
.grille-populaires .rang{font-size:20px;font-weight:900;color:var(--noir);width:24px;text-align:center;line-height:1;flex-shrink:0}
.grille-populaires strong{display:block;font-size:15px;font-weight:700;line-height:1.25}
.grille-populaires small{font-size:13px;color:var(--gris-600)}
.groupe-lettre{display:flex;flex-direction:column;gap:8px}
.groupe-lettre h3{margin:0;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--gris-600);display:flex;align-items:center;gap:10px;scroll-margin-top:72px}
.groupe-lettre h3 .lettre{font-size:20px;font-weight:900;color:var(--noir);letter-spacing:0}
.groupe-lettre h3 .trait{flex:1;height:1px;background:var(--fond)}
.groupe-lettre ul{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:0 20px;font-size:14px}
.groupe-lettre li{display:flex;justify-content:space-between;gap:8px;border-bottom:1px solid var(--filet)}
.groupe-lettre li a{text-decoration:none;min-height:36px;display:inline-flex;align-items:center}
.groupe-lettre li a:hover{text-decoration:underline}
.groupe-lettre li span{color:var(--gris-600);font-size:13px;font-variant-numeric:tabular-nums;min-height:36px;display:inline-flex;align-items:center}
.liens-index{padding:20px 24px;display:flex;flex-direction:column;gap:20px}
@media (max-width:640px){.liens-index{padding:14px}.groupe-lettre ul,.grille-populaires{grid-template-columns:minmax(0,1fr)}}

/* Accueil */
/* X1 (lot 22, revue UX n° 19) : plus d'overflow:hidden, qui coupait les suggestions de zone sous le bord du bandeau ;
   photo et voile restent dans le bandeau (inset:0) ; z-index : la liste passe au-dessus des sections suivantes */
.hero{position:relative;z-index:2;background:var(--brun);color:var(--blanc)}
.hero__photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 45%;filter:brightness(1.12) saturate(1.05)}
.hero__voile{position:absolute;inset:0;background:linear-gradient(90deg,rgba(45,42,37,.82) 0%,rgba(45,42,37,.62) 45%,rgba(45,42,37,.22) 100%)}
.hero__contenu{position:relative;max-width:1180px;margin:0 auto;padding:56px 20px 64px;display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:32px;align-items:center}
.hero__texte{display:flex;flex-direction:column;gap:20px;min-width:0}
.hero__sur-titre{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--gris-200)}
.hero h1{margin:0;font-size:44px;font-weight:900;line-height:1.1;letter-spacing:-.01em;text-wrap:balance}
.hero__accroche{margin:0;font-size:18px;color:var(--fond);text-wrap:pretty;max-width:560px}
.hero__recherche{display:flex;flex-direction:column;gap:10px;background:var(--blanc);border-radius:var(--rayon);padding:12px;color:var(--brun);box-shadow:var(--ombre-haute)}
.hero__champs{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:10px}
.hero__champs .recherche{max-width:none}
.hero__champs .saisie{min-height:48px;font-size:16px}
.hero__champs .recherche svg{top:15px}
.hero__aide{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 16px;font-size:13px;color:var(--gris-600);min-height:20px}
.hero__raccourcis{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:14px;color:var(--gris-200)}
.hero__raccourcis a{display:inline-flex;align-items:center;min-height:32px;padding:0 10px;border:1px solid rgba(255,255,255,.4);border-radius:999px;font-size:13px;font-weight:700;text-decoration:none;color:var(--blanc);background:rgba(255,255,255,.08)}
.hero__raccourcis a:hover{background:var(--blanc);color:var(--brun);border-color:var(--blanc)}
.carte-accueil{margin:0;display:flex;flex-direction:column;gap:6px;align-items:center;justify-self:center;width:100%;max-width:420px;background:var(--blanc);color:var(--brun);border-radius:var(--rayon);padding:20px 20px 12px;box-shadow:var(--ombre-haute)}
.carte-accueil svg{width:100%;height:auto;display:block;overflow:visible}
.carte-accueil path{transition:fill .15s;cursor:pointer}
.carte-accueil a:hover path,.carte-accueil a:focus path,.carte-accueil a.est-active path{fill:var(--framboise)}
.outre-mer{margin:0;padding:0 0 4px;list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:4px 10px;width:100%}
.outre-mer a{display:flex;flex-direction:column;align-items:center;gap:3px;min-width:56px;padding:4px 2px;text-decoration:none;color:var(--brun);border-radius:var(--rayon)}
.outre-mer .medaillon{width:34px;height:34px;border-radius:999px;background:var(--gris-200);color:var(--brun);display:grid;place-items:center;font-size:11px;font-weight:900;transition:background .15s}
.outre-mer a:hover .medaillon,.outre-mer a:focus .medaillon,.outre-mer a.est-active .medaillon{background:var(--framboise);color:var(--blanc)}
.outre-mer small{font-size:11px;color:var(--gris-600);line-height:1.2;text-align:center}
.carte-accueil figcaption{min-height:56px;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;text-align:center;border-top:1px solid var(--filet);padding:10px 4px 0}
.carte-accueil figcaption strong{font-size:15px;font-weight:700}
.carte-accueil figcaption.est-active strong{color:var(--framboise)}
.carte-accueil figcaption span{font-size:13px;color:var(--gris-600)}
.section-accueil{max-width:1180px;margin:0 auto;width:100%;padding:32px 20px 0;display:flex;flex-direction:column;gap:16px}
.section-accueil--derniere{padding-bottom:56px}
.chiffres-cles{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
.chiffres-cles a{display:flex;flex-direction:column;gap:2px;background:var(--blanc);border:1px solid var(--gris-200);border-radius:var(--rayon);padding:18px 20px;text-decoration:none}
.chiffres-cles a:hover{box-shadow:var(--ombre);color:var(--brun)}
.chiffres-cles strong{font-size:40px;font-weight:900;line-height:1;color:var(--noir);font-variant-numeric:tabular-nums}
.chiffres-cles span{font-size:14px;color:var(--gris-600)}
.decouverte{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px}
.decouverte .bloc{padding:20px 22px;display:flex;flex-direction:column;gap:12px}
.decouverte h2{margin:0;font-size:18px;font-weight:700}
.decouverte ul{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:4px 16px;font-size:14px}
.decouverte li a{text-decoration:none;min-height:32px;display:inline-flex;align-items:center;gap:6px}
.decouverte li a:hover{text-decoration:underline}
.decouverte li span{color:var(--gris-600);font-size:13px}
.presentation{background:var(--brun);color:var(--blanc);border-radius:var(--rayon);padding:36px 40px;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:32px}
.presentation h2{margin:0;font-size:26px;font-weight:900;line-height:1.2}
.presentation p{margin:0;font-size:16px;color:var(--gris-200);line-height:1.6;text-wrap:pretty}
.presentation .replie{display:none}
.presentation.est-ouvert .replie{display:block}
.presentation .bouton-lien{color:var(--blanc);align-self:flex-start}
.presentation__texte{display:flex;flex-direction:column;gap:14px}
.presentation__avantages{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:14px}
.presentation__avantages li{display:flex;gap:12px;align-items:flex-start}
.presentation__avantages strong{display:block;font-size:16px}
.presentation__avantages span{font-size:14px;color:var(--gris-200)}
.presentation__puce{width:8px;height:8px;border-radius:2px;background:var(--jaune);flex-shrink:0;margin-top:8px}
.presentation__actions{display:flex;flex-wrap:wrap;gap:10px}
@media (max-width:979px){.hero__contenu{grid-template-columns:minmax(0,1fr)}.presentation{grid-template-columns:minmax(0,1fr)}}
@media (max-width:759px){.hero__champs{grid-template-columns:minmax(0,1fr)}}
@media (max-width:640px){.hero__contenu{padding:32px 16px 36px}.hero h1{font-size:32px}.section-accueil{padding:24px 16px 0}.section-accueil--derniere{padding-bottom:40px}.presentation{padding:24px 20px}}

/* Contact */
.profils{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.profil{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border:1px solid var(--gris-200);border-radius:var(--rayon);cursor:pointer;background:var(--blanc)}
.profil:hover{border-color:var(--brun)}
.profil.est-coche,.profil:has(input:checked){border-color:var(--brun);background:var(--fond)}
.profil input{position:absolute;opacity:0}
.profil strong{font-size:15px}
.profil span{font-size:13px;color:var(--gris-600)}
.formulaire{display:flex;flex-direction:column;gap:20px;padding:28px 32px}
.formulaire__pied{display:flex;flex-direction:column;gap:12px}
.formulaire__actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.leurre{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.confirmation{display:flex;flex-direction:column;gap:16px;align-items:flex-start;padding:28px 32px}
.confirmation__icone{width:48px;height:48px;border-radius:999px;background:var(--brun);display:grid;place-items:center}
.confirmation h2{margin:0;font-size:24px;font-weight:700;line-height:1.2}
.confirmation p{margin:0;font-size:16px;color:var(--gris-600);text-wrap:pretty;max-width:560px}
@media (max-width:699px){.profils{grid-template-columns:minmax(0,1fr)}}
@media (max-width:640px){.formulaire,.confirmation{padding:20px 16px}}

/* Page statique */
.statique{padding:28px 32px;display:flex;flex-direction:column;gap:18px;font-size:16px;line-height:1.65;max-width:820px}
.statique h2{margin:14px 0 0;font-size:22px;font-weight:700;line-height:1.3}
.statique h3{margin:8px 0 0;font-size:17px;font-weight:700}
.statique p,.statique ul{margin:0}
.statique ul{padding-left:22px}
.statique .meta{margin:0}
.statique__sommaire{padding:16px 18px}
.statique__sommaire ol{margin:0;padding:0 0 0 18px;font-size:14px;display:flex;flex-direction:column;gap:6px}
.statique__sommaire a{text-decoration:none}
.statique__sommaire a:hover{text-decoration:underline}
.offres{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.offre{display:flex;flex-direction:column;gap:8px;padding:20px}
.offre h3{margin:0;font-size:18px}
.offre .prix{font-size:28px;font-weight:900;color:var(--noir)}
.offre ul{margin:0;padding-left:20px;font-size:14px;color:var(--gris-600)}
@media (max-width:640px){.statique{padding:20px 16px}}

/* Sommaire et système (pages de relecture) */
.relecture{max-width:1180px;margin:0 auto;padding:40px 20px 64px;display:flex;flex-direction:column;gap:32px}
.relecture__tete{display:flex;flex-direction:column;gap:12px}
.relecture__marque{display:flex;align-items:center;gap:12px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--gris-600)}
.relecture__marque img{height:28px;width:auto}
.relecture__intro{margin:0;max-width:760px;color:var(--gris-600);text-wrap:pretty}
.relecture__colonnes{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px 28px}
.relecture__liste{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px;font-size:14px;line-height:1.45}
.relecture__liste li{display:flex;gap:10px;align-items:baseline}
.relecture__num{font-size:12px;font-weight:900;background:var(--fond);border-radius:var(--rayon-petit);padding:2px 6px;white-space:nowrap;font-variant-numeric:tabular-nums}
.relecture__templates{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}
.relecture__template{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:12px 24px;align-items:start;padding:18px 20px}
.relecture__template h3{margin:0;font-size:18px;font-weight:700;line-height:1.25}
.relecture__template h3 a{text-decoration:none}
.relecture__template h3 a:hover{text-decoration:underline}
.relecture__num-grand{font-size:22px;font-weight:900;color:var(--noir);font-variant-numeric:tabular-nums;line-height:1}
.relecture__template p{margin:0;font-size:14px;color:var(--gris-600);text-wrap:pretty}
.relecture__fichiers{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:6px}
.relecture__fichiers a{display:inline-flex;align-items:center;min-height:32px;padding:0 10px;border:1px solid var(--gris-200);border-radius:999px;font-size:13px;font-weight:700;text-decoration:none;background:var(--blanc)}
.relecture__fichiers a:hover{border-color:var(--brun);color:var(--brun)}
.systeme__section{display:flex;flex-direction:column;gap:20px}
.systeme__titre{display:flex;align-items:baseline;gap:12px}
.systeme__titre span{font-size:12px;font-weight:700;color:var(--gris-400)}
.systeme__titre h2{margin:0;font-size:24px;font-weight:700}
.systeme__note{margin:0;max-width:760px;font-size:14px;color:var(--gris-600);text-wrap:pretty}
.systeme__cadre{border:1px solid var(--gris-200);border-radius:var(--rayon);overflow:hidden;background:var(--blanc)}
.systeme__cadre--fond{background:var(--fond);padding:24px}
.systeme__mobile{width:390px;max-width:100%}
.jetons{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}
.jeton{background:var(--blanc);border:1px solid var(--gris-200);border-radius:var(--rayon);overflow:hidden}
.jeton__couleur{height:64px}
.jeton__texte{padding:10px 12px;font-size:13px}
.jeton__texte strong{display:block}
.jeton__texte code{color:var(--gris-600);font-size:12px}
.echelle{display:flex;flex-direction:column;gap:10px;padding:24px}
.boutons-demo{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
@media (max-width:959px){.relecture__template{grid-template-columns:minmax(0,1fr)}}

/* Utilitaires */
.pile{display:flex;flex-direction:column;gap:12px}
.texte-droite{text-align:right}
.marge-haut{margin-top:4px}
.marge-haut-moyenne{margin-top:12px}
.titre-section--xs{font-size:18px;line-height:1.25}
.tri__ordre .icone-desc,.tri__ordre.est-desc .icone-asc{display:none}
.tri__ordre.est-desc .icone-desc{display:block}
.puces__vide.est-visible{display:inline-flex}
.ligne-titre--debut{justify-content:flex-start;gap:10px}
.modale--statique .modale__boite{max-height:none}
