/* ============================================================
   LINNEBEL — Design Tokens
   The single source of truth for the whole site.
   Every page (homepage, ESSENTIA, opt-ins…) builds on these.
   Direction: "Golden Hour Editorial" — warm cream gallery,
   oversized Fraunces serif, one flame/sunset color moment.
   ============================================================ */

:root {
  /* ---- Color ------------------------------------------------ */
  --cream:      #FBF4EA;  /* page ground */
  --sand:       #F3E7D6;  /* tinted surface (warm) */
  --blush:      #F9DCCD;  /* tinted surface (pink) */
  --ink:        #26160D;  /* primary text, dark sections */
  --ink-soft:   #3D2A1E;  /* dark section elevated surface */
  --clay:       #7A6252;  /* muted text on light (AA on cream) */
  --bone:       #EDE1D0;  /* muted text on ink (AA on ink) */
  --hairline:   rgba(38, 22, 13, 0.16);
  --hairline-inv: rgba(251, 244, 234, 0.22);

  /* The one strong color. Use with intent, not everywhere. */
  --flame:      #E8430D;  /* display accents, large type only */
  --flame-deep: #C43305;  /* buttons / small text — AA with cream */
  --rose:       #F0608F;  /* sunset gradient partner — never body text */
  --rose-soft:  #F6D5D2;  /* baby-pink surface (statement section) */
  --rose-deep:  #B4535E;  /* dusty rose — display accents on rose-soft */
  --terracotta: #EF9D68;  /* sunlit orange surface (newsletter) — from the ESSENTIA watercolor washes */

  --dawn:       #F4D4B2;  /* ESSENTIA dawn surface — from the logo's watercolor */
  --dawn-deep:  #7C3A1D;  /* text on dawn — AA */

  --black:      #0C0A09;  /* footer ground — true black, warm cast */
  --black-soft: #211C18;  /* ghost elements on black */

  /* ---- Typography ------------------------------------------- */
  --font-display: "Fraunces", "Georgia", serif;
  --font-body: "Instrument Sans", "Helvetica Neue", sans-serif;
  --font-mono: "Courier Prime", "Courier New", monospace;

  /* Fluid type scale */
  --text-hero:    clamp(3rem, 9.5vw, 8.5rem);      /* H1 */
  --text-giant:   clamp(2.6rem, 7vw, 6.2rem);      /* big statements */
  --text-h2:      clamp(2.2rem, 5.2vw, 4.4rem);
  --text-h3:      clamp(1.55rem, 3vw, 2.4rem);
  --text-lede:    clamp(1.1rem, 1.6vw, 1.35rem);
  --text-body:    1.0625rem;
  --text-small:   0.9375rem;
  --text-label:   0.75rem;

  --leading-display: 0.98;
  --leading-tight:   1.08;
  --leading-body:    1.65;

  --track-label: 0.18em;

  /* ---- Space ------------------------------------------------ */
  --space-section: clamp(6rem, 12vw, 11rem);   /* between sections */
  --space-group:   clamp(2.5rem, 5vw, 4rem);   /* between groups */
  --space-el:      1.25rem;                    /* between elements */
  --gutter:        clamp(1.25rem, 4vw, 3rem);
  --container:     84rem;

  /* ---- Misc -------------------------------------------------- */
  --radius-pill: 999px;
  --radius-photo: 2px;
  --ease-out: cubic-bezier(0.22, 1, 0.36, 1);
  --speed-micro: 180ms;
  --speed-reveal: 700ms;
}
