/* ==========================================================================
   Design tokens — GuidesUnited
   A deep forest/teal primary (trust, "guide-first"), warm paper neutrals,
   and a single warm gold accent reserved for calls-to-action, ratings and
   the "you earn / platform fee" price breakdown. Deliberately its own
   palette — distinct from any reference site's brand colors.
   ========================================================================== */

:root {
  /* Brand */
  --color-primary: #16443c;
  --color-primary-light: #2c6e5f;
  --color-primary-dark: #0e2f29;

  --color-accent: #c08a2e;
  /* The accent, deepened until white text clears AA on it. Buttons only —
     --color-accent stays as-is for stars, price highlights and the logo,
     none of which are failing anything.
     Why not just put dark text on --color-accent? It passes on paper
     (5.25:1) but reads muddy: a mid-dark amber under near-black ink is
     dark-on-dark to the eye, whatever the ratio says. Contrast maths
     scores legibility, not whether a colour pairing looks right. */
  --color-accent-btn: #8a5f18;
  --color-accent-btn-hover: #7d5615;
  --color-accent-light: #e8b84b;

  /* The logo's own colours, and only the logo's.
     They repeat the palette above rather than referring to it, on
     purpose: --color-primary is a theme value and the mark is not
     themable. An embedded tour page lets a guide set their accent
     colour, which reassigns --color-primary for everything on it — and
     the first thing that did was repaint our pin in somebody else's
     brand. A logo that changes colour with its surroundings is not a
     logo. */
  --brand-primary: #16443c;
  --brand-primary-light: #2c6e5f;
  --brand-primary-dark: #0e2f29;
  --brand-accent: #c08a2e;
  --brand-accent-light: #e8b84b;
  --brand-paper: #fbf9f4;
  /* 4.62:1 on #f7ecd9, the tint behind .badge-accent / .badge-pending /
     .icon-badge-accent — the only backgrounds this is ever set against.
     Was #97691f, which scored 4.12 there: badge text is small, so 4.5 is
     the bar it has to clear, not 3.0. */
  --color-accent-dark: #8f6117;

  /* Neutrals */
  --color-ink: #1a2420;
  --color-body: #3c453f;
  /* 5.67:1 on --color-paper, 4.98:1 on --color-sand. The previous
     #6b7770 was 4.44:1 and 3.90:1 — under AA on both, and .text-muted
     is routinely paired with .text-small (14px), so the large-text
     exemption never applied. */
  --color-muted: #5c665f;
  --color-paper: #fbf9f4;
  --color-surface: #ffffff;
  --color-sand: #f0eae0;
  /* Decorative rules and card edges. 1.29:1 on paper — deliberately
     quiet, and fine for a divider, which WCAG 1.4.11 does not cover. */
  --color-border: #e3ddd0;
  /* The boundary of anything a user has to find and operate: inputs,
     selects, textareas. 1.4.11 wants 3:1 for that and the decorative tone
     above is nowhere near it. 3.46:1 on paper, 3.64:1 on white and
     3.04:1 on sand — the sand case is what sets the value, since a form
     field can sit on any of the three. Kept as a separate token rather
     than darkening --color-border, which would coarsen every card on the
     site to fix a form-field problem. */
  --color-border-interactive: #90856e;

  /* Semantic */
  /* 4.63:1 on --color-success-bg (was #2f7d5c at 4.44) — .alert-success
     and .badge-verified put this on that tint at body and badge size. */
  --color-success: #2c7a59;
  --color-success-bg: #eaf4ee;
  --color-danger: #b3452c;
  --color-danger-bg: #fbebe6;
  --color-warning: #8a5a12;
  --color-warning-bg: #fbf1de;
  --color-star: #e8b84b;

  /* Type scale */
  --font-serif: Georgia, "Iowan Old Style", "Palatino Linotype", serif;
  --font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;

  /* Spacing (4px base) */
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.5rem;
  --space-6: 2rem;
  --space-8: 3rem;
  --space-10: 4rem;
  --space-12: 6rem;

  /* Shape */
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 16px;
  --radius-pill: 999px;

  /* Elevation */
  --shadow-sm: 0 1px 2px rgba(26, 36, 32, 0.06), 0 1px 3px rgba(26, 36, 32, 0.08);
  --shadow-md: 0 4px 12px rgba(26, 36, 32, 0.08), 0 2px 4px rgba(26, 36, 32, 0.06);
  --shadow-lg: 0 12px 32px rgba(26, 36, 32, 0.14);

  --content-max-width: 1200px;
}
