@font-face {
  font-family: "Atkinson Hyperlegible Next";
  src: url("/assets/css/fgl/fonts/atkinson-hyperlegible-next/AtkinsonHyperlegibleNextVF-Variable.woff2")
       format("woff2-variations");
  font-weight: 400 700;
  font-style: normal;
  font-display: swap;
}
:root {
  --brand-primary:   #3C3B6E;
  --brand-secondary: #B22234;
  --brand-primary-hover:  #302F58;
  --brand-primary-active: #26253F;
  --brand-primary-ink: #3C3B6E;
  --surface-primary:  #FBFAF5;
  --surface-elevated: #FFFFFF;
  --ink-body:  #1A1A22;
  --ink-muted: #5A5A66;
  --ink-inverse: #FFFFFF;
  --border-subtle: #E4E2DB;
  --border-strong: #8C887E;
  --accent-info: #4A6FA5;
  --color-success:    #2E7D52;
  --success-bg:       #E7F1EA;
  --success-border:   #D3E4D9;
  --success-ink:      #1F5C3B;
  --color-warning:    #8A6510;
  --warning-bg:       #F6EFD9;
  --warning-border:   #E8DCB8;
  --warning-ink:      #6E5210;
  --color-neutral:    #5A5A66;
  --neutral-bg:       #F1F0EC;
  --neutral-ink:      #3A3A44;
  --neutral-border:   #DBD9D2;
  --color-error:      #B3261E;
  --error-bg:         #FBEAE7;
  --error-border:     #F0D4CE;
  --error-ink:        #8C1D18;
  --color-error-form: #D63626;
  --focus-ring: 0 0 0 2px var(--accent-info);
  --font: "Atkinson Hyperlegible Next", system-ui, -apple-system, BlinkMacSystemFont,
          "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --fw-regular: 400; --fw-medium: 500; --fw-semibold: 600; --fw-bold: 700;
  --fs-display-1: clamp(2.25rem, 0.94rem + 2.84vw, 3.5rem);
  --fs-display-2: clamp(2rem, 1.22rem + 1.70vw, 2.75rem);
  --fs-h1:    2.125rem;
  --fs-h2:    1.75rem;
  --fs-h3:    1.375rem;
  --fs-h4:    1.125rem;
  --fs-body:  1.125rem;
  --fs-body-lg: 1.25rem;
  --fs-caption: 0.875rem;
  --fs-micro: 0.75rem;
  --fs-compact: 0.9375rem;
  --lh-display-1: 1.1;  --lh-display-2: 1.15;
  --lh-h1: 1.2;  --lh-h2: 1.25;  --lh-h3: 1.3;  --lh-h4: 1.4;
  --lh-body: 1.6;  --lh-body-lg: 1.55;  --lh-caption: 1.5;  --lh-micro: 1.4;
  --lh-compact: 1.4;
  --measure: 43.75rem;
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 1rem;
  --space-4: 1.5rem;
  --space-5: 2rem;
  --space-6: 3rem;
  --space-7: 4rem;
  --space-8: 6rem;
  --space-9: 8rem;
  --content:      var(--measure);
  --content-wide: 60rem;
  --content-full: 80rem;
  --radius-sm: 0.25rem;
  --radius-md: 0.5rem;
  --shadow-0: none;
  --shadow-1: 0 1px 4px rgba(26, 26, 34, 0.08);
  --shadow-2: 0 4px 16px rgba(26, 26, 34, 0.12);
  --icon-size:   1.5rem;
  --icon-stroke: 1.5;
  --dur-fast:  100ms;
  --dur-hover: 150ms;
  --dur-panel: 200ms;
  --ease-out: cubic-bezier(0.22, 0.61, 0.36, 1);
  --reveal-shift: 8px;
}
@supports (color: light-dark(#000, #fff)) {
  :root {
    --brand-primary:   light-dark(#3C3B6E, #6D6BB8);
    --brand-secondary: light-dark(#B22234, #E05A66);
    --brand-primary-hover:  light-dark(#302F58, #5B59A4);
    --brand-primary-active: light-dark(#26253F, #4C4B8E);
    --brand-primary-ink: light-dark(#3C3B6E, #8A88D0);
    --surface-primary:  light-dark(#FBFAF5, #131318);
    --surface-elevated: light-dark(#FFFFFF, #1E1E26);
    --ink-body:  light-dark(#1A1A22, #E8E7EF);
    --ink-muted: light-dark(#5A5A66, #A5A4B2);
    --border-subtle: light-dark(#E4E2DB, #2E2E38);
    --border-strong: light-dark(#8C887E, #8A8896);
    --accent-info: light-dark(#4A6FA5, #8FAEDC);
    --color-success:  light-dark(#2E7D52, #57C48A);
    --success-bg:     light-dark(#E7F1EA, #16281B);
    --success-border: light-dark(#D3E4D9, #223A29);
    --success-ink:    light-dark(#1F5C3B, #8BD9AA);
    --color-warning:  light-dark(#8A6510, #D9A840);
    --warning-bg:     light-dark(#F6EFD9, #2B240F);
    --warning-border: light-dark(#E8DCB8, #463A18);
    --warning-ink:    light-dark(#6E5210, #E3B858);
    --color-neutral:  light-dark(#5A5A66, #A5A4B2);
    --neutral-bg:     light-dark(#F1F0EC, #242331);
    --neutral-ink:    light-dark(#3A3A44, #BCBBC9);
    --neutral-border: light-dark(#DBD9D2, #31303C);
    --color-error:  light-dark(#B3261E, #F87171);
    --error-bg:     light-dark(#FBEAE7, #2E1513);
    --error-border: light-dark(#F0D4CE, #4A2420);
    --error-ink:    light-dark(#8C1D18, #F2ACA5);
    --color-error-form: light-dark(#D63626, #F87171);
    --shadow-1: 0 1px 4px light-dark(rgba(26, 26, 34, 0.08), rgba(0, 0, 0, 0.45));
    --shadow-2: 0 4px 16px light-dark(rgba(26, 26, 34, 0.12), rgba(0, 0, 0, 0.55));
  }
}
