:root{
  /* Paper grain — fixed full-viewport overlay, multiply blend. The single most
     load-bearing texture in the brand; every long-form surface carries it. */
  --texture-grain:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.107 0 0 0 0 0.09 0 0 0 0 0.078 0 0 0 0.06 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>"); /* @kind other */
  --texture-grain-opacity:.5; /* @kind other */
  --texture-grain-opacity-editorial:.55; /* @kind other */

  /* Chevron course — Great Zimbabwe stone frieze, the recurring divider */
  --chevron-h:18px; /* @kind spacing */
  --chevron-w:12px; /* @kind spacing */
  --pattern-chevron:linear-gradient(135deg, transparent 47%, var(--charcoal) 47% 53%, transparent 53%) 0 0/12px 18px repeat-x, linear-gradient(225deg, transparent 47%, var(--charcoal) 47% 53%, transparent 53%) 0 0/12px 18px repeat-x; /* @kind other */
  --pattern-chevron-gold:linear-gradient(135deg, transparent 47%, var(--ochre) 47% 53%, transparent 53%) 0 0/12px 18px repeat-x, linear-gradient(225deg, transparent 47%, var(--ochre) 47% 53%, transparent 53%) 0 0/12px 18px repeat-x; /* @kind other */
  --pattern-chevron-bone:linear-gradient(135deg, transparent 47%, var(--bone) 47% 53%, transparent 53%) 0 0/12px 18px repeat-x, linear-gradient(225deg, transparent 47%, var(--bone) 47% 53%, transparent 53%) 0 0/12px 18px repeat-x; /* @kind other */

  /* Ndebele dotted seasoning — corner only, masked diagonally, ≤22% opacity */
  --pattern-dots-gold:radial-gradient(var(--ochre) 1.4px, transparent 1.6px) 0 0/14px 14px; /* @kind other */
  --pattern-dots-bone:radial-gradient(rgba(244,236,219,0.55) 1.2px, transparent 1.4px) 0 0/14px 14px; /* @kind other */
  --pattern-dots-mask:linear-gradient(225deg, #000 20%, transparent 70%); /* @kind other */

  /* Hatch used for empty image slots */
  --pattern-hatch:repeating-linear-gradient(45deg, transparent 0 6px, rgba(27,23,20,0.04) 6px 7px); /* @kind other */

  /* Moss band — the only gradient in the system */
  --gradient-moss-band:radial-gradient(circle at 85% 0%, color-mix(in oklab, var(--moss) 75%, var(--charcoal)) 0%, transparent 55%), linear-gradient(180deg, var(--moss) 0%, var(--moss-deep) 100%); /* @kind other */

  /* Protection gradient over imagery captions */
  --gradient-protect:linear-gradient(180deg, transparent, rgba(27,23,20,0.6)); /* @kind other */
}
