/* ==========================================================================
   Le TEXTE COURANT, uniforme sur tout le site.
   26 septembre 2026.

   Perimetre : toutes les pages sauf les pages d'atterrissage publicitaires.
   Y compris celles que le proprio a deja redessinees : leurs TITRES gardent
   leurs choix (refonte-content.css ne les touche pas), mais leur texte
   courant, lui, doit etre le meme partout.

   Mesure avant, a 1440 px de large, sur les paragraphes de plus de
   60 caracteres :

     refonte accueil        17 px / 29   futura-pt   encre a 70 %   <- la cible
     visite virtuelle       17 px / 29   futura-pt   encre pleine
     accessoires            15 px / 27   futura-pt   #404142
     fiches accessoires     17 px / 28   JOST        #5c5852
     blogue                 14 px / 24   futura-pt   #7a7875
     nous joindre           16 px / 26   futura-pt

   Deux problemes distincts : les familles divergent (Jost sur les fiches
   accessoires, alors que personne d'autre ne l'utilise), et les tailles vont
   de 14 a 17 px pour la meme fonction.

   Ce qu'on ne touche PAS : le texte des vignettes (.blog-card__excerpt,
   .sl-acc-product__desc...). Ce sont des composants, et la refonte elle aussi
   y met un corps plus petit que dans la prose. Les grossir casserait les
   grilles, exactement comme pour les titres de vignette.
   ========================================================================== */


/* --------------------------------------------------------------------------
   1. Une seule famille

   Chaque page a son propre jeu de variables de police, herite de dix
   refontes successives. Plutot que de reecrire dix fichiers, on branche
   leurs variables sur les tokens : un alias, pas une reecriture. Si une
   page doit un jour reprendre sa police a elle, il suffit de retirer sa
   ligne ici.
   -------------------------------------------------------------------------- */

body:not([class*="template-landing"]) {
  --acc-font-body: var(--sl-font-sans);
  --acc-font-heading: var(--sl-font-sans);
  --acc-font-serif: var(--sl-font-serif);

  --blog-font-sans: var(--sl-font-sans);
  --blog-font-serif: var(--sl-font-serif);

  --cp-font-sans: var(--sl-font-sans);
  --cp-font-serif: var(--sl-font-serif);

  --vv-sans: var(--sl-font-sans);
  --vv-serif: var(--sl-font-serif);

  --quote-font-sans: var(--sl-font-sans);
  --quote-font-serif: var(--sl-font-serif);

  --sans: var(--sl-font-sans);
  --serif: var(--sl-font-serif);

  --font-body: var(--sl-font-sans);
  --font-head: var(--sl-font-sans);
}


/* --------------------------------------------------------------------------
   2. Une seule taille pour la prose

   Definition retenue : un paragraphe SANS classe, dans le contenu, est de la
   prose. Les paragraphes portant une classe sont des composants (extrait de
   vignette, sous-titre, valeur de contact) et gardent leur reglage.

   17 px sur 1,7, encre a 70 %, mesure bornee : les valeurs de la refonte.
   -------------------------------------------------------------------------- */

/* Les six fiches accessoires n'ont PAS de <main> : leur gabarit ecrit son
   propre balisage entre l'en-tete et le pied de page. Une regle scoppee a
   main ne les voyait donc jamais, ce qui expliquait pourquoi leur texte
   restait a l'ecart de l'uniformisation. On vise donc tout le document, en
   excluant explicitement l'habillage (en-tete, menu, pied de page, CTA
   mobile), dont les paragraphes ont leur propre reglage. */
body:not([class*="template-landing"]) p:not([class]):not(.site-header *):not(.site-footer *):not(.menu-overlay *):not(.mobile-cta *),
body:not([class*="template-landing"]) main li:not([class]),
body:not([class*="template-landing"]) #hero p:not([class]) {
  font-family: var(--sl-font-sans);
  font-size: 17px;
  line-height: 1.7;
  color: var(--sl-color-ink-70);
}

body:not([class*="template-landing"]) main p:not([class]) {
  max-width: 70ch;
  margin: 0 0 1.15em;
}

/* Pas de couleur imposee hors de main : beaucoup de ces gabarits ont des
   sections sur fond sombre ou le texte est blanc. Forcer l'encre a 70 % y
   rendrait le texte illisible. Les gris de fond clair sont corriges a la
   source, dans les gabarits eux-memes. */

/* Une police de secours coherente pour tout ce qui n'a rien demande. */
body:not([class*="template-landing"]) {
  font-family: var(--sl-font-sans);
}


/* --------------------------------------------------------------------------
   3. La prose des pages deja refaites

   Leurs paragraphes portent des classes, donc la regle « p sans classe »
   ci-dessus ne les voyait pas. Mesure a 1440 px :

     accessoires    hero 16 · intro 17 · description produit 15 · CTA 15
     blogue         hero 16 · article en vedette 16
     nous joindre   17 · confirmation 16 · coordonnees 16
     visite virt.   hero 19 · sous-titre reservation 18
     avant-apres    lede 18 · sous-titre galerie 16 · statistique 16 · lede formulaire 17

   Sept tailles differentes pour la meme fonction. On les ramene toutes a
   17 px sur 1,7, la valeur de la refonte.

   On ne touche PAS a la couleur : certaines de ces lignes vivent sur fond
   sombre (le bloc CTA des accessoires est en creme a 60 %), et forcer
   l'encre a 70 % les rendrait invisibles.

   On ne touche PAS non plus aux citations (vv-quote__text 46 px,
   sl-com-stat__quote 23 px), aux extraits de vignette (blog-card__excerpt),
   ni aux mentions d'aide (vv-files__hint, notes de formulaire) : ce sont
   d'autres fonctions, et la refonte leur donne aussi d'autres tailles.
   -------------------------------------------------------------------------- */

body:not([class*="template-landing"]) .sl-acc-hero__subtitle,
body:not([class*="template-landing"]) .sl-acc-intro__text,
body:not([class*="template-landing"]) .sl-acc-product__desc,
body:not([class*="template-landing"]) .sl-acc-cta__text,
body:not([class*="template-landing"]) .blog-hero__subtitle,
body:not([class*="template-landing"]) .blog-featured__excerpt,
body:not([class*="template-landing"]) .contact-page__success-body,
body:not([class*="template-landing"]) .vv-hero__subtitle,
body:not([class*="template-landing"]) .vv-booking__sub,
body:not([class*="template-landing"]) .avap-hero__lede,
body:not([class*="template-landing"]) .avap-gallery__subtitle,
body:not([class*="template-landing"]) .sl-com-stat__copy,
body:not([class*="template-landing"]) .sl-com-form__lede,
body:not([class*="template-landing"]) .slp-lede,
body:not([class*="template-landing"]) .slp-intro__text,
body:not([class*="template-landing"]) .slp-quote {
  font-family: var(--sl-font-sans) !important;
  font-size: 17px !important;
  line-height: 1.7 !important;
}


/* --------------------------------------------------------------------------
   4. Et la meme encre

   La taille ne suffisait pas : chaque page avait aussi son gris. Mesure des
   couleurs de texte ET du fond sur lequel elles vivent :

     accessoires hero        #9a8e82   sur blanc
     accessoires intro       #404142   sur blanc
     accessoires produit     #404142   sur blanc et sur #f5f0eb
     blogue hero et vedette  #7a7875   sur #f5f0eb et blanc
     visite virtuelle        encre 78% sur #faf7f1
     avant-apres lede        #57544e   sur #faf8f4
     avant-apres galerie     encre 66% sur #faf8f4
     nous joindre            #333230   sur blanc

   Huit gris differents pour la meme fonction. Tous passent a l'encre a 70 %,
   la valeur de la refonte.

   DEUX EXCEPTIONS, verifiees une par une : sl-acc-cta__text (creme a 60 %
   sur charbon) et sl-com-stat__copy (blanc a 85 % sur charbon) vivent sur
   fond sombre. Leur appliquer l'encre a 70 % les rendrait illisibles, donc
   elles gardent la leur.
   -------------------------------------------------------------------------- */

body:not([class*="template-landing"]) .sl-acc-hero__subtitle,
body:not([class*="template-landing"]) .sl-acc-intro__text,
body:not([class*="template-landing"]) .sl-acc-product__desc,
body:not([class*="template-landing"]) .blog-hero__subtitle,
body:not([class*="template-landing"]) .blog-featured__excerpt,
body:not([class*="template-landing"]) .contact-page__success-body,
body:not([class*="template-landing"]) .vv-hero__subtitle,
body:not([class*="template-landing"]) .vv-booking__sub,
body:not([class*="template-landing"]) .avap-hero__lede,
body:not([class*="template-landing"]) .avap-gallery__subtitle,
body:not([class*="template-landing"]) .sl-com-form__lede,
body:not([class*="template-landing"]) .slp-lede,
body:not([class*="template-landing"]) .slp-intro__text,
body:not([class*="template-landing"]) .slp-quote {
  color: var(--sl-color-ink-70) !important;
}
