/* Voxolo design tokens — the single source for colour and type.
   ------------------------------------------------------------------
   Loaded FIRST in every page <head>, before site.css and any page
   <style> block. Nothing else in the site may define a palette value:
   if you need a colour, it is here, or it does not exist.

   Palette history, so it is not re-litigated:
   - The old identity (cream + coral #EF6F5D + teal #16797A + amber
     #EE9E24, SF Pro Rounded) read as generic to the 50+ buyer this is
     sold to. The paper stayed; everything printed on it changed.
   - Oxblood #7A2227 is now the ONLY action colour. Nothing else on a
     page is red. White on oxblood measures 10.1:1.
   - Navy #24425E carries structure: links, nav, step numbers, icons,
     borders. On cream it measures 9.6:1.
   - Brass replaces amber as ornament. --brass is for fills and icons;
     --brass-t is the darker variant for text on light grounds.
     Do not set --brass as text on cream (2.8:1).
   - Night #13233A is the dark-section ground (trust strip, seasonal
     band, closing panel). --lamp is for labels on night only: it is
     9.3:1 there and 2.6:1 on cream, so it never goes on paper.
   Re-measure before changing any pair. */

/* Self-hosted so no third-party request is made on page load, and so
   the accented characters the phrase pages need (ñ ç ß à ü œ) render in
   the face rather than a fallback. latin + latin-ext, variable weight. */
@font-face{
  font-family:"Libre Franklin";font-style:normal;font-weight:400 800;font-display:swap;
  src:url("fonts/libre-franklin-latin.woff2") format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{
  font-family:"Libre Franklin";font-style:normal;font-weight:400 800;font-display:swap;
  src:url("fonts/libre-franklin-latin-ext.woff2") format("woff2");
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face{
  font-family:"Atkinson Hyperlegible Next";font-style:normal;font-weight:400 700;font-display:swap;
  src:url("fonts/atkinson-hyperlegible-next-latin.woff2") format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{
  font-family:"Atkinson Hyperlegible Next";font-style:normal;font-weight:400 700;font-display:swap;
  src:url("fonts/atkinson-hyperlegible-next-latin-ext.woff2") format("woff2");
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}

:root{
  /* paper */
  --cream:#FAF6EE;        /* page ground */
  --paper-alt:#F4EEE2;    /* alternate section band */
  --card:#ffffff;
  --line:#ECE5D8;
  --faint:#98908340;

  /* ink */
  --ink:#2A2721;          /* 13.9:1 on cream */
  --soft:#6E675E;         /* 5.5:1 on cream — supporting text */

  /* action: oxblood, and nothing else */
  --oxblood:#7A2227;      /* 8.7:1 text on cream · white on it 10.1:1 */
  --oxblood-d:#5F1A1E;    /* hover / pressed */

  /* structure: navy */
  --navy:#24425E;         /* 9.6:1 on cream · white on it 10.4:1 */
  --navy-d:#17344A;

  /* dark sections */
  --night:#13233A;
  --night-d:#0D1A2B;
  --lamp:#E3C386;         /* labels on night only — 9.3:1 there */
  --mist:#C9D3DF;         /* supporting text on night — 9.9:1 */

  /* ornament and status */
  --brass:#B08D3E;        /* fills and icons only */
  --brass-t:#8A6A26;      /* the text-safe variant — 5.2:1 on cream */
  --success:#3B9A5C;
  --success-t:#2F7A49;    /* text-safe green — 5.0:1 on cream */

  /* tints: derived from the palette, never pastel for their own sake */
  --tint-oxblood:#F3E1E0;
  --tint-navy:#E4EAF0;
  --tint-brass:#F2EAD8;
  --tint-success:#E3EFE8;

  --radius:22px;
  --shadow:0 18px 50px -22px rgba(42,39,33,.35);

  /* type — Libre Franklin heads, Atkinson Hyperlegible Next reads.
     Atkinson is drawn so easily-confused letterforms stay distinct,
     which is the point for a 55–70 audience. No rounded faces. */
  --disp:"Libre Franklin",-apple-system,system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --body:"Atkinson Hyperlegible Next",-apple-system,system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,"Times New Roman",serif;
}

/* 18px base. Set on the root so every rem-based size in the site scales
   with it, not just the paragraphs. Nothing on the site renders below
   16px once this applies. */
html{font-size:112.5%}
