/* index2 : l'accueil habillé du système Geist de Vercel, thème sombre.
   Tout est limité à body.page-geist : aucune autre page n'est touchée.
   Les blocs de l'accueil posent leurs styles en ligne après cette feuille ; le préfixe body.page-geist
   leur passe devant par la spécificité, sans !important (sauf contre les !important de l'en-tête). */

body.page-geist {
  /* jetons Geist, thème sombre */
  --ds-background-100:#0a0a0a;
  --ds-background-200:#000;
  --ds-gray-100:#1a1a1a;
  --ds-gray-200:#1f1f1f;
  --ds-gray-300:#292929;
  --ds-gray-400:#2e2e2e;
  --ds-gray-500:#454545;
  --ds-gray-600:#878787;
  --ds-gray-700:#8f8f8f;
  --ds-gray-900:#a1a1a1;
  --ds-gray-1000:#ededed;
  --ds-gray-alpha-100:rgba(255,255,255,.06);
  --ds-gray-alpha-200:rgba(255,255,255,.09);
  --ds-gray-alpha-400:rgba(255,255,255,.14);
  --ds-blue-700:#006bff;
  --ds-blue-900:#52a8ff;
  --ds-focus:0 0 0 2px var(--ds-background-200), 0 0 0 4px var(--ds-blue-700);
  --ds-shadow-menu:0 0 0 1px var(--ds-gray-alpha-400), 0 4px 8px -4px rgba(0,0,0,.4), 0 16px 24px -8px rgba(0,0,0,.6);
  --geist-sans:'Geist', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', sans-serif;
  /* Geist Mono retirée du site le 6 nov. 2026 : la variable pointe désormais sur Geist (la police des textes) */
  --geist-mono:var(--geist-sans);
  --f-titre:var(--geist-sans);
  --f-texte:var(--geist-sans);
  background:var(--ds-background-200);
  color:var(--ds-gray-1000);
  font-family:var(--geist-sans);
  -webkit-font-smoothing:antialiased;
  font-feature-settings:normal;
}
body.page-geist :is(h1,h2,h3,p,a,button,span,b,strong) { font-family:inherit; }
body.page-geist :focus-visible { outline:0; box-shadow:var(--ds-focus); }
body.page-geist ::selection { background:var(--ds-blue-700); color:#fff; }

/* ---------------------------------------------------------------- en-tête (material « base » translucide) */
/* fond plein, dans tous les états (l'accueil le rendait transparent au-dessus de la vidéo) ; et AUCUN backdrop-filter :
   il ferait de l'en-tête le repère des panneaux en position fixe qu'il contient (menu mobile, méga-menu), qui s'y écrasaient */
body.page-geist .hdr,
body.page-geist.page-accueil.menu-ouvert .hdr,
body.page-geist.page-accueil .hdr:has([aria-expanded="true"]) { background:var(--ds-background-200) !important; -webkit-backdrop-filter:none; backdrop-filter:none;
  border-bottom:0 !important; }
/* accueil : transparent en haut, au-dessus de la vidéo, puis noir plein à mesure qu'on défile (--hdr-a va de 0 à 1) */
body.page-geist.page-accueil .hdr { background:rgba(0,0,0,var(--hdr-a,0)) !important; border-bottom:0 !important; }
body.page-geist.page-accueil.menu-ouvert .hdr,
body.page-geist.page-accueil .hdr:has([aria-expanded="true"]) { background:var(--ds-background-200) !important; }
body.page-geist .hdr__logo { color:var(--ds-gray-1000); }
/* liens de navigation : texte gris 900, survol en gris 1000 sur fond alpha, rayon 6 px */
body.page-geist .hdr__lien,
body.page-geist .hdr__declencheur { height:2rem; border-radius:6px; color:var(--ds-gray-900); font-size:.875rem; font-weight:400; letter-spacing:0; }
body.page-geist .hdr__lien:hover,
body.page-geist .hdr__declencheur:hover,
body.page-geist .hdr__declencheur[aria-expanded="true"] { background:var(--ds-gray-alpha-200); color:var(--ds-gray-1000); }
body.page-geist .hdr__lien[aria-current],
body.page-geist .hdr__declencheur[data-actif] { background:transparent; color:var(--ds-gray-1000); }
/* appel = bouton primaire « small » */
body.page-geist .hdr__cta { height:2rem; padding:0 .75rem; border-radius:6px; background:var(--ds-gray-1000); color:var(--ds-background-100);
  font-size:.875rem; font-weight:500; letter-spacing:0; }
body.page-geist .hdr__cta:hover { background:#cccccc; color:var(--ds-background-100); }

/* méga-menu = material « menu » */
body.page-geist .mega { background:var(--ds-background-200); -webkit-backdrop-filter:none; backdrop-filter:none;
  border-bottom:1px solid var(--ds-gray-alpha-400); box-shadow:0 16px 24px -8px rgba(0,0,0,.6); }
body.page-geist .mega__titre { font-family:var(--geist-mono); font-size:.75rem; font-weight:400; letter-spacing:0; text-transform:none; color:var(--ds-gray-900); }
body.page-geist .mega__colonne a { border-radius:6px; }
body.page-geist .mega__colonne a:hover { background:var(--ds-gray-alpha-100); }
body.page-geist .mega__colonne a[aria-current] { background:var(--ds-gray-alpha-200); }
body.page-geist .mega__colonne a strong { font-weight:500; color:var(--ds-gray-1000); }
body.page-geist .mega__colonne a span { color:var(--ds-gray-900); }
body.page-geist .mega__mock .bordm { border-radius:12px; box-shadow:var(--ds-shadow-menu); }

/* menu mobile */
body.page-geist .hdr__panel { background:var(--ds-background-200); }
body.page-geist .hdr__panel-liste > a,
body.page-geist .hdr__acc-btn { color:var(--ds-gray-1000); border-color:var(--ds-gray-alpha-400); font-weight:500; }
body.page-geist .hdr__sous { color:var(--ds-gray-900); }
body.page-geist .hdr__sous-ico { border-radius:6px; background:var(--ds-gray-100); box-shadow:0 0 0 1px var(--ds-gray-alpha-400); }
body.page-geist .hdr__panel-login { border:0 !important; border-radius:6px; background:var(--ds-background-100) !important; color:var(--ds-gray-1000) !important; box-shadow:0 0 0 1px var(--ds-gray-alpha-400); }
body.page-geist .hdr__panel-cta { border:0 !important; border-radius:6px; background:var(--ds-gray-1000) !important; color:var(--ds-background-100) !important; font-weight:500; }

/* ---------------------------------------------------------------- hero */
body.page-geist .hvid { border-radius:0; border:0; box-shadow:none; }
/* titre = heading-48 (graisse 600, interlettrage serré) */
body.page-geist .hacc__titre { font-size:clamp(2rem, 1.1rem + 3.2vw, 3rem); line-height:1.1; font-weight:600; letter-spacing:-.06em; color:var(--ds-gray-1000); }
/* bouton = primaire « large » */
body.page-geist .hacc .cds-btn { height:2rem; padding:0 .75rem; border-radius:6px; background:var(--ds-gray-1000); color:var(--ds-background-100);
  font-size:.875rem; font-weight:500; letter-spacing:0; }
body.page-geist .hacc .cds-btn:hover { background:#cccccc; color:var(--ds-background-100); }
/* lecture et son = boutons secondaires ronds, avec ombre (forme « rounded » des pages marketing) */
body.page-geist .hvid__play,
body.page-geist .hvid__son { border:0; background:var(--ds-background-100); color:var(--ds-gray-1000);
  box-shadow:0 0 0 1px var(--ds-gray-alpha-400), 0 2px 4px rgba(0,0,0,.4); -webkit-backdrop-filter:none; backdrop-filter:none; }
body.page-geist .hvid__play:hover,
body.page-geist .hvid__son:hover { background:var(--ds-gray-200); }

/* ---------------------------------------------------------------- titres de section : heading-24 */
body.page-geist .svc__h,
body.page-geist .btq__sep,
body.page-geist .fia__h { font-size:1.5rem; line-height:2rem; font-weight:600; letter-spacing:-.04em; color:var(--ds-gray-1000); }
body.page-geist .btq__sep::before, body.page-geist .btq__sep::after,
body.page-geist .fia__h::before, body.page-geist .fia__h::after { background:var(--ds-gray-alpha-400); }

/* ---------------------------------------------------------------- cartes (material « medium ») */
body.page-geist .svc__c,
body.page-geist .btq__c { border-radius:12px; background:var(--ds-background-100); color:var(--ds-gray-1000);
  box-shadow:0 0 0 1px var(--ds-gray-alpha-400); transition:background .15s, box-shadow .15s; }
body.page-geist .svc__c:hover,
body.page-geist .btq__c:hover { background:var(--ds-gray-100); box-shadow:0 0 0 1px var(--ds-gray-500); }
/* le rail ne coupe pas le filet des cartes */
body.page-geist .svc__rail { padding-top:1px; padding-bottom:3px; }
body.page-geist .btq__grille { gap:1rem; }

/* l'écran incliné : surface gris 100, filet alpha */
body.page-geist .svc__ecran { border-radius:8px 8px 0 0; background:linear-gradient(160deg, var(--ds-gray-300) 0%, var(--ds-background-100) 80%);
  box-shadow:inset 0 0 0 1px var(--ds-gray-alpha-400); color:var(--ds-gray-1000); }
body.page-geist .btq__carte { border-radius:8px 8px 0 0; box-shadow:0 0 0 1px var(--ds-gray-alpha-400); }

/* étiquette = Badge gris « subtle », petite taille */
body.page-geist .svc__type { height:1.25rem; display:inline-flex; align-items:center; padding:0 .5rem; border-radius:9999px; background:var(--ds-gray-200);
  color:var(--ds-gray-1000); font-size:.6875rem; font-weight:500; letter-spacing:0; }
/* texte des cartes = label-14 fort + copy-14 */
body.page-geist .svc__tx b { font-size:.875rem; font-weight:600; letter-spacing:-.01em; }
body.page-geist .svc__p,
body.page-geist .btq__tx > span:not(.btq__lien) { color:var(--ds-gray-900); font-size:.875rem; line-height:1.25rem; }
body.page-geist .btq__tx b { font-size:1.25rem; line-height:1.625rem; font-weight:600; letter-spacing:-.03em; }

/* flèches = boutons secondaires icône, forme ronde */
body.page-geist .svc__f { width:2.5rem; height:2.5rem; background:var(--ds-background-100); color:var(--ds-gray-1000); box-shadow:0 0 0 1px var(--ds-gray-alpha-400); }
body.page-geist .svc__f:hover { background:var(--ds-gray-200); }
body.page-geist .svc__f:disabled { opacity:1; color:var(--ds-gray-700); background:var(--ds-gray-100); box-shadow:0 0 0 1px var(--ds-gray-alpha-200); }

/* bouton des outils = secondaire « small », devient primaire au survol de la carte */
body.page-geist .btq__pill { height:2rem; padding:0 .75rem; border:0; border-radius:6px; background:var(--ds-background-100); color:var(--ds-gray-1000);
  box-shadow:0 0 0 1px var(--ds-gray-alpha-400); font-size:.875rem; font-weight:500; transition:background .15s, color .15s; }
body.page-geist .btq__c:hover .btq__pill { background:var(--ds-gray-1000); color:var(--ds-background-100); box-shadow:none; }

/* ---------------------------------------------------------------- pastilles = boutons secondaires « rounded » */
body.page-geist .fia__pastilles { gap:.5rem; }
body.page-geist .fia__pastilles a { height:2.25rem; display:inline-flex; align-items:center; padding:0 .875rem; border-radius:9999px;
  background:var(--ds-background-100); color:var(--ds-gray-900); box-shadow:0 0 0 1px var(--ds-gray-alpha-400);
  font-size:.875rem; line-height:1; font-weight:500; transition:background .15s, color .15s, box-shadow .15s; }
body.page-geist .fia__pastilles a:hover { background:var(--ds-gray-100); color:var(--ds-gray-1000); box-shadow:0 0 0 1px var(--ds-gray-500); }
@media (max-width: 42rem) { body.page-geist .fia__defile { padding-top:1px; } }

/* ---------------------------------------------------------------- pied de page */
body.page-geist .ftr { background:var(--ds-background-200); color:var(--ds-gray-900); border-top:0 !important; }
body.page-geist .ftr__title { font-size:.875rem; font-weight:500; letter-spacing:0; text-transform:none; color:var(--ds-gray-1000); }
body.page-geist .ftr a { color:var(--ds-gray-900); font-size:.875rem; transition:color .15s; }
body.page-geist .ftr a:hover { color:var(--ds-gray-1000); }
body.page-geist .ftr__logo-mark { color:var(--ds-gray-1000); }
body.page-geist .ftr__brand p { color:var(--ds-gray-900); line-height:1.5rem; }
/* bas du pied de page : même police que les textes (Geist Sans), plus de Geist Mono (6 nov. 2026) */
body.page-geist .ftr__bottom { border-top:1px solid var(--ds-gray-alpha-400); font-family:var(--geist-sans); font-size:.75rem; color:var(--ds-gray-900); }
body.page-geist .ftr__bottom a { font-size:.75rem; }

/* ================================================================ boutons du site (cds-btn) = boutons Geist */
/* même gabarit que « Parler à un expert » dans l'en-tête : 32 px de haut, 12 px de marge, texte 14 px (Tarifs garde ses boutons pl__btn) */
body.page-geist .cds-btn { display:inline-flex; align-items:center; justify-content:center; height:2rem; min-height:2rem; padding:0 .75rem; border:0; border-radius:6px;
  font-size:.875rem; font-weight:500; letter-spacing:0; text-decoration:none; transition:background .15s, color .15s; }
body.page-geist .cds-btn--primary { background:var(--ds-gray-1000); color:var(--ds-background-100); }
body.page-geist .cds-btn--primary:hover { background:#cccccc; color:var(--ds-background-100); }
body.page-geist .cds-btn--secondary,
body.page-geist .cds-btn--tertiary { background:var(--ds-background-100); color:var(--ds-gray-1000); box-shadow:0 0 0 1px var(--ds-gray-alpha-400); }
body.page-geist .cds-btn--secondary:hover,
body.page-geist .cds-btn--tertiary:hover { background:var(--ds-gray-200); }

/* fil d'Ariane = label-14 gris */
body.page-geist .fil, body.page-geist .fil a { color:var(--ds-gray-900); font-size:.875rem; text-decoration:none; }
body.page-geist .fil a:hover { color:var(--ds-gray-1000); }

/* bloc d'appel en bas de page (blog) */
body.page-geist .cta { background:var(--ds-background-200) !important; border-top:1px solid var(--ds-gray-alpha-400); }
body.page-geist .cta__title { font-size:2rem; line-height:2.5rem; font-weight:600; letter-spacing:-.05em; color:var(--ds-gray-1000); }
body.page-geist .cta__text { color:var(--ds-gray-900); font-size:1rem; line-height:1.5rem; }

/* ================================================================ /tarifs */
body.page-geist.page-plans2,
body.page-geist.page-plans2 .pl,
body.page-geist.page-plans2 .cp,
body.page-geist.page-plans2 .cp__t,
body.page-geist.page-plans2 .cp__coin,
body.page-geist.page-plans2 .cp__h { background:var(--ds-background-200) !important; }
body.page-geist.page-plans2 .hdr { background:var(--ds-background-200) !important; }
body.page-geist.page-plans2 .ftr { background:var(--ds-background-200) !important; }
/* titre = heading-48, chapeau = copy-18 */
body.page-geist .pl__h1 { font-size:clamp(2rem, 1.2rem + 3vw, 3rem); line-height:1.1; font-weight:600; letter-spacing:-.06em; color:var(--ds-gray-1000); }
body.page-geist .pl__chapo { color:var(--ds-gray-900); font-size:1.125rem; line-height:1.75rem; }
/* les deux formules = cartes Geist ; la formule phare passe au gris 100 avec un filet plus marqué */
body.page-geist.page-plans2 .pl__grille { gap:1rem; }
body.page-geist.page-plans2 .pl__c,
body.page-geist.page-plans2 .pl__c:first-of-type { border:0 !important; border-radius:12px; background:var(--ds-background-100) !important; box-shadow:0 0 0 1px var(--ds-gray-alpha-400); }
body.page-geist.page-plans2 .pl__c--phare { background:var(--ds-gray-100) !important; box-shadow:0 0 0 1px var(--ds-gray-500); }
body.page-geist .pl__nom { font-size:1.25rem; line-height:1.625rem; font-weight:600; letter-spacing:-.03em; color:var(--ds-gray-1000); }
body.page-geist .pl__prix { font-weight:600; letter-spacing:-.05em; color:var(--ds-gray-1000); }
body.page-geist .pl__note { color:var(--ds-gray-900); font-family:var(--geist-mono); font-size:.8125rem; }
body.page-geist .pl__pour { color:var(--ds-gray-900); }
body.page-geist .pl__liste li { color:var(--ds-gray-1000); font-size:.875rem; }
body.page-geist .pl__ok { color:var(--ds-gray-1000); }
body.page-geist.page-plans2 .pl__acc { border-top:1px solid var(--ds-gray-alpha-400); color:var(--ds-gray-900); }
body.page-geist .pl__acc strong { color:var(--ds-gray-1000); font-weight:500; }
/* boutons des formules : secondaire, et primaire pour la formule phare */
body.page-geist .pl__btn,
body.page-geist.page-plans2 .pl__c:first-of-type .pl__btn:not(.pl__btn--plein),
body.page-geist.page-plans2 .cp__h .pl__btn:not(.pl__btn--plein) { height:2.5rem; border:0; border-radius:6px; background:var(--ds-background-100); color:var(--ds-gray-1000);
  box-shadow:0 0 0 1px var(--ds-gray-alpha-400); font-size:.875rem; font-weight:500; letter-spacing:0; }
body.page-geist .pl__btn:hover,
body.page-geist.page-plans2 .pl__c:first-of-type .pl__btn:not(.pl__btn--plein):hover,
body.page-geist.page-plans2 .cp__h .pl__btn:not(.pl__btn--plein):hover { background:var(--ds-gray-200); }
body.page-geist .pl__btn.pl__btn--plein { background:var(--ds-gray-1000); color:var(--ds-background-100); box-shadow:none; }
body.page-geist .pl__btn.pl__btn--plein:hover { background:#cccccc; }
/* le comparatif = table Geist : filets gris 400, titres de famille en Geist Mono */
body.page-geist.page-plans2 .cp__t { border-radius:12px; box-shadow:0 0 0 1px var(--ds-gray-alpha-400); }
body.page-geist.page-plans2 .cp__coin,
body.page-geist.page-plans2 .cp__h { top:var(--sous-hdr, 3rem); box-shadow:inset 0 -1px 0 var(--ds-gray-alpha-400) !important; }
body.page-geist.page-plans2 .cp__q,
body.page-geist.page-plans2 .cp__v,
body.page-geist.page-plans2 .cp__fam th { border-bottom:1px solid var(--ds-gray-alpha-400) !important; }
body.page-geist.page-plans2 .cp__v,
body.page-geist.page-plans2 .cp__h:not(:first-of-type) { border-left:1px solid var(--ds-gray-alpha-400) !important; }
body.page-geist.page-plans2 .cp__fam th { background:var(--ds-background-100) !important; }
body.page-geist .cp__coin, body.page-geist .cp__fam-n { font-family:var(--geist-mono); font-size:.8125rem; font-weight:500; letter-spacing:0; text-transform:none; color:var(--ds-gray-1000); }
body.page-geist .cp__fam-q, body.page-geist .cp__q-d { color:var(--ds-gray-900); }
body.page-geist .cp__h-nom, body.page-geist .cp__q-n { color:var(--ds-gray-1000); font-weight:500; }
body.page-geist .cp__h-prix { color:var(--ds-gray-900); }
body.page-geist .cp__v { color:var(--ds-gray-1000); font-size:.875rem; }
body.page-geist .cp__v .cp__i { color:var(--ds-gray-1000); }
body.page-geist .cp__v--non, body.page-geist .cp__v--non .cp__i { color:var(--ds-gray-600); }
@media (max-width:46rem) {
  body.page-geist.page-plans2 .cp__t { box-shadow:none; border-radius:0; }
  body.page-geist.page-plans2 .cp__t tr:not(.cp__fam) { background:var(--ds-background-100) !important; border-radius:12px; box-shadow:0 0 0 1px var(--ds-gray-alpha-400); }
  body.page-geist.page-plans2 .cp__fam th { border-radius:6px; background:transparent !important; }
}

/* ================================================================ /blog (Ressources) */
body.page-geist.page-blog, body.page-geist.page-blog .shero, body.page-geist.page-blog .section--blog { background:var(--ds-background-200); }
body.page-geist .shero__h1 { font-size:clamp(2rem, 1.2rem + 3vw, 3rem); line-height:1.1; font-weight:600; letter-spacing:-.06em; color:var(--ds-gray-1000); }
body.page-geist .shero__p { color:var(--ds-gray-900); font-size:1.125rem; line-height:1.75rem; }
/* catégories = onglets Geist en pastilles : secondaire, et primaire pour la sélection */
body.page-geist .bsel__p,
body.page-geist .bsel__s { height:2.25rem; padding:0 .875rem; border-radius:9999px; background:var(--ds-background-100); color:var(--ds-gray-900);
  box-shadow:0 0 0 1px var(--ds-gray-alpha-400); font-size:.875rem; font-weight:500; }
body.page-geist .bsel__s { height:2rem; padding:0 .75rem; font-size:.8125rem; }
body.page-geist .bsel__p:hover,
body.page-geist .bsel__s:hover { background:var(--ds-gray-100); color:var(--ds-gray-1000); box-shadow:0 0 0 1px var(--ds-gray-500); }
body.page-geist .bsel__p.is-on { background:var(--ds-gray-1000); color:var(--ds-background-100); box-shadow:none; }
body.page-geist .bsel__s.is-on { background:var(--ds-gray-200); color:var(--ds-gray-1000); box-shadow:0 0 0 1px var(--ds-gray-500); }
body.page-geist .bsel__n { font-family:var(--geist-mono); }
body.page-geist .bsel__ligne--sous { border-left-color:var(--ds-gray-alpha-400); }
@media (max-width:42rem) { body.page-geist .bsel__ligne { padding-top:1px; padding-bottom:1px; } }
/* cartes d'articles = cartes Geist, comme « Nos services » */
body.page-geist .bart { gap:1rem; }
body.page-geist .bart__c { border-radius:12px; background:var(--ds-background-100); color:var(--ds-gray-1000); box-shadow:0 0 0 1px var(--ds-gray-alpha-400); transition:background .15s, box-shadow .15s; }
body.page-geist .bart__c:hover { background:var(--ds-gray-100); box-shadow:0 0 0 1px var(--ds-gray-500); }
body.page-geist .bart__ecran { border-radius:8px 8px 0 0; background:linear-gradient(160deg, var(--ds-gray-300) 0%, var(--ds-background-100) 80%); box-shadow:inset 0 0 0 1px var(--ds-gray-alpha-400); }
body.page-geist .bart__tag { height:1.25rem; display:inline-flex; align-items:center; padding:0 .5rem; border-radius:9999px; background:var(--ds-gray-200); color:var(--ds-gray-1000); font-size:.6875rem; font-weight:500; }
body.page-geist .bart__titre { font-size:1rem; line-height:1.375rem; font-weight:600; letter-spacing:-.02em; color:var(--ds-gray-1000); }
body.page-geist .bart__p { color:var(--ds-gray-900); font-size:.875rem; line-height:1.25rem; }

/* ================================================================ articles */
body.page-geist.page-article, body.page-geist.page-article .lecture { background:var(--ds-background-200); }
body.page-geist .lecture__titre { font-size:clamp(2rem, 1.3rem + 2.4vw, 2.5rem); line-height:1.15; font-weight:600; letter-spacing:-.05em; color:var(--ds-gray-1000); }
body.page-geist .lecture__chapeau { color:var(--ds-gray-900); font-size:1.125rem; line-height:1.75rem; }
/* corps de texte = copy-16, intertitres heading-24 / heading-20 */
body.page-geist .texte p, body.page-geist .texte li { color:var(--ds-gray-1000); font-size:1rem; line-height:1.75rem; }
body.page-geist .texte h2 { font-size:1.5rem; line-height:2rem; font-weight:600; letter-spacing:-.04em; color:var(--ds-gray-1000); }
body.page-geist .texte h3 { font-size:1.25rem; line-height:1.625rem; font-weight:600; letter-spacing:-.03em; color:var(--ds-gray-1000); }
body.page-geist .texte a { color:var(--ds-blue-900); text-decoration:underline; text-decoration-color:rgba(82,168,255,.4); text-underline-offset:3px; }
body.page-geist .texte a:hover { text-decoration-color:var(--ds-blue-900); }
body.page-geist .texte strong { color:var(--ds-gray-1000); font-weight:600; }
body.page-geist .texte code { font-family:var(--geist-mono); font-size:.875em; padding:.1em .35em; border-radius:6px; background:var(--ds-gray-100); box-shadow:0 0 0 1px var(--ds-gray-alpha-400); }
/* encarts (devis, notes, points clés, « À lire aussi ») = cartes Geist */
body.page-geist .devis__carte, body.page-geist .note, body.page-geist .cles, body.page-geist .article-carte {
  background:var(--ds-background-100) !important; border:0 !important; border-radius:12px; box-shadow:0 0 0 1px var(--ds-gray-alpha-400) !important; }
body.page-geist .article-carte:hover { background:var(--ds-gray-100) !important; box-shadow:0 0 0 1px var(--ds-gray-500) !important; }
body.page-geist .devis__titre, body.page-geist .cles__titre { color:var(--ds-gray-1000); font-weight:600; letter-spacing:-.02em; }
body.page-geist .devis__texte { color:var(--ds-gray-900); }
body.page-geist .devis__liste li { color:var(--ds-gray-1000); }
/* les notes = « Note » Geist : libellé coloré selon le type, en Geist Mono */
body.page-geist .note__libelle { font-family:var(--geist-mono); font-size:.8125rem; font-weight:500; letter-spacing:0; text-transform:none; }
body.page-geist .note--retenir .note__libelle, body.page-geist .note--resume .note__libelle { color:var(--ds-gray-1000); }
body.page-geist .note--savoir .note__libelle { color:var(--ds-blue-900); }
body.page-geist .note--attention .note__libelle { color:#ffb224; }
body.page-geist .note--exemple .note__libelle { color:#62c073; }
body.page-geist .note__texte { color:var(--ds-gray-1000); }
body.page-geist .article-carte__cat { font-family:var(--geist-mono); font-size:.75rem; color:var(--ds-gray-900); letter-spacing:0; text-transform:none; }
body.page-geist .article-carte__titre { color:var(--ds-gray-1000); font-weight:600; letter-spacing:-.02em; }
body.page-geist .article-carte__lire { color:var(--ds-gray-900); }
body.page-geist .lecture__aussi .section__title { color:var(--ds-gray-1000); font-weight:600; letter-spacing:-.04em; }
body.page-geist .lecture__aussi .section__title span { color:var(--ds-gray-900); }
/* FAQ = accordéon Geist : filets gris, question en label-16 */
body.page-geist .faq-item { border-color:var(--ds-gray-alpha-400) !important; }
body.page-geist .faq-item__btn { color:var(--ds-gray-1000); font-weight:500; }
body.page-geist .faq-item__inner, body.page-geist .faq-item__inner p { color:var(--ds-gray-900); }
/* sommaire */
body.page-geist.page-article .lecture__cote, body.page-geist.page-article .sommaire, body.page-geist.page-article .sommaire__bascule { background:var(--ds-background-200) !important; }
body.page-geist .sommaire__titre { font-family:var(--geist-mono); font-size:.75rem; font-weight:400; letter-spacing:0; text-transform:none; color:var(--ds-gray-900); }
body.page-geist .sommaire__lien { border-radius:6px; color:var(--ds-gray-900); font-size:.875rem; }
body.page-geist .sommaire__lien:hover { background:var(--ds-gray-alpha-100); color:var(--ds-gray-1000); }
body.page-geist .sommaire__lien.is-active { color:var(--ds-gray-1000); background:var(--ds-gray-alpha-200); }
body.page-geist .sommaire__bascule { color:var(--ds-gray-1000); border-bottom:1px solid var(--ds-gray-alpha-400) !important; }
/* puces et coches : gris Geist au lieu de l'orange des articles */
body.page-geist.page-article .texte li::before,
body.page-geist.page-article .texte .cles li::before { background:var(--ds-gray-600); }
body.page-geist.page-article .devis__liste svg { color:var(--ds-gray-1000); }
body.page-geist.page-article .cles__titre { font-family:var(--geist-mono); font-size:.8125rem; font-weight:500; letter-spacing:0; text-transform:none; color:var(--ds-gray-1000); }
body.page-geist.page-article .lecture__cote { border-color:var(--ds-gray-alpha-400) !important; }


/* ================================================================ couche globale (6 nov. 2026) : tout le site public en Geist */
/* les jetons Carbon du site, ramenés sur ceux de Geist (textes, filets, focus) */
body.page-geist {
  --cds-text-primary:var(--ds-gray-1000);
  --cds-text-secondary:var(--ds-gray-900);
  --cds-text-helper:var(--ds-gray-700);
  --cds-border-subtle:var(--ds-gray-alpha-400);
  --cds-border-strong:var(--ds-gray-500);
  --cds-focus:var(--ds-blue-700);
  --cds-background:var(--ds-background-200);
  --cds-layer:var(--ds-background-100);
  --cds-field:var(--ds-background-100);
  /* l'orange de l'ancienne charte, porté par les jetons « bleus » de Carbon, devient le bleu des liens Geist */
  --cds-link-primary:var(--ds-blue-900);
  --cds-link-primary-hover:#8ec5ff;
  --cds-blue-60:var(--ds-blue-700);
  --cds-blue-40:var(--ds-blue-900);
  --cds-interactive:var(--ds-blue-700);
}

/* titres : graisse 600 et interlettrage serré, comme les « heading » de Geist */
body.page-geist main h1,
body.page-geist.page-geist .pl__h1 { font-weight:600; letter-spacing:-.06em; color:var(--ds-gray-1000); }
body.page-geist.page-geist .pl__h1,
body.page-geist .shero__h1,
body.page-geist .thero__h1 { font-size:clamp(2rem, 1.2rem + 3vw, 3rem); line-height:1.1; }
body.page-geist main h2 { font-weight:600; letter-spacing:-.045em; }
body.page-geist main h3 { font-weight:600; letter-spacing:-.03em; }
body.page-geist .cds-fluid-heading-04 { font-size:clamp(1.5rem, 1.2rem + 1vw, 2rem); line-height:1.25; font-weight:600; letter-spacing:-.045em; }
body.page-geist .cds-fluid-heading-05 { font-weight:600; letter-spacing:-.05em; }
body.page-geist .cds-fluid-paragraph-01 { font-weight:400; color:var(--ds-gray-900); }
body.page-geist .cds-body-long-02 { color:var(--ds-gray-900); }

/* étiquettes : plus de capitales espacées ; Geist Mono 12-13 px, comme les « label-mono » de Geist
   (liste relevée automatiquement dans les feuilles et les styles en ligne du site) */
body.page-geist .ag-entete,
body.page-geist .agrid__cat,
body.page-geist .apr-ex__r--tete,
body.page-geist .apr-sur,
body.page-geist .article-carte__cat,
body.page-geist .atelier__sur,
body.page-geist .aud__m-tete,
body.page-geist .bord__section,
body.page-geist .bord__tr--tete,
body.page-geist .carte__mention,
body.page-geist .cert strong,
body.page-geist .cha__choix-titre,
body.page-geist .cha__pris-sur,
body.page-geist .constellation__legende,
body.page-geist .contact-info dt,
body.page-geist .doc__sur,
body.page-geist .haeo__extrait-l,
body.page-geist .mega__mock .bordm__tr--tete,
body.page-geist .mega__titre,
body.page-geist .mk__c-l,
body.page-geist .prj-car__titre,
body.page-geist .prj__genre,
body.page-geist .prs__sur,
body.page-geist .service-c__mention,
body.page-geist .sgrid__mention,
body.page-geist .sommaire__titre,
body.page-geist .spages__st,
body.page-geist .spages__une-sur,
body.page-geist .step__num,
body.page-geist .taches__sur,
body.page-geist .texte .cles__titre,
body.page-geist .texte .note__libelle,
body.page-geist .thero__sur,
body.page-geist .tocd__l,
body.page-geist .tsx__note-l,
body.page-geist .tsx__toc-t,
body.page-geist .vignette__mention { text-transform:none; letter-spacing:0; font-family:var(--geist-mono); font-weight:500; }

/* champs de formulaire = Input Geist : 40 px, rayon 6 px, filet alpha, anneau bleu au focus */
body.page-geist :is(.cds-input, .cds-select, .cds-textarea, main input[type=text], main input[type=email], main input[type=tel], main input[type=url], main input[type=search], main input[type=password], main select, main textarea) {
  height:2.5rem; min-height:2.5rem; padding:0 .75rem; border:0; border-radius:6px; background-color:var(--ds-background-100); color:var(--ds-gray-1000);
  box-shadow:0 0 0 1px var(--ds-gray-alpha-400); font-size:.875rem; transition:box-shadow .15s; }
body.page-geist :is(.cds-textarea, main textarea) { height:auto; min-height:8rem; padding:.625rem .75rem; }
body.page-geist :is(.cds-input, .cds-select, .cds-textarea, main input, main select, main textarea):hover { box-shadow:0 0 0 1px var(--ds-gray-500); }
body.page-geist :is(.cds-input, .cds-select, .cds-textarea, main input, main select, main textarea):focus { outline:0; box-shadow:0 0 0 1px var(--ds-gray-500), 0 0 0 4px rgba(255,255,255,.12); }
body.page-geist :is(.cds-input, .cds-textarea, main input, main textarea)::placeholder { color:var(--ds-gray-700); }

/* boutons : les variantes « dans un hero » ou « dans un bandeau » de Carbon reprennent le primaire / secondaire Geist */
body.page-geist :is(.theme-g100, .hero, .shero, .cta) .cds-btn--primary { background:var(--ds-gray-1000); color:var(--ds-background-100); }
body.page-geist :is(.theme-g100, .hero, .shero, .cta) .cds-btn--primary:hover { background:#cccccc; color:var(--ds-background-100); }
body.page-geist :is(.theme-g100, .hero, .shero, .cta) .cds-btn--secondary { background:var(--ds-background-100); color:var(--ds-gray-1000); box-shadow:0 0 0 1px var(--ds-gray-alpha-400); }
body.page-geist :is(.theme-g100, .hero, .shero, .cta) .cds-btn--secondary:hover { background:var(--ds-gray-200); color:var(--ds-gray-1000); }
body.page-geist .cds-btn--ghost { padding:0 .25rem; background:transparent; color:var(--ds-gray-1000); box-shadow:none; }
body.page-geist .cds-btn--ghost:hover { background:var(--ds-gray-alpha-200); color:var(--ds-gray-1000); }
body.page-geist .theme-g100 { background:var(--ds-background-200); }

/* titres du pied de page : Geist Sans (la liste des étiquettes ci-dessus les passait en Mono) */
body.page-geist.page-geist .ftr__title { font-family:var(--geist-sans); font-weight:500; }

/* l'orange restant, écrit en dur dans rest.css, passe au bleu Geist (liens, numéros, repères actifs) */
body.page-geist.page-article .lecture__corps .texte a,
body.page-geist.page-article .lecture__corps a:not(.cds-btn):not(.sommaire__lien):not(.article-carte),
body.page-geist .tsx a, body.page-geist .tsx-faq a, body.page-geist.page-solution .tarq__r a { color:var(--ds-blue-900); }
body.page-geist.page-article .lecture__corps .texte a:hover,
body.page-geist.page-article .lecture__corps a:not(.cds-btn):not(.sommaire__lien):not(.article-carte):hover,
body.page-geist .tsx a:hover, body.page-geist .tsx-faq a:hover, body.page-geist.page-solution .tarq__r a:hover { color:#8ec5ff; }
body.page-geist .sgrid__lire, body.page-geist .slien__f, body.page-geist .sgrid__titre a:hover,
body.page-geist .sol__n, body.page-geist .chn__n, body.page-geist .prj__lien svg,
body.page-geist .login__lien svg, body.page-geist.page-login .login__lien svg { color:var(--ds-blue-900); }
body.page-geist.page-article .article-carte__lire { color:var(--ds-gray-900); }
body.page-geist .tsx .tsx__toc-l.is-active { border-left-color:var(--ds-gray-1000); }
body.page-geist .tsx__note { border-left:0; border-radius:12px; background:var(--ds-background-100); box-shadow:0 0 0 1px var(--ds-gray-alpha-400); }
body.page-geist .chn__mot--on { background:rgba(0,107,255,.12); box-shadow:inset 0 0 0 1px rgba(82,168,255,.35); }
body.page-geist .chn__res--trou .chn__manque { border-color:rgba(82,168,255,.45); color:var(--ds-blue-900); }
body.page-geist .chn__ligne--curseur::after { background:var(--ds-blue-900); }

/* ================================================================ login, inscription, contact */
/* libellés de champ = label-13 Geist : gris 900, sans capitales (Carbon les mettait en capitales espacées) */
body.page-geist .cds-label-01,
body.page-geist.page-login .cds-label-01 { font-family:var(--geist-sans); font-size:.8125rem; font-weight:500; letter-spacing:0; text-transform:none; color:var(--ds-gray-900); }
body.page-geist .ts-overline { font-family:var(--geist-mono); font-size:.8125rem; font-weight:500; letter-spacing:0; text-transform:none; }
body.page-geist .login__champs .cds-form-item + .cds-form-item { margin-top:1rem; }
/* fonds : noir pur partout, colonne visuelle séparée par le filet alpha */
body.page-geist.page-login .login__form,
body.page-geist.page-login .login__pied { background:var(--ds-background-200); }
body.page-geist.page-login .login__pied { border-top:1px solid var(--ds-gray-alpha-400); }
body.page-geist.page-login .login__visuel { border-left:1px solid var(--ds-gray-alpha-400); }
body.page-geist.page-login .login__titre { font-weight:600; letter-spacing:-.05em; color:var(--ds-gray-1000); }
body.page-geist.page-login .login__intro { color:var(--ds-gray-900); }
body.page-geist.page-login .login__mentions { color:var(--ds-gray-700); }
body.page-geist.page-login .login__bloc a:not(.cds-btn) { color:var(--ds-gray-1000); text-decoration-color:var(--ds-gray-500); text-underline-offset:3px; }
/* boutons : primaire blanc pour l'action du formulaire, secondaires à filet ailleurs ; tous au gabarit de l'en-tête (32 px) */
body.page-geist.page-login .login__ligne .cds-btn,
body.page-geist.page-login .login__champs .cds-btn--primary { height:2rem; background:var(--ds-gray-1000); color:var(--ds-background-100); box-shadow:none; }
body.page-geist.page-login .login__ligne .cds-btn:hover,
body.page-geist.page-login .login__champs .cds-btn--primary:hover { background:#cccccc; }
body.page-geist.page-login .login__ligne .cds-input { height:2rem; min-height:2rem; }
body.page-geist.page-login .login__bloc a.login__google,
body.page-geist.page-login .login__aide .cds-btn,
body.page-geist.page-login .login__evt-btn { height:2rem; padding:0 .75rem; border:0; border-radius:6px; background:var(--ds-background-100); color:var(--ds-gray-1000);
  box-shadow:0 0 0 1px var(--ds-gray-alpha-400); font-size:.875rem; font-weight:500; text-decoration:none; }
body.page-geist.page-login .login__bloc a.login__google:hover,
body.page-geist.page-login .login__aide .cds-btn:hover,
body.page-geist.page-login .login__evt-btn:hover { background:var(--ds-gray-200); }
body.page-geist .login__ou { color:var(--ds-gray-700); }
body.page-geist .login__ou::before, body.page-geist .login__ou::after { background:var(--ds-gray-alpha-400); }
/* encart d'aide = carte Geist */
body.page-geist.page-login .login__aide { border-radius:12px; background:var(--ds-background-100); box-shadow:0 0 0 1px var(--ds-gray-alpha-400); }
body.page-geist.page-login .login__aide strong { color:var(--ds-gray-1000); font-weight:600; }
body.page-geist.page-login .login__aide span { color:var(--ds-gray-900); }
body.page-geist .login__evt { font-weight:600; letter-spacing:-.05em; }
body.page-geist .notice { border-radius:6px; background:var(--ds-background-100); box-shadow:0 0 0 1px var(--ds-gray-alpha-400); color:var(--ds-gray-1000); }
/* contact (chat) : titre et cartes au gabarit Geist */
body.page-geist .ctc__titre { font-weight:500; color:var(--ds-gray-1000); }
body.page-geist .ctc__barre { background:var(--ds-gray-alpha-400); }
body.page-geist .temo__carte { border-radius:12px; }

/* ================================================================ encarts et boutons aux couleurs de muscu.pro (6 nov. 2026)
   encart #1c1e21, survol #23262a, sans contour ; boutons gris #2a2d32 (survol #33373d) au lieu du blanc de Geist.
   Bloc en dernier et sélecteurs doublés (body.page-geist.page-geist) : il passe devant tout ce qui précède. */
body.page-geist {
  --rs-encart:#1c1e21;
  --rs-encart-survol:#23262a;
  --rs-bouton:#2a2d32;
  --rs-bouton-survol:#33373d;
}
/* --- encarts */
body.page-geist.page-geist :is(.svc__c, .btq__c, .bart__c, .temo__carte, .spages__une, .notice),
body.page-geist.page-geist.page-login .login__aide,
body.page-geist.page-geist.page-plans2 .pl__c,
body.page-geist.page-geist.page-plans2 .pl__c:first-of-type,
body.page-geist.page-geist.page-plans2 .pl__c--phare { background:var(--rs-encart) !important; box-shadow:none !important; border:0 !important; }
body.page-geist.page-geist :is(.devis__carte, .note, .cles, .article-carte, .tsx__note) { background:var(--rs-encart) !important; box-shadow:none !important; border:0 !important; }
body.page-geist.page-geist :is(.svc__c, .btq__c, .bart__c, .spages__une):hover,
body.page-geist.page-geist .article-carte:hover { background:var(--rs-encart-survol) !important; box-shadow:none !important; }
/* l'écran incliné des cartes et l'image : sans filet, comme sur muscu */
body.page-geist.page-geist :is(.svc__ecran, .bart__ecran) { box-shadow:none; background:linear-gradient(160deg,#2a2a2d 0%,#0b0b0c 75%); }
body.page-geist.page-geist .btq__carte { box-shadow:none; }

/* --- boutons (6 nov. 2026) : coins arrondis à 8 px (pas des pastilles), fond transparent, contour blanc 1 px, texte blanc ;
   au survol, un voile blanc léger. Hauteur 32 px inchangée. Partout sauf les boutons des formules de /tarifs */
body.page-geist.page-geist :is(.cds-btn--primary, .cds-btn--secondary, .cds-btn--tertiary),
body.page-geist.page-geist :is(.theme-g100, .hero, .shero, .cta) :is(.cds-btn--primary, .cds-btn--secondary),
body.page-geist.page-geist .hacc .cds-btn,
body.page-geist.page-geist .hdr__cta,
body.page-geist.page-geist .hdr__panel-cta,
body.page-geist.page-geist .hdr__panel-login,
body.page-geist.page-geist.page-login :is(.login__ligne .cds-btn, .login__champs .cds-btn--primary, .login__bloc a.login__google, .login__aide .cds-btn, .login__evt-btn) {
  border-radius:8px !important; background:transparent !important; color:#fff !important; -webkit-text-fill-color:#fff; box-shadow:inset 0 0 0 1px rgba(255,255,255,.55) !important; border:0 !important; font-weight:600; }
body.page-geist.page-geist :is(.cds-btn--primary, .cds-btn--secondary, .cds-btn--tertiary):hover,
body.page-geist.page-geist :is(.theme-g100, .hero, .shero, .cta) :is(.cds-btn--primary, .cds-btn--secondary):hover,
body.page-geist.page-geist .hacc .cds-btn:hover,
body.page-geist.page-geist .hdr__cta:hover,
body.page-geist.page-geist .hdr__panel-cta:hover,
body.page-geist.page-geist .hdr__panel-login:hover,
body.page-geist.page-geist.page-login :is(.login__ligne .cds-btn, .login__champs .cds-btn--primary, .login__bloc a.login__google, .login__aide .cds-btn, .login__evt-btn):hover {
  background:rgba(255,255,255,.08) !important; color:#fff !important; box-shadow:inset 0 0 0 1px #fff !important; }
/* le bouton posé dans un encart : gris un cran au-dessus de l'encart, et encore un cran au survol de la carte */
body.page-geist.page-geist .btq__pill { border-radius:8px; background:transparent; color:#fff; box-shadow:inset 0 0 0 1px rgba(255,255,255,.55); font-weight:600; }
body.page-geist.page-geist .btq__c:hover .btq__pill { background:rgba(255,255,255,.08); color:#fff; box-shadow:inset 0 0 0 1px #fff; }
/* flèches du carrousel et pastilles : les gris d'encart */
body.page-geist.page-geist .svc__f { background:transparent; box-shadow:inset 0 0 0 1px rgba(255,255,255,.55); }
body.page-geist.page-geist .svc__f:hover { background:rgba(255,255,255,.08); box-shadow:inset 0 0 0 1px #fff; }
body.page-geist.page-geist .svc__f:disabled { background:transparent; color:var(--ds-gray-700); box-shadow:inset 0 0 0 1px rgba(255,255,255,.18); }
body.page-geist.page-geist .fia__pastilles a { background:transparent; color:#fff; box-shadow:inset 0 0 0 1px rgba(255,255,255,.55); }
body.page-geist.page-geist .fia__pastilles a:hover { background:rgba(255,255,255,.08); color:#fff; box-shadow:inset 0 0 0 1px #fff; }
body.page-geist.page-geist :is(.bsel__p, .bsel__s) { background:transparent; color:#fff; box-shadow:inset 0 0 0 1px rgba(255,255,255,.55); }
body.page-geist.page-geist :is(.bsel__p, .bsel__s):hover { background:rgba(255,255,255,.08); box-shadow:inset 0 0 0 1px #fff; }
/* la pastille choisie : blanche pleine, comme « Studio » sur bettersport */
body.page-geist.page-geist :is(.bsel__p, .bsel__s).is-on { background:#fff; color:#0a0a0b; box-shadow:inset 0 0 0 1px #fff; }
/* champs : le gris d'encart, sans filet ; un filet clair n'apparaît qu'au focus */
body.page-geist.page-geist :is(.cds-input, .cds-select, .cds-textarea, main input[type=text], main input[type=email], main input[type=tel], main input[type=url], main input[type=search], main input[type=password], main select, main textarea) {
  background-color:var(--rs-encart); box-shadow:none; }
body.page-geist.page-geist :is(.cds-input, .cds-select, .cds-textarea, main input, main select, main textarea):hover { box-shadow:none; background-color:var(--rs-encart-survol); }
body.page-geist.page-geist :is(.cds-input, .cds-select, .cds-textarea, main input, main select, main textarea):focus { box-shadow:0 0 0 1px rgba(255,255,255,.28); background-color:var(--rs-encart); }
/* /tarifs : la première formule (Starter) au fond de page ; Accompagnement garde le gris d'encart (6 nov. 2026) */
body.page-geist.page-geist.page-plans2 .pl__c:first-of-type { background:var(--ds-background-200) !important; }
/* /tarifs : Starter au fond de page, détaché par le même contour que le tableau ;
   dans le comparatif, la colonne Accompagnement (la dernière) prend le gris de sa carte, en-tête collant compris */
body.page-geist.page-geist.page-plans2 .pl__c:first-of-type { box-shadow:0 0 0 1px var(--ds-gray-alpha-400) !important; }
@media (min-width:46.01rem) {
  body.page-geist.page-geist.page-plans2 .cp__h:last-child,
  body.page-geist.page-geist.page-plans2 .cp__t tbody tr:not(.cp__fam) .cp__v:last-child { background:var(--rs-encart) !important; }
}

/* tous les H1 en graisse 500 (6 nov. 2026), en dernier pour passer devant les règles à 600 ci-dessus */
body.page-geist.page-geist h1,
body.page-geist.page-geist :is(.hacc__titre, .pl__h1, .shero__h1, .thero__h1, .lecture__titre, .login__titre, .ctc__titre, .sol__h1) { font-weight:500; }

/* boutons comme le hero de bettersport (6 nov. 2026) : entièrement arrondis, contour blanc plein 1 px, fond transparent,
   44 px de haut, 22 px de marge, texte 14 px en 600 ; dans l'en-tête (48 px) le même bouton en 36 px. Sauf /tarifs (pl__btn). */
body.page-geist.page-geist :is(.cds-btn--primary, .cds-btn--secondary, .cds-btn--tertiary, .hacc .cds-btn, .btq__pill, .hdr__panel-cta, .hdr__panel-login),
body.page-geist.page-geist :is(.theme-g100, .hero, .shero, .cta) :is(.cds-btn--primary, .cds-btn--secondary),
body.page-geist.page-geist.page-login :is(.login__ligne .cds-btn, .login__champs .cds-btn--primary, .login__bloc a.login__google, .login__aide .cds-btn, .login__evt-btn) {
  height:2.75rem !important; min-height:2.75rem !important; padding:0 22px !important; border-radius:999px !important;
  box-shadow:inset 0 0 0 1px #fff !important; font-size:.875rem !important; font-weight:600 !important; }
body.page-geist.page-geist .hdr__cta { height:2.25rem; padding:0 18px; border-radius:999px !important; box-shadow:inset 0 0 0 1px #fff !important; font-weight:600; }
body.page-geist.page-geist.page-login .login__ligne .cds-input { height:2.75rem; min-height:2.75rem; }
/* en-tête : la pastille qui apparaît au survol des liens (Services, Plans, Ressources) est entièrement arrondie (6 nov. 2026) */
body.page-geist.page-geist :is(.hdr__lien, .hdr__declencheur) { border-radius:999px; padding-left:.875rem; padding-right:.875rem; }
/* /tarifs : pastille « Première offre » en haut à droite de la carte Starter, hors du flux pour garder les deux cartes alignées (6 nov. 2026) */
body.page-geist .pl__c { position:relative; }
body.page-geist .pl__pastille { position:absolute; top:1.5rem; right:1.5rem; display:inline-flex; align-items:center; height:1.625rem; padding:0 .75rem; border-radius:999px;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.55); color:#fff; font-size:.75rem; font-weight:600; letter-spacing:0; }
/* « Explorez toutes les fonctionnalités IA » : pastilles au fond des encarts « Les outils de votre boutique » (#1c1e21, survol #23262a),
   sans contour, coins arrondis à 8 px et non plus ronds (6 nov. 2026) */
body.page-geist.page-geist .fia__pastilles a { border-radius:8px; background:var(--rs-encart); color:rgba(255,255,255,.72); box-shadow:none; }
body.page-geist.page-geist .fia__pastilles a:hover { background:var(--rs-encart-survol); color:#fff; box-shadow:none; }

/* Ressources (6 nov. 2026) : les cartes d'articles en fond noir avec le contour de la première formule de /tarifs */
body.page-geist.page-geist .bart__c { background:var(--ds-background-200) !important; box-shadow:0 0 0 1px var(--ds-gray-alpha-400) !important; }
body.page-geist.page-geist .bart__c:hover { background:#0a0a0a !important; box-shadow:0 0 0 1px rgba(255,255,255,.24) !important; }

/* Accueil (6 nov. 2026) : toutes les sections calées sur l'en-tête (même largeur max, mêmes marges que .hdr__inner),
   et des H2 à la taille des titres du site, sous le H1 du hero. */
body.page-geist.page-geist :is(.sa, .dl, .pd, .ta, .tso) { padding-left:0; padding-right:0; }
body.page-geist.page-geist :is(.sa__inner, .dl__inner, .fia) { max-width:var(--grid-max); margin-left:auto; margin-right:auto; padding-left:var(--grid-margin); padding-right:var(--grid-margin); box-sizing:border-box; }
body.page-geist.page-geist :is(.pd__tete, .ta__tete, .tso__tete) { padding-left:var(--grid-margin); padding-right:var(--grid-margin); }
body.page-geist.page-geist :is(.pd__fenetre, .ta__app, .tso__app) { width:calc(100% - 2 * var(--grid-margin)); max-width:calc(var(--grid-max) - 2 * var(--grid-gutter)); margin-left:auto; margin-right:auto; box-sizing:border-box; }
body.page-geist.page-geist .pd__fenetre { overflow:hidden; }
body.page-geist.page-geist :is(.ta__note, .tso__note) { padding:0 var(--grid-margin); }
@media (min-width:42rem) {
  body.page-geist.page-geist :is(.sa__inner, .dl__inner, .fia) { padding-left:var(--grid-gutter); padding-right:var(--grid-gutter); }
  body.page-geist.page-geist :is(.pd__fenetre, .ta__app, .tso__app) { width:calc(100% - 2 * var(--grid-gutter)); }
}
body.page-geist.page-geist :is(.sa__titre, .dl__titre, .pd__titre, .ta__titre) { font-size:clamp(1.75rem, 1rem + 2.4vw, 2.5rem); line-height:1.08; letter-spacing:-.03em; }

/* Ressources (6 nov. 2026) : pas de filet au-dessus du bloc « Vous préférez qu'on s'en occupe ? » */
body.page-geist.page-geist.page-blog .cta { border-top:0 !important; }

/* /referencement-seo, « Ce que vous voyez chaque mois » (6 nov. 2026) : l'alerte « Position perdue » en gris au lieu du rouge */
body.page-geist.page-geist .tb__alerte { background:linear-gradient(90deg, #1c1e21, #111214 55%, transparent) !important; color:#ededed !important; }
body.page-geist.page-geist .tb__alerte-ico { background:#3a3d42 !important; color:#ededed !important; }

/* « D'où viennent vos visites » : le logo de la source (dans la couleur de sa courbe) puis son nom en clair */
body.page-geist .tb__source { display:inline-flex; align-items:center; gap:.4rem; }
body.page-geist .tb__source-logo { width:.95rem; height:.95rem; flex:none; display:block; }
body.page-geist .tb__source b { font-weight:inherit; color:var(--ds-gray-900, #a1a1a1); }
/* la légende passe sous le titre, sur une ligne : à droite elle tombait dans le fondu de la carte et se coupait en deux */
body.page-geist.page-geist .tb__c--large .tb__haut--rangee { flex-direction:column; align-items:flex-start; gap:.875rem; }
body.page-geist.page-geist .tb__c--large .tb__sources { max-width:none; justify-content:flex-start; gap:.5rem 1.25rem; }

/* Menu mobile (6 nov. 2026) : « Démonstration offerte » en haut sur toute la largeur, puis Login en simple lien texte */
body.page-geist .hdr__panel-tete { display:flex; flex-direction:column; align-items:stretch; gap:.25rem; padding:var(--sp-05) var(--sp-05) .5rem; }
body.page-geist.page-geist.page-geist .hdr__panel-tete .hdr__panel-cta { display:flex !important; align-self:stretch; justify-content:center; width:100%; box-sizing:border-box; min-height:2.75rem !important; height:2.75rem !important; padding:0 1.375rem !important; border-radius:.75rem !important; font-size:.9375rem !important; }   /* bouton habituel du site (7 nov. 2026) */
body.page-geist.page-geist.page-geist .hdr__panel-tete .hdr__panel-login { display:flex !important; justify-content:center; min-height:2.75rem !important; height:auto !important; padding:0 !important; border:0 !important; border-radius:0 !important; background:none !important; box-shadow:none !important; color:#ededed !important; -webkit-text-fill-color:#ededed; text-decoration:none !important; font-size:.9375rem !important; font-weight:500; }
body.page-geist.page-geist.page-geist .hdr__panel-tete .hdr__panel-login:hover { background:none !important; box-shadow:none !important; color:#fff !important; -webkit-text-fill-color:#fff; }

/* Fils d'Ariane (6 nov. 2026) : une icône maison à la place du mot « Accueil » (le lien garde aria-label="Accueil") */
body.page-geist .fil__maison { display:inline-flex; align-items:center; align-self:center; line-height:0; }
body.page-geist .fil__maison svg { width:1.05em; height:1.05em; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linejoin:round; stroke-linecap:round; }

/* ======================================================================
   Pages d'offre (offre-site.php, ex. /creation-site-internet/vitrine), 6 nov. 2026 :
   boutons habituels du site, et maquettes dans le style de l'accueil.
   ====================================================================== */
/* boutons : arrondis, contour blanc, comme partout ailleurs */
body.page-geist.page-geist.page-offre :is(.thero__btn, .thero__btn--plein, .cds-btn--plein) {
  display:inline-flex !important; align-items:center; justify-content:center; height:2.75rem !important; padding:0 22px !important;
  border:0 !important; border-radius:999px !important; background:transparent !important; color:#fff !important; -webkit-text-fill-color:#fff;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.55) !important; font-size:14px !important; font-weight:600 !important; text-decoration:none !important; }
body.page-geist.page-geist.page-offre :is(.thero__btn, .thero__btn--plein, .cds-btn--plein):hover {
  background:rgba(255,255,255,.08) !important; box-shadow:inset 0 0 0 1px #fff !important; }


/* /emailing (6 nov. 2026) : la colonne de droite du hero, qui porte la scène 3D, s'élargit (l'escadrille était coupée) */
@media (min-width:62rem) {
  body.page-geist.page-geist .shero__inner:has(.shero__3d) { grid-template-columns:minmax(0,.8fr) minmax(0,1.3fr); gap:clamp(1rem,2vw,2rem); }
}
/* le bloc bouton + Login passe sous les liens du menu mobile : un peu d'air au-dessus */
body.page-geist .hdr__panel-liste > .hdr__panel-tete { padding-top:var(--sp-06, 1.5rem); }

/* boutons à contour (7 nov. 2026) : tous comme « Voir les maquettes » de /mockups (.mqh__btn) — gris #161616, filet clair
   discret, coins arrondis à 12 px (plus de pilule), 44 px de haut, texte 15 px en 500 ; au survol le fond passe à #222.
   Mêmes sélecteurs que les deux blocs ci-dessus, posés en dernier pour passer devant. Sauf /tarifs (pl__btn). */
body.page-geist.page-geist :is(.cds-btn--primary, .cds-btn--secondary, .cds-btn--tertiary, .hacc .cds-btn, .btq__pill, .hdr__panel-cta, .hdr__panel-login),
body.page-geist.page-geist :is(.theme-g100, .hero, .shero, .cta) :is(.cds-btn--primary, .cds-btn--secondary),
body.page-geist.page-geist .hdr__cta,
body.page-geist.page-geist.page-login :is(.login__ligne .cds-btn, .login__champs .cds-btn--primary, .login__bloc a.login__google, .login__aide .cds-btn, .login__evt-btn) {
  border-radius:.75rem !important; background:#161719 !important; color:#ededed !important; -webkit-text-fill-color:#ededed;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.14),inset 0 1px 0 rgba(255,255,255,.08) !important; border:0 !important;
  font-size:.9375rem !important; font-weight:500 !important; text-decoration:none; transition:background-color .2s; }
body.page-geist.page-geist :is(.cds-btn--primary, .cds-btn--secondary, .cds-btn--tertiary, .hacc .cds-btn, .hdr__panel-cta, .hdr__panel-login):hover,
body.page-geist.page-geist :is(.theme-g100, .hero, .shero, .cta) :is(.cds-btn--primary, .cds-btn--secondary):hover,
body.page-geist.page-geist .hdr__cta:hover,
body.page-geist.page-geist .btq__c:hover .btq__pill,
body.page-geist.page-geist.page-login :is(.login__ligne .cds-btn, .login__champs .cds-btn--primary, .login__bloc a.login__google, .login__aide .cds-btn, .login__evt-btn):hover {
  background:#222 !important; color:#ededed !important; box-shadow:inset 0 0 0 1px rgba(255,255,255,.14),inset 0 1px 0 rgba(255,255,255,.08) !important; }
/* dans l'en-tête de 48 px, le même bouton reste à 36 px de haut */
body.page-geist.page-geist .hdr__cta { height:2.25rem; padding:0 1rem; border-radius:.625rem !important; font-size:.875rem !important; }

/* liens (7 nov. 2026) : plus de bleu. Les liens des textes en blanc souligné, ceux des tables des matières en blanc. */
body.page-geist.page-geist, body.page-geist.page-geist :is(.theme-g100, .theme-white, main) { --cds-link-primary:#fff; --cds-link-primary-hover:#fff; }
body.page-geist.page-geist :is(main p, main li, main td, main dd, main blockquote, main figcaption, .texte, .tsx, .tsx-faq, .tarq__r) a:not([class]) {
  color:#fff; text-decoration:underline; text-decoration-color:rgba(255,255,255,.45); text-decoration-thickness:1px; text-underline-offset:3px; }
body.page-geist.page-geist :is(main p, main li, main td, main dd, main blockquote, main figcaption, .texte, .tsx, .tsx-faq, .tarq__r) a:not([class]):hover { color:#fff; text-decoration-color:#fff; }
body.page-geist.page-geist :is(.tsx__toc-l, .toc a, .sommaire a, [class*="__toc"] a, [class*="__sommaire"] a) { color:#fff; }
/* les liens des articles et les liens « En savoir plus » des grilles, aussi en blanc (ils étaient en bleu, règles plus haut) */
body.page-geist.page-geist.page-article .lecture__corps a:not(.cds-btn):not(.sommaire__lien):not(.article-carte),
body.page-geist.page-geist .tsx a:not([class]), body.page-geist.page-geist .tsx-faq a:not([class]), body.page-geist.page-geist.page-solution .tarq__r a:not([class]) {
  color:#fff; text-decoration:underline; text-decoration-color:rgba(255,255,255,.45); text-decoration-thickness:1px; text-underline-offset:3px; }
body.page-geist.page-geist.page-article .lecture__corps a:not(.cds-btn):not(.sommaire__lien):not(.article-carte):hover,
body.page-geist.page-geist .tsx a:not([class]):hover, body.page-geist.page-geist .tsx-faq a:not([class]):hover, body.page-geist.page-geist.page-solution .tarq__r a:not([class]):hover { color:#fff; text-decoration-color:#fff; }
body.page-geist.page-geist :is(.sgrid__lire, .slien__f, .sgrid__titre a:hover, .prj__lien svg, .login__lien svg, .sommaire__lien) { color:#fff; }
/* articles (7 nov. 2026) : sommaire sans fond gris au survol ni sur l'entrée active ; écart réduit entre le chapeau et l'encart
   « En résumé » (48 px de marge + 48 px d'espacement de grille + 32 px de marge faisaient 128 px, il en reste 48) */
body.page-geist.page-geist.page-article :is(.sommaire__lien, .sommaire__lien:hover, .sommaire__lien.is-active, .sommaire__lien[aria-current]) { background:transparent !important; color:#fff; }
body.page-geist.page-geist.page-article .lecture__entete { margin-bottom:0; }
body.page-geist.page-geist.page-article .lecture__zone { row-gap:3rem; }   /* sur mobile la zone est en flex colonne : sans cet écart, chapeau et résumé se touchaient */
body.page-geist.page-geist.page-article .lecture__zone > .texte > :first-child { margin-top:0; }
html body.page-geist.page-geist.page-article a.article-carte, html body.page-geist.page-geist a.article-carte { color:#ededed; }

/* menu mobile (7 nov. 2026) : le bouton et Login descendent en bas du menu ; si Services est ouvert et que la liste déborde,
   ils suivent simplement la liste */
body.page-geist .hdr__panel-liste { display:flex; flex-direction:column; }
body.page-geist .hdr__panel-liste > .hdr__panel-tete { margin-top:auto; padding-bottom:calc(1rem + env(safe-area-inset-bottom)); }

/* 7 nov. 2026 : tous les H2 de section à la même taille, celle de .cds-fluid-heading-04 (32 px sur ordinateur, 24 px sur mobile).
   Ces titres étaient plus grands (40 px : FAQ, sections de l'accueil, /referencement-seo) ou plus petits (24-26 px : FAQ des
   sous-pages, /devis-refonte, pages offre). Les titres de cartes (blog, tarifs, à propos) ne sont pas des titres de section. */
html body.page-geist.page-geist :is(.fqs__titre, .sa__titre, .dl__titre, .pd__titre, .ta__titre, .chs__titre, .sc__titre,
  .tarq__titre, .sol2__titre, .doc__h2, .tsx__h2, .mq__h, .sbloc__h2, .apr-k__h){
  font-size:clamp(1.5rem, 1.2rem + 1vw, 2rem) !important; line-height:1.25 !important; font-weight:600 !important; letter-spacing:-.045em !important;
}

/* 8 nov. 2026 : dans les articles, l'encart « En résumé » et l'encart devis (colonne de droite sur ordinateur)
   au style des cartes de /mockups : coins 28 px, dégradé #0b0b0b → noir, filet clair en haut, plus discret sur les côtés. */
html body.page-geist.page-geist.page-geist :is(.note--resume, .devis__carte){
  border:0 !important; border-radius:1.75rem !important;
  background:linear-gradient(180deg,#0b0b0b,#000 70%) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),inset 1px 0 0 rgba(255,255,255,.07),inset -1px 0 0 rgba(255,255,255,.07),inset 0 -1px 0 rgba(255,255,255,.05) !important;
}
html body.page-geist.page-geist.page-geist .note--resume{padding:clamp(1.5rem,3vw,2rem) clamp(1.25rem,3vw,2rem) !important}
html body.page-geist.page-geist.page-geist .devis__carte{padding:1.75rem 1.5rem !important}

/* 8 nov. 2026 : ces deux encarts s'éteignent complètement vers le bas. Le filet n'est plus une ombre (de même
   intensité partout) mais un anneau dessiné par ::before, clair en haut et transparent en bas : plus de bordure basse. */
html body.page-geist.page-geist.page-geist :is(.note--resume, .devis__carte){ position:relative; box-shadow:none !important;
  background:linear-gradient(180deg,#0b0b0b,#000 60%) !important; }
html body.page-geist.page-geist.page-geist :is(.note--resume, .devis__carte)::before{ content:""; position:absolute; inset:0; border-radius:inherit; padding:1px; pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,.07) 35%,rgba(255,255,255,0) 85%);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0); -webkit-mask-composite:xor; mask-composite:exclude; }

/* 8 nov. 2026 : plus aucune police à chasse fixe sur le site (code des pages de documentation, maquettes de code, extraits) : Geist partout */
body.page-geist :is(code, pre, kbd, samp, .code-mock, .doc__code-nom, .doc__code code, .doc__p code, .doc__liste code, .doc__detail dd code) { font-family:var(--geist-sans) !important; }

/* 8 nov. 2026 : sur téléphone, plus de zoom automatique quand on touche un champ (iOS grossit la page sous 16 px) —
   tout le site : connexion, contact, chat, formulaires. On ne bloque pas le zoom à deux doigts (accessibilité). */
@media (max-width:52rem), (pointer:coarse) {
  html body :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=file]), select, textarea) { font-size:16px !important; }
}

/* 8 nov. 2026 : les derniers boutons à l'ancien style (relevé sur 121 pages) passent au bouton du site :
   gris #161719, filet clair, coins 12 px, 44 px de haut. Les boutons blancs gardent leur fond (action principale) mais prennent la même forme. */
html body.page-geist.page-geist :is(.cds-btn--plein, .thero__btn:not(.thero__btn--plein), .bbar__btn, .pl__btn:not(.pl__btn--plein)) {
  height:2.75rem !important; padding:0 1.375rem !important; border:0 !important; border-radius:.75rem !important;
  background:#161719 !important; color:#ededed !important; -webkit-text-fill-color:#ededed;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.14), inset 0 1px 0 rgba(255,255,255,.08) !important;
  font-size:.9375rem !important; font-weight:500 !important; display:inline-flex; align-items:center; justify-content:center; text-decoration:none !important; }
html body.page-geist.page-geist :is(.cds-btn--plein, .thero__btn:not(.thero__btn--plein), .bbar__btn, .pl__btn:not(.pl__btn--plein)):hover { background:#222 !important; }
html body.page-geist.page-geist :is(.thero__btn--plein, .pl__btn--plein) {
  height:2.75rem !important; padding:0 1.375rem !important; border:0 !important; border-radius:.75rem !important;
  background:#ededed !important; color:#0a0a0a !important; -webkit-text-fill-color:#0a0a0a; box-shadow:none !important;
  font-size:.9375rem !important; font-weight:600 !important; display:inline-flex; align-items:center; justify-content:center; text-decoration:none !important; }
html body.page-geist.page-geist :is(.thero__btn--plein, .pl__btn--plein):hover { background:#fff !important; }
/* le bouton « Acheter » de l'en-tête de /theme-shopify : même forme que « Parler à un expert » de l'en-tête (coins 10 px, 36 px), fond blanc conservé */
html body.page-geist.page-geist .hdr__achat { height:2.25rem !important; padding:0 1rem !important; border-radius:.625rem !important; font-size:.875rem !important; display:inline-flex; align-items:center; }

/* 8 nov. 2026 : blocs d'article « heures » (grille des meilleures heures, heures en lignes et jours en colonnes)
   et « tableau » (formats et dimensions). Cartes au fond des FAQ, cases en dégradé de gris jusqu'au blanc. */
.atab table{width:100%;min-width:34rem;border-collapse:collapse;font-size:.9375rem;line-height:1.45}
.atab th,.atab td{padding:.75rem .875rem;text-align:left;vertical-align:top;border-bottom:1px solid rgba(255,255,255,.08)}
.atab thead th{font-size:.875rem;font-weight:500;color:#a1a1a1}
.atab tbody th{font-weight:500;color:#ededed}
.atab tbody td{color:#cfcfcf}
.atab tbody tr:last-child th,.atab tbody tr:last-child td{border-bottom:0}
.atab__leg{margin-top:.875rem;font-size:.875rem;color:#a1a1a1}
/* tableau d'article : aucune autre règle de tableau ne doit l'habiller (fond gris d'en-tête, filets coupés),
   et il tient dans la colonne de texte sur ordinateur ; défilement horizontal seulement sur mobile */
html body .atab :is(table,thead,tbody,tr,th,td){background:none !important;box-shadow:none !important}
html body .atab table{border-collapse:collapse !important;border-spacing:0 !important;min-width:0;font-size:.875rem}
html body .atab :is(th,td){border:0 !important;border-bottom:1px solid rgba(255,255,255,.08) !important;padding:.625rem .5rem}
html body .atab :is(th,td):first-child{padding-left:0} html body .atab :is(th,td):last-child{padding-right:0}
html body .atab tbody tr:last-child :is(th,td){border-bottom:0 !important}
html body .atab td{white-space:nowrap}
@media (max-width:42rem){html body .atab table{min-width:32rem}}

/* 8 nov. 2026 : carte de chaleur des meilleures heures, reprise des cartes Buffer : panneau clair, bandeau de titre,
   cases jointives au filet sombre, heures paires à gauche, initiales des jours en bas, une nuance par case */
body.page-geist .hgr{margin:2rem 0}
.hgr__titre{margin:0 0 .875rem;font-size:1.125rem;font-weight:500;color:#ededed}
.hgr__carte{border-radius:1rem;background:#f6f6f3;overflow:hidden;box-shadow:0 4px 0 #1d2b2b}
.hgr__mesure{margin:0;padding:.875rem 1rem;background:#fdfdfa;border-bottom:1px solid #e6e6e1;text-align:center;font-size:.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#1d2b2b}
html body .hgr__t{width:calc(100% - 2rem);margin:1.25rem 1rem .25rem;border-collapse:collapse !important;border-spacing:0 !important;table-layout:fixed}
html body .hgr__t :is(th,td,tr){background:none;box-shadow:none;padding:0}
html body .hgr__t tbody th{width:3rem;padding-right:.625rem;text-align:right;vertical-align:middle;font-size:.75rem;font-weight:500;color:#1d2b2b;white-space:nowrap;border:0}
html body .hgr__t tbody td{height:1.625rem;border:1px solid #3a3f40}
html body .hgr__t tfoot th{padding-top:.625rem;text-align:center;font-size:.75rem;font-weight:500;color:#1d2b2b;border:0}
html body .hgr__t tfoot td{border:0}
.hgr__t abbr{text-decoration:none}
.hgr__echelle{display:flex;align-items:center;justify-content:center;gap:.625rem;margin:.75rem 1rem 1.125rem;font-size:.75rem;color:#4a4f50}
.hgr__echelle i{display:block;width:8rem;height:.5rem;border-radius:.25rem;box-shadow:inset 0 0 0 1px rgba(0,0,0,.15)}
.hgr__leg{margin-top:.875rem;font-size:.875rem;line-height:1.5;color:#a1a1a1}
.hgr__sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (max-width:42rem){html body .hgr__t{width:calc(100% - 1.25rem);margin:1rem .625rem .25rem} html body .hgr__t tbody th{width:2.5rem;padding-right:.375rem} html body .hgr__t tbody td{height:1.375rem}}html body .texte .hgr__mesure{color:#1d2b2b !important;font-size:.75rem !important;line-height:1.4 !important;margin:0 !important}
html body .texte .hgr__t th,html body .texte .hgr__t abbr{color:#1d2b2b !important;font-size:.75rem !important;line-height:1 !important}
html body .texte .hgr__echelle,html body .texte .hgr__echelle span{color:#4a4f50 !important;font-size:.75rem !important;line-height:1 !important}
html body .texte .hgr__titre{margin:0 0 .875rem !important}
@media (max-width:42rem){.hgr__mesure{padding:.75rem .75rem}}

/* 8 nov. 2026 : outils interactifs dans les articles (bloc ['outil', …] : générateur de QR code, recherche WHOIS) */
body.page-geist .otl{margin:0 0 2.5rem;padding:1.5rem;border-radius:1rem;background:#161719;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}
html body .texte .otl__t{margin:0;font-size:1.375rem;font-weight:600;letter-spacing:-.02em;color:#fff}
html body .texte .otl__p{margin:.5rem 0 1.25rem;font-size:.9375rem;line-height:1.55;color:#a1a1a1}
.otl__grille{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,15rem);gap:1.5rem;align-items:start}
.otl__form{display:grid;gap:.875rem;min-width:0}
.otl__types{display:flex;flex-wrap:wrap;gap:.25rem;padding:.25rem;border-radius:.75rem;background:#0d0e10;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);justify-self:start}
.otl__types button{height:2rem;padding:0 .75rem;border:0;border-radius:.5rem;background:none;color:#a1a1a1;font:inherit;font-size:.875rem;font-weight:500;cursor:pointer}
.otl__types button:hover{color:#ededed}
.otl__types button.is-on{background:#1a1b1e;color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.1)}
.otl__l{display:grid;gap:.375rem;font-size:.875rem;font-weight:500;color:#ededed;min-width:0}
.otl__i{width:100%;min-width:0;box-sizing:border-box;height:2.5rem;padding:0 .75rem;border:0;border-radius:.625rem;background:#111214;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);color:#ededed;font:inherit;font-size:.9375rem}
textarea.otl__i{height:auto;padding:.625rem .75rem;resize:vertical}
.otl__i:focus{outline:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.35)}
.otl__ligne{display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:.875rem;align-items:end}
.otl__c{width:3rem;height:2.5rem;padding:.25rem;border:0;border-radius:.625rem;background:#111214;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);cursor:pointer}
.otl__res{display:grid;gap:.875rem;justify-items:stretch}
.otl__qr{display:grid;place-items:center;aspect-ratio:1;border-radius:.75rem;background:#fff;overflow:hidden}
.otl__qr svg{width:100%;height:100%;display:block}
.otl__dl{display:grid;gap:.5rem}
.otl__btn{display:inline-flex;align-items:center;justify-content:center;height:2.5rem;padding:0 1rem;border:0;border-radius:.75rem;background:#1a1b1e;box-shadow:inset 0 0 0 1px rgba(255,255,255,.14),inset 0 1px 0 rgba(255,255,255,.08);color:#ededed;font:inherit;font-size:.9375rem;font-weight:500;cursor:pointer;white-space:nowrap}
.otl__btn:hover{background:#222}
.otl__btn--fort{background:#fff;color:#0a0a0a;box-shadow:none}
.otl__btn--fort:hover{background:#e6e6e6}
html body .texte .otl__vide{margin:0;padding:1rem;font-size:.875rem;color:#8f8f8f;text-align:center}
html body .texte .otl__alerte{margin:0;padding:.75rem 1rem;border-radius:.625rem;background:rgba(255,180,80,.08);box-shadow:inset 0 0 0 1px rgba(255,180,80,.25);font-size:.875rem;color:#f3c58b}
.otl__cherche{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.5rem}
.otl__who{margin-top:1.25rem;display:grid;gap:.75rem}
html body .texte .otl__h{margin:.5rem 0 0;font-size:1rem;font-weight:600;color:#fff}
.otl__dl2{margin:0;display:grid;border-radius:.75rem;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);overflow:hidden}
.otl__kv{display:grid;grid-template-columns:minmax(0,11rem) minmax(0,1fr);gap:1rem;padding:.625rem .875rem;border-bottom:1px solid rgba(255,255,255,.06)}
.otl__kv:last-child{border-bottom:0}
.otl__kv dt{font-size:.875rem;color:#a1a1a1} .otl__kv dd{margin:0;font-size:.875rem;color:#ededed;overflow-wrap:anywhere}
.otl__kv a{color:#fff}
.otl__mute{color:#8f8f8f}
.otl__sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (max-width:42rem){body.page-geist .otl{padding:1.125rem;margin-left:-.25rem;margin-right:-.25rem}.otl__grille{grid-template-columns:1fr}.otl__res{max-width:18rem;justify-self:center;width:100%}
  .otl__ligne{grid-template-columns:auto auto minmax(0,1fr)}.otl__kv{grid-template-columns:1fr;gap:.125rem}.otl__cherche{grid-template-columns:1fr}}
