/* ============================================================
   ACILITY · shared brand tokens + primitives
   used by the website and the company profile
   (pairs with brand/brand.js for the mark + node-map + reveal)
   ============================================================ */

:root{
  /* Core — sampled from the faceted Acility Africa mark */
  --green:#0B7A38;        /* Emerald  — primary */
  --green-deep:#045C2B;   /* facet shadow */
  --spring:#2E9E52;       /* mid facet green */
  --canopy:#063C20;       /* deep forest ground */
  --canopy-2:#0A4A28;     /* raised dark panel */
  --ink:#0C2114;          /* text */
  --gold:#A6C32E;         /* Chartreuse — accent (logo highlight) */
  --gold-soft:#C2DB46;    /* bright lime — fills on dark */
  --gold-deep:#6E8C12;    /* olive-lime — accent text on light */

  /* studio capital */
  --visibility:#A6C32E;
  --decisions:#1E7A87;
  --capability:#BF5B36;

  /* neutrals */
  --cream:#EEF2EC;
  --paper:#F7FAF5;
  --paper-2:#FCFEFB;
  --mist:#7C8A80;
  --line:rgba(11,122,56,.14);
  --line-strong:rgba(11,122,56,.26);
  --on-dark:#CFE0D5;
  --on-dark-soft:#8FB39C;

  --serif:'Newsreader', Georgia, serif;
  --sans:'Poppins','Helvetica Neue', Arial, sans-serif;
  --mono:'Space Mono', ui-monospace, monospace;
}

*{ box-sizing:border-box; margin:0; padding:0; }
html{ scroll-behavior:smooth; -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; }
body{ font-family:var(--sans); color:var(--ink); background:var(--paper); line-height:1.5; }
img,svg{ display:block; }
a{ color:inherit; text-decoration:none; }

/* ---------- shared micro-label ---------- */
.kicker{
  font-family:var(--mono); font-size:12px; letter-spacing:.26em; text-transform:uppercase;
  color:var(--gold-deep); font-weight:700;
}
.kicker.on-dark{ color:var(--gold-soft); }

/* ---------- the mark (raster logo) ---------- */
[data-mark]{ display:inline-flex; align-items:center; justify-content:center; line-height:0; }
[data-mark] img.mk-img{ width:100%; height:100%; object-fit:contain; display:block; }
.mk-tile{ width:100%; height:100%; display:flex; align-items:center; justify-content:center;
  background:var(--cream); border-radius:24%; padding:16%; box-sizing:border-box; }
.mk-tile.dark{ background:var(--canopy); }

/* ---------- faceted accent bar ---------- */
.facet-bar{ height:6px; width:100%; display:block;
  background:linear-gradient(90deg,var(--green-deep) 0%,var(--green) 34%,var(--spring) 58%,var(--gold) 100%); }

/* ---------- reveal (driven by brand.js IntersectionObserver) ---------- */
.reveal{ opacity:0; transform:translateY(20px); transition:opacity .8s cubic-bezier(.2,.7,.2,1), transform .8s cubic-bezier(.2,.7,.2,1); }
.reveal.in{ opacity:1; transform:none; }
@media(prefers-reduced-motion:reduce){ .reveal{ opacity:1 !important; transform:none !important; } }
