/* Hallmark · genre: atmospheric · macrostructure: Photographic · theme: custom
 * vibe: "infrared silicon at night, copper wiring"
 * paper oklch(15% 0.008 250) · accent oklch(74% 0.13 52) copper · Archivo Expanded + Switzer · outlier IBM Plex Mono
 * axes: dark / geometric-sans / warm · enrichment: real photograph (CC0 infrared die shot) · nav: N9 · footer: Ft5
 */
@font-face { font-family: "Archivo"; src: url("../fonts/archivo-normal-100-900.woff2") format("woff2"); font-weight: 100 900; font-stretch: 62% 125%; font-style: normal; font-display: swap; }
@font-face { font-family: "Switzer"; src: url("../fonts/switzer-normal-300.woff2") format("woff2"); font-weight: 300; font-display: swap; }
@font-face { font-family: "Switzer"; src: url("../fonts/switzer-normal-400.woff2") format("woff2"); font-weight: 400; font-display: swap; }
@font-face { font-family: "Switzer"; src: url("../fonts/switzer-normal-500.woff2") format("woff2"); font-weight: 500; font-display: swap; }
@font-face { font-family: "Switzer"; src: url("../fonts/switzer-normal-600.woff2") format("woff2"); font-weight: 600; font-display: swap; }
@font-face { font-family: "IBM Plex Mono"; src: url("../fonts/plexmono-normal-400.woff2") format("woff2"); font-weight: 400; font-display: swap; }
@font-face { font-family: "IBM Plex Mono"; src: url("../fonts/plexmono-normal-500.woff2") format("woff2"); font-weight: 500; font-display: swap; }

:root {
  --color-paper:   oklch(15% 0.008 250);
  --color-paper-2: oklch(19% 0.010 250);
  --color-paper-3: oklch(23% 0.012 250);
  --color-rule:    oklch(31% 0.010 250);
  --color-neutral: oklch(64% 0.010 250);
  --color-muted:   oklch(78% 0.008 250);
  --color-ink:     oklch(95% 0.006 250);
  --color-accent:  oklch(74% 0.13 52);
  --color-focus:   oklch(80% 0.14 60);
  --color-scrim:   oklch(15% 0.008 250 / 0.92);
  --color-scrim-0: oklch(15% 0.008 250 / 0);
  --color-scrim-top: oklch(15% 0.008 250 / 0.72);
  --color-photo-ink: oklch(97% 0.004 250);

  --font-display: "Archivo", "Arial Narrow", sans-serif;
  --font-body:    "Switzer", "Segoe UI", sans-serif;
  --font-mono:    "IBM Plex Mono", ui-monospace, monospace;

  --text-xs:   0.75rem;
  --text-sm:   0.875rem;
  --text-base: 1.0625rem;
  --text-md:   1.25rem;
  --text-lg:   1.5625rem;
  --text-xl:   clamp(1.5rem, 1.1rem + 1.6vw, 2.4rem);
  --text-2xl:  clamp(1.9rem, 1.2rem + 2.6vw, 3.4rem);
  --text-display: clamp(2.1rem, 1.2rem + 3.4vw, 4.25rem);

  --space-3xs: 0.125rem;
  --space-2xs: 0.25rem;
  --space-xs:  0.5rem;
  --space-sm:  0.75rem;
  --space-md:  1rem;
  --space-lg:  1.5rem;
  --space-xl:  2.5rem;
  --space-2xl: 4rem;
  --space-3xl: 6rem;
  --space-4xl: 9rem;

  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in: cubic-bezier(0.7, 0, 0.84, 0);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
  --dur-micro: 120ms;
  --dur-short: 220ms;
  --dur-long: 520ms;

  --z-base: 1;
  --z-raised: 10;
  --z-sticky: 200;
  --radius-sm: 2px;
  --measure: 62ch;
}
