/* STRUKT — design tokens (source of truth). Generated for v1.0. */
:root{
  /* colour — primitives */
  --sk-ink:#17181A; --sk-ink-700:#3C3D39; --sk-graphite:#5A5B57; --sk-graphite-400:#8A8A84;
  --sk-mist:#B8B7AF; --sk-rule:#D8D5CC; --sk-paper:#F3F1EA; --sk-raised:#FBFAF6; --sk-oxblood:#7E2B26;
  --sk-oxblood-soft:#e0928d;
  /* colour — semantic */
  --sk-bg:var(--sk-paper); --sk-bg-raised:var(--sk-raised); --sk-bg-inverse:var(--sk-ink);
  --sk-text:var(--sk-ink); --sk-text-secondary:var(--sk-graphite); --sk-text-muted:var(--sk-graphite-400);
  --sk-rule-soft:var(--sk-rule); --sk-rule-strong:var(--sk-ink); --sk-emphasis:var(--sk-oxblood);
  /* type */
  --sk-font-display:'Newsreader',Georgia,serif;
  --sk-font-text:'Source Serif 4',Georgia,serif;
  --sk-font-grotesk:'Schibsted Grotesk',system-ui,sans-serif;
  --sk-font-mono:'Spline Sans Mono',ui-monospace,monospace;
  /* spacing (4px base) */
  --sk-1:4px; --sk-2:8px; --sk-3:12px; --sk-4:16px; --sk-6:24px; --sk-8:32px; --sk-12:48px; --sk-16:64px; --sk-24:96px;
  /* layout */
  --sk-max:1240px; --sk-measure:680px; --sk-pad:64px;
  /* radius / border */
  --sk-radius:0px; --sk-radius-sm:2px; --sk-hair:1px;
  /* motion */
  --sk-fast:120ms; --sk-base:200ms; --sk-slow:320ms; --sk-ease:cubic-bezier(.2,0,0,1);
}
@media (max-width:904px){ :root{ --sk-pad:32px; } }
@media (max-width:599px){ :root{ --sk-pad:20px; } }
