@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("./brand/fonts/Inter-400.ttf") format("truetype");
}

@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("./brand/fonts/Inter-700.ttf") format("truetype");
}

@font-face {
  font-family: "Plus Jakarta Sans";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("./brand/fonts/Jakarta-700.ttf") format("truetype");
}

:root {
  color-scheme: light;
  --cx-ink: #132e38;
  --cx-muted: #60747a;
  --cx-subtle: #87979c;
  --cx-navy: #0a2732;
  --cx-navy-soft: #153b45;
  --cx-green: #087a62;
  --cx-green-dark: #075c4a;
  --cx-mint: #26b997;
  --cx-gold: #e6b44b;
  --cx-red: #b43a49;
  --cx-canvas: #f4f1ea;
  --cx-surface: #ffffff;
  --cx-surface-soft: #edf4f1;
  --cx-line: #d6dfdc;
  --cx-shadow-sm: 0 8px 24px rgba(10, 39, 50, 0.08);
  --cx-shadow-lg: 0 24px 64px rgba(10, 39, 50, 0.16);
  --cx-radius-sm: 10px;
  --cx-radius-md: 16px;
  --cx-radius-lg: 22px;
  --cx-touch-target: 48px;
  --cx-content-max: 1440px;
}

html { text-rendering: optimizeLegibility; }
body { accent-color: var(--cx-green); }
button, input, select, textarea { font: inherit; }
button, [role="button"], input, select { min-height: var(--cx-touch-target); }
:focus-visible { outline: 3px solid var(--cx-navy); outline-offset: 2px; box-shadow: 0 0 0 5px var(--cx-gold); }
button:disabled, input:disabled, select:disabled, textarea:disabled, [aria-disabled="true"] { cursor: not-allowed; opacity: 0.58; }
[aria-busy="true"] { cursor: progress; }
.cx-visually-hidden { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important; }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; }
}

@media (prefers-contrast: more) {
  button, input, select, textarea { border-width: 2px !important; }
}
