/* ==========================================================================
   Design tokens — LPPL Plomberie
   Palette dérivée du logo : navy #1B2A56, gris acier #7C8189.
   Registre : classique-professionnel. Serif Didone + sans-serif neutre.
   ========================================================================== */

:root {
  /* --- Marque ---
     Valeurs échantillonnées pixel par pixel dans le fichier du logo, pas
     estimées à l'œil : le navy et le gris ci-dessous sont exactement ceux du
     monogramme. --- */
  --c-navy:        #01224d;   /* bleu du « L » et du « P » avant-plan */
  --c-navy-deep:   #010f24;   /* fond le plus sombre : pied de page */
  --c-navy-soft:   #0c2f5f;   /* cartes / surfaces sur fond navy */
  --c-navy-lift:   #16437d;   /* survol */
  --c-steel:       #6a6a6e;   /* gris du « P » en arrière-plan */
  --c-steel-light: #a9aeb8;

  /* --- Accent : bleu eau. Sert aux liens, icônes et détails. --- */
  --c-accent:      #4e8fd1;
  --c-accent-lift: #6ba4de;   /* survol / sur fond foncé */
  --c-accent-deep: #2f6ba8;   /* texte accent sur fond clair (contraste AA) */
  --c-accent-wash: #eaf2fa;   /* fond très pâle pour les pastilles d'icônes */

  /* --- Signal ---
     Aucun rouge dans la charte : l'emphase passe par le contraste et la
     position, pas par la couleur. L'ambre est réservé aux erreurs de
     formulaire — un retour fonctionnel, jamais un élément décoratif. --- */
  --c-alert:      #8a5d0f;   /* texte d'erreur (AA sur blanc) */
  --c-alert-line: #c08a2e;   /* bordure de champ invalide */
  --c-alert-wash: #fdf6e8;   /* fond du message d'erreur */
  --c-success:    #2e8b57;

  /* --- Surfaces --- */
  --c-paper:      #ffffff;
  --c-paper-warm: #f5f6f8;   /* alternance de section */
  --c-line:       #e1e4e9;
  --c-line-dark:  #123156;   /* filets sur fond navy */

  /* --- Texte --- */
  --c-text:              #1a2233;
  --c-text-muted:        #5c6472;
  --c-text-invert:       #f4f6fa;
  --c-text-invert-muted: #aebbd2;

  /* --- Typographie ---
     Poppins sur toute la page : géométrique, ronde, très lisible à l'écran.
     Une seule famille = une seule requête de police et un rendu cohérent. */
  --font-display: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-body:    'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

  --text-xs:    0.78rem;
  --text-sm:    0.875rem;
  --text-base:  clamp(1rem, 0.96rem + 0.18vw, 1.075rem);
  --text-lg:    clamp(1.1rem, 1.02rem + 0.38vw, 1.3rem);
  --text-xl:    clamp(1.3rem, 1.14rem + 0.7vw, 1.65rem);
  --text-2xl:   clamp(1.7rem, 1.4rem + 1.4vw, 2.45rem);
  --text-3xl:   clamp(2.05rem, 1.55rem + 2.4vw, 3.4rem);
  --text-hero:  clamp(2.5rem, 1.55rem + 4.2vw, 4.7rem);

  --leading-tight: 1.14;
  --leading-snug:  1.22;
  --leading-body:  1.7;

  --track-tight: -0.025em;  /* Poppins gagne à être légèrement resserrée en gros corps */
  --track-label:  0.16em;

  /* --- Espacement --- */
  --space-section:  clamp(4.5rem, 3rem + 6vw, 9rem);
  --space-gutter:   clamp(1.25rem, 0.7rem + 2.4vw, 3rem);
  --max-width:      1240px;
  --max-prose:      62ch;

  /* --- Rayons : discrets, registre classique --- */
  --r-sm: 3px;
  --r-md: 6px;
  --r-lg: 10px;
  --r-pill: 999px;

  /* --- Ombres teintées navy plutôt que noir pur --- */
  --shadow-sm: 0 1px 2px rgb(1 34 77 / 0.08),
               0 2px 6px rgb(1 34 77 / 0.06);
  --shadow-md: 0 2px 4px rgb(1 34 77 / 0.07),
               0 8px 24px rgb(1 34 77 / 0.11);
  --shadow-lg: 0 4px 8px rgb(1 34 77 / 0.08),
               0 20px 48px rgb(1 34 77 / 0.17);
  --shadow-accent: 0 6px 20px rgb(78 143 209 / 0.35);

  /* --- Motion --- */
  --dur-fast:   140ms;
  --dur-normal: 280ms;
  --dur-slow:   560ms;
  --ease-out:   cubic-bezier(0.16, 1, 0.3, 1);
  --ease-inout: cubic-bezier(0.65, 0, 0.35, 1);

  /* --- Divers --- */
  --header-h: 88px;
  --callbar-h: 68px;
}
