/* css/tokens.css: every design token, named by role. The palette is sampled from the couple's
   invitation photo (assets/src/invitation-reference.webp): the linen table, the cream card, the
   olive panels, the blush seal. Change a colour here, never in styles.css. */

@font-face {
  font-family: "Cormorant";
  src: url("/assets/fonts/cormorant.woff2") format("woff2");
  font-weight: 300 700;
  font-style: normal;
  font-display: block;   /* preloaded and self-hosted: the text waits for its face rather than changing shape after it shows */
}
@font-face {
  font-family: "Cormorant";
  src: url("/assets/fonts/cormorant-italic.woff2") format("woff2");
  font-weight: 300 700;
  font-style: italic;
  font-display: block;   /* preloaded and self-hosted: the text waits for its face rather than changing shape after it shows */
}
/* the card's informational lines (the couple's feedback, 2026-10-17): Libre Baskerville, variable 400-700, latin */
@font-face {
  font-family: "Libre Baskerville";
  src: url("/assets/fonts/libre-baskerville.woff2") format("woff2");
  font-weight: 400 700;
  font-style: normal;
  font-display: block;   /* preloaded and self-hosted: the text waits for its face rather than changing shape after it shows */
}

:root {
  /* surfaces */
  --linen: #e7ddcf;         /* the table the invitation lies on */
  --linen-light: #f3ebe0;   /* where the light falls on it */
  --paper: #f5f0e6;         /* the invitation card */
  --paper-edge: #e9e2d4;    /* the card's shaded edge */
  --panel: #717a56;         /* the olive gatefold (only where the photo is not shown) */
  --base: #5c6444;          /* the olive board the card is mounted on, seen beside the open card */

  /* ink */
  --olive: #4a5233;         /* headings, names */
  --olive-soft: #596240;    /* small labels, rules: 4.6:1 on the linen */
  --ink: #3a3a2c;           /* body copy */
  --ink-soft: #5e5b4e;      /* secondary copy: 5:1 on the linen */
  --line: rgba(74, 82, 51, .22);

  /* the seal */
  --blush: #e9cfc4;
  --blush-deep: #d9b0a3;
  --wine: #6b2a32;

  /* shadows are warm on linen: every shadow mixes this rgb */
  --shadow-rgb: 66, 50, 32;

  /* type */
  --serif: "Cormorant", "Cormorant Garamond", Garamond, "Times New Roman", serif;
  --serif-2: "Libre Baskerville", Baskerville, "Times New Roman", serif;   /* the card's informational lines */
  --track-caps: .18em;
  --track-wide: .32em;

  /* rhythm */
  --gutter: clamp(20px, 5vw, 48px);
  --section-y: clamp(88px, 14vw, 160px);
  --measure: 620px;
  --radius: 2px;

  /* motion */
  --ease-out: cubic-bezier(.22, .61, .36, 1);
  --ease-gate: cubic-bezier(.65, 0, .22, 1);
}
