/* Design tokens — single source of truth */
:root {
  /* Brand colors */
  --c-red: #e23b3b;            /* signature workshop red — decorative / large areas */
  --c-red-dark: #b32121;       /* interactive red — AA-safe with white text */
  --c-red-darker: #8f1a1a;     /* hover/active */
  --c-bg: #fbf3de;             /* warm cream background (matches header image) */
  --c-bg-deep: #f3e7cf;        /* slightly deeper cream for alternating bands */
  --c-panel: #f2f3f5;          /* light gray panels */
  --c-text: #003049;           /* navy body text */
  --c-text-soft: #51677a;      /* muted text (soft navy) */
  --c-navy: #003049;           /* deep anchor — headings, dark sections */
  --c-navy-soft: #0a3a55;      /* hover for navy surfaces */
  --c-blue: #669bbc;           /* steel blue — decorative only (not text) */
  --c-blue-soft: #e4eef4;      /* light blue tint — decorative backgrounds */
  --c-green: #4c8c4a;          /* kutilství / available status */
  --c-green-soft: #e6f0e2;
  --c-amber: #b9772a;          /* "borrowed" status (text-safe) */
  --c-amber-soft: #f6ead7;
  --c-link: #b32121;           /* interactive red — text links */
  --c-white: #ffffff;
  --c-border: #e3d8c4;

  /* Typography */
  --font-head: "Urbanist", system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-body: "Geist", system-ui, -apple-system, "Segoe UI", sans-serif;

  /* Fluid type scale: clamp(min, preferred, max) */
  --step--1: clamp(0.875rem, 0.84rem + 0.18vw, 0.95rem);
  --step-0: clamp(1rem, 0.95rem + 0.3vw, 1.125rem);
  --step-1: clamp(1.2rem, 1.08rem + 0.6vw, 1.5rem);
  --step-2: clamp(1.5rem, 1.25rem + 1.25vw, 2.1rem);
  --step-3: clamp(1.95rem, 1.5rem + 2.2vw, 2.9rem);
  --step-4: clamp(2.4rem, 1.7rem + 3.4vw, 3.8rem);

  /* Spacing scale */
  --space-3xs: 0.25rem;
  --space-2xs: 0.5rem;
  --space-xs: 0.75rem;
  --space-s: 1rem;
  --space-m: 1.5rem;
  --space-l: 2.5rem;
  --space-xl: 4rem;
  --space-2xl: 6rem;

  /* Radii & shadows */
  --radius-s: 8px;
  --radius: 14px;
  --radius-l: 22px;
  --radius-pill: 999px;
  --shadow-s: 0 2px 6px rgba(51, 56, 64, 0.08);
  --shadow-m: 0 10px 30px rgba(51, 56, 64, 0.12);
  --shadow-l: 0 22px 60px rgba(51, 56, 64, 0.16);

  /* Layout */
  --measure: 65ch;
  --container: 1120px;
  --container-narrow: 760px;

  /* Motion */
  --ease: cubic-bezier(0.22, 0.61, 0.36, 1);
  --dur: 0.35s;
}
