:root {
  --fin-orange:        #F15A24;
  --fin-orange-deep:   #C6420F;
  --fin-orange-bright: #FF7A46;
  --orange-text:       #BB3E0D;
  --ink:      #0C1015;
  --carbon:   #FFFFFF;
  --gunmetal: #ECEFF1;
  --slate:    #47535F;
  --steel:    #1E5A8C;
  --azure:    #2E86C1;
  --electric: #266B9C;
  --steel-bright: #8CC9E8;
  --chrome:   #5C6772;
  --fog:      #38424D;
  --mist:     #F6F6F3;
  --deep:     #09263B;
  --white:    #FFFFFF;
  --success: #1F9E63;
  --danger:  #C0392B;
  --hair:        rgba(12, 16, 21, .12);
  --hair-strong: rgba(12, 16, 21, .22);
  --bg-page:        #F2F1ED;
  --surface-card:   var(--carbon);
  --surface-raised: var(--gunmetal);
  --surface-light:  var(--mist);
  --text-strong:  var(--ink);
  --text-body:    var(--fog);
  --text-muted:   var(--chrome);
  --text-subtle:  var(--slate);
  --text-on-light:var(--ink);
  --text-on-accent: var(--white);
  --accent-primary:     var(--steel);
  --accent-secondary:   var(--azure);
  --accent-interactive: var(--electric);
  --accent-brand:       var(--fin-orange);
  --border-hair:   var(--hair);
  --border-strong: var(--hair-strong);
  --focus-ring:    var(--electric);
  --font-display: "IBM Plex Sans", Arial, "Helvetica Neue", Helvetica, sans-serif;
  --font-sans: Arial, "Helvetica Neue", Helvetica, sans-serif;
  --font-mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;
  --fw-regular: 400;
  --fw-bold:    700;
  --fw-black:   900;
  --fs-display: 54px;
  --fs-h1:      34px;
  --fs-h2:      24px;
  --fs-h3:      18px;
  --fs-body:    16px;
  --fs-small:   14px;
  --fs-label:   12px;
  --lh-tight:   1;
  --lh-heading: 1.08;
  --lh-snug:    1.2;
  --lh-body:    1.55;
  --ls-display: -.02em;
  --ls-h1:      -.01em;
  --ls-h2:      0;
  --ls-normal:  0;
  --ls-label:   .22em;
  --ls-wm:      .16em;
  --space-1:  4px;
  --space-2:  8px;
  --space-3:  12px;
  --space-4:  16px;
  --space-5:  20px;
  --space-6:  24px;
  --space-8:  32px;
  --space-9:  36px;
  --space-10: 40px;
  --space-11: 44px;
  --space-12: 48px;
  --space-14: 56px;
  --space-16: 64px;
  --space-18: 72px;
  --space-20: 80px;
  --space-24: 96px;
  --section-y:       var(--space-8);
  --section-y-tight: var(--space-5);
  --radius-sm:   5px;
  --radius-md:   2px;
  --radius-lg: 0px;
  --radius-xl: 0px;
  --radius-pill: 999px;
  --measure-narrow: 48ch;
  --measure-lead:   56ch;
  --measure-body:   64ch;
  --measure-long:   68ch;
  --container-max: 1180px;
  --container-pad: 32px;
  --header-h:      60px;
  --grad-bluesteel: linear-gradient(135deg, #5AB0EC 0%, #2E86C1 22%, #1E5A8C 52%, #0F3454 78%, #1E5A8C 100%);
  --grad-chrome:    linear-gradient(135deg, #F2F6F9 0%, #C6D2DC 30%, #93A4B2 52%, #D3DDE4 70%, #A9BAC7 100%);
  --grad-gunmetal:  linear-gradient(135deg, #3B4650 0%, #232B34 45%, #141A20 75%, #2A333D 100%);
  --grad-orange:    linear-gradient(135deg, #FF7A46 0%, #F15A24 55%, #C6420F 100%);
  --sheen: repeating-linear-gradient(115deg, rgba(255,255,255,.05) 0 2px, rgba(255,255,255,0) 2px 5px);
  --sweep: linear-gradient(115deg, rgba(255,255,255,.35) 0%, rgba(255,255,255,0) 34%);
  --shadow-btn-steel:       inset 0 1px 0 rgba(255,255,255,.28);
  --shadow-btn-steel-hover: inset 0 1px 0 rgba(255,255,255,.40);
  --shadow-btn-orange:      inset 0 1px 0 rgba(255,255,255,.28);
  --shadow-plate:           0 12px 28px rgba(9,38,59,.14), inset 0 1px 0 rgba(255,255,255,.28), inset 0 -30px 60px rgba(0,0,0,.28);
  --shadow-card:            0 8px 24px rgba(9,38,59,.08);
  --glass-bg:   rgba(9,38,59,.96);
  --glass-blur: 12px;
  --ease-out: cubic-bezier(.2, 0, 0, 1);
  --ease-in: cubic-bezier(.4, 0, 1, 1);
  --ease-in-out: cubic-bezier(.4, 0, .2, 1);
  --dur-fast: .16s;
  --dur-med:  .24s;
  --dur-slow: .36s;
  --bg-grain: .02;
  --bg-glow-a: .07;
  --bg-glow-b: .05;
}
@media (max-width: 640px) {
  :root {
    --container-pad:   20px;
    --section-y:       var(--space-6);
    --section-y-tight: var(--space-4);
  }
}
