:root{
/* Ink — the page. Near-black with a green cast, pulled from the reference hero. */
--ink-000:#0B1717;--ink-100:#0E1B1B;--ink-200:#122120;--ink-300:#182B29;--ink-400:#22322F;
/* Slate — the cooler blue panel used for booking / form surfaces. */
--slate-100:#112027;--slate-200:#162A32;--slate-300:#1D3540;
/* Cream — every piece of type. Warm at the top of the ramp, cool at the bottom. */
--cream-000:#FBF7EF;--cream-100:#EDEAE1;--cream-200:#C6CBC8;--cream-300:#A1A7A9;--cream-400:#6E7779;
/* Brass — the single accent. Script eyebrows, active states, hairline highlights. */
--gold-100:#E4D3B4;--gold-200:#C9A97C;--gold-300:#A2814F;
/* Semantic extensions (not present in the reference — used only for form feedback). */
--sage-200:#7E9A83;--rust-200:#B4553C;
/* Alpha ramps for hairlines and scrims over photography. */
--alpha-cream-06:rgba(237,234,225,.06);--alpha-cream-12:rgba(237,234,225,.12);--alpha-cream-24:rgba(237,234,225,.24);--alpha-cream-40:rgba(237,234,225,.4);
--alpha-ink-40:rgba(11,23,23,.4);--alpha-ink-70:rgba(11,23,23,.7);--alpha-ink-90:rgba(11,23,23,.9);
/* Semantic aliases — prefer these in components. */
--surface-page:var(--ink-000);--surface-raised:var(--ink-100);--surface-hover:var(--ink-200);--surface-panel:var(--slate-100);--surface-field:transparent;--surface-field-hover:var(--slate-200);--surface-inverse:var(--cream-100);
--text-display:var(--cream-100);--text-body:var(--cream-300);--text-subtle:var(--cream-200);--text-muted:var(--cream-400);--text-accent:var(--gold-200);--text-inverse:var(--ink-000);
--accent:var(--gold-200);--accent-hover:var(--gold-100);--accent-press:var(--gold-300);
--border-hairline:var(--alpha-cream-06);--border-control:var(--alpha-cream-24);--border-control-hover:var(--gold-200);--border-strong:var(--alpha-cream-40);
--scrim-image:linear-gradient(180deg,rgba(11,23,23,0) 0%,rgba(11,23,23,.15) 45%,rgba(11,23,23,.82) 100%);/* @kind color */}
