/* ==========================================================================
   TOKENS — Luc Heyse Portfolio
   Source de vérité pour couleurs, typos, espacements, motion.
   ========================================================================== */

:root {
    /* ---- Couleurs (DA moderne/tech) ---- */
    --color-ink:      #0A0A0A;   /* Texte principal */
    --color-paper:    #FAFAFA;   /* Papier tech — Apple/Stripe */
    --color-mute:     #737373;   /* Gris neutre tech */
    --color-line:     #E5E5E5;   /* Filets */
    --color-surface:  #FFFFFF;   /* Surfaces élevées (cards) */

    --color-red:      #C1354C;   /* Rouge officiel charte Luc Heyse (MAIN-LOGO.svg) */
    --color-ochre:    #D4A017;   /* Expertise Comptable — provisoire */
    --color-forest:   #2D5F4C;   /* Domiciliation — provisoire */

    /* Palette étendue du filigrane (extraction visuelle) */
    --f-red:     #E03C50;
    --f-pink:    #F2A2B8;
    --f-coral:   #EC7C60;
    --f-orange:  #F07E2A;
    --f-yellow:  #F1C947;
    --f-lime:    #C2D340;
    --f-green:   #4FA85E;
    --f-teal:    #3FA89C;
    --f-blue:    #2E5FAF;
    --f-navy:    #1E2D5A;
    --f-purple:  #7A3DAE;
    --f-violet:  #A782C7;
    --f-brown:   #6E4A2E;
    --f-olive:   #6B7A2A;
    --f-cream:   #F4ECD8;
    --f-dark:    #2A2A2A;

    /* ---- Typographies ---- */
    --font-display:  'Instrument Serif', 'Times New Roman', Georgia, serif;
    --font-body:     'Inter Tight', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --font-mono:     'JetBrains Mono', ui-monospace, 'SF Mono', monospace;

    /* Échelle typographique */
    --fs-xs:    0.75rem;     /* 12 */
    --fs-sm:    0.875rem;    /* 14 */
    --fs-base:  1rem;        /* 16 */
    --fs-lg:    1.25rem;     /* 20 */
    --fs-xl:    1.75rem;     /* 28 */
    --fs-2xl:   2.5rem;      /* 40 */
    --fs-3xl:   clamp(3rem, 8vw, 6rem);      /* hero display */
    --fs-4xl:   clamp(4rem, 14vw, 10rem);    /* ultra display */

    /* Line-heights */
    --lh-tight:  1.05;
    --lh-snug:   1.25;
    --lh-normal: 1.5;
    --lh-loose:  1.75;

    /* Letter-spacing */
    --ls-tight:  -0.02em;
    --ls-normal: 0;
    --ls-wide:   0.04em;
    --ls-ultra:  0.18em;   /* pour les chapitrages en capitales */

    /* ---- Espacements (échelle 8px) ---- */
    --sp-1: 0.5rem;   /*   8 */
    --sp-2: 1rem;     /*  16 */
    --sp-3: 1.5rem;   /*  24 */
    --sp-4: 2rem;     /*  32 */
    --sp-5: 3rem;     /*  48 */
    --sp-6: 4rem;     /*  64 */
    --sp-7: 6rem;     /*  96 */
    --sp-8: 8rem;     /* 128 */

    /* ---- Layout ---- */
    --max-width: 1440px;
    --gutter: clamp(1.25rem, 4vw, 3rem);

    /* ---- Motion (DA moderne/tech — rapide, précis) ---- */
    --ease-out-expo:     cubic-bezier(0.19, 1, 0.22, 1);
    --ease-in-out-quart: cubic-bezier(0.77, 0, 0.175, 1);
    --ease-out-cubic:    cubic-bezier(0.215, 0.61, 0.355, 1);
    --ease-out-quint:    cubic-bezier(0.23, 1, 0.32, 1);

    --dur-fast:   200ms;
    --dur-base:   400ms;
    --dur-slow:    800ms;
    --dur-intro: 2500ms;

    /* ---- Effets ---- */
    --shadow-soft: 0 1px 2px rgba(10,10,10,0.04), 0 8px 24px rgba(10,10,10,0.06);
    --radius-sm: 4px;
    --radius-md: 8px;
    --radius-lg: 16px;
}

/* Thème sombre (préparation — pas activé en MVP) */
@media (prefers-color-scheme: dark) {
    :root {
        /* réservé pour V2 */
    }
}
