/* Design tokens v2 – "Campfire workshop": warm dusk plum, cream paper, orange glow.
   Contrast checked (WCAG ratios): cream-on-night 15.4, muted-on-night 10.6, orange-on-night 7.8,
   ink-on-orange 7.1, ink-on-cream 13.9, muted-on-cream 5.7, link-on-cream 5.3. Orange is a FILL colour on cream (text there uses --jd-link). */
@font-face { font-family: "Fraunces"; src: url("../fonts/fraunces-latin-wght-normal.woff2") format("woff2"); font-weight: 100 900; font-display: swap; }
@font-face { font-family: "Nunito Sans"; src: url("../fonts/nunito-sans-latin-wght-normal.woff2") format("woff2"); font-weight: 200 1000; font-display: swap; }
@font-face { font-family: "Pixelify Sans"; src: url("../fonts/pixelify-sans-latin-400-normal.woff2") format("woff2"); font-weight: 400; font-display: swap; }
@font-face { font-family: "Pixelify Sans"; src: url("../fonts/pixelify-sans-latin-700-normal.woff2") format("woff2"); font-weight: 700; font-display: swap; }

:root {
	/* Night (dark surfaces: hero, footer, signup band) */
	--jd-night-900: #1f1622;
	--jd-night-800: #2a1e30;
	--jd-night-700: #382a40;
	--jd-night-600: #4b3a54;
	/* Paper (main page) */
	--jd-paper-50:  #fff8ec;
	--jd-paper-100: #fbefd9;
	--jd-paper-200: #f2dfbf;
	/* Ink (text on paper) */
	--jd-ink: #2a1e30;
	--jd-ink-soft: #6b5870;
	/* Accents */
	--jd-orange: #fb941a;   /* primary */
	--jd-orange-hi: #eee0c1; /* hover fill for orange buttons */
	--jd-ember: #fb562a;    /* secondary, hot */
	--jd-butter: #ffd98a;   /* highlight */
	--jd-butter-hi: #f7562a; /* strong hover accent; ink text on it = 4.76:1 (AA); cream text on it fails, do not use */
	--jd-moss: #7cc9a7;     /* calm contrast accent */
	--jd-link: #b03a12;     /* links on paper */
	--jd-link-dark: #ffb85c;/* links on night */
	--jd-muted-dark: #d9c3d4;
	/* Type */
	--jd-font-display: "Fraunces", Georgia, "Times New Roman", serif;
	--jd-font-body: "Nunito Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
	--jd-font-pixel: "Pixelify Sans", ui-monospace, monospace;
	--jd-fs-0: clamp(1.02rem, 0.98rem + 0.2vw, 1.1rem);
	--jd-fs-1: clamp(1.15rem, 1.08rem + 0.35vw, 1.3rem);
	--jd-fs-2: clamp(1.35rem, 1.2rem + 0.8vw, 1.7rem);
	--jd-fs-3: clamp(2rem, 1.5rem + 2.4vw, 3.3rem);
	--jd-fs-hero: clamp(2.3rem, 1.4rem + 3.3vw, 4.1rem);
	/* Space, shape, motion */
	--jd-s-1: .5rem; --jd-s-2: 1rem; --jd-s-3: 1.5rem; --jd-s-4: 2rem; --jd-s-6: 3rem; --jd-s-8: 4.5rem; --jd-s-12: 6.5rem;
	--jd-r-sm: .7rem; --jd-r-md: 1.1rem; --jd-r-lg: 1.6rem;
	--jd-border: 3px solid var(--jd-ink);
	--jd-pop: 0 6px 0 var(--jd-ink);       /* chunky "sticker" shadow */
	--jd-pop-hover: 0 9px 0 var(--jd-ink);
	--jd-wrap: 72rem; --jd-gutter: 1.1rem;
	--jd-dur: .2s;
}
@media (min-width: 48em) { :root { --jd-gutter: 2rem; } }
@media (prefers-reduced-motion: reduce) { :root { --jd-dur: 0s; } }
