/* ==========================================================================
   Hyphen - variables.css
   Variables globales : couleurs, typographie, espacements, layout et effets.
   ========================================================================== */

:root {
  /* -----------------------------------------------------------------------
     Couleurs principales
     ----------------------------------------------------------------------- */

  --color-primary: #32514b;
  --color-primary-dark: #2a3b33;
  --color-primary-light: #edf3f1;

  --color-secondary: #debc49;
  --color-secondary-dark: #b89425;
  --color-secondary-light: #fbf4d6;

  --color-accent: #debc49;
  --color-accent-light: #fbf4d6;

  /* -----------------------------------------------------------------------
     Couleurs neutres
     ----------------------------------------------------------------------- */

  --color-white: #ffffff;
  --color-black: #111111;

  --color-background: #ffffff;
  --color-surface: #ffffff;
  --color-surface-soft: #f7f5ef;
  --color-surface-muted: #eee9dc;

  --color-text: #2a3b33;
  --color-text-muted: #5f6f68;
  --color-text-light: #ffffff;

  --color-border: #d9d4c4;
  --color-border-strong: #bdb49a;

  /* -----------------------------------------------------------------------
     États et messages
     ----------------------------------------------------------------------- */

  --color-success: #32514b;
  --color-success-light: #edf3f1;

  --color-warning: #8a6500;
  --color-warning-light: #fbf4d6;

  --color-error: #9b2c2c;
  --color-error-light: #fbe6e6;

  --color-info: #32514b;
  --color-info-light: #edf3f1;

  /* -----------------------------------------------------------------------
     Typographie
     ----------------------------------------------------------------------- */

  --font-sans: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
  --font-serif: Georgia, "Times New Roman", serif;

  --font-size-xs: 0.8125rem;   /* 13px */
  --font-size-sm: 0.9375rem;   /* 15px */
  --font-size-base: 1.125rem;  /* 18px */
  --font-size-md: 1.25rem;     /* 20px */
  --font-size-lg: 1.5rem;      /* 24px */
  --font-size-xl: 2rem;        /* 32px */
  --font-size-2xl: 2.5rem;     /* 40px */
  --font-size-3xl: 3.25rem;    /* 52px */

  --line-height-tight: 1.15;
  --line-height-normal: 1.55;
  --line-height-relaxed: 1.75;

  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;

  /* -----------------------------------------------------------------------
     Espacements
     ----------------------------------------------------------------------- */

  --space-2xs: 0.25rem;  /* 4px */
  --space-xs: 0.5rem;    /* 8px */
  --space-sm: 0.75rem;   /* 12px */
  --space-md: 1rem;      /* 16px */
  --space-lg: 1.5rem;    /* 24px */
  --space-xl: 2rem;      /* 32px */
  --space-2xl: 3rem;     /* 48px */
  --space-3xl: 4rem;     /* 64px */
  --space-4xl: 6rem;     /* 96px */

  /* -----------------------------------------------------------------------
     Layout
     ----------------------------------------------------------------------- */

  --container-width: 1180px;
  --container-width-narrow: 820px;
  --container-padding: 1.25rem;

  --section-padding-block: 5rem;
  --section-padding-block-sm: 3rem;

  --header-height: 5rem;

  /* -----------------------------------------------------------------------
     Rayons et ombres
     ----------------------------------------------------------------------- */

  --radius-sm: 0.375rem;
  --radius-md: 0.75rem;
  --radius-lg: 1.25rem;
  --radius-xl: 1.75rem;
  --radius-pill: 999px;

  --shadow-sm: 0 2px 8px rgb(42 59 51 / 0.08);
  --shadow-md: 0 8px 24px rgb(42 59 51 / 0.10);
  --shadow-lg: 0 18px 48px rgb(42 59 51 / 0.14);

  /* -----------------------------------------------------------------------
     Bordures et focus
     ----------------------------------------------------------------------- */

  --border-width: 1px;
  --border-width-strong: 2px;

  --focus-outline-width: 3px;
  --focus-outline-color: #debc49;
  --focus-outline-offset: 3px;

  /* -----------------------------------------------------------------------
     Transitions
     ----------------------------------------------------------------------- */

  --transition-fast: 150ms ease;
  --transition-base: 220ms ease;
  --transition-slow: 350ms ease;

  /* -----------------------------------------------------------------------
     Z-index
     ----------------------------------------------------------------------- */

  --z-base: 1;
  --z-header: 10;
  --z-overlay: 20;
  --z-modal: 30;
}

@media (max-width: 768px) {
  :root {
    --font-size-base: 1rem;
    --font-size-md: 1.125rem;
    --font-size-lg: 1.375rem;
    --font-size-xl: 1.75rem;
    --font-size-2xl: 2.125rem;
    --font-size-3xl: 2.5rem;

    --section-padding-block: 3.5rem;
    --section-padding-block-sm: 2.5rem;

    --container-padding: 1rem;
  }
}