/*
  Design tokens — Heritage
  Palette drawn from the Vinodol hills above Ledenice: limestone, olive,
  terracotta roof tile, and the deep teal of the Adriatic below.
  Edit values here to re-theme the whole site.
*/

:root {
  /* Color */
  --color-bg: #f3eee3;          /* limestone / sand */
  --color-bg-alt: #eae1d0;      /* dry stone, slightly warmer */
  --color-surface: #ffffff;
  --color-ink: #1f2e2a;         /* pine-dark, near-black */
  --color-ink-soft: #48584f;    /* muted body text */
  --color-primary: #56715f;     /* olive / sage green, hillside */
  --color-primary-dark: #33463a;
  --color-accent: #b9673e;      /* terracotta roof tile */
  --color-accent-soft: #d9b193;
  --color-sea: #2f5c63;         /* deep Adriatic teal */
  --color-line: #d9cfba;        /* hairline rules */
  --color-line-strong: #b9ac8e;

  /* Type */
  --font-display: "Fraunces", Georgia, serif;
  --font-body: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;
  --font-mono: "IBM Plex Mono", ui-monospace, monospace;

  /* Fluid type scale — clamp(min, preferred, max) so headings scale
     continuously between narrow phones and wide desktops instead of
     jumping at breakpoints. */
  --size-xs: 0.75rem;
  --size-sm: 0.9375rem;
  --size-base: 1rem;
  --size-md: clamp(1rem, 0.94rem + 0.3vw, 1.125rem);
  --size-lg: clamp(1.25rem, 1.1rem + 0.75vw, 1.5rem);
  --size-xl: clamp(1.4rem, 1.1rem + 1.5vw, 2.25rem);
  --size-2xl: clamp(1.75rem, 1.3rem + 2.25vw, 3.25rem);
  --size-3xl: clamp(2.25rem, 1.5rem + 3.75vw, 4.5rem);

  /* Space — fluid where it scales page rhythm, fixed where it's a
     small, purely local gap. */
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 1rem;
  --space-4: 1.5rem;
  --space-5: clamp(1.75rem, 1.4rem + 1.75vw, 2.5rem);
  --space-6: clamp(2.5rem, 1.8rem + 3.5vw, 4rem);
  --space-7: clamp(3rem, 2rem + 5vw, 6rem);
  --space-8: clamp(3.5rem, 1.5rem + 10vw, 9rem);

  /* Shape */
  --radius-sm: 2px;
  --radius-md: 4px;
  --radius-lg: 10px;
  --container-max: 72rem;
  --edge-pad: clamp(1.25rem, 5vw, 4rem);

  /* Elevation — used sparingly (nearby cards) against the otherwise flat,
     hairline-bordered surfaces elsewhere on the site. */
  --shadow-card: 0 1px 2px rgba(31, 46, 42, 0.06), 0 10px 26px -14px rgba(31, 46, 42, 0.22);
  --shadow-card-hover: 0 4px 10px rgba(31, 46, 42, 0.08), 0 18px 34px -14px rgba(31, 46, 42, 0.28);

  /* Motion */
  --ease-calm: cubic-bezier(0.22, 1, 0.36, 1);
  --dur-fast: 200ms;
  --dur-med: 500ms;
  --dur-slow: 1200ms;
}
