/* Arborn design tokens.
   Palette v2 (client decision, 15 Sep 2026): Onyx, Aquamarine, Mustard,
   Platinum, Punch Red — replaces MP297.
   The hero field is ALWAYS light: the signal wakes in mustard, never in dark. */
:root {
	/* palette */
	--onyx: #091101;
	--aqua: #16f4d0;      /* Aquamarine */
	--mustard: #f7ce5b;
	--platinum: #f1f3f3;
	--punch: #ef233c;     /* Punch Red */

	/* derived */
	--punch-deep: #c81830;   /* interactive fill: platinum text reads 5.2:1 AA (raw punch gives 3.8) */
	--mustard-soft: #f6dc98; /* lighter mustard: hovers, the warmth wave */

	/* roles (legacy names kept so components read naturally) */
	--ink: var(--onyx);        /* primary dark: text, dark surfaces */
	--coal: var(--onyx);
	--silver: var(--platinum);
	--gold: var(--mustard);
	--almond: var(--mustard-soft);
	--briquette: var(--punch);
	--briquette-deep: var(--punch-deep);
	--bone: var(--platinum);   /* page surface */
	--paper: var(--platinum);  /* hero field — light, always */
	--bone-hair: #dfe3e1;      /* cool hairlines */
	--ash: #67716b;            /* muted text on light */
	--smoke: #96a29b;          /* muted text on dark — 7.3:1 on onyx */
	--signal-rest: #e0f5ef;    /* hero bars at rest: aqua whisper */
	--signal-wake: #fafff4;    /* wake layer's difference source: inverted type lands on platinum (|onyx − wake| ≈ #f1eef3), ground on near-ink #1a0a05 */

	/* type scale */
	--fs-display: clamp(4rem, 9.45vw, 10.2rem);   /* hero h1 · lh .83 · ls -.073em */
	--fs-mega: clamp(3rem, 8vw, 7rem);            /* sweep label */
	--fs-h2: clamp(2.4rem, 4.6vw, 4.6rem);        /* .hx · lh .96 · ls -.015em */
	--fs-sub: clamp(14px, 1.2vw, 17px);
	--fs-mono: 11px;
	--ls-mono: 0.18em;

	/* motion */
	--ease-sweep: cubic-bezier(0.72, 0, 0.22, 1);
	--ease-rise: cubic-bezier(0.65, 0, 0.3, 1);
	--ease-breath: cubic-bezier(0.25, 0.8, 0.25, 1);
	--breath-dur: 1.1s;
	--breath-cycle: 8s;

	/* layout */
	--signal-gap: 6.666vw;
	--gutter: clamp(24px, 5vw, 64px);
	--header-h: 72px;
}
