/* ============================================================
   SPACING & LAYOUT — Unreal
   8px base grid. Generous negative space is a brand mandate.
   ============================================================ */

:root {
  /* ---- Spacing scale (rem on 8px base; 4px half-steps) ---- */
  --space-0: 0;
  --space-1: 0.25rem;   /* 4  */
  --space-2: 0.5rem;    /* 8  */
  --space-3: 0.75rem;   /* 12 */
  --space-4: 1rem;      /* 16 */
  --space-5: 1.5rem;    /* 24 */
  --space-6: 2rem;      /* 32 */
  --space-7: 2.5rem;    /* 40 */
  --space-8: 3rem;      /* 48 */
  --space-9: 4rem;      /* 64 */
  --space-10: 5rem;     /* 80 */
  --space-11: 6rem;     /* 96 */
  --space-12: 8rem;     /* 128 */
  --space-13: 10rem;    /* 160 */
  --space-14: 12rem;    /* 192 */

  /* ---- Section rhythm (vertical) ---- */
  --section-y: clamp(4rem, 2rem + 9vw, 9rem);        /* @kind spacing */
  --section-y-lg: clamp(6rem, 3rem + 12vw, 12rem);   /* @kind spacing */

  /* ---- Container widths ---- */
  --container-xs: 28rem;   /* 448  */
  --container-sm: 40rem;   /* 640  */
  --container-md: 52rem;   /* 832  */
  --container-lg: 64rem;   /* 1024 */
  --container-xl: 75rem;   /* 1200 */
  --container-2xl: 87.5rem;/* 1400 */
  --container-full: 96rem; /* 1536 */

  /* ---- Gutters ---- */
  --gutter: clamp(1.25rem, 0.5rem + 3.2vw, 3rem);    /* @kind spacing */
  --gutter-lg: clamp(2rem, 1rem + 5vw, 5rem);        /* @kind spacing */

  /* ---- Radii — sharp & architectural. Editorial = minimal rounding ---- */
  --radius-0: 0;
  --radius-xs: 2px;
  --radius-sm: 4px;
  --radius-md: 6px;
  --radius-lg: 10px;
  --radius-xl: 16px;
  --radius-2xl: 24px;
  --radius-pill: 999px;
  --radius-circle: 50%;

  /* ---- Hairline / stroke widths ---- */
  --stroke: 1px;
  --stroke-2: 1.5px;
  --stroke-rule: 1px;   /* editorial dividers */

  /* ---- Aspect ratios (campaign-first imagery) ---- */
  --ar-portrait: 4 / 5;   /* @kind other */
  --ar-story: 9 / 16;     /* @kind other */
  --ar-square: 1 / 1;     /* @kind other */
  --ar-landscape: 3 / 2;  /* @kind other */
  --ar-cinema: 16 / 9;    /* @kind other */
  --ar-ultra: 21 / 9;     /* @kind other */

  /* ---- Grid ---- */
  --grid-cols: 12;        /* @kind other */
  --grid-gap: clamp(0.75rem, 0.3rem + 1.8vw, 1.5rem);   /* @kind spacing */

  /* ---- Layout chrome ---- */
  --header-h: 68px;       /* sticky nav height */
  --header-h-sm: 56px;    /* compact / mobile nav */
}
