/* ============================================================
   JT Consulting — design tokens
   Single source of truth. Loaded before every other stylesheet.
   Plain CSS, no build step.
   ============================================================ */

:root {
  /* ---------- Surface ---------- */
  --ink:        #0A0A0A;
  --ink-soft:   #161616;
  --ink-line:   rgba(255,255,255,.14);
  --bone:       #F6EEDB;              /* warm cream — site light bg */
  --bone-soft:  #EFE3C9;              /* raised card fill on cream */
  --bone-line:  rgba(10,10,10,.10);
  --bone-rule:  rgba(10,10,10,.20);   /* hairline dividers */
  --bone-grid:  rgba(10,10,10,.05);   /* 28px graph-paper grid */

  /* ---------- Foreground ---------- */
  --fg-dark:    #F6EEDB;              /* on ink */
  --fg-dark-m:  rgba(246,238,219,.72);
  --fg-light:   #0A0A0A;              /* on cream */
  --fg-light-m: rgba(10,10,10,.68);

  /* ---------- Accent ----------
     --accent      9.6:1 on ink, 1.9:1 on cream -> ink panels + large display only
     --accent-deep 3.1:1 on cream               -> large text >=24px only
     --accent-text 5.3:1 on cream               -> the only gold safe for body copy   */
  --accent:      #E8A94B;
  --accent-deep: #B47E24;
  --accent-text: #7A5E1A;

  /* ---------- Type ---------- */
  --ff-display: 'DM Sans', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --ff-body:    'Source Sans 3', 'Segoe UI', Calibri, sans-serif;

  --text-sm:    0.875rem;
  --text-base:  clamp(1rem, .96rem + .2vw, 1.0625rem);
  --text-lg:    clamp(1.125rem, 1.05rem + .35vw, 1.3125rem);
  --text-h3:    clamp(1.25rem, 1.14rem + .5vw, 1.5rem);
  --text-h2:    clamp(1.75rem, 1.45rem + 1.4vw, 2.5rem);
  --text-price: clamp(2rem, 1.6rem + 1.9vw, 3rem);
  --text-hero:  clamp(3.1rem, 1.1rem + 8.6vw, 7rem);

  --measure:    62ch;

  /* ---------- Space ---------- */
  --space-2:    8px;
  --space-3:    12px;
  --space-4:    16px;
  --space-6:    24px;
  --space-8:    32px;
  --space-section: clamp(48px, 4vw + 32px, 88px);
  --tile-gap:   24px;

  /* ---------- Line ---------- */
  --rule-hair:  1px solid var(--bone-rule);
  --rule-bold:  2px solid var(--ink);

  /* ---------- Motion ---------- */
  --duration-fast:   150ms;
  --duration-normal: 300ms;
  --easing:          cubic-bezier(.22,1,.36,1);
  --ease-out-expo:   cubic-bezier(.16,1,.3,1);

  /* ---------- Layout ---------- */
  --sheet-max: 980px;
  --wrap-max:  1320px;
}
