/* Hallmark · macrostructure: Bento Grid · genre: modern-minimal
 * H2 hero knobs: ratio=6/6, right=custom-illustration, divider=negative-space
 * F1 Bento knobs: tiles=8, spans=irregular, accent=corner-only
 * F4 Step sequence knobs: numbering=01/02/03, layout=horizontal, connector=arrow
 * T2 Logo wall knobs: layout=single-row, treatment=monochrome-ink, divider=hairline
 * nav: N1b SaaS three-section · footer: Ft1 Mast-headed
 * theme: studied-DNA (source: https://tobesecurity.com) dressed in brand tokens
 * paper oklch(98% 0.004 230) · accent oklch(66% 0.15 220) cyan + oklch(52% 0.16 335) magenta (~1%)
 * display: Space Grotesk · body: IBM Plex Sans · outlier: JetBrains Mono
 * studied: yes · DNA-source: url
 */

:root {
  /* ---- Fonts (2+1 rule: display, body, mono outlier) ---- */
  --font-display: "Space Grotesk", ui-sans-serif, system-ui, sans-serif;
  --font-body:    "IBM Plex Sans", ui-sans-serif, system-ui, sans-serif;
  --font-mono:    "JetBrains Mono", ui-monospace, "SF Mono", monospace;

  /* ---- Colour — OKLCH, anchor hue 222 (brand cyan) ---- */
  --color-paper:      oklch(98% 0.004 230);
  --color-paper-2:    oklch(96% 0.007 228);
  --color-paper-3:    oklch(93% 0.009 226);
  --color-rule:       oklch(87% 0.010 224);
  --color-neutral:    oklch(58% 0.014 226);
  --color-muted:      oklch(42% 0.016 228);
  --color-ink:        oklch(19% 0.020 250);
  --color-ink-2:      oklch(28% 0.022 248);

  /* dark surface — footer, process band */
  --color-dark:       oklch(17% 0.026 252);
  --color-dark-2:     oklch(22% 0.028 250);
  --color-dark-ink:    oklch(94% 0.010 226);
  --color-dark-muted:  oklch(72% 0.014 226);
  --color-dark-rule:   oklch(32% 0.026 250);

  --color-accent:      oklch(66% 0.150 220);   /* brand cyan */
  --color-accent-ink:  oklch(22% 0.05 220);    /* text-on-accent */
  --color-accent-2:    oklch(52% 0.160 335);   /* brand magenta — used sparingly, ~1% footprint */
  --color-focus:       oklch(70% 0.170 220);

  /* ---- Spacing — 4pt scale ---- */
  --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;

  /* ---- Type scale — 1.25 ratio ---- */
  --text-xs:   0.64rem;
  --text-sm:   0.8rem;
  --text-base: 1rem;
  --text-md:   1.25rem;
  --text-lg:   1.5625rem;
  --text-xl:   1.9531rem;
  --text-2xl:  2.4414rem;
  --text-3xl:  3.0518rem;
  --text-display:   clamp(2.75rem, 4.4vw + 1rem, 4.75rem);
  --text-display-s: clamp(2.25rem, 3vw + 1rem, 3.4rem);

  /* ---- Radius ---- */
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 16px;
  --radius-pill: 999px;

  /* ---- Rules ---- */
  --rule-hair: 1px;

  /* ---- Easing / duration ---- */
  --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:  420ms;

  /* ---- Z-scale ---- */
  --z-base:     1;
  --z-raised:   10;
  --z-dropdown: 100;
  --z-sticky:   200;
  --z-modal:    400;
  --z-toast:    500;
  --z-tooltip:  600;
}
