/* BAII Design System — Colors + Type Foundations */

html { font-synthesis: none; -webkit-font-synthesis: none; }
body { font-synthesis: none; -webkit-font-synthesis: none; }
h1, h2, h3, h4, h5, h6 { font-weight: 400; font-synthesis: none; -webkit-font-synthesis: none; }
b, strong { font-weight: 500; }

@font-face {
  font-family: "Instrument Serif";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/Instrument_Serif/InstrumentSerif-Regular.ttf") format("truetype");
}
@font-face {
  font-family: "Instrument Serif";
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/Instrument_Serif/InstrumentSerif-Italic.ttf") format("truetype");
}

@font-face {
  font-family: "IBM Plex Mono";
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url("fonts/IBM_Plex_Mono/IBMPlexMono-Light.ttf") format("truetype");
}
@font-face {
  font-family: "IBM Plex Mono";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/IBM_Plex_Mono/IBMPlexMono-Regular.ttf") format("truetype");
}
@font-face {
  font-family: "IBM Plex Mono";
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/IBM_Plex_Mono/IBMPlexMono-Italic.ttf") format("truetype");
}
@font-face {
  font-family: "IBM Plex Mono";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("fonts/IBM_Plex_Mono/IBMPlexMono-Medium.ttf") format("truetype");
}
@font-face {
  font-family: "IBM Plex Mono";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("fonts/IBM_Plex_Mono/IBMPlexMono-SemiBold.ttf") format("truetype");
}
@font-face {
  font-family: "IBM Plex Mono";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/IBM_Plex_Mono/IBMPlexMono-Bold.ttf") format("truetype");
}

@font-face {
  font-family: "Funnel Display";
  font-style: normal;
  font-weight: 300 800;
  font-display: swap;
  src: url("fonts/Funnel_Display/FunnelDisplay-VariableFont_wght.ttf") format("truetype-variations");
}

:root {
  --baii-blue: #0263FF;
  --baii-blue-deep: #013C9A;
  --baii-white: #FFFFFF;
  --baii-black: #000000;

  --baii-paper: #F4F2EC;
  --baii-bone:  #E8E5DC;
  --baii-ash:   #C9C7C0;
  --baii-graphite: #1A1A1A;
  --baii-slate: #4A4A4A;
  --baii-fog:   #8A8A8A;

  --baii-blue-95: #F0F5FF;
  --baii-blue-85: #CEDFFF;
  --baii-blue-70: #99BEFF;
  --baii-blue-50: #4F8FFF;
  --baii-blue-30: #0252D6;

  --baii-signal-amber: #E8A33D;
  --baii-signal-red:   #D8341B;
  --baii-signal-green: #2F7A4A;

  --bg:        var(--baii-white);
  --bg-muted:  var(--baii-paper);
  --bg-inverse:var(--baii-blue);

  --fg1:       var(--baii-graphite);
  --fg2:       var(--baii-slate);
  --fg3:       var(--baii-fog);
  --fg-on-blue:var(--baii-white);
  --fg-link:   var(--baii-blue);

  --border:        var(--baii-bone);
  --border-strong: var(--baii-graphite);
  --hairline:      var(--baii-ash);

  --baii-hero-gradient: linear-gradient(135deg, var(--baii-blue) 0%, var(--baii-blue-deep) 100%);

  --font-display: "Instrument Serif", "Times New Roman", Georgia, serif;
  --font-mono:    "IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;
  --font-grotesk: "Funnel Display", "Inter", system-ui, sans-serif;

  --fs-h1: 72px;   --lh-h1: 0.9;
  --fs-h2: 48px;   --lh-h2: 1.1;
  --fs-h3: 32px;   --lh-h3: 1.2;
  --fs-h4: 22px;   --lh-h4: 1.3;
  --fs-body:    18px; --lh-body: 1.6;
  --fs-meta:    14px; --lh-meta: 1.4;
  --fs-caption: 12px; --lh-caption: 1.4;

  --s-1: 4px;  --s-2: 8px;  --s-3: 12px; --s-4: 16px;
  --s-5: 24px; --s-6: 32px; --s-7: 48px; --s-8: 64px;
  --s-9: 96px; --s-10: 128px;

  --r-0: 0; --r-sm: 4px; --r-md: 8px; --r-lg: 16px;
  --r-pill: 999px; --r-button: 20px;

  --bw-1: 1px; --bw-2: 2px;

  --shadow-0: none;
  --shadow-1: 0 1px 0 rgba(0,0,0,0.04), 0 1px 2px rgba(0,0,0,0.06);
  --shadow-2: 0 6px 24px rgba(2, 99, 255, 0.10), 0 2px 6px rgba(0,0,0,0.06);

  --ease-standard: cubic-bezier(0.2, 0.6, 0.2, 1);
  --ease-out:      cubic-bezier(0.16, 1, 0.3, 1);
  --dur-fast: 120ms;
  --dur-base: 200ms;
  --dur-slow: 360ms;
}
