/* SaverCall site v2: brand v0.1 tokens (Ticket Handoff / Direction B), type and motion.
   Colours keep one meaning each:
   print red  = a missed call, something unanswered, or a limit
   stamp blue = handled: callback ready, the team in control
   ticket pink = the message slip itself (paper, never a text colour)
   canary     = logo only, never used here */

/* Fallback faces sized to Archivo / Martian Mono (ratios measured in Chromium, 2026-10-15),
   so text does not jump when the web fonts arrive. */
@font-face {
  font-family: "Archivo Headline Fallback";
  src: local("Arial Bold"), local("Arial-BoldMT"), local("Arial");
  font-weight: 100 900;
  size-adjust: 77.7%;
}
@font-face {
  font-family: "Archivo Slip Fallback";
  src: local("Arial Bold"), local("Arial-BoldMT"), local("Arial");
  font-weight: 100 900;
  size-adjust: 72.6%;
}
@font-face {
  font-family: "Archivo Body Fallback";
  src: local("Arial"), local("ArialMT");
  font-weight: 100 599;
  size-adjust: 97.8%;
}
@font-face {
  font-family: "Archivo Body Fallback";
  src: local("Arial Bold"), local("Arial-BoldMT");
  font-weight: 600 900;
  size-adjust: 97.8%;
}
@font-face {
  font-family: "Martian Mono Fallback";
  src: local("Courier New"), local("CourierNewPSMT");
  size-adjust: 106.6%;
}

:root {
  /* Ground: galvanized steel, like ductwork */
  --steel: #DCE3E6;
  --steel-deep: #CED7DB;
  --steel-dark: #B9C5CB;
  --steel-line: #C3CDD2;

  --ink: #1B1C1E;            /* brand Black */
  --ink-soft: #33444F;
  --ink-mute: #4A5963;       /* small print on steel, ≥ 6:1 */

  /* Paper */
  --paper: #F2C2CC;          /* brand Ticket Pink */
  --paper-under: #E9B3BF;
  --paper-under-2: #DFA3B1;
  --copy: #F7F6F2;           /* brand Copy White: worksheets, copies, estimates */
  --copy-shade: #ECEAE3;

  /* Ink on paper */
  --print: #A50F39;          /* form print red: missed call / heat / limits */
  --print-soft: rgba(165, 15, 57, 0.42);
  --ballpoint: #2C3E9E;      /* brand Stamp Blue: written values, handled */
  --ballpoint-soft: rgba(44, 62, 158, 0.16);

  /* The caller's phone (the caller's own device, not SaverCall branding) */
  --phone: #121D25;
  --screen: #F3F6F7;
  --bubble-biz: #FFFFFF;
  --bubble-caller: #22394B;
  --phone-avatar: #0F1D28;

  /* Type */
  --font: "Archivo", "Archivo Body Fallback", sans-serif;
  --font-headline: "Archivo", "Archivo Headline Fallback", sans-serif;
  --font-slip: "Archivo", "Archivo Slip Fallback", sans-serif;
  --font-data: "Martian Mono", "Martian Mono Fallback", monospace;

  /* Layout */
  --gutter: 20px;
  --max: 1320px;

  /* Motion: one curve family across the site */
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-paper: cubic-bezier(0.22, 0.9, 0.24, 1);
  --ease-press: cubic-bezier(0.3, 0, 0.2, 1);

  --shadow-paper: 0 1px 1px rgba(15, 29, 40, 0.16), 0 28px 50px -24px rgba(15, 29, 40, 0.5);
  --shadow-card: 0 1px 1px rgba(15, 29, 40, 0.12), 0 18px 32px -22px rgba(15, 29, 40, 0.45);
  --perforation: radial-gradient(circle 3.5px at 50% 0, transparent 97%, #000) 0 0 / 14px 100% repeat-x;
}

@media (min-width: 720px) {
  :root { --gutter: 40px; }
}
