/* Mistral brand theme over the Industry token sheet. Load AFTER styles.css. */
:root {
  --color-bg: #FFFFFF;
  --color-surface: #F3F9FE;
  --color-text: #10151A;
  --color-accent: #3A7BC8;
  --color-accent-2: #3A7BC8;
  --color-divider: #DCE8F4;

  --color-neutral-100: #F7FAFC;
  --color-neutral-200: #EDF2F6;
  --color-neutral-300: #DCE8F4;
  --color-neutral-400: #B9CCDD;
  --color-neutral-500: #8AA2B5;
  --color-neutral-600: #5E7183;
  --color-neutral-700: #46555F;
  --color-neutral-800: #2A3942;
  --color-neutral-900: #10151A;

  --color-accent-100: #EDF6FD;
  --color-accent-200: #D9EAFA;
  --color-accent-300: #A1CBF2;
  --color-accent-400: #74B4E8;
  --color-accent-500: #3A7BC8;
  --color-accent-600: #0072CE;
  --color-accent-700: #005CA8;
  --color-accent-800: #024E8C;
  --color-accent-900: #03045E;

  --color-accent-2-100: #EDF6FD;
  --color-accent-2-200: #D9EAFA;
  --color-accent-2-300: #A1CBF2;
  --color-accent-2-400: #74B4E8;
  --color-accent-2-500: #3A7BC8;
  --color-accent-2-600: #0072CE;
  --color-accent-2-700: #005CA8;
  --color-accent-2-800: #024E8C;
  --color-accent-2-900: #03045E;

  --font-heading: 'Nunito Sans', system-ui, sans-serif;
  --font-heading-weight: 800;
  --font-body: 'Nunito Sans', system-ui, sans-serif;
  --font-mono: 'IBM Plex Mono', monospace;
}
body { margin: 0; background: var(--color-bg); color: var(--color-text); font-family: var(--font-body); text-wrap: pretty; }
a { color: var(--color-accent-600); }
a:hover { color: var(--color-accent-900); }
a:focus-visible, button:focus-visible, input:focus-visible { outline: 2px solid var(--color-accent); outline-offset: 2px; }
/* Solid dark stays #03045E, never tinted: primary actions are navy, hover azure-600. */
.btn-primary { background: var(--color-accent-900); border-color: var(--color-accent-900); color: #FFFFFF; }
.btn-primary:hover { background: var(--color-accent-600); border-color: var(--color-accent-600); }
.btn-primary:active { background: var(--color-accent-700); border-color: var(--color-accent-700); }
.card-kicker { color: var(--color-accent-700); }
/* Single-axis entrance: elements rise once along one vertical axis. */
[data-enter] { transition: opacity 0.6s cubic-bezier(0.23,1,0.32,1), transform 0.6s cubic-bezier(0.23,1,0.32,1); }
@media (prefers-reduced-motion: reduce) { [data-enter] { transition: none !important; } }
