/* ==========================================================================
   Design tokens — RPS Imaging × Studio Harcourt
   Un plateau photo noir : le halo de lumière est la signature Harcourt,
   les portraits sont présentés comme des tirages, l'or reste rare
   (CTA principal, sur-titres, chiffres, filets) et le rouge velours
   marque les états actifs.
   ========================================================================== */
:root{
  /* Couleurs */
  --noir:#0c0b0a; --noir-2:#151311; --noir-3:#1d1a17; --noir-4:#080707;
  --papier:#f2ece2; --papier-2:#d9d1c4;
  --gris:#a59d92; --gris-2:#8c847a;
  --ligne:rgba(242,236,226,.13); --ligne-2:rgba(242,236,226,.24); --ligne-3:rgba(242,236,226,.42);
  --or:#c9a45c; --or-2:#e2c487;
  --or-ligne:rgba(201,164,92,.28); --or-voile:rgba(201,164,92,.08);
  --velours:#a3121d; --velours-2:#6e0d14;
  --velours-vif:#cf2531; /* même rouge, plus lumineux : filets d'état actif lisibles sur le noir (3,7:1) */
  /* Étalonnage commun des photos couleur de situation (les portraits N&B et les tirages ne sont pas concernés) */
  --grade-couleur:saturate(.84) contrast(1.04) brightness(.94);

  /* Typographie */
  --display:"Bodoni Moda","Didot","Bodoni 72",Georgia,serif;
  --body:"Jost","Futura","Avenir Next","Segoe UI",system-ui,sans-serif;
  --cond:"Bebas Neue","Oswald","Arial Narrow",Impact,sans-serif;
  --fs-xs:.74rem; --fs-sm:.88rem; --fs-base:1rem; --fs-lede:1.12rem;
  --fs-h4:1.2rem; --fs-h3:1.45rem; --fs-h-card:2rem; --fs-h2:clamp(1.9rem,4vw,3rem);
  --fs-h-page:clamp(2.2rem,5vw,3.6rem); --fs-h1:clamp(2.4rem,6vw,4.6rem);
  --tr-eyebrow:.36em; --tr-caps:.22em; --tr-btn:.18em;

  /* Espacements (base 4) */
  --s-1:4px; --s-2:8px; --s-3:12px; --s-4:16px; --s-5:24px; --s-6:32px; --s-7:48px; --s-8:64px; --s-9:96px;
  --band:clamp(56px,8vw,104px);
  --gutter:max(16px,env(safe-area-inset-left,0px));
  --header-h:74px;

  /* Ratios d'image */
  --ar-portrait:2/3; --ar-edito:4/5; --ar-scene:3/2; --ar-cine:2/1;

  /* Ombres */
  --sh-print:0 40px 80px -20px rgba(0,0,0,.8);
  --sh-photo:0 50px 90px -30px rgba(0,0,0,.9);

  /* Forme et mouvement */
  --r:2px;
  --ease:cubic-bezier(.2,.7,.2,1);
  --dur-1:.25s; --dur-2:.45s; --dur-3:.8s;

  color-scheme:dark;
}
/* Mobile : petits textes à 14 px (interlettrage resserré pour garder la même longueur), en-tête plus bas */
@media (max-width:760px){:root{--fs-xs:.875rem;--tr-eyebrow:.24em;--tr-caps:.16em;--tr-btn:.14em;--header-h:62px}}
