/* ==========================================================================
   Emaintenance : jetons de design (Lot 1)
   Source des couleurs : cahier V3 §3 (valeurs de départ), calibrées sur les maquettes.
   Contrastes calculés (WCAG 2.x) : voir docs/03_LOT1_DESIGN_SYSTEM_ET_ECARTS.md
   ========================================================================== */

/* Polices : déclarées dans theme.json (fontFace), imprimées par WordPress en front et dans l'éditeur.
   0.8.0 : polices de la charte Emaintenance, League Spartan (titres) et Poppins (texte),
   SIL Open Font License 1.1, auto-hébergées (aucun appel à Google Fonts). */

:root {
	/* --- Couleurs : identité « Signal », palette sarcelle (0.8.0) ---
	   Construite autour des sarcelles de la charte : #025959 (profond) et #5DA6A6 (clair).
	   Fond sombre légèrement sarcelle, accent en dégradé #5DA6A6 -> #9FE3D8.
	   Le vert vif #B6F23D est réservé à GTC One (société sœur) : ne pas l'utiliser.
	   Les noms historiques (--em-deep, --em-copper…) sont conservés : toutes les pages suivent. */
	--em-deep: #025959;          /* sarcelle profonde (charte) : panneaux. Blanc dessus 8,15:1 */
	--em-deep-700: #014545;
	--em-night: #041d1f;         /* nuit sarcelle : fond des sections sombres. Blanc dessus 17,5:1 */
	--em-night-800: #0a2a2c;     /* cartes sur fond sombre */
	--em-night-900: #021314;
	--em-cream: #f2ebdc;         /* crème (charte) */
	--em-ivory: #f5f2ea;         /* fond clair principal */
	--em-sand: #ddd6c6;
	--em-teal: #5da6a6;          /* sarcelle claire (charte) */
	--em-soft: #6fd0c4;          /* SARCELLE LUMINEUSE : accent sur fond sombre (9,6:1 sur nuit). Jamais en texte sur clair. */
	--em-soft-300: #9fe3d8;      /* fin du dégradé d'accent */
	--em-copper: #6fd0c4;        /* (nom historique) accent ponctuel sur sombre */
	--em-copper-600: #6fd0c4;    /* (nom historique) fond du bouton principal, sous le dégradé : texte nuit 9,6:1 */
	--em-copper-700: #027368;    /* sarcelle (charte) en texte sur clair : 5,1:1 sur ivoire */
	--em-amber-300: #9fe3d8;     /* (nom historique) survol du bouton principal : texte nuit 12:1 */
	--em-ink: #041d1f;           /* texte sur clair */
	--em-ink-muted: #4f6262;     /* texte secondaire sur clair */
	--em-white: #ffffff;

	/* Dégradés de marque */
	--em-grad: linear-gradient(120deg, #5da6a6 0%, #9fe3d8 100%);                   /* accent : texte nuit dessus ≥ 6,2:1 */
	--em-grad-deep: linear-gradient(135deg, #013f3f 0%, #025959 45%, #027368 100%); /* grands aplats : texte blanc ≥ 5,7:1 */

	/* Couleurs des métiers (sur fond nuit, toutes ≥ 5:1) */
	--em-c-maintenance: #6fd0c4;     /* sarcelle lumineuse (couleur de marque) */
	--em-c-cvc: #8fb8ff;             /* bleu glacier */
	--em-c-elec: #ffd43b;
	--em-c-plomberie: #5b86ff;
	--em-c-gtb: #b794f6;
	--em-c-incendie: #ff5c4d;
	--em-c-second-oeuvre: #e0a26c;
	--em-c-eau: #38d3f2;             /* cyan eau : fontaines et piscines */   /* cuivre (charte, #D99962 éclairci) */

	/* --- Typographie --- */
	--em-font-display: "League Spartan", "Poppins", system-ui, -apple-system, "Segoe UI", Arial, sans-serif; /* charte : titres */
	--em-font-sans: "Poppins", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; /* charte : texte */

	/* Échelle fluide 360 px -> 1440 px */
	--em-step--1: clamp(0.8125rem, 0.79rem + 0.1vw, 0.875rem);   /* 13 -> 14 */
	--em-step-0: clamp(1rem, 0.98rem + 0.1vw, 1.0625rem);         /* 16 -> 17 */
	--em-step-1: clamp(1.125rem, 1.08rem + 0.2vw, 1.25rem);       /* 18 -> 20  lead */
	--em-step-2: clamp(1.3125rem, 1.2rem + 0.5vw, 1.625rem);      /* 21 -> 26  h4 */
	--em-step-3: clamp(1.5rem, 1.3rem + 0.9vw, 2.125rem);         /* 24 -> 34  h3 */
	--em-step-4: clamp(2rem, 1.6rem + 1.8vw, 3.25rem);            /* 32 -> 52  h2 */
	--em-step-5: clamp(2.5rem, 1.9rem + 2.8vw, 4.375rem);         /* 40 -> 70  h1 */
	--em-step-6: clamp(2.75rem, 1.85rem + 4.2vw, 5.75rem);        /* 44 -> 92  hero */

	--em-leading-tight: 1.02;
	--em-leading-snug: 1.15;
	--em-leading-body: 1.6;
	--em-tracking-display: -0.01em;
	--em-tracking-eyebrow: 0.18em;

	/* --- Espacements (fluides) --- */
	--em-space-3xs: 0.25rem;
	--em-space-2xs: 0.5rem;
	--em-space-xs: 0.75rem;
	--em-space-s: 1rem;
	--em-space-m: clamp(1.25rem, 1.1rem + 0.6vw, 1.5rem);
	--em-space-l: clamp(1.75rem, 1.4rem + 1.4vw, 2.5rem);
	--em-space-xl: clamp(2.5rem, 1.9rem + 2.6vw, 4rem);
	--em-space-2xl: clamp(3.5rem, 2.5rem + 4.4vw, 6.5rem);
	--em-space-section: clamp(4rem, 2.8rem + 5.2vw, 8rem);

	/* --- Grille (cahier §3 : 1440 px max, gouttières 24 -> 64 px) --- */
	--em-container: 1440px;
	--em-container-prose: 46rem;
	--em-gutter: clamp(1.5rem, 0.6rem + 3.9vw, 4rem);
	--em-header-h: clamp(4.25rem, 3.9rem + 1.4vw, 5.5rem);

	/* --- Formes --- */
	--em-radius-xs: 3px;
	--em-radius-s: 10px;
	--em-radius-m: 16px;
	--em-radius-l: 24px;
	--em-radius-pill: 999px;
	--em-shadow-s: 0 1px 2px rgb(4 29 31 / 0.06), 0 2px 8px rgb(4 29 31 / 0.06);
	--em-shadow-m: 0 6px 24px rgb(4 29 31 / 0.12);
	--em-shadow-l: 0 24px 60px rgb(2 19 20 / 0.28);

	/* --- Mouvement (cahier §8 : micro-interactions 150-300 ms, reveals 16-40 px) --- */
	--em-ease-out: cubic-bezier(0.22, 1, 0.36, 1);
	--em-ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
	--em-dur-fast: 150ms;
	--em-dur-base: 240ms;
	--em-dur-slow: 700ms;
	--em-reveal-distance: 28px;

	/* --- Cibles tactiles (cahier §3 : 44 x 44 px min.) --- */
	--em-hit: 44px;

	/* --- Valeurs par défaut de surface (surchargées par .em-surface-*) --- */
	--em-bg: var(--em-ivory);
	--em-text: var(--em-ink);
	--em-text-muted: var(--em-ink-muted);
	--em-line: rgb(17 43 48 / 0.14);
	--em-focus: var(--em-deep);
	--em-accent-text: var(--em-deep);
}

@media (prefers-reduced-motion: reduce) {
	:root {
		--em-dur-fast: 0ms;
		--em-dur-base: 0ms;
		--em-dur-slow: 0ms;
		--em-reveal-distance: 0px;
	}
}
