/* Colour. Hex anchors from the brand brief; authored in OKLCH. The seven tokens are unchanged —
   what changed is where they sit, and paper is now a true off-white rather than a beige.
   The site opens WARM-DARK on espresso; paper is the body. Vista is a single mid-page block, not
   the first thing you see — a large cold blue field read as tech, not hospitality.
   Buttermilk is used SPARINGLY, as the brief demands: small marks and one thin band, never as a
   full section field.
   Verified contrast (sRGB, 4.5:1 floor for text):
     buttermilk on espresso 10.9  paper on espresso 11.7  espresso on paper 11.7
     espresso on buttermilk 10.9  espresso on powder 8.6  espresso on vista 4.6
     mocha on paper 6.7           ember on paper 5.2      ember on buttermilk 4.9
   FAILS as text — never use: paper on vista 2.5, buttermilk on vista 2.3. */
:root {
  /* base palette */
  --espresso: oklch(33.0% 0.028 25.5); /* @kind color */      /* #43302E */
  --vista: oklch(70.0% 0.084 252.3); /* @kind color */        /* #78A2D2 */
  --powder: oklch(87.6% 0.033 229.3); /* @kind color */       /* #C1DBE8 */
  --buttermilk: oklch(95.5% 0.078 96.5); /* @kind color */    /* #FFF1B5 */
  /* A TRUE off-white. Two failure modes were measured and avoided: chroma 0.022 at hue 92 reads
     as BEIGE (the saturated default of the moment), and chroma 0.005 at espresso's own hue 25
     reads as PINK at this lightness. What is left is near-zero chroma at a neutral-warm hue —
     imperceptibly warm, unmistakably white. Warmth is carried by the accents, the type and the
     photography, never by the body surface. */
  --paper: oklch(97.8% 0.002 65); /* @kind color */
  --mocha: oklch(46.8% 0.039 37.1); /* @kind color */         /* #6E534B */
  --ember: oklch(53.7% 0.150 33.0); /* @kind color */         /* #B4442E */

  /* derived — warm depth without a new hue */
  --espresso-deep: color-mix(in oklab, var(--espresso) 88%, black); /* @kind color */
  --espresso-lift: color-mix(in oklab, var(--espresso) 88%, var(--mocha)); /* @kind color */
  --paper-warm: oklch(95.2% 0.004 65); /* @kind color */      /* one faint step down, still neutral */
  --buttermilk-soft: color-mix(in oklab, var(--buttermilk) 40%, var(--paper)); /* @kind color */
  --espresso-12: color-mix(in oklab, var(--espresso) 12%, transparent); /* @kind color */
  --mocha-34: color-mix(in oklab, var(--mocha) 34%, transparent); /* @kind color */
  --mocha-18: color-mix(in oklab, var(--mocha) 18%, transparent); /* @kind color */
  --paper-70: color-mix(in oklab, var(--paper) 70%, transparent); /* @kind color */
  --paper-24: color-mix(in oklab, var(--paper) 24%, transparent); /* @kind color */
  --buttermilk-70: color-mix(in oklab, var(--buttermilk) 70%, transparent); /* @kind color */
  --powder-tint: color-mix(in oklab, var(--powder) 60%, transparent); /* @kind color */

  /* semantic — surfaces */
  --surface-page: var(--paper); /* @kind color */
  --surface-hero: var(--espresso); /* @kind color */          /* the opening field: warm, deep */
  --surface-warm: var(--paper-warm); /* @kind color */        /* alternating body band */
  --surface-accent: var(--buttermilk); /* @kind color */      /* small doses and ONE thin band only */
  --surface-cool: var(--vista); /* @kind color */             /* ONE block, mid-page */
  --surface-field-deep: var(--espresso); /* @kind color */
  --surface-field-soft: var(--powder); /* @kind color */
  --surface-card: var(--paper); /* @kind color */
  --surface-frame: var(--powder); /* @kind color */
  --surface-frame-alt: var(--buttermilk); /* @kind color */
  --surface-inquiry: var(--paper-warm); /* @kind color */

  /* semantic — text */
  --text-body: var(--espresso); /* @kind color */
  --text-muted: var(--mocha); /* @kind color */
  --text-display: var(--espresso); /* @kind color */
  --text-on-deep: var(--paper); /* @kind color */
  --text-display-on-deep: var(--buttermilk); /* @kind color */ /* the hero pairing, 10.9:1 */
  --text-on-field-body: var(--espresso); /* @kind color */
  --text-label: var(--mocha); /* @kind color */
  --text-label-on-deep: var(--buttermilk-70); /* @kind color */
  --text-accent: var(--ember); /* @kind color */

  /* semantic — lines, marks, states */
  --border-hairline: var(--mocha-34); /* @kind color */
  --border-hairline-soft: var(--mocha-18); /* @kind color */
  --border-on-deep: var(--paper-24); /* @kind color */
  --rule-accent: var(--ember); /* @kind color */
  --focus-ring: var(--vista); /* @kind color */
  --focus-ring-on-deep: var(--buttermilk); /* @kind color */
  --state-hover-soft: var(--buttermilk-soft); /* @kind color */
  --image-tint: var(--buttermilk); /* @kind color */
}
