:root{
  --space-1:.25rem;
  --space-2:.5rem;
  --space-3:.75rem;
  --space-4:1rem;
  --space-5:1.25rem;
  --space-6:1.5rem;   /* card padding, desktop grid gap */
  --space-8:2rem;     /* generous card padding */
  --space-10:2.5rem;
  --space-12:3rem;
  --space-16:4rem;    /* section padding (mobile) */
  --space-20:5rem;
  --space-24:6rem;    /* section padding (desktop) */
  --space-32:8rem;    /* photo-band section padding */

  --section-y:var(--space-16);
  --section-y-lg:var(--space-24);
  --card-p:var(--space-6);
  --card-p-lg:var(--space-8);
  --gap-grid:var(--space-6);
  --gap-dashboard:var(--space-4);

  --container-max:80rem;      /* @kind other */ /* max-w-7xl */
  --container-hero:1280px; /* @kind other */
  --container-flow:42rem;     /* @kind other */ /* booking wizard card */
  --container-pad:1rem;
  --container-pad-lg:2rem;

  --nav-h:4rem;               /* public header */
  --utility-h:2.25rem;        /* dark utility bar */
  --portal-header-h:3.5rem;
  --portal-sidebar-w:220px;   /* Clinic Connect */
  --admin-sidebar-w:256px;
  --control-h:3rem;           /* h-12 inputs on marketing forms */
  --control-h-sm:2.25rem;     /* h-9 shadcn default */
  --touch-min:44px; /* @kind other */
}
