/* CostCraft design tokens — CC-WEB-030 brief, D11 palette, CC-WEB-031 round 2.
   Round 2 adds: --navy-deep (same 219° hue, darker step for depth), the Archivo faces, a radius scale and the sheet shadow.
   No new hues (G2-4). Every pair actually used is listed with its ratio in docs/CC-WEB-030-DESIGN.md (Round 2). */
@font-face {
  font-family: "Archivo Expanded";
  src: url("/assets/fonts/archivo-head.woff2?v=b58faba7b4") format("woff2");
  font-weight: 400 800; font-style: normal; font-display: swap;
}
@font-face {
  font-family: "Archivo";
  src: url("/assets/fonts/archivo-text.woff2?v=e5657acf25") format("woff2");
  font-weight: 400 600; font-style: normal; font-display: swap;
}
/* Metric-matched fallbacks so the swap to Archivo doesn't move the layout (CLS). */
@font-face { font-family: "Archivo Expanded Fallback"; src: local("Arial"); size-adjust: 118%; ascent-override: 74%; descent-override: 18%; line-gap-override: 0%; }
@font-face { font-family: "Archivo Fallback"; src: local("Arial"); size-adjust: 101%; ascent-override: 87%; descent-override: 21%; line-gap-override: 0%; }

:root {
  --navy:      #0F2040;  /* header, panels on navy, headings on light       (draft --navy) */
  --navy-deep: #0A1730;  /* hero, CTA band, footer: the deepest step         (hsl 219 66% 11%) — round 2 */
  --navy-2:    #152D5B;  /* cards and panels on navy                        (hsl 219 62% 22%) */
  --navy-3:    #1D3E7C;  /* borders and rules on navy                       (hsl 219 62% 30%) */
  --gold:      #C8973A;  /* CTA fills, flag markers, focus ring on navy     (draft --gold, D11) */
  --gold-hi:   #DBA945;  /* CTA hover                                       (draft --gold-hi) */
  --gold-ink:  #8F6718;  /* gold for small text/icons on light              (draft --gold-ink) */
  --paper:     #F7F9FC;  /* main reading surface                            (draft --off) */
  --surface:   #FFFFFF;  /* sheets, tables and cards on paper               (draft --white) */
  --ink:       #1A2535;  /* body text on paper                              (draft --text) */
  --ink-2:     #5A6A82;  /* secondary text on paper                         (draft --muted) */
  --line:      #D0DCF0;  /* hairlines, table rules                          (draft --border) */
  --flag-bg:   #FBF4E6;  /* exception row tint: gold at 12% on white */
  --on-navy:   #FFFFFF;
  --on-navy-2: #C9D3E3;  /* secondary text on navy */

  --font-display: "Archivo Expanded", "Archivo Expanded Fallback", "Segoe UI", system-ui, -apple-system, Roboto, "Helvetica Neue", Arial, sans-serif;
  --font:         "Archivo", "Archivo Fallback", "Segoe UI", system-ui, -apple-system, Roboto, "Helvetica Neue", Arial, sans-serif;
  --font-mono:    "Cascadia Mono", Consolas, "SFMono-Regular", Menlo, monospace; /* station codes only */

  --fs-h1: clamp(2.125rem, 1.35rem + 3.4vw, 4.25rem);
  --fs-h2: clamp(1.625rem, 1.25rem + 1.6vw, 2.5rem);
  --fs-h3: clamp(1.1875rem, 1.1rem + 0.4vw, 1.375rem);
  --fs-body: 1.0625rem;
  --fs-small: 0.875rem;

  --r-sm: 2px;     /* tables, inputs */
  --r-md: 10px;    /* sheets, panels */
  --r-pill: 999px; /* buttons, chips */
  --shadow-sheet: 0 1px 2px rgba(10, 23, 48, .12), 0 12px 32px rgba(10, 23, 48, .18);
  --shadow-float: 0 2px 4px rgba(10, 23, 48, .18), 0 24px 48px rgba(10, 23, 48, .32);

  --max: 76rem;
  --measure: 66ch;
  --gutter: 16px;
  --section: 64px;
  /* Header = logo row + nav row; the nav row folds into the logo row at >= 1140px (nav ruling 2026-10-15). */
  --bar-h: 64px;
  --nav-h: 44px;
  --header-h: calc(var(--bar-h) + var(--nav-h));
  --t: 150ms;
  --ease: cubic-bezier(.2, .7, .2, 1);
}
@media (min-width: 768px) { :root { --gutter: 32px; --section: 112px; --bar-h: 72px; } }
@media (min-width: 1140px) { :root { --nav-h: 0px; } }
