/* ============================================================
   Elbaum Solutions — brand tokens v1.1
   Canonical copy: hq/brand/tokens.css  ·  Spec: hq/BRAND.md
   Consumers copy this file in (elbaum-site, elbaum-cockpit, portal)
   and provide /fonts/archivo.woff2 + /fonts/spline-sans-mono.woff2.
   ============================================================ */

@font-face {
  font-family: 'Archivo';
  font-style: normal;
  font-weight: 100 900;
  font-stretch: 62% 125%;
  font-display: swap;
  src: url('/fonts/archivo.woff2') format('woff2');
}
@font-face {
  font-family: 'Spline Sans Mono';
  font-style: normal;
  font-weight: 300 700;
  font-display: swap;
  src: url('/fonts/spline-sans-mono.woff2') format('woff2');
}

:root {
  /* palette — BRAND.md */
  --es-sky:        #A1CAF1;  /* signature: light/washes/charts — never text on white */
  --es-ink:        #132C47;  /* text + dark panels */
  --es-signal:     #1F6BD0;  /* the one clickable thing (AA on white) */
  --es-slate:      #4A6076;  /* secondary text, sky-biased grey */
  --es-paper:      #F7FAFD;  /* light ground */
  --es-navy-deep:  #0B1A2C;  /* heroes, cockpit night surface, monogram tile */
  --es-ok:         #2F7D5A;
  --es-warn:       #A66A1F;
  --es-bad:        #B23A2F;

  /* semantic slots (light) */
  --bg:       var(--es-paper);
  --panel:    #FFFFFF;
  --hairline: #D8E4F0;
  --text:     var(--es-ink);
  --text-2:   var(--es-slate);
  --link:     var(--es-signal);
  --sky-wash: rgba(161, 202, 241, .16);
}

/* dark (cockpit-first; site may stay light-only) */
@media (prefers-color-scheme: dark) {
  :root.theme-auto {
    --bg:       var(--es-navy-deep);
    --panel:    #10233A;
    --hairline: #1F3A57;
    --text:     #E9F1FA;
    --text-2:   #A9BDD3;
    --link:     #7FB1EC;
  }
}
:root[data-theme="dark"] {
  --bg:       var(--es-navy-deep);
  --panel:    #10233A;
  --hairline: #1F3A57;
  --text:     #E9F1FA;
  --text-2:   #A9BDD3;
  --link:     #7FB1EC;
}

/* type roles — width IS the hierarchy; never add a second family */
.es-display {                 /* headlines, wordmark */
  font-family: 'Archivo', system-ui, sans-serif;
  font-stretch: 125%;
  font-weight: 720;
  letter-spacing: -.02em;
  line-height: 1.12;
  text-wrap: balance;
}
.es-text {                    /* body & UI */
  font-family: 'Archivo', system-ui, sans-serif;
  font-stretch: 100%;
  font-weight: 400;
  line-height: 1.6;
}
.es-label {                   /* eyebrows, stage chips, table headers */
  font-family: 'Archivo', system-ui, sans-serif;
  font-stretch: 87%;
  font-weight: 700;
  font-size: .6875rem;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.es-figure {                  /* money, KPIs, dates — numbers only, never sentences */
  font-family: 'Spline Sans Mono', ui-monospace, monospace;
  font-weight: 500;
}

/* the recurring motif */
.es-horizon {
  height: 2px;
  border: 0;
  background: linear-gradient(90deg, var(--es-sky) 0%, var(--es-sky) 34%, transparent 100%);
}
