/* Covenant Computers & IT — design tokens
   Palette is the approved Covenant theme (navy ladder, gold, cyan, teal).
   Contrast notes are measured WCAG 2.x ratios against the surface named. */

@font-face {
  font-family: "Plex Sans";
  src: url("../fonts/plex-sans-400.db71f8a28a.woff2") format("woff2");
  font-weight: 400; font-style: normal; font-display: swap;
}
@font-face {
  font-family: "Plex Sans";
  src: url("../fonts/plex-sans-400i.b22694fa42.woff2") format("woff2");
  font-weight: 400; font-style: italic; font-display: swap;
}
@font-face {
  font-family: "Plex Sans";
  src: url("../fonts/plex-sans-500.5ef914e59b.woff2") format("woff2");
  font-weight: 500; font-style: normal; font-display: swap;
}
@font-face {
  font-family: "Plex Sans";
  src: url("../fonts/plex-sans-600.31535a91ce.woff2") format("woff2");
  font-weight: 600; font-style: normal; font-display: swap;
}
@font-face {
  font-family: "JetBrains Mono";
  src: url("../fonts/jbmono-400.7c53386f55.woff2") format("woff2");
  font-weight: 400; font-style: normal; font-display: swap;
}
@font-face {
  font-family: "JetBrains Mono";
  src: url("../fonts/jbmono-500.4765dee1c0.woff2") format("woff2");
  font-weight: 500; font-style: normal; font-display: swap;
}

:root {
  color-scheme: dark;

  /* Surfaces — the navy ladder */
  --void: #070b14;      /* page */
  --base: #0b1220;      /* alternating sections */
  --raise: #111d2e;     /* cards, inputs */
  --raise-2: #16263a;   /* hover / pressed card */

  /* Lines (decorative, never the only boundary of a control) */
  --line: #1f2f44;
  --line-strong: #2c4058;
  --control-edge: #5f7a8e;  /* input borders: 3.3:1 on --raise */

  /* Text */
  --text-head: #eef3f4;  /* 15:1 on raise */
  --text: #bcccd0;       /* 10:1 on raise */
  --text-muted: #8fa3a8; /* 6.4:1 on raise — secondary copy */
  --text-dim: #71878d;   /* 4.95:1 on base — only on void/base, never on cards */

  /* Brand */
  --gold: #e6a23c;       /* attention, primary action fill (navy text on it: 9:1) */
  --gold-hi: #f4c77a;
  --gold-deep: #b5793a;  /* copper — matches circuit-pattern.svg */
  --cyan: #2ec3d4;       /* the interactive colour: links, focus */
  --cyan-hi: #8be8f1;
  --teal: #1c7f8f;       /* traces & structure only — not text */

  /* Semantic */
  --ok: #4fd1a5;
  --danger: #f07a72;     /* 6.2:1 on raise */

  /* Type */
  --font-sans: "Plex Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --font-mono: "JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;

  /* Fluid scale, ~1.2 at 360px rising to ~1.3 at 1280px */
  --fs-xs: 0.8125rem;
  --fs-sm: 0.9375rem;
  --fs-base: 1.0625rem;
  --fs-md: clamp(1.125rem, 1.05rem + 0.35vw, 1.3125rem);
  --fs-lg: clamp(1.375rem, 1.2rem + 0.8vw, 1.875rem);
  --fs-xl: clamp(1.75rem, 1.4rem + 1.6vw, 2.75rem);
  --fs-2xl: clamp(2.375rem, 1.7rem + 3.2vw, 4.25rem);

  --lh-tight: 1.08;
  --lh-snug: 1.25;
  --lh-body: 1.6;

  /* Space — 4px base */
  --s-1: 0.25rem;
  --s-2: 0.5rem;
  --s-3: 0.75rem;
  --s-4: 1rem;
  --s-5: 1.5rem;
  --s-6: 2rem;
  --s-7: 3rem;
  --s-8: 4rem;
  --s-9: 6rem;
  --section-y: clamp(4rem, 3rem + 5vw, 8rem);
  --gutter: clamp(1rem, 0.5rem + 2.5vw, 2.5rem);
  --measure: 62ch;
  --max: 74rem;

  --radius-sm: 4px;
  --radius: 8px;
  --radius-lg: 14px;

  --ease-out: cubic-bezier(0.22, 1, 0.36, 1);
  --dur: 220ms;

  --header-h: 4.25rem;
}
