/*
 * TRIPLE S — Brand design tokens (CANONICAL).
 * Traceable to "TRIPLE S - Guidelines.pdf" (see docs/DESIGN-SYSTEM.md, DECISIONS.md).
 * These custom properties are the single source of truth; the child theme and Elementor
 * Global Styles both reference them. Swapping licensed fonts later = edit --ss-font-* +
 * the @font-face src paths only.
 *
 * Self-hosted fonts (SIL OFL, no external CDN — DECISIONS D-003):
 *   Archivo (headings, substitutes Univers LT Std) · Inter (body, substitutes Segoe UI).
 * Woff2 files ship in ../fonts/ (latin + latin-ext variable subsets; OFL texts alongside).
 * R7/D-025: these faces were declared here from R1 but the files were never actually
 * packaged, so every build through Shift 19 silently fell back to system-ui. Shipped now.
 */

/* ---- Webfonts (self-hosted, SIL OFL 1.1 — see ../fonts/OFL-*.txt) ---- */
@font-face {
  font-family: "Archivo";
  font-style: normal;
  font-weight: 400 800;               /* variable range */
  font-stretch: 100%;
  font-display: swap;
  src: url("../fonts/archivo-variable.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: "Archivo";
  font-style: normal;
  font-weight: 400 800;
  font-stretch: 100%;
  font-display: swap;
  src: url("../fonts/archivo-variable-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: "Inter";
  font-style: normal;
  font-weight: 400 700;               /* variable range */
  font-display: swap;
  src: url("../fonts/inter-variable.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: "Inter";
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url("../fonts/inter-variable-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 {
  /* Color — [G] guideline core */
  --ss-gold: #FFD200;        /* Pantone 116 M */
  --ss-graphite: #414042;    /* Pantone Grey 95 */
  /* Color — [D] derived (DECISIONS D-004; retuned R6 per BOARD-R6-GRAPHITE.md, D-019) */
  --ss-gold-600: #E6BD00;
  --ss-ink-900: #131417;   /* graphite canvas base (R6: was blue-leaning #0E0E0F) */
  --ss-ink-850: #1B1C20;   /* section ramp end (R6) */
  --ss-ink-800: #1E1F24;   /* surfaces — graphite tint, one stop up (R6: was #1A1A1B) */
  --ss-ink-700: #2C2D31;   /* borders — tint of brand graphite #414042 (R6: was #2A2A2C) */
  --ss-gray-400: #A8B3C4;  /* secondary text (R6: was #A2A2A6) */
  --ss-body-300: #D6DCE5;  /* body text on dark grounds (R6 — headings stay white) */
  --ss-white: #FFFFFF;

  /* Semantic aliases */
  --ss-bg: var(--ss-ink-900);
  --ss-surface: var(--ss-ink-800);
  --ss-border: var(--ss-ink-700);
  --ss-text: var(--ss-white);
  --ss-text-body: var(--ss-body-300);
  --ss-text-muted: var(--ss-gray-400);
  --ss-accent: var(--ss-gold);
  --ss-accent-hover: var(--ss-gold-600);

  /* Typography — [D] free substitutes for Univers LT Std / Segoe UI (DECISIONS D-003) */
  --ss-font-head: "Archivo", "Univers LT Std", system-ui, -apple-system, sans-serif;
  --ss-font-body: "Inter", "Segoe UI", system-ui, -apple-system, sans-serif;
  --ss-fs-eyebrow: .8125rem;
  --ss-fs-body: 1.0625rem;
  --ss-fs-h6: 1.25rem;
  --ss-fs-h5: 1.563rem;
  --ss-fs-h4: 1.953rem;
  --ss-fs-h3: 2.441rem;
  --ss-fs-h2: 3.052rem;
  --ss-fs-h1: clamp(2.4rem, 5vw, 3.75rem);
  --ss-lh-head: 1.05;
  --ss-lh-body: 1.6;
  --ss-tracking-label: .12em;

  /* Spacing — 4px base */
  --sp-1: 4px;  --sp-2: 8px;  --sp-3: 12px; --sp-4: 16px; --sp-5: 24px;
  --sp-6: 32px; --sp-7: 48px; --sp-8: 64px; --sp-9: 96px; --sp-10: 128px;
  --ss-section-y: 96px;

  /* Radius */
  --r-sm: 2px; --r-md: 4px; --r-lg: 8px;

  /* Motion — restrained */
  --ss-dur-micro: 200ms;
  --ss-dur-enter: 320ms;
  --ss-ease: cubic-bezier(.2, .6, .2, 1);

  /* Layout */
  --ss-container: 1200px;
}

@media (max-width: 1024px) { :root { --ss-section-y: 64px; } }
@media (max-width: 767px)  { :root { --ss-section-y: 48px; } }
