/* ==========================================================================
   Lavora — Design Tokens (Single Source of Truth)
   All colour, type, spacing, radius and motion values live here and here only.
   ========================================================================== */

:root {
  /* --- Brand colour: solid tones only, no gradients --- */
  --c-plum: #4E1F38;          /* primary — headings, dark bands, major CTAs */
  --c-rose: #B6597F;          /* secondary — highlights, interactive states */
  --c-taupe: #7c6a72;         /* tertiary — body text, borders, subtle UI */

  /* --- Surfaces: warm neutrals, alternated per section for depth --- */
  --s-blush: #F7ECF1;
  --s-cream: #FBF8F6;
  --s-mauve: #E7D6DE;

  /* --- Functional aliases --- */
  --bg: var(--s-cream);
  --ink: #3A2230;             /* readable near-plum body ink on light */
  --ink-soft: var(--c-taupe);
  --on-dark: #F3E4EC;         /* text on plum bands */
  --on-dark-soft: #C9A9BA;
  --line: rgba(78, 31, 56, 0.14);
  --line-strong: rgba(78, 31, 56, 0.28);
  --line-on-dark: rgba(243, 228, 236, 0.16);

  /* --- Typography: editorial serif display + readable sans body --- */
  --font-display: "Cormorant Garamond", Georgia, "Times New Roman", serif;
  --font-body: "Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;
  --font: var(--font-body);

  --fw-light: 300;
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;
  --fw-xbold: 800;
  --fw-black: 900;

  /* Fluid type scale (serif reads smaller per em → generous display sizing) */
  /* Floor kept low enough that a long word still fits a 360px column */
  --t-hero: clamp(2.05rem, 1.05rem + 4vw, 4.3rem);
  --t-h2: clamp(2.1rem, 1.35rem + 3vw, 3.9rem);
  --t-h3: clamp(1.15rem, 1rem + 0.7vw, 1.45rem);
  --t-lead: clamp(1.05rem, 0.98rem + 0.5vw, 1.3rem);
  --t-body: clamp(1rem, 0.97rem + 0.15vw, 1.1rem);
  --t-small: 0.9rem;
  --t-micro: 0.74rem;

  --lh-tight: 1.02;
  --lh-snug: 1.12;
  --lh-body: 1.75;

  --track-tight: -0.01em;
  --track-normal: 0;
  --track-wide: 0.06em;
  --track-caps: 0.2em;

  /* --- Radius: refined, understated --- */
  --radius-sm: 8px;
  --radius-md: 14px;
  --radius-lg: 22px;
  --radius-pill: 100px;       /* reserved for chips/circular controls only */

  /* --- Spacing scale --- */
  --sp-1: 0.5rem;
  --sp-2: 0.75rem;
  --sp-3: 1rem;
  --sp-4: 1.5rem;
  --sp-5: 2rem;
  --sp-6: 3rem;
  --sp-7: 4rem;
  --sp-8: 6rem;

  --section-pad: clamp(4rem, 5vw, 7rem);
  --gutter: clamp(1.25rem, 4vw, 3rem);
  --col-gap: clamp(2rem, 4vw, 3.5rem);
  --maxw: 1400px;
  --maxw-narrow: 880px;

  /* --- Elevation (soft, plum-tinted, never harsh) --- */
  --shadow-sm: 0 2px 10px rgba(78, 31, 56, 0.06);
  --shadow-md: 0 18px 44px rgba(78, 31, 56, 0.10);
  --shadow-lg: 0 34px 80px rgba(78, 31, 56, 0.16);

  /* --- Motion --- */
  --ease-out: cubic-bezier(0.22, 1, 0.36, 1);
  --ease-inout: cubic-bezier(0.65, 0, 0.35, 1);
  --dur-fast: 0.25s;
  --dur: 0.45s;
  --dur-slow: 0.7s;

  --header-h: 78px;

  /* --- Editorial section marker (approved reference design) --- */
  --t-marker: 0.72rem;
  --marker-rule: 46px;

  /* Soft veil tints used to sit copy over photography without a gradient
     background on the section itself */
  --veil-cream: rgba(251, 248, 246, 0.82);
  --veil-blush: rgba(247, 236, 241, 0.86);
}
