/* VowLane landing page - design tokens */
/* Single source of color and type for the whole page. */
/* Provisional Champagne minimal palette. A later brand pass is a value swap */
/* in this file only. main.css and scripts consume these names, never a raw */
/* hex value. Mirror pointer: styles/main.css reads only var(--token). */

:root{
  /* Color - surfaces */
  --color-page: #FAF5EC;
  --color-surface: #FFFFFF;

  /* Color - ink (text) */
  --color-ink: #35312A;
  --color-ink-soft: #6B6459;
  --color-ink-hover: #4A453B;      /* dark button hover only */

  /* Color - accent (champagne gold) */
  --color-accent: #B08D57;         /* decorative rules, ticks, wordmark, non-text */
  --color-accent-deep: #7A5F30;    /* accessible carrier: small text, links, hero word, focus ring */
  --color-accent-soft: #E8DAC1;    /* soft focus glow, tints */

  /* Color - lines and hints */
  --color-line: #E4D9C4;           /* hairlines, field and card borders */
  --color-placeholder: #7A7264;    /* input placeholder, meets AA 4.5:1 on surface */

  /* Color - feedback */
  --color-error: #A33C28;          /* invalid state border and message, meets AA 4.5:1 on page */

  /* Type */
  --font-display: 'Newsreader', Georgia, serif;
  --font-body: 'Plus Jakarta Sans', system-ui, sans-serif;

  /* Fluid type scale (fluid 320px to 1600px, then locked). */
  /* Each max equals the prior fixed size, so desktop stays pixel-stable. */
  --text-body:          clamp(0.9688rem, calc(0.9454rem + 0.1171vw), 1.0625rem); /* 15.5 -> 17 */
  --text-eyebrow:       clamp(0.7188rem, calc(0.7032rem + 0.0780vw), 0.7812rem); /* 11.5 -> 12.5 */
  --text-wordmark:      clamp(1.25rem,   calc(1.2031rem + 0.2344vw), 1.4375rem); /* 20 -> 23 */
  --text-wordmark-foot: clamp(1.0625rem, calc(1.0312rem + 0.1562vw), 1.1875rem); /* 17 -> 19 */
  --text-nav:           clamp(0.8438rem, calc(0.8282rem + 0.0780vw), 0.9062rem); /* 13.5 -> 14.5 */
  --text-card-label:    clamp(0.7188rem, calc(0.7032rem + 0.0780vw), 0.7812rem); /* 11.5 -> 12.5 */
  --text-card-body:     clamp(0.9375rem, calc(0.9219rem + 0.0781vw), 1rem);      /* 15 -> 16 */
  --text-micro:         clamp(0.7812rem, calc(0.7655rem + 0.0782vw), 0.8438rem); /* 12.5 -> 13.5 */
  --text-footer:        clamp(0.7812rem, calc(0.7655rem + 0.0782vw), 0.8438rem); /* 12.5 -> 13.5 */

  /* Elevation */
  --shadow-card: 0 14px 34px rgba(53, 49, 42, 0.08);

  /* Layout scale */
  --measure: 64rem;
  --measure-prose: 68ch; /* long-form reading measure, ~60-70ch target */

  /* Fluid space scale (fluid 320px to 1600px, then locked). */
  /* Each max equals the prior fixed padding value. */
  --space-inline:    clamp(2rem,     calc(1.8750rem + 0.6250vw), 2.5rem);  /* .wrap x-padding */
  --space-topbar:    clamp(1.25rem,  calc(1.1875rem + 0.3125vw), 1.5rem);  /* topbar y */
  --space-grid-gap:  clamp(1rem,     calc(0.9375rem + 0.3125vw), 1.25rem); /* card gap */
  --space-footer-y:  clamp(2rem,     calc(1.8750rem + 0.6250vw), 2.5rem);  /* footer y */
  --space-block-m:   clamp(3rem,     calc(2.6250rem + 1.8750vw), 4.5rem);  /* hero top, thesis, closing bottom */
  --space-block-l:   clamp(3.5rem,   calc(3.1250rem + 1.8750vw), 5rem);    /* hero bottom, sides top */
  --space-block-xl:  clamp(3.75rem,  calc(3.3125rem + 2.1875vw), 5.5rem);  /* closing top */
}
