/*
Theme Name:   Commerce Efficace
Theme URI:    https://www.commerceefficace.fr
Description:  Thème enfant Blocksy pour Commerce Efficace — data, formations et expertise judiciaire. Palette dérivée du logo (#18477F / #95B2DC).
Author:       Commerce Efficace
Author URI:   https://www.commerceefficace.fr
Template:     blocksy
Version:      1.0.0
Requires PHP: 7.4
Text Domain:  commerce-efficace
*/

/* ==========================================================================
   1. PALETTE — valeurs relevées au pixel près sur le logo
   ========================================================================== */

:root {
  /* Couleurs de marque */
  --ce-bleu:        #18477F;  /* mot-symbole et flèche du logo */
  --ce-iris:        #95B2DC;  /* iris de l'œil */
  --ce-encre:       #0D0D0D;  /* contour de l'œil */
  --ce-nuit:        #0A2244;  /* nuit dérivée du bleu de marque */
  --ce-nuit-fond:   #081B36;
  --ce-bleu-fonce:  #102F58;
  --ce-clair:       #EDF2FA;
  --ce-ligne:       #CFDCEE;
  --ce-gris:        #54677F;
  --ce-blanc:       #FFFFFF;

  /* Typographie */
  --ce-display: "Space Grotesk", system-ui, -apple-system, sans-serif;
  --ce-body:    "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
  --ce-mono:    "IBM Plex Mono", ui-monospace, "SFMono-Regular", monospace;

  /* Rythme */
  --ce-section:      clamp(56px, 8vw, 84px);
  --ce-radius:       14px;
  --ce-radius-sharp: 4px;

  /* --- Mapping vers les variables Blocksy ---------------------------------
     Blocksy pilote ses composants via --theme-palette-color-1..8.
     On les redéfinit ici pour que les boutons, liens et blocs natifs
     héritent automatiquement de la palette, sans passer par le Customizer. */
  --theme-palette-color-1: #18477F;  /* couleur d'accent principale */
  --theme-palette-color-2: #102F58;  /* accent survolé */
  --theme-palette-color-3: #0A2244;  /* titres */
  --theme-palette-color-4: #54677F;  /* texte courant */
  --theme-palette-color-5: #CFDCEE;  /* bordures */
  --theme-palette-color-6: #EDF2FA;  /* fond alterné */
  --theme-palette-color-7: #FFFFFF;  /* fond principal */
  --theme-palette-color-8: #95B2DC;  /* accent secondaire (iris) */

  --theme-font-family:        var(--ce-body);
  --theme-heading-font-family: var(--ce-display);
  --theme-link-initial-color:  var(--ce-bleu);
  --theme-link-hover-color:    var(--ce-nuit);
  --theme-button-background-initial-color: var(--ce-bleu);
  --theme-button-background-hover-color:   var(--ce-nuit);
  --theme-content-spacing: 1.5em;
}

/* ==========================================================================
   2. POLICES — hébergées localement (RGPD : aucun appel à Google Fonts)
   Déposez les .woff2 dans /assets/fonts/ (voir README.md)
   ========================================================================== */

@font-face {
  font-family: "Inter";
  src: url("assets/fonts/inter-regular.woff2") format("woff2");
  font-weight: 400; font-style: normal; font-display: swap;
}
@font-face {
  font-family: "Inter";
  src: url("assets/fonts/inter-medium.woff2") format("woff2");
  font-weight: 500; font-style: normal; font-display: swap;
}
@font-face {
  font-family: "Inter";
  src: url("assets/fonts/inter-semibold.woff2") format("woff2");
  font-weight: 600; font-style: normal; font-display: swap;
}
@font-face {
  font-family: "Space Grotesk";
  src: url("assets/fonts/space-grotesk-medium.woff2") format("woff2");
  font-weight: 500; font-style: normal; font-display: swap;
}
@font-face {
  font-family: "Space Grotesk";
  src: url("assets/fonts/space-grotesk-bold.woff2") format("woff2");
  font-weight: 700; font-style: normal; font-display: swap;
}
@font-face {
  font-family: "IBM Plex Mono";
  src: url("assets/fonts/ibm-plex-mono-regular.woff2") format("woff2");
  font-weight: 400; font-style: normal; font-display: swap;
}

/* ==========================================================================
   3. BASES
   ========================================================================== */

body {
  font-family: var(--ce-body);
  color: var(--ce-nuit);
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4,
.entry-title,
.page-title {
  font-family: var(--ce-display);
  letter-spacing: -0.02em;
  line-height: 1.15;
}

h1 { font-size: clamp(2rem, 8vw, 3.6rem); line-height: 1.06; letter-spacing: -0.03em; }
h2 { font-size: clamp(1.5rem, 5.4vw, 2.2rem); }
h3 { font-size: 1.12rem; }

/* Le logo du header : hauteur maîtrisée, jamais déformé */
.site-logo-container .site-logo,
.site-logo-container img {
  height: 34px;
  width: auto;
  max-width: none;
}

/* Accessibilité : focus toujours visible */
:focus-visible {
  outline: 2px solid var(--ce-iris);
  outline-offset: 3px;
}

/* Respect de prefers-reduced-motion */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
  }
}
